本公开涉及计算机程序和系统领域,并且更具体地,涉及用于生成用于图形数据库的摘要的方法、系统和程序。
背景技术:
1、在市场上提供了许多系统和程序,用于设计、工程和制造对象。cad是计算机辅助设计的缩写,例如它涉及用于设计对象的软件解决方案。cae是计算机辅助工程的首字母缩写,例如,它涉及用于模拟未来产品的物理行为的软件解决方案。cam是计算机辅助制造的缩写,例如,它涉及用于定义制造过程和操作的软件解决方案。在这种计算机辅助设计系统中,图形用户界面在技术效率方面起重要作用。这些技术可以嵌入到产品生命周期管理(plm)系统中。plm是指一种商业策略,它帮助公司在扩展企业的概念范围内共享产品数据、应用公共流程、并利用公司知识来将产品从概念开发到生命周期结束。由达索(dassault)系统提供的plm解决方案(商标为catia、enovia和delmia)提供了组织产品工程知识的工程中心、管理制造工程知识的制造中心、以及使得企业集成和连接到工程中心和制造中心两者中的企业中心。总之,该系统提供了一个链接产品、流程和资源的开放对象模型,以实现动态的、基于知识的产品创建和决策支持,从而驱动优化的产品定义、制造准备、生产和服务。
2、与在磁盘或ssd上存储数据的数据库相比,图形数据库特别适用于内存数据库中的应用,即,主要依赖于用于数据存储的存储器的专门构建的数据库。在一般应用中,rdf图形数据库需要能够处理数十亿个元组的大数据集并且大小为兆字节的大数据集(例如,微软学术知识图形(microsoft academic knowledge graph)。2022年5月10日从https://makg.org/rdf-dumps检索,其中超过80亿个三元组(triple)需要以标准ttl格式储存1.2tb)。为了保持这种大型数据库的性能和可扩展性,需要跨不同物理位置存储数据的分布式方法。数据在物理位置上的分布可以是为了优化数据库的某些方面,或响应于接收到的查询(例如,写或读)。通常,这种分布不一定是已知的或者不能被实施。通常,为了解决查询应答的优化,现有技术中的方法利用大型数据库的汇总(summarization)技术作为应答查询的代表性替代。
3、文献hose,katja et schenkel,ralf“towards benefit-based rdf sourceselection for sparql queries(面向基于利益的用于sparql查询的rdf源选择)”,第四届语义网信息管理国际研讨会论文集,2012年,的第1-8页提出了一种基于草图的查询路由策略,该策略考虑了源重叠。所提出的策略使用草图,并且可以被调整为对于给定预算尽可能多地检索结果,或者最小化检索所有或某一部分结果所需的请求的数量。
4、文献stefanoni、giorgio、motik、boris和kostylev、egor v.“estimating thecardinality of conjunctive queries over rdf data using graph summarization(使用图形汇总估计rdf数据上的联合查询的基数)”,2018年万维网大会论文集,2018年,的第1043-1052页公开了一种基于图形汇总的原则性基数估计技术。该技术使用可能的世界语义来解释rdf图形的摘要,并将估计问题形式化为计算由摘要表示的所有rdf图形上的期望基数。
5、文献zouaghi、ishaq、mesmoudi、amin、galicia、jorge等“query optimizationfor large scale clustered rdf data(大规模群集rdf数据的查询优化)”在dolap中,2020年,的第56-65页提出了一般描述基于图形的查询执行的逻辑结构。该文档定义为三元组的群集收集的统计数据,以更好地捕获在原始图形中找到的相关性,并基于这些逻辑结构重新定义执行计划。该文献介绍了一种基于定制成本模型选择最优执行计划的算法。
6、上述方法具有有限的可扩展性,或者不适于应用于分布式图形数据库。在此上下文中,仍然需要一种用于生成包括rdf元组的集合的图形数据库的摘要的改进方法。
技术实现思路
1、因此,提供了一种用于生成包括rdf元组的集合的图形数据库的摘要的计算机实现的方法,该方法包括:获得图形数据库,以及生成包括概率过滤器的集合的摘要。该集合的每个概率过滤器确定在图形数据库中存在的至少一个rdf元组是否与具有错误肯定(false positive)的可能性的概率过滤器的相应基本图形模式对应。
2、该方法可以包括以下的一个或多个:
3、-对于所述rdf元组的集合中的每个谓词,所述概率过滤器的集合包括:与第一基本图形模式对应的第一过滤器,所述第一基本图形模式包括所述rdf元组的集合中的所述谓词和任何主体;和/或与第二基本图形模式对应的第二过滤器,所述第二基本图形模式包括所述rdf元组的集合中的所述谓词和任何客体;
4、-对于rdf元组的集合中的每个谓词,概率过滤器的集合包括与第三基本图形模式对应的第三过滤器,所述第三基本图形模式包括所述rdf元组的集合中的所述谓词和任何主体和/或客体,优选地,所述主体和/或所述客体是uri类型;
5、-对于图形数据库中的各个客体的每个非uri类型,概率过滤器的集合包括与第四基本图形模式对应的第四过滤器,所述第四基本图形模式包括所述各个客体;
6、-所述概率过滤器的集合包括与第五基本图形模式对应的第五过滤器,所述第五基本图形模式包括作为主体的空白节点;
7、-所述摘要还包括:值,指示用于每个谓词的所述图形数据库中的rdf元组的相应数量,和/或元数据,为所述集合中的每个概率过滤器定义角色;
8、-所述集合中的每个概率过滤器包括:第一大小的数组,以及一个或多个哈希函数,并且其中,每个概率过滤器配置为通过以下方式确定存在于所述图形数据库中的至少一个rdf元组是否与所述概率过滤器的相应基本图形模式对应:将所述图形数据库的每个rdf元组输入到所述概率过滤器中的每个哈希函数,以获得第二大小的相应输出,以及将所述相应输出存储在所述数组中;
9、-一个或多个哈希函数的数量基于第二大小,优选地与第二大小成比例,其中更优选地,第二大小在10比特到18比特之间,并且甚至更优选地,第二大小是15比特;
10、-一个或多个哈希函数的数量基于第二大小,优选地与第二大小成比例,其中更优选地,第二大小在10比特到18比特之间,并且甚至更优选地,第二大小是15比特;和/或
11、-所述图形数据库是包括分区的集合的分区图形数据库,并且所述生成还包括:生成所述分区图形数据库中的每个分区的摘要。
12、还提供了一种计算机实现的方法,其使用(using)(或使用(use of))由上述用于生成图形数据库的摘要的方法生成的分区图形数据库的摘要的集合。所述使用方法包括:获得所述分区图形数据库和所生成的所述分区图形数据库的摘要的集合,并且通过所述分区图形数据库,接收包括一个或多个基本图形模式的查询。该使用方法还包括,对于每个基本图形模式,基于所生成的摘要的集合,识别分区的集合中的一个或多个分区,其中,所述一个或多个分区包括所获得的分区图形数据库中应答所述查询的所有rdf元组,在所识别的所述集合中的一个或多个分区上执行所接收的查询。
13、使用方法可以包括以下项中的一个或多个:
14、-基于所生成的摘要的集合,识别所述分区的集合中的一个或多个分区包括:对于所生成的摘要的集合中的每个摘要,通过所述摘要的概率过滤器的集合中的每个过滤器,确定存在于所述摘要的所述分区中的至少一个rdf元组是否与所述概率过滤器的相应基本图形模式对应;和/或
15、-还包括,在识别一个或多个分区之后、并且在对所识别的所述集合中的一个或多个分区执行所接收的查询之前:对于所述基本图形模式的集合中的基本图形模式,确定所识别的一个或多个分区是否形成空的集合;以及当所识别的一个或多个分区形成空的集合时,通过从所述基本图形模式的集合中去除所述基本图形模式,优化所接收的查询的相应查询计划。
16、还提供了一种计算机程序,其包括用于执行上述方法和/或上述使用方法的指令。
17、还提供了一种计算机可读存储介质,其上记录有计算机程序。
18、还提供了一种系统,其包括联接到存储器的处理器,所述存储器上记录有计算机程序。