【技术实现步骤摘要】
一种分布式数据存储、查询的方法、设备及存储介质
[0001]本专利技术涉及分布式关系数据搜索
,尤其涉及一种分布式数据存储、查询的方法、设备及存储介质。
技术介绍
[0002]在分布式关系数据搜索领域中,传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。
[0003]为了解决这个问题,在现有技术中使用分布式存储系统来储存分布式关系数据,分布式存储系统是将数据分散存储在多台独立的存储服务器上。分布式存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但克服了传统的网络存储系统中存储服务器带来的系统性能的瓶颈问题,提高了系统的可靠性、可用性和存取效率,还易于扩展。
[0004]但是分布式存储系统中包含有多台存储服务器,无法使用传统网络存储系统的存储、查询逻辑进行数据存储、查询,这就需要为分布式存储系统建立新的完整的存储、查询逻辑以完成数据存储、查询的功能。而在现有技术中,通常使用 ...
【技术保护点】
【技术特征摘要】
1.一种分布式数据存储的方法,应用于分布式数据库中的接入服务器,所述分布式数据库还包括多个存储服务器,所述接入服务器用于接收分布式数据并确定所述分布式数据的存储位置,所述分布式数据存储在所述存储服务器中,其特征在于,包括:确定需要导入所述分布式数据库的数据的指定表名、主键值和关联键值,根据所述数据的指定表名确定将导入的目标表;其中,所述主键值为主表的键值,所述关联键值为所述主表中从表的键值;将所述目标表的类型及所述数据对应的键值,确定所述数据的路由键,所述路由键用于映射所述目标表,使用路由计算函数对所述路由键的键值进行计算,得到所述数据的存储位置;将所述数据存储至所述存储位置对应的存储服务器中。2.如权利要求1所述的方法,根据所述数据的指定表名确定将导入的目标表,其特征在于,包括:根据所有的存储服务器中包含的所有父表和子表的表名及关联关系,建立所述分布式数据库的存储逻辑表,所述存储逻辑表中包含所述分布式数据库中各表之间的逻辑位置关系和各表的主键、关联键的键值;通过对比所述存储逻辑表和所述数据的指定表名,确定所述数据将要导入的目标表。3.如权利要求2所述的方法,通过对比所述存储逻辑表和所述数据的指定表名,确定所述数据将导入的目标表,其特征在于,包括:将所述数据的指定表名和所述存储逻辑表中的表名进行对比,确定所述数据应该存入的目标表;或,将所述数据的主键值和关联键值与所述存储逻辑表中的父表的主键值和子表的关联键值进行对比,确定所述数据应该存入的目标表。4.如权利要求1所述的方法,确定所述数据的路由键,所述路由键作为用于映射所述目标表,并用使用路由计算函数对所述路由键的键值进行计算,得到所述数据的存储位置,其特征在于,包括:当所述数据将导入的目标表为父表时,将所述目标表的主键作为路由键,使用所述目标表的主键值和所述路由函数进行计算,获得所述数据的存储位置;当所述数据将导入的目标表为子表时,将所述目标表的关联键作为路由键,使用所述目标表的关联键值和所述路由函数进行计算,获得所述数据的存储位置。5.一种分布式数据查询的方法,应用于分布式数据库中的请求服务器,所述分布式数据库还包括接入服务器和多个存储服务器,所述存储服务器中存储的数据是用如权利要求1—4任一项方法的进行存储的,其特征在于,包括:接收查询请求,将所述查询请求中的查询条件分发至所有存储服务器,使所有存储服务器根据所述查询条件进行并发搜索,以便查询符合条件的数据记录并返回至所述请求服务器;接收所有的所述存储服务器返回的所述数据记录,并对所有数据记录进行排序;根据排序后的数据记录,按照所述查询请求中的请求数据条数进行优选,得到最终查询结果并回复所述查询请求。6.如权利要求5所述的方法,将所述查询请求中的查询条件分发至所有存储服务器,其
特征在于,包括:检查所述查询请求中包含的查询条件是否符合预设查询要求;其中,所述查询条件包括父表条件、子表条件的数量和请求数据的条数;当所述查询条件中包含一个父表条件、至少一个子表条件和至少一条请求数据条数时,确定所述查询条件符合所述预设查询要求,并将所述查询条件分发至所有的存储服务器;当所述查询请求中包含多个父表条件和/或不包含子表条件和/或不包含请求数据条数时,确定所述查询条件不符合所述预设查询要求,并提示查询请求错误并返回对应的错误信息。7.如权利要求5所述的方法,其特征在于,根据排序后的数据记录,按照所述查询请求中的请求数据条数进行优选,得到最终查询结果并...
【专利技术属性】
技术研发人员:何帆,周明伟,
申请(专利权)人:浙江大华技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。