一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种面向大规模海量数据的知识图谱构建方法和系统

2022-04-09 03:00:18 来源:中国专利 TAG:
1.本发明涉及知识图谱构建
技术领域
:,具体涉及一种面向大规模海量数据的知识图谱构建方法和系统。
背景技术
::2.现实世界中,随着固网宽带、移动互联网、物联网等的快速发展,数据正呈爆炸式增长。根据希捷科技与internationaldatacorporation(idc)共同发布的《数据时代2025》的数据发展趋势报告,未来数据增长速度惊人,2025年全球的数据量将达到163zb。对于真实的应用场景比如金融领域,根据郑州人行的数据采集标准,单就反洗钱业务,四年的数据总规模就达到了tb级,每天的数据增长规模达到了gb级。针对真实应用场景中数据增长速度惊人的现况,本发明的领域知识图谱工具需要将海量的多源异构数据,通过知识提炼进行高层建模,即将多源异构数据库表的schema通过人工或者机器的方式映射到领域知识图谱中专家建立的本体,以图谱为中介实现异构数据语义融合,在此指导下完成海量数据的导入以及领域知识图谱的构建、自增长与自演化。海量的多源异构数据也给知识图谱的构建与检索带来了很大的挑战:3.(1)对于集群部署方面。从技术路线上来看,图数据库分为单机版图数据库和分布式图数据库。单机版图数据库比如neo4j图数据库(社区版)由于方便易用、开源免费、技术成熟,市场应用广泛并且广受工业界青睐,常年在db-engines的图数据库排名中占据榜首。但是单机版图数据库已经难以满足日益增长的数据需求,由于单机版图数据库不能建立集群和进行分布式存储,想要提高性能和容量只能加大机器的硬盘、使用更高的内存和ssd,价格昂贵,成本较高。分布式图数据库比如dgraph、janusgraph等,可以通过横向扩展集群来应对海量增长的数据给单机系统带来的问题,降低了硬件设备的成本,但是需要在每台机器上手动安装存储和索引的组件,并且配置好网络连接,过程繁琐。4.(2)对于图谱构建方面。单机版图数据库比如neo4j图数据库(社区版),通过语句进行逐条数据的导入太慢,实时性读写跟不上。官方提供的海量数据导入知识图谱工具步骤繁琐且多为手动方式导入,并且只能通过停机操作,对空数据库进行数据的一次性导入,所以不能实现将海量的增量数据导入到图数据库中实现领域知识图谱的自增长与自演化。官方提供的csv导入工具虽然可以支持增量导入,但在数据量达到千万级别时导入效率大幅度下滑。分布式图数据库比如janusgraph,是比较新的图数据库,官方不提供海量数据导入知识图谱的工具,并且几乎没有实现对janusgraph图数据库实现批量导入的开源案例,依靠语句进行逐跳导入会使图谱的构建效率落后于数据更新增长的速度,使得领域知识图谱工具所能应用的场景受限。5.(3)对于图谱检索方面。单机版图数据库比如neo4j图数据库(社区版)由于不能在关系上建立索引,所以多跳查询效率低下;分布式图数据库虽然能够在关系上建立索引,提升了多跳查询的效率,但是图数据库中的超级节点的存在会使得图谱的检索性能大幅度下降,图数据库中的超级节点指节点的度数(入度 出度)达到万级别以上的节点。并且在很多应用场景中都会出现多个超级节点,比如金融领域知识图谱中,会存在某金融机构或单位客户与多个客户存在千万级别的交易边,形成“超级节点”。超级节点的存在会使遍历到超级节点的查询对该节点所有的邻接边进行遍历,使得图数据库将关系建模为数据,以多跳查询取代了多表联查操作避免多次join数据库表操作的优势丧失。技术实现要素:6.针对现有技术中存在的缺陷,本发明的目的在于提供一种面向大规模海量数据的知识图谱构建方法和系统,可以通过docker-compose技术实现集群的快速部署和可定制搭建,可以利用图数据库和文档型数据库各自在相关检索场景下的优势,大大提高海量数据背景下的知识图谱构建与检索效率。7.为实现上述目的,本发明采用的技术方案如下:8.一种面向大规模海量数据的知识图谱构建方法,包括:9.s100、基于docker-compose和apachehadoop技术,采用master-slave结构搭建各分布式集群,为图数据库提供分布式存储、索引和计算,各分布式集群包括分布式存储集群、分布式索引集群和分布式计算集群;10.s200、使用图数据库和文档型数据库对海量知识图谱数据进行联合存储与检索,实现海量知识图谱的构建。11.进一步,如上所述的方法,分布式存储集群使用hbase组件,分布式索引集群使用elasticsearch组件,分布式计算集群使用spark组件,图数据库为基于janusgraph开源分布式图数据库。12.进一步,如上所述的方法,对于分布式计算集群,janusgraph的gremlinsrever、sparkmaster、yarnresourcemanager、hdfsnamenode部署在master机器,相应的worker节点部署在slave机器,分布式存储集群和分布式索引集群的部署方式与之相同。13.进一步,如上所述的方法,s100包括:14.s101、基于docker-compose.yml文件进行分布式集群的搭建,为图数据库提供分布式存储、索引和计算;15.s102、通过docker-compose中的scale参数指定各分布式集群中worker容器节点的数量,将docker-compose中的e参数作为环境变量参数指定yaml文件中的相关配置项,所述相关配置项包括容器网络子网ip、worker容器节点的ip、sparkworker节点分配到的核、内存资源;16.s103、将用于部署各分布式集群的docker-composeup命令嵌入在linuxshell脚本中,通过linuxshell脚本将docker-compose命令的scale、e参数作为用户需要传递的参数,根据数据量、应用场景需求的不同实现容器网络定制化、ip定制化、资源分配定制化;17.s104、通过docker-composeup和docker-composedown命令对各分布式集群进行一键启动和停止。18.进一步,如上所述的方法,s200包括:19.s201、对海量知识图谱数据的特征进行分析,对于一对头实体和尾实体之间相同类型的多条边,将其建模为一个边簇,在图数据库存储中将边簇的存储优化为一条边,并在该条边上建立簇id的属性来标识该条边所属于的簇,将边簇中边的属性信息存储在文档型数据库中;20.s202、基于分析,在图数据库中存储海量知识图谱数据的基本网络结构,包括节点和边,在文档型数据库中存储海量知识图谱数据的节点和关系的属性信息,关系指图数据库中的边,节点的属性信息包括id和类型,关系的属性信息包括簇id和类型;21.s203、根据结构化数据/半结构化数据的数据库表与领域知识本体的映射结果,自动分配节点主键id、关系主键id,自动识别出需要在图数据库和文档型数据库中同时存储的数据信息,包括名称、节点类型、关系类型,以及自动划分数据进行分散存储。22.一种面向大规模海量数据的知识图谱构建系统,包括:23.搭建模块,用于基于docker-compose和apachehadoop技术,采用master-slave结构搭建各分布式集群,为图数据库提供分布式存储、索引和计算,各分布式集群包括分布式存储集群、分布式索引集群和分布式计算集群;24.构建模块,用于使用图数据库和文档型数据库对海量知识图谱数据进行联合存储与检索,实现海量知识图谱的构建。25.进一步,如上所述的系统,分布式存储集群使用hbase组件,分布式索引集群使用elasticsearch组件,分布式计算集群使用spark组件,图数据库为基于janusgraph开源分布式图数据库。26.进一步,如上所述的系统,对于分布式计算集群,janusgraph的gremlinsrever、sparkmaster、yarnresourcemanager、hdfsnamenode部署在master机器,相应的worker节点部署在slave机器,分布式存储集群和分布式索引集群的部署方式与之相同。27.进一步,如上所述的系统,所述搭建模块具体用于:28.基于docker-compose.yml文件进行分布式集群的搭建,为图数据库提供分布式存储、索引和计算;29.通过docker-compose中的scale参数指定各分布式集群中worker容器节点的数量,将docker-compose中的e参数作为环境变量参数指定yaml文件中的相关配置项,所述相关配置项包括容器网络子网ip、worker容器节点的ip、sparkworker节点分配到的核、内存资源;30.将用于部署各分布式集群的docker-composeup命令嵌入在linuxshell脚本中,通过linuxshell脚本将docker-compose命令的scale、e参数作为用户需要传递的参数,根据数据量、应用场景需求的不同实现容器网络定制化、ip定制化、资源分配定制化;31.通过docker-composeup和docker-composedown命令对各分布式集群进行一键启动和停止。32.进一步,如上所述的系统,所述构建模块具体用于:33.对海量知识图谱数据的特征进行分析,对于一对头实体和尾实体之间相同类型的多条边,将其建模为一个边簇,在图数据库存储中将边簇的存储优化为一条边,并在该条边上建立簇id的属性来标识该条边所属于的簇,将边簇中边的属性信息存储在文档型数据库中;34.基于分析,在图数据库中存储海量知识图谱数据的基本网络结构,包括节点和边,在文档型数据库中存储海量知识图谱数据的节点和关系的属性信息,关系指图数据库中的边,节点的属性信息包括id和类型,关系的属性信息包括簇id和类型;35.根据结构化数据/半结构化数据的数据库表与领域知识本体的映射结果,自动分配节点主键id、关系主键id,自动识别出需要在图数据库和文档型数据库中同时存储的数据信息,包括名称、节点类型、关系类型,以及自动划分数据进行分散存储。36.本发明的有益效果在于:本发明有效解决了单机图数据库无法应对海量数据存储与检索需求、分布式图数据库部署过程繁琐的问题。在集群部署方面,首次提出了在开源社区中尚未实现的可以即插即用的图数据库分布式集群框架。本发明提出的异构数据库存储与检索方案对于缓解图数据库中超级节点降低检索性能的问题,提升整体检索效率意义重大。附图说明37.图1为本发明实施例中提供的一种面向大规模海量数据的知识图谱构建方法的流程示意图;38.图2为本发明实施例中提供的分布式集群图;39.图3为本发明实施例中提供的异构数据库存储与检索结构图;40.图4为本发明实施例中提供的进行异构数据库存储与检索的实验结果图;41.图5为本发明实施例中提供的一种面向大规模海量数据的知识图谱构建系统的结构示意图。具体实施方式42.为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述。43.为了解决集群部署方面单机系统难以应对日益增长的海量数据的问题,本发明主要基于apachehadoop大数据平台的相关组件进行分布式存储、计算、索引集群的搭建。针对图数据库中的超级节点使得图谱的检索性能大幅度下降的问题,本发明提出了图数据库与文档型数据库联合存储与检索的方法。通过该方法建立的知识图谱系统,可以通过docker-compose技术实现集群的快速部署和可定制搭建,可以利用图数据库和文档型数据库各自在相关检索场景下的优势,大大提高海量数据背景下的知识图谱构建与检索效率。本发明主要包括以下步骤:(1)在docker-compose技术的基础上实现了分布式图数据库集群的“一键式”可定制搭建。用户可以根据自己的需求对集群容器网络子网ip进行定制,对分布式存储、索引、计算集群的slave节点的数量、ip、主机名进行定制。(2)采用异构数据库混合方案,根据分配的节点主键id、关系主键id将存储在图数据库、文档型数据库中的数据进行关联。综合利用图数据库多跳查询效率高、文档型数据库条件查询和统计分析上速度快的优势。44.本发明实施例提供了一种面向大规模海量数据的知识图谱构建方法,如图1所示,该方法包括:45.s100、基于docker-compose和apachehadoop技术,采用master-slave结构搭建各分布式集群,为图数据库提供分布式存储、索引和计算,各分布式集群包括分布式存储集群、分布式索引集群和分布式计算集群。46.本发明实施例中,为实现上述方法,本发明提出了一个支持存储海量数据以及高效率检索的分布式集群,如图2所示,本发明搭建的分布式集群采用master-slave结构。进一步,对于分布式计算集群,janusgraph的gremlinsrever、sparkmaster、yarnresourcemanager、hdfsnamenode部署在master机器,相应的worker节点部署在slave机器,分布式存储集群和分布式索引集群的部署方式与之相同。47.具体地,本发明基于apachehadoop进行分布式集群的搭建。apachehadoop是一款支持数据密集型分布式应用程序并以apache2.0许可协议发布的开源软件框架。它支持在商品硬件构建的大型集群上运行的应用程序。简单地说来,hadoop是一个可以更容易开发和运行处理大规模数据的软件平台。该平台使用的是面向对象编程语言java实现的,具有良好的可移植性。48.本发明实施例中,分布式存储集群使用hbase组件,hbase是apache的顶级项目,hbase是开源的、分布式的、面向列的数据库,是一个适合于非结构化海量数据存储的数据库,它参考了谷歌的bigtable建模,实现的编程语言为java,运行于hdfs文件系统之上,为hadoop提供类似于bigtable规模的服务。因此,它可以对稀疏文件提供极高的容错率。面对各种应用场景中日益增长的海量数据,可以灵活地通过横向扩展的方式为海量数据的存储提供保障,避免了不断堆积单台机器造成的性能缺失以及昂贵的代价。49.本发明实施例中,分布式索引集群使用elasticsearch(es)组件。es是一个基于apachelucene库的搜索引擎。它提供了一个分布式、支持多租户的全文搜索引擎,具有httpweb接口和无模式json文档。es是用java开发的,并在apache许可证下作为开源软件发布。官方客户端在java、.net(c#)、php、python、apachegroovy、ruby和许多其他语言中都是可用的。根据db-engines的排名显示,es是最受欢迎的企业搜索引擎。es也是分布式的,可以扩展到上百台服务器,处理pb级结构化或非结构化数据,为海量数据的检索性能提供保障。50.本发明实施例中,分布式计算集群使用spark组件。apachespark是一个开源集群运算框架,spark基于mapreduce算法实现的分布式计算,实现了内存计算技术,能在中间输出结果尚未写入硬盘时即在ram内分析运算。在ram内运行程序的运算速度能做到比hadoopmapreduce的运算速度快上100倍。通俗来讲,分布式计算可以理解为一百个人同时工作,相对于一个人工作当然是极大地提升了工作效率。本项目利用分布式计算集群并行、速度快的优势,实现海量数据的快速批量导入以及olap(联机分析处理)运算。51.本发明实施例中,本发明领域知识图谱工具的开发基于janusgraph开源分布式图数据库。janusgraph是一个图形数据库引擎,可以适配apachehbase、apachecassandra、berkeleydb等多种存储后端,elasticsearch、apachesolr等多种索引后端,而janusgraph图数据库的分布式主要体现在存储后端和索引后端的分布式集群部署,当日益增长的海量数据使得单机系统的性能达到瓶颈时,可以通过添加机器横向扩展集群来缓解,通过存储后端和索引后端的横向扩展提升了存储和检索海量数据的能力。虽然分布式图数据库可以通过横向扩展集群来应对海量增长的数据给单机系统带来的问题,但是传统的集群部署方式需要对于集群中的每一个组件基于下载的docker镜像运行dockerrun命令创建容器,并且需要提前建立好网络,并且为每个容器定制ip,对janusgraph的连接文件进行配置,与存储后端集群和索引后端集群建立连接,过程非常繁琐;即使使用编写脚本的方式,也无法实现用户的“定制化”,比如:对于不同数据量需求的应用场景,用户可以通过输入参数的方式,指定存储后端hbase集群的slave数量以及索引后端es集群的slave数量。也无法实现网络的定制,比如自定义容器网络的子网ip以及每一个容器的ip。52.本发明实施例中,搭建分布式集群的步骤如下:53.s101、基于docker-compose.yml文件进行分布式集群的搭建,为图数据库提供分布式存储、索引和计算;54.s102、通过docker-compose中的scale参数指定各分布式集群中worker容器节点的数量,将docker-compose中的e参数作为环境变量参数指定yaml文件中的相关配置项,相关配置项包括容器网络子网ip、worker容器节点的ip、sparkworker节点分配到的核、内存资源;55.s103、将用于部署各分布式集群的docker-composeup命令嵌入在linuxshell脚本中,通过linuxshell脚本将docker-compose命令的scale、e参数作为用户需要传递的参数,根据数据量、应用场景需求的不同实现容器网络定制化、ip定制化、资源分配定制化;56.s104、通过docker-composeup和docker-composedown命令对各分布式集群进行一键启动和停止。57.s200、使用图数据库和文档型数据库对海量知识图谱数据进行联合存储与检索,实现海量知识图谱的构建。58.本发明的核心思想是基于分而治之的思想,将一个原始任务分解为若干个语义等同的子任务,并由专门的工作者线程来并行执行这些任务,原始任务的结果是通过整合各个子任务的处理结果形成的。59.更进一步,为使本发明有更好的效果,本发明的图数据库与文档数据库联合存储方案,对用户透明,高效适配不同场景。针对海量数据特征与业务需求,将采用异构数据库混合方案,根据分配的节点主键id、关系主键id将存储在图数据库、文档型数据库中的数据进行关联。综合利用图数据库多跳查询效率高、文档型数据库条件查询和统计分析上速度快的优势。当进行多跳关系查询以及关系推理查询时使用图数据库,当进行条件查询过滤以及统计分析使用文档型数据库。60.本发明实施例中,如图3所示,异构数据库存储与检索包括以下步骤:61.s201、对海量知识图谱数据的特征进行分析,对于一对头实体和尾实体之间相同类型的多条边,将其建模为一个边簇,在图数据库存储中将边簇的存储优化为一条边,并在该条边上建立簇id的属性来标识该条边所属于的簇,将边簇中边的属性信息存储在文档型数据库中;62.首先针对知识图谱的数据特征进行分析,一对头实体和尾实体之间有非常多条同种类型的边的情况是经常存在的(比如一个账户向另一个账户十年内转账了一千到一万次),在图数据库中完全没有必要对一对头实体和尾实体之间相同类型(label)的多条边进行存储,对于一对头实体和尾实体之间相同类型(label)的多条边,本发明将其建模为一个边簇,所以在图数据库存储中将边簇的存储优化为了一条边,并且边上建立“簇id”属性来标识边所属于的簇,从而减少了图数据库中超级节点的度数。将边簇中边的属性信息存储在文档型数据库中,同样使用“簇id”进行标识,对于节点亦是如此。63.s202、基于分析,在图数据库中存储海量知识图谱数据的基本网络结构,包括节点和边,在文档型数据库中存储海量知识图谱数据的节点和关系的属性信息,关系指图数据库中的边,节点的属性信息包括id和类型,关系的属性信息包括簇id和类型;64.在图数据库中只存储基本的网络结构,比如:id为3、类型为“账户”的节点与id为5、类型为“账户”的节点之间有簇id为1,类型为“转账”的边,充分发挥图数据库在多跳查询效率高的优势。在文档型数据库存储节点和关系的属性信息。充分发挥文档型数据库在条件查询和统计分析上的优势。65.s203、根据结构化数据/半结构化数据的数据库表与领域知识本体的映射结果,自动分配节点主键id、关系主键id,自动识别出需要在图数据库和文档型数据库中同时存储的数据信息,包括名称、节点类型、关系类型,以及自动划分数据进行分散存储;66.根据结构化数据/半结构化数据的数据库表与领域知识本体的映射结果,自动分配节点主键id、关系主键id,自动识别出需要在图数据库和文档型数据库同时存储的数据信息,比如名称、节点类别、关系类别等,自动划分数据进行分散存储。根据约束和过滤规则进行检索。67.图4是本发明实施例中进行异构数据库存储与检索的实验结果图,对于使用图数据库和文档型数据库联合存储与检索是否能够提升海量图谱数据下检索效率的问题,分别针对四个常见的查询应用场景构造数据、设计实验。第一个应用场景为已知图谱中两个节点的id以及其他信息,查询两个节点之间满足某种条件的某种label的边,比如:查询id为4096的节点与id为4104的节点之间交易时间在2013年3月3日到2014年8月31日之间,交易金额在2000000元到5000000元之间的交易有哪些;第二个应用场景为已知图谱中一个节点的id以及其他信息,查询以这个节点为入射点或者出射点并且满足某种条件的某种label的边,比如:查询id为4096的节点交易时间在2013年3月3日到2014年8月31日之间,交易金额在2000000元到5000000元之间的进行的交易有哪些;第三个应用场景为根据图谱中节点的属性信息找到符合条件的节点,比如:查询姓名为“小明”的节点;第四个应用场景为根据图谱中可唯一定位到节点的属性信息,查询两个节点之间满足某种条件的某种label的边,比如:查询姓名为“小明”的节点与姓名为“小强”的节点之间交易时间在2013年3月3日到2014年8月31日之间,交易金额在2000000元到5000000元之间的交易有哪些。68.其中,对于第一个和第二个应用场景,构造的数据集规模为:共402个节点,10000000条边都由id为4096的节点指向其他节点,共分为420个簇,其中id为4096的节点与id为4104的节点共有20个簇,每个簇100000条边,id为4096的节点与其他节点都有一个簇,每个簇20000条边,id为4096的节点与id为4104的节点中“clusterid”为1的边label为“交易”,包括交易时间、交易金额等属性,数据集大小为3.5gb;对于第三个应用场景,构造的数据集规模为:共10000000节点,每个节点都有“name”属性,数据集大小为1.6gb;对于第四个应用场景,构造的数据集规模为:共10000000节点,每个节点都有“name”属性,共2000000条边,2000个边簇,姓名为“小明”的节点与姓名为“小强”的节点之间有2000个簇,每个簇有1000条边,姓名为“小明”的节点与姓名为“小强”的节点中“clusterid”为1的边label为“交易”,包括交易时间、交易金额等属性,数据集大小为2.3gb。69.对于随机数据的设置,由于要做只用图数据库查询,图数据库与文档型数据库联合存储与查询的对比实验,为了实验的公平性,对两种方案构造的数据使用相同的随机种子,以保证两种方案构造的数据是一致的;对于索引的设置,对于两种对比的方案,均在需要查询的字段建立索引,如图3所示,在四个常见应用场景下,混合数据库方案的查询与检索速度相比单纯使用图数据库进行存储与查询提升了30倍。70.采用本发明实施例的方法,有效解决了单机图数据库无法应对海量数据存储与检索需求、分布式图数据库部署过程繁琐的问题。在集群部署方面,首次提出了在开源社区中尚未实现的可以即插即用的图数据库分布式集群框架。本发明提出的异构数据库存储与检索方案对于缓解图数据库中超级节点降低检索性能的问题,提升整体检索效率意义重大。71.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。72.根据本发明实施例的另一个方面,还提供了一种面向大规模海量数据的知识图谱构建系统,如图5所示,包括:73.搭建模块100,用于基于docker-compose和apachehadoop技术,采用master-slave结构搭建各分布式集群,为图数据库提供分布式存储、索引和计算,各分布式集群包括分布式存储集群、分布式索引集群和分布式计算集群。分布式存储集群使用hbase组件,分布式索引集群使用elasticsearch组件,分布式计算集群使用spark组件,图数据库为基于janusgraph开源分布式图数据库。对于分布式计算集群,janusgraph的gremlinsrever、sparkmaster、yarnresourcemanager、hdfsnamenode部署在master机器,相应的worker节点部署在slave机器,分布式存储集群和分布式索引集群的部署方式与之相同。74.搭建模块100具体用于:基于docker-compose.yml文件进行分布式集群的搭建,为图数据库提供分布式存储、索引和计算;通过docker-compose中的scale参数指定各分布式集群中worker容器节点的数量,将docker-compose中的e参数作为环境变量参数指定yaml文件中的相关配置项,相关配置项包括容器网络子网ip、worker容器节点的ip、sparkworker节点分配到的核、内存资源;将用于部署各分布式集群的docker-composeup命令嵌入在linuxshell脚本中,通过linuxshell脚本将docker-compose命令的scale、e参数作为用户需要传递的参数,根据数据量、应用场景需求的不同实现容器网络定制化、ip定制化、资源分配定制化;通过docker-composeup和docker-composedown命令对各分布式集群进行一键启动和停止。75.构建模块200,用于使用图数据库和文档型数据库对海量知识图谱数据进行联合存储与检索,实现海量知识图谱的构建。76.构建模块200具体用于:对海量知识图谱数据的特征进行分析,对于一对头实体和尾实体之间相同类型的多条边,将其建模为一个边簇,在图数据库存储中将边簇的存储优化为一条边,并在该条边上建立簇id的属性来标识该条边所属于的簇,将边簇中边的属性信息存储在文档型数据库中;基于分析,在图数据库中存储海量知识图谱数据的基本网络结构,包括节点和边,在文档型数据库中存储海量知识图谱数据的节点和关系的属性信息,关系指图数据库中的边,节点的属性信息包括id和类型,关系的属性信息包括簇id和类型;根据结构化数据/半结构化数据的数据库表与领域知识本体的映射结果,自动分配节点主键id、关系主键id,自动识别出需要在图数据库和文档型数据库中同时存储的数据信息,包括名称、节点类型、关系类型,以及自动划分数据进行分散存储。77.需要说明的是,本发明的一种面向大规模海量数据的知识图谱构建系统与前述的一种面向大规模海量数据的知识图谱构建方法属于同一发明构思,具体实施方式不再赘述。78.采用本发明实施例的系统,有效解决了单机图数据库无法应对海量数据存储与检索需求、分布式图数据库部署过程繁琐的问题。在集群部署方面,首次提出了在开源社区中尚未实现的可以即插即用的图数据库分布式集群框架。本发明提出的异构数据库存储与检索方案对于缓解图数据库中超级节点降低检索性能的问题,提升整体检索效率意义重大。79.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其同等技术的范围之内,则本发明也意图包含这些改动和变型在内。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献