CN106446153A - 一种分布式newSQL数据库系统及方法 - Google Patents
一种分布式newSQL数据库系统及方法 Download PDFInfo
- Publication number
- CN106446153A CN106446153A CN201610842399.7A CN201610842399A CN106446153A CN 106446153 A CN106446153 A CN 106446153A CN 201610842399 A CN201610842399 A CN 201610842399A CN 106446153 A CN106446153 A CN 106446153A
- Authority
- CN
- China
- Prior art keywords
- data
- hbase
- index
- master
- distributed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9017—Indexing; Data structures therefor; Storage structures using directory or table look-up
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2219—Large Object storage; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2272—Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
- G06F16/24542—Plan optimisation
- G06F16/24545—Selectivity estimation or determination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
- G06F16/319—Inverted lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5022—Workload threshold
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Library & Information Science (AREA)
- Fuzzy Systems (AREA)
- Computing Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Operations Research (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
本发明公开了一种分布式newSQL数据库系统及方法,系统包括数据库接口,用于用户向Master发送请求,并接收master返回的结果;Master,用于负责以JDBC、ODBC的方式接入用户请求并且协调多方之间的数据通讯以及管理整体流程,并将用户请求优先发送给SQLPlaner;SQLPlaner,用于解析用户请求,编译以及定制执行计划;分布式事务管理器,用于协调所述计划中多方完成分布式事务管理;并行任务执行器,用于负责所述计划的任务并行地执行,以及将从数据库获得的数据进行归并汇总以返回给master。本发明优化高并发情况下的事务操作,支持分布式事务、半结构化数据、全文检索和高效的图片存储。
Description
技术领域
本发明涉及数据库技术领域,尤其涉及一种分布式newSQL数据库系统。
背景技术
HBase即Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。Hbase已成为目前应用最广泛的分布式NoSQL数据库之一,但随着越来越多的应用尝试迁移到HBase上,HBase的缺陷也越来越被暴露出来,主要包括
使用成本高:用户需要通过API编程访问HBase,对于复杂应用使用成本过高;不支持标准JDBC/ODBC接口,ETL过程十分复杂;使用成本过高直接导致许多较为复杂的应用无法使用HBase。
无法有效的支持非主键查询:在实际应用中,用户往往需要进行多维度的查询,HBase无法有效的支持非主键查询。
只支持单行事务:在实际应用中,事务往往涉及到多表中的多行数据,HBase提供的单行事务无法满足应用需求。
无法有效支持半结构化数据:HBase的数据模型是完全结构化的,无法有效支持半结构化形式数据(如JSON)。
无法有效支持图片存储:在公安,交通等领域中,用户往往需要存储大量的图片数据,典型的一张图片大小在500K到2MB之间,实践证明HBase无法有效的满足图片类型的存储。
可用性较低:HBase的每个region同时只在一台HRegionserver上提供服务,当出现HRegionserver故障宕机时,该HRegionserver上所有region对应的数据会暂时不可用,直到容错机制将region重新分配到其他HRegionserver上,这使得HBase的可用性不足以满足一般在线业务的需求。
发明内容
本发明提供一种分布式newSQL数据库系统,实现复杂的业务逻辑,解决非主键查询需求,优化高并发情况下的事务操作,支持分布式事务、半结构化数据、全文检索和高效的图片存储。
为实现上述技术目的,本发明采用以下技术方案:
一种分布式newSQL数据库系统包括
数据库接口,用于用户向Master发送请求,并接收master返回的结果;
Master,用于负责以JDBC、ODBC的方式接入用户请求并且协调多个处理器之间的数据通讯以及管理整体流程,并将所述用户请求优先发送给SQLPlaner;
SQLPlaner,用于解析所述用户请求,编译以及定制执行计划;
分布式事务管理器,用于协调所述计划中多方完成分布式事务管理;
并行任务执行器,用于负责所述计划的任务并行地执行,以及将从数据库获得的数据进行归并汇总以返回给master。
对上述方案的进一步改进如下
所述并行任务执行器通过hbase和搜索引擎服务器向所述数据库获取数据。
所述master连接一监视器,用于负责元数据管理以及用于监控底层hbase Region的负载,避免特定的region负载过高,以及利用hbase coprocessor重新分配Region。
本发明还提供一种利用所述的分布式newSQL数据库系统的SQLPlaner生成执行计划的方法,该方法包括
通过所述数据库接口输入SQL语句;
判断共享缓存池中是否已经存在该SQL,如若存在,输出该SQL对应的执行计划;
否则,对SQL语句进行语法检查和进行语义检查,语法检查和语义检查通过后,对SQL语句进行视图以及表达式转换;
根据所述转换结果进行优化器选择;
根据所述优化器的选择结果选择数据连接方式以及连接顺序;
根据所述连接方式和所述连接顺序选择搜索路径;
根据所述搜索路径生成执行计划并输出。
本发明还提供一种利用所述的分布式newSQL数据库系统建立和查询多个二级索引的方法,该方法包括
利用所述hbase的Coprocessor和Filter生成针对数据的索引表;所述Coprocessor根据索引定义将以倒排索引的方式将索引数据并行写入所述索引表,从而建立多个二级索引;
所述Master根据查询条件动态计算使用索引的代价;所述Coprocessor会根据索引定义以及查询条件优先查询所述索引表,并行地通过所述索引表查询结果再次查询数据表。
本发明还提供一种利用所述的分布式newSQL数据库系统实现半结构化数据存取的方法,该方法包括
所述并行任务执行器将JSON数据作为普通字符串类型整体作为一个字段写入到所述hbase的数据表中;所述hbase中的coprocessor根据字段描述,提取JSON中的数据,以倒排索引的方式将索引数据写入到另外的hbase索引表中,完成半结构化数据的存储;
所述并行任务执行器根据查询条件,利用coprocessor并行地查询索引表;所述hbase中的索引coprocessor将索引表的索引ID返回给所述并行任务执行器;所述并行任务执行器根据所述索引ID,利用hbase的API查询数据表,返回结果,完成半结构化数据的获取。
本发明还提供一种利用所述的分布式newSQL数据库系统实现图片数据存取的方法,其特征在于该方法包括
所述并行任务执行器将图片数据生成信息摘要算法加密后的图像数据格式,将加密后的图片数据写入到原始数据表;所述并行任务执行器将加密后的所述图片数据写入到图片数据表中进行独立存储;
并行任务执行器根据查询条件,查询原始数据表,得到信息摘要算法加密后的图像数据;并行任务执行器根据加密后的所述图像数据,利用所述hbase的API查询图片数据表,获取图片数据。
作为上述方案的改进,所述hbase底层增加LOB类型,针对LOB类型建立另类索引,将大对象图片数据存储为所述数据库中的一个位图,图片数据以位图存储在独立的数据表中,原始数据表仅仅存储索引ID。
本发明还提供一种利用所述的分布式newSQL数据库系统实现全文检索的方法,该方法包括
所述并行任务执行器将需要全文检索的字段作为普通字符串类型写入到所述hbase的数据表中进行存储,所述hbase中的coprocessor根据字段描述,将数据写入到搜索引擎服务器中进行索引;
所述并行任务执行器根据查询条件,到所述搜索引擎服务器中查询具体的索引ID,所述搜索引擎服务器根据查询条件返回索引ID,所述并行任务执行器根据索引ID,利用所述hbase的API查询数据表,获取查询数据。
有益效果
本发明分布式NewSQL数据库系统,提供了一种全新的方式涵盖了hbase的大数据存储以及高速读写能力,同时解决hbase无法兼顾的实际应用问题。本发明支持SQL,支持JDBC/ODBC,通过交互式分析引擎UrunSQL支持SQL,用户可以通过编写SQL在本系统上实现复杂的业务逻辑,极大的降低了使用成本;支持JDBC/ODBC接口,极大的简化了ETL过程。
本发明分布式NewSQL数据库系统支持二级索引,高效解决非主键查询需求,允许用户根据具体的业务逻辑灵活的建立二级索引,在实际应用中用户往往会建立多个二级索引,本系统根据查询条件动态计算使用索引的代价,自动选择最合适的索引。
本发明分布式NewSQL数据库系统支持分布式事务,支持跨行,跨表的分布式事务,支持完整的ACID事务语义,并且重点优化了高并发情况下的事务操作,可以满足大部分的OLTP应用。
本发明分布式NewSQL数据库系统支持半结构化数据,支持JSON数据格式,用户可以直接将JSON格式的数据存储在本系统hbase所连接的数据库之中,并对JSON的任意字段进行查询,创建索引以及删改。
本发明分布式NewSQL数据库系统支持全文检索,通过Solr支持分布式全文检索,用户可以为自己的表创建全文索引,并在SQL中使用全文检索语法进行搜索。
本发明分布式NewSQL数据库系统支持高效的图片存储,在本系统hbase底层增加LOB存储,LOB可以高效的满足单条数据大小在几百K到10M的二进制存储需求,用户可以通过LOB满足图片存储需求。
本发明分布式NewSQL数据库系统具有高可用性,允许为region同时维护多个副本,region多副本机制可以保证在Regionserver宕机时完全不影响读服务,写服务秒级恢复,有效的提升可用性,满足在线业务的需求。
附图说明
图1是本发明实施例1的一种分布式newSQL数据库系统的架构示意图;
图2是本发明实施例2的一种分布式newSQL数据库系统SQLPlaner生成执行计划方法的流程图;
图3是本发明实施例3的一种分布式newSQL数据库系统建立和查询多个二级索引方法的流程图;
图4是本发明实施例4的一种分布式newSQL数据库系统实现半结构化数据存取方法的流程图;
图5是本发明实施例5的一种分布式newSQL数据库系统实现图片数据存取方法的流程图;
图6是本发明实施例6的一种分布式newSQL数据库系统实现全文检索方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明实施例1的一种分布式newSQL数据库系统的架构示意图,该分布式newSQL数据库系统又名UrunBase数据库系统,其包括:
数据库接口,即JDBC\ODBC,用于用户向Master发送请求,并接收master返回的结果;
Master,用于负责以JDBC、ODBC的方式接入用户请求并且协调多个处理器之间的数据通讯以及管理整体流程,并将所述用户请求优先发送给SQLPlaner;
SQLPlaner,用于解析所述用户请求,编译以及定制执行计划;
DTM,即分布式事务管理器,用于协调所述计划中多方完成分布式事务管理;
Worker,即并行任务执行器,用于负责所述计划的任务并行地执行,以及将从数据库获得的数据进行归并汇总以返回给master;
hbase和搜索引擎服务器Solr,分别连接不同的worker,worker通过hbase和搜索引擎服务器Solr向所述数据库获取数据;
所述master连接一监视器,用于负责元数据管理以及用于监控底层hbase Region的负载,避免特定的region负载过高,以及利用hbase coprocessor重新分配Region。
本发明是基于hadoop大数据技术的分布式NewSQL数据库。当一个用户请求进入的时候,主要是执行如下的流程:
S1、Master主要负责以JDBC、ODBC的方式接入用户请求并且协调多个角色之间的数据通讯、管理整体流程,其首先会将请求发送给SQLPlaner;
S2、SQLPlaner主要用于解析用户请求,通过云润自研的高速SQL引擎UrunSQL编译SQL以及定制执行计划;
S3、DTM,主要用于当执行计划涉及事务时协调多方完成分布式事务管理。利用Java事务处理API(JTA)实现分布式事务处理和事务管理;
S4、Worker是并行任务执行器主要负责将执行计划的任务并行地执行,将从数据库得到的数据进行归并汇总以返回给master;
S5、master将请求结果返回给用户。
其中,Coprocessor为hbase自身提供的协同处理器,开发者可以在此基础上实现对数据的高效并行处理,同时提供Hmaster端的region管理扩展接口。
JTA,即Java Transaction API,JTA允许应用程序执行分布式事务处理——在两个或多个网络计算机资源上访问并且更新数据。
Solr是一个高性能的基于Lucene的全文搜索服务器,同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。
参见图2,是本发明实施例2的一种分布式newSQL数据库系统SQLPlaner生成执行计划方法的流程图,该实施例基于实施例1,其中,SQLPlaner生成执行计划的方法,其包括如下步骤:
1).输入SQL语句;
2).判断共享缓存池中是否已经存在该SQL,如若存在即输出该SQL对应的执行计划,不存在即执行下一步;
3).对SQL语句进行语法检查,如若语法错误即返回错误信息给用户,语法检查通过即执行下一步;
4).对SQL语句进行语义检查,如若语义错误即返回错误信息给用户,语义检查通过即执行下一步;
5).对SQL语句进行视图以及表达式转换;
6).根据上一步的转换结果进行优化器选择;
7).根据优化器的选择结果选择数据连接方式以及连接的顺序;
8).根据连接方式和连接顺序选择搜索的路径;
9).根据搜索路径生成执行计划;
10).输出执行计划。
完成所述执行计划定制后返回给master,master根据执行计划的内容判断是否需要所述分布式事务管理器的介入,如若需要即执行实施例1中的S3步骤,否则执行跳过实施例1中的S3步骤,执行实施例1中的S4步骤。
参见图3,是本发明实施例3的一种分布式newSQL数据库系统建立和查询多个二级索引方法的流程图,该实施例基于实施例2,其中,所述的分布式newSQL数据库系统实现建立和查询多个二级索引的方法包括如下步骤:
写请求:
11)用户发起写请求;
12)master处理sql请求并且联合SQLPlaner生成执行计划;
13)worker根据执行计划,将数据字段写入数据表;
14)利用hbase内部的coprocessor机制实现同步将数据生成倒排索引形式写入到索引表;
15)worker将hbase的处理结果返回给master;
16)master将结果返回给用户。
读请求:
21)用户发起读请求
22)master处理sql请求并且联合SQLPlaner生成执行计划
23)worker根据执行计划,先查询索引表,此处会利用coprocessor提高查询的并行度。
24)hbase中的索引coprocessor将索引表的索引ID返回
25)worker根据索引ID,利用hbase API查询数据表并返回给master。
26)master将查询结果合并后返回给用户
支持二级索引,高效解决非主键查询需求:UrunBase允许用户根据具体的业务逻辑灵活的建立二级索引,在实际应用中用户往往会建立多个二级索引,在使用时UrunBase会根据查询条件动态计算使用索引的代价,自动选择最合适的索引。hbase针对rowkey的查询极为高效,因此二级索引的实现方式为利用hbase的Coprocessor和Filter生成针对数据的索引表。在写入数据时,Coprocessor会根据索引定义将以倒排索引的方式将索引数据写入索引表,在查询阶段Coprocessor会根据索引定义以及查询条件优先查询索引表,通过索引表的查询结果再次查询数据表。同时利用Coprocessor的并行性提高整体的查询速度。
UrunBase支持半结构化数据、图片数据、全文检索均是以上面的二级索引流程作为基准,针对不同存储类型进行的细化工作。
参见图4,是本发明实施例4的一种分布式newSQL数据库系统实现半结构化数据存取方法的流程图,该实施例基于实施例3,其中,所述的分布式newSQL数据库系统实现半结构化数据存取的方法,该方法包括
写请求:
31)worker将JSON数据作为普通字符串类型整体作为一个字段写入到hbase的数据表中
32)hbase中的coprocessor根据字段描述,提取JSON中的数据,以倒排索引的方式将索引数据写入到另外的hbase索引表中。
读请求:
41)worker根据查询条件,查询索引表,此处会利用coprocessor提高查询的并行度。
42)hbase中的索引coprocessor将索引表的索引ID返回
43)worker根据索引ID,利用hbase API查询数据表,返回结果
UrunBase支持JSON数据格式,用户可以直接将JSON格式的数据存储在UrunBase之中,并对JSON的任意字段进行查询,创建索引以及删改。UrunBase在hbase底层新增了JSON类型数据,将JSON数据整体存储在底层HFile中,并且在构建二级索引时将JSON也作为一个嵌套的类型进行索引,因此能支持针对JSON的任意字段查询、创建索引以及删改。
参见图5,是本发明实施例5的一种分布式newSQL数据库系统实现图片数据存取方法的流程图,该实施例基于实施例3,其中,所述的分布式newSQL数据库系统实现图片数据存取的方法,该方法包括
写请求:
51)worker将图片数据生成MD5,将图片MD5写入到原始数据表。
52)worker将图片数据写入到图片数据表中进行独立存储。
读请求:
61)worker根据查询条件,查询原始数据表,得到图片的MD5
62)worker根据图片MD5,利用hbase API查询图片数据表,返回结果。
UrunBase提供LOB存储,LOB可以高效的满足单条数据大小在几百K到10M的二进制存储需求,用户可以通过LOB满足图片存储需求。UrunBase在hbase底层新增LOB类型,LOB类型参考了SQL中的BLOB类型的实现,将大对象存储为数据库中的一个位图,但是此处的LOB其实现为针对LOB类型建立另类索引,图片数据以位图存储在独立的数据表中,原始数据表仅仅存储索引ID,以此减少数据表大小。因为图片数据只能进行原子覆盖的修改以及相对独立的查询,在针对非图片字段的查询时能大大提升检索速度。
参见图6,是本发明实施例6的一种分布式newSQL数据库系统实现全文检索方法的流程图,该实施例基于实施例3,其中,所述的分布式newSQL数据库系统实现全文检索的方法包括
写请求:
71)worker将需要全文检索的字段作为普通字符串类型写入到hbase的数据表中7进行存储
2)hbase中的coprocessor根据字段描述,将数据写入到solr中进行索引
读请求:
81)worker根据查询条件,到solr中查询具体的索引ID
82)solr根据查询条件返回索引ID。
83)worker根据索引ID,利用hbase API查询数据表,返回结果。
UrunBase通过Solr支持分布式全文检索,用户可以为自己的表创建全文索引,并在SQL中使用全文检索语法进行搜索。该方式为二级索引的特殊扩展,也是利用coprocessor实现,针对需要全文检索的字段不再将索引数据存储到另外的索引表中,而是将索引数据存储到SOLR中,由SOLR提供全文检索的功能。在查询数据时,会针对被全文索引的字段将其查询语句从SQL条件语句转换成SOLR的查询表达式再进行查询,并且将SOLR的返回结果转化成通用数据格式再返回。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (9)
1.一种分布式newSQL数据库系统,其特征在于,包括:
数据库接口,用于用户向Master发送请求,并接收master返回的结果;
Master,用于负责以JDBC、ODBC的方式接入用户请求并且协调多个处理器之间的数据通讯以及管理整体流程,并将所述用户请求优先发送给SQLPlaner;
SQLPlaner,用于解析所述用户请求,编译以及定制执行计划;
分布式事务管理器,用于协调所述计划中多方完成分布式事务管理;
并行任务执行器,用于负责所述计划的任务并行地执行,以及将从数据库获得的数据进行归并汇总以返回给master。
2.如权利要求1所述的分布式newSQL数据库系统,其特征在于,所述并行任务执行器通过hbase和搜索引擎服务器向所述数据库获取数据。
3.如权利要求2所述的分布式newSQL数据库系统,其特征在于,所述master连接一监视器,用于负责元数据管理以及用于监控底层hbase Region的负载,避免特定的region负载过高,以及利用hbase coprocessor重新分配Region。
4.如权利要求1所述的分布式newSQL数据库系统的SQLPlaner生成执行计划的方法,其特征在于该方法包括
通过所述数据库接口输入SQL语句;
判断共享缓存池中是否已经存在该SQL,如若存在,输出该SQL对应的执行计划;
否则,对SQL语句进行语法检查和进行语义检查,语法检查和语义检查通过后,对SQL语句进行视图以及表达式转换;
根据所述转换结果进行优化器选择;
根据所述优化器的选择结果选择数据连接方式以及连接顺序;
根据所述连接方式和所述连接顺序选择搜索路径;
根据所述搜索路径生成执行计划并输出。
5.利用权利要求2所述的分布式newSQL数据库系统建立和查询多个二级索引的方法,其特征在于该方法包括
利用所述hbase的Coprocessor和Filter生成针对数据的索引表;所述Coprocessor根据索引定义将以倒排索引的方式将索引数据并行写入所述索引表,从而建立多个二级索引;
所述Master根据查询条件动态计算使用索引的代价;所述Coprocessor会根据索引定义以及查询条件优先查询所述索引表,并行地通过所述索引表查询结果再次查询数据表。
6.利用权利要求2所述的分布式newSQL数据库系统实现半结构化数据存取的方法,其特征在于该方法包括
所述并行任务执行器将JSON数据作为普通字符串类型整体作为一个字段写入到所述hbase的数据表中;所述hbase中的coprocessor根据字段描述,提取JSON中的数据,以倒排索引的方式将索引数据写入到另外的hbase索引表中,完成半结构化数据的存储;
所述并行任务执行器根据查询条件,利用coprocessor并行地查询索引表;所述hbase中的索引coprocessor将索引表的索引ID返回给所述并行任务执行器;所述并行任务执行器根据所述索引ID,利用hbase的API查询数据表,返回结果,完成半结构化数据的获取。
7.利用权利要求2所述的分布式newSQL数据库系统实现图片数据存取的方法,其特征在于该方法包括
所述并行任务执行器将图片数据生成信息摘要算法加密后的图像数据格式,将加密后的图片数据写入到原始数据表;所述并行任务执行器将加密后的所述图片数据写入到图片数据表中进行独立存储;
并行任务执行器根据查询条件,查询原始数据表,得到信息摘要算法加密后的图像数据;并行任务执行器根据加密后的所述图像数据,利用所述hbase的API查询图片数据表,获取图片数据。
8.根据权利要求7所述的分布式newSQL数据库系统实现图片数据存取的 方法,其特征在于
所述hbase底层增加LOB类型,针对LOB类型建立另类索引,将大对象图片数据存储为所述数据库中的一个位图,图片数据以位图存储在独立的数据表中,原始数据表仅仅存储索引ID。
9.利用权利要求2所述的分布式newSQL数据库系统实现全文检索的方法,其特征在于该方法包括
所述并行任务执行器将需要全文检索的字段作为普通字符串类型写入到所述hbase的数据表中进行存储,所述hbase中的coprocessor根据字段描述,将数据写入到搜索引擎服务器中进行索引;
所述并行任务执行器根据查询条件,到所述搜索引擎服务器中查询具体的索引ID,所述搜索引擎服务器根据查询条件返回索引ID,所述并行任务执行器根据索引ID,利用所述hbase的API查询数据表,获取查询数据。
Priority Applications (24)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610842399.7A CN106446153A (zh) | 2016-09-21 | 2016-09-21 | 一种分布式newSQL数据库系统及方法 |
CN201710580456.3A CN107402988B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和半结构化数据查询方法 |
CN201710580423.9A CN107402987B (zh) | 2016-09-21 | 2017-07-17 | 一种全文检索的方法和分布式NewSQL数据库系统 |
CN201710580752.3A CN107247808B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统及图片数据查询方法 |
CN201710580791.3A CN107291948B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式newSQL数据库的访问方法 |
CN201710580431.3A CN107491485B (zh) | 2016-09-21 | 2017-07-17 | 生成执行计划的方法、计划单元装置和分布式NewSQL数据库系统 |
CN201710580435.1A CN107480198B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和全文检索方法 |
CN201710580417.3A CN107463632B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和数据查询方法 |
CN201710581195.7A CN107451220B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统 |
CN201710581256.XA CN107391653B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统及图片数据储存方法 |
CN201710580403.1A CN107368575B (zh) | 2016-09-21 | 2017-07-17 | 一种负载均衡的分布式NewSQL数据库系统 |
CN201710581229.2A CN107491345B (zh) | 2016-09-21 | 2017-07-17 | 一种写入图片数据方法和分布式NewSQL数据库系统 |
CN201710585103.2A CN107402995B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式newSQL数据库系统及方法 |
CN201710580720.3A CN107402989B (zh) | 2016-09-21 | 2017-07-17 | 一种全文检索建立的方法和分布式NewSQL数据库系统 |
CN201710581237.7A CN107463635B (zh) | 2016-09-21 | 2017-07-17 | 一种图片数据查询的方法和分布式NewSQL数据库系统 |
CN201710580754.2A CN107402991B (zh) | 2016-09-21 | 2017-07-17 | 一种写入半结构化数据的方法和分布式NewSQL数据库系统 |
CN201710581275.2A CN107329837B (zh) | 2016-09-21 | 2017-07-17 | 一种负载均衡的方法和单元、分布式NewSQL数据库系统 |
CN201710581193.8A CN107451219B (zh) | 2016-09-21 | 2017-07-17 | 一种建立二级索引的方法和分布式NewSQL数据库 |
CN201710581273.3A CN107451221B (zh) | 2016-09-21 | 2017-07-17 | 一种数据库接口单元装置和分布式NewSQL数据库系统 |
CN201710580794.7A CN107451214B (zh) | 2016-09-21 | 2017-07-17 | 一种非主键查询方法和分布式NewSQL数据库系统 |
CN201710580416.9A CN107291947B (zh) | 2016-09-21 | 2017-07-17 | 一种半结构化数据查询的方法和分布式NewSQL数据库系统 |
CN201710580796.6A CN107402992B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和全文检索建立方法 |
CN201710580739.8A CN107402990B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和半结构化数据储存方法 |
CN201710581291.1A CN107463637B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和数据储存方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610842399.7A CN106446153A (zh) | 2016-09-21 | 2016-09-21 | 一种分布式newSQL数据库系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106446153A true CN106446153A (zh) | 2017-02-22 |
Family
ID=58166840
Family Applications (24)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610842399.7A Pending CN106446153A (zh) | 2016-09-21 | 2016-09-21 | 一种分布式newSQL数据库系统及方法 |
CN201710581237.7A Expired - Fee Related CN107463635B (zh) | 2016-09-21 | 2017-07-17 | 一种图片数据查询的方法和分布式NewSQL数据库系统 |
CN201710580796.6A Expired - Fee Related CN107402992B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和全文检索建立方法 |
CN201710580403.1A Expired - Fee Related CN107368575B (zh) | 2016-09-21 | 2017-07-17 | 一种负载均衡的分布式NewSQL数据库系统 |
CN201710581229.2A Expired - Fee Related CN107491345B (zh) | 2016-09-21 | 2017-07-17 | 一种写入图片数据方法和分布式NewSQL数据库系统 |
CN201710580720.3A Expired - Fee Related CN107402989B (zh) | 2016-09-21 | 2017-07-17 | 一种全文检索建立的方法和分布式NewSQL数据库系统 |
CN201710580423.9A Active CN107402987B (zh) | 2016-09-21 | 2017-07-17 | 一种全文检索的方法和分布式NewSQL数据库系统 |
CN201710581256.XA Expired - Fee Related CN107391653B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统及图片数据储存方法 |
CN201710581291.1A Expired - Fee Related CN107463637B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和数据储存方法 |
CN201710581193.8A Expired - Fee Related CN107451219B (zh) | 2016-09-21 | 2017-07-17 | 一种建立二级索引的方法和分布式NewSQL数据库 |
CN201710580739.8A Expired - Fee Related CN107402990B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和半结构化数据储存方法 |
CN201710580754.2A Expired - Fee Related CN107402991B (zh) | 2016-09-21 | 2017-07-17 | 一种写入半结构化数据的方法和分布式NewSQL数据库系统 |
CN201710581195.7A Expired - Fee Related CN107451220B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统 |
CN201710581275.2A Active CN107329837B (zh) | 2016-09-21 | 2017-07-17 | 一种负载均衡的方法和单元、分布式NewSQL数据库系统 |
CN201710581273.3A Expired - Fee Related CN107451221B (zh) | 2016-09-21 | 2017-07-17 | 一种数据库接口单元装置和分布式NewSQL数据库系统 |
CN201710580752.3A Expired - Fee Related CN107247808B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统及图片数据查询方法 |
CN201710580794.7A Expired - Fee Related CN107451214B (zh) | 2016-09-21 | 2017-07-17 | 一种非主键查询方法和分布式NewSQL数据库系统 |
CN201710580431.3A Active CN107491485B (zh) | 2016-09-21 | 2017-07-17 | 生成执行计划的方法、计划单元装置和分布式NewSQL数据库系统 |
CN201710580435.1A Expired - Fee Related CN107480198B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和全文检索方法 |
CN201710580791.3A Active CN107291948B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式newSQL数据库的访问方法 |
CN201710580456.3A Expired - Fee Related CN107402988B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和半结构化数据查询方法 |
CN201710580416.9A Expired - Fee Related CN107291947B (zh) | 2016-09-21 | 2017-07-17 | 一种半结构化数据查询的方法和分布式NewSQL数据库系统 |
CN201710585103.2A Expired - Fee Related CN107402995B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式newSQL数据库系统及方法 |
CN201710580417.3A Expired - Fee Related CN107463632B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和数据查询方法 |
Family Applications After (23)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710581237.7A Expired - Fee Related CN107463635B (zh) | 2016-09-21 | 2017-07-17 | 一种图片数据查询的方法和分布式NewSQL数据库系统 |
CN201710580796.6A Expired - Fee Related CN107402992B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和全文检索建立方法 |
CN201710580403.1A Expired - Fee Related CN107368575B (zh) | 2016-09-21 | 2017-07-17 | 一种负载均衡的分布式NewSQL数据库系统 |
CN201710581229.2A Expired - Fee Related CN107491345B (zh) | 2016-09-21 | 2017-07-17 | 一种写入图片数据方法和分布式NewSQL数据库系统 |
CN201710580720.3A Expired - Fee Related CN107402989B (zh) | 2016-09-21 | 2017-07-17 | 一种全文检索建立的方法和分布式NewSQL数据库系统 |
CN201710580423.9A Active CN107402987B (zh) | 2016-09-21 | 2017-07-17 | 一种全文检索的方法和分布式NewSQL数据库系统 |
CN201710581256.XA Expired - Fee Related CN107391653B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统及图片数据储存方法 |
CN201710581291.1A Expired - Fee Related CN107463637B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和数据储存方法 |
CN201710581193.8A Expired - Fee Related CN107451219B (zh) | 2016-09-21 | 2017-07-17 | 一种建立二级索引的方法和分布式NewSQL数据库 |
CN201710580739.8A Expired - Fee Related CN107402990B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和半结构化数据储存方法 |
CN201710580754.2A Expired - Fee Related CN107402991B (zh) | 2016-09-21 | 2017-07-17 | 一种写入半结构化数据的方法和分布式NewSQL数据库系统 |
CN201710581195.7A Expired - Fee Related CN107451220B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统 |
CN201710581275.2A Active CN107329837B (zh) | 2016-09-21 | 2017-07-17 | 一种负载均衡的方法和单元、分布式NewSQL数据库系统 |
CN201710581273.3A Expired - Fee Related CN107451221B (zh) | 2016-09-21 | 2017-07-17 | 一种数据库接口单元装置和分布式NewSQL数据库系统 |
CN201710580752.3A Expired - Fee Related CN107247808B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统及图片数据查询方法 |
CN201710580794.7A Expired - Fee Related CN107451214B (zh) | 2016-09-21 | 2017-07-17 | 一种非主键查询方法和分布式NewSQL数据库系统 |
CN201710580431.3A Active CN107491485B (zh) | 2016-09-21 | 2017-07-17 | 生成执行计划的方法、计划单元装置和分布式NewSQL数据库系统 |
CN201710580435.1A Expired - Fee Related CN107480198B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和全文检索方法 |
CN201710580791.3A Active CN107291948B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式newSQL数据库的访问方法 |
CN201710580456.3A Expired - Fee Related CN107402988B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和半结构化数据查询方法 |
CN201710580416.9A Expired - Fee Related CN107291947B (zh) | 2016-09-21 | 2017-07-17 | 一种半结构化数据查询的方法和分布式NewSQL数据库系统 |
CN201710585103.2A Expired - Fee Related CN107402995B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式newSQL数据库系统及方法 |
CN201710580417.3A Expired - Fee Related CN107463632B (zh) | 2016-09-21 | 2017-07-17 | 一种分布式NewSQL数据库系统和数据查询方法 |
Country Status (1)
Country | Link |
---|---|
CN (24) | CN106446153A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107391744A (zh) * | 2017-08-10 | 2017-11-24 | 东软集团股份有限公司 | 数据存储、读取方法、装置及其设备 |
CN107480260A (zh) * | 2017-08-16 | 2017-12-15 | 北京奇虎科技有限公司 | 大数据实时分析方法、装置、计算设备及计算机存储介质 |
CN107688660A (zh) * | 2017-09-08 | 2018-02-13 | 上海达梦数据库有限公司 | 并行执行计划的执行方法及装置 |
CN108228750A (zh) * | 2017-12-21 | 2018-06-29 | 浪潮软件股份有限公司 | 一种分布式数据库及其对数据进行管理的方法 |
CN109408515A (zh) * | 2018-11-01 | 2019-03-01 | 郑州云海信息技术有限公司 | 一种索引执行方法与装置 |
CN110086602A (zh) * | 2019-04-16 | 2019-08-02 | 上海交通大学 | 基于gpu的sm3密码散列算法的快速实现方法 |
CN110569257A (zh) * | 2019-09-16 | 2019-12-13 | 上海达梦数据库有限公司 | 数据处理方法、相应装置、设备及存储介质 |
CN112052347A (zh) * | 2020-10-09 | 2020-12-08 | 北京百度网讯科技有限公司 | 图像存储方法、装置以及电子设备 |
CN112925841A (zh) * | 2021-03-26 | 2021-06-08 | 瀚高基础软件股份有限公司 | 分布式jdbc实现方法、设备及计算机可读存储介质 |
CN113742370A (zh) * | 2021-11-02 | 2021-12-03 | 阿里云计算有限公司 | 全加密数据库的数据查询方法、统计信息密文生成方法 |
CN113806611A (zh) * | 2020-06-17 | 2021-12-17 | 海信集团有限公司 | 一种存储搜索引擎结果的方法及设备 |
CN116861455A (zh) * | 2023-06-25 | 2023-10-10 | 上海数禾信息科技有限公司 | 事件数据处理方法、系统、电子设备及存储介质 |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107766572A (zh) * | 2017-11-13 | 2018-03-06 | 北京国信宏数科技有限责任公司 | 基于经济领域数据的分布式提取及可视化分析方法和系统 |
CN108038215A (zh) * | 2017-12-22 | 2018-05-15 | 上海达梦数据库有限公司 | 数据处理方法及系统 |
CN109992409B (zh) * | 2018-01-02 | 2021-07-30 | 中国移动通信有限公司研究院 | 数据存储区域的切分方法、装置、系统、电子设备和介质 |
CN108829507B (zh) * | 2018-03-30 | 2019-07-26 | 北京百度网讯科技有限公司 | 分布式数据库系统的资源隔离方法、装置和服务器 |
CN108664616A (zh) * | 2018-05-14 | 2018-10-16 | 浪潮软件集团有限公司 | 一种基于ROWID的Oracle数据批量采集方法 |
CN108846044A (zh) * | 2018-05-30 | 2018-11-20 | 浪潮软件股份有限公司 | 一种地图应用部署方法及装置 |
CN108920519A (zh) * | 2018-06-04 | 2018-11-30 | 贵州数据宝网络科技有限公司 | 一对多数据供应系统及方法 |
CN109033209B (zh) * | 2018-06-29 | 2021-12-31 | 新华三大数据技术有限公司 | Spark存储过程处理方法及装置 |
CN109241076A (zh) * | 2018-08-01 | 2019-01-18 | 上海依图网络科技有限公司 | 一种数据查询方法及装置 |
CN109271428A (zh) * | 2018-09-11 | 2019-01-25 | 北京市计算中心 | 数据抽取方法及基于地理信息的数据展示方法 |
CN109408591B (zh) * | 2018-10-12 | 2021-11-09 | 北京聚云位智信息科技有限公司 | 支持sql驱动的ai与特征工程的决策型分布式数据库系统 |
CN109298976B (zh) * | 2018-10-17 | 2022-04-12 | 成都索贝数码科技股份有限公司 | 一种异构数据库集群备份系统及方法 |
CN109684412A (zh) * | 2018-12-25 | 2019-04-26 | 成都虚谷伟业科技有限公司 | 一种分布式数据库系统 |
CN109726250B (zh) * | 2018-12-27 | 2020-01-17 | 星环信息科技(上海)有限公司 | 数据存储系统、元数据库同步及数据跨域计算方法 |
CN111488340B (zh) * | 2019-01-29 | 2023-09-12 | 菜鸟智能物流控股有限公司 | 数据处理方法、装置及电子设备 |
CN110046161A (zh) * | 2019-03-18 | 2019-07-23 | 平安普惠企业管理有限公司 | 数据写入方法及装置、存储介质、电子设备 |
CN110110234B (zh) * | 2019-05-13 | 2020-10-16 | 重庆天蓬网络有限公司 | 一种大数据实时搜索系统和方法 |
CN110275901B (zh) * | 2019-06-25 | 2021-08-24 | 北京创鑫旅程网络技术有限公司 | 一种缓存数据调取方法及装置 |
CN110457363B (zh) * | 2019-07-05 | 2023-11-21 | 中国平安人寿保险股份有限公司 | 基于分布式数据库的查询方法、装置及存储介质 |
CN110413642B (zh) * | 2019-08-02 | 2022-05-27 | 北京快立方科技有限公司 | 一种应用无感知的分片数据库解析及优化方法 |
CN110704437B (zh) * | 2019-09-26 | 2022-05-20 | 上海达梦数据库有限公司 | 数据库查询语句的修改方法、装置、设备和存储介质 |
CN112688976A (zh) * | 2019-10-17 | 2021-04-20 | 广州迈安信息科技有限公司 | 一种采用jdbc/http标准的数据处理传输服务系统 |
CN110888919B (zh) * | 2019-12-04 | 2023-06-30 | 阳光电源股份有限公司 | 基于HBase的对大数据统计分析的方法及装置 |
CN113032479A (zh) * | 2019-12-24 | 2021-06-25 | 上海昂创信息技术有限公司 | 一种HBase非主键索引的方法及HBase系统 |
CN111309581B (zh) * | 2020-02-28 | 2023-09-12 | 中国工商银行股份有限公司 | 一种数据库升级场景下的应用性能检测方法及装置 |
CN111651453B (zh) * | 2020-04-30 | 2024-02-06 | 中国平安财产保险股份有限公司 | 用户历史行为查询方法、装置、电子设备及存储介质 |
CN113760960A (zh) * | 2020-06-01 | 2021-12-07 | 北京搜狗科技发展有限公司 | 一种信息生成方法、装置和用于生成信息的装置 |
CN111797112B (zh) * | 2020-06-05 | 2022-04-01 | 武汉大学 | 一种PostgreSQL预备语句执行优化方法 |
CN111930705B (zh) * | 2020-07-07 | 2023-03-14 | 中国电子科技集团公司电子科学研究院 | 二进制消息协议数据处理方法及装置 |
CN112148792B (zh) * | 2020-09-16 | 2024-04-12 | 鹏城实验室 | 一种基于HBase的分区数据调整方法、系统及终端 |
CN112416925B (zh) * | 2020-11-02 | 2024-04-09 | 浙商银行股份有限公司 | 基于有序分布式索引结构的查询方法和分布式数据库系统 |
CN112364033B (zh) * | 2021-01-13 | 2021-04-13 | 北京云真信科技有限公司 | 一种数据检索系统 |
CN113760900A (zh) * | 2021-02-19 | 2021-12-07 | 西安京迅递供应链科技有限公司 | 数据的实时汇总以及区间汇总的方法和装置 |
CN112905615B (zh) * | 2021-03-02 | 2023-03-24 | 浪潮云信息技术股份公司 | 一种基于顺序校验的分布式一致性协议提交方法及系统 |
CN113407662B (zh) * | 2021-08-19 | 2021-12-14 | 深圳市明源云客电子商务有限公司 | 敏感词识别方法、系统及计算机可读存储介质 |
CN115129724A (zh) * | 2022-08-29 | 2022-09-30 | 畅捷通信息技术股份有限公司 | 一种统计型报表分页方法、系统、设备及介质 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101477568A (zh) * | 2009-02-12 | 2009-07-08 | 清华大学 | 一种结构化数据和非结构化数据综合检索的方法 |
CN101567006B (zh) * | 2009-05-25 | 2012-07-04 | 中兴通讯股份有限公司 | 一种数据库系统及分布式sql语句执行计划重用方法 |
CN102163195B (zh) * | 2010-02-22 | 2013-04-24 | 北京东方通科技股份有限公司 | 一种基于分布式、异构数据库统一视图的查询优化方法 |
CN102375853A (zh) * | 2010-08-24 | 2012-03-14 | 中国移动通信集团公司 | 分布式数据库系统、在其中建立索引的方法和查询方法 |
CN102201010A (zh) * | 2011-06-23 | 2011-09-28 | 清华大学 | 无共享架构的分布式数据库系统及其实现方法 |
CN102289482A (zh) * | 2011-08-02 | 2011-12-21 | 北京航空航天大学 | 一种非结构化数据查询方法 |
CN103150304B (zh) * | 2011-12-06 | 2016-11-23 | 郑红云 | 云数据库系统 |
CN103577407B (zh) * | 2012-07-19 | 2016-10-12 | 国际商业机器公司 | 用于分布式数据库的查询方法及查询装置 |
US20140074860A1 (en) * | 2012-09-12 | 2014-03-13 | Pingar Holdings Limited | Disambiguator |
CN102902932B (zh) * | 2012-09-18 | 2015-12-02 | 武汉华工安鼎信息技术有限责任公司 | 基于sql重写的数据库外部加解密系统的使用方法 |
CN103092970A (zh) * | 2013-01-24 | 2013-05-08 | 华为技术有限公司 | 一种数据库操作方法及设备 |
US9773021B2 (en) * | 2013-01-30 | 2017-09-26 | Hewlett-Packard Development Company, L.P. | Corrected optical property value-based search query |
CN103377292B (zh) * | 2013-07-02 | 2017-02-15 | 华为技术有限公司 | 数据库结果集缓存方法及设备 |
US20150039587A1 (en) * | 2013-07-31 | 2015-02-05 | Oracle International Corporation | Generic sql enhancement to query any semi-structured data and techniques to efficiently support such enhancements |
CN103473321A (zh) * | 2013-09-12 | 2013-12-25 | 华为技术有限公司 | 数据库管理方法与系统 |
CN104794123B (zh) * | 2014-01-20 | 2018-07-27 | 阿里巴巴集团控股有限公司 | 一种为半结构化数据构建NoSQL数据库索引的方法及装置 |
CN103984726B (zh) * | 2014-05-16 | 2017-03-29 | 上海新炬网络信息技术有限公司 | 一种数据库执行计划的局部修正方法 |
CN104133858B (zh) * | 2014-07-15 | 2017-08-01 | 武汉邮电科学研究院 | 基于列存储的智能双引擎分析系统及方法 |
CN104503985A (zh) * | 2014-12-03 | 2015-04-08 | 浪潮电子信息产业股份有限公司 | 一种Hbase数据自动化创建Solr索引文件的方法 |
CN104572895B (zh) * | 2014-12-24 | 2018-02-23 | 天津南大通用数据技术股份有限公司 | MPP数据库与Hadoop集群数据互通方法、工具及实现方法 |
CN104731922A (zh) * | 2015-03-26 | 2015-06-24 | 江苏物联网研究发展中心 | 基于分布式数据库HBase的结构化数据的快速检索系统及方法 |
CN104750815B (zh) * | 2015-03-30 | 2017-11-03 | 浪潮集团有限公司 | 一种基于HBase的Lob数据的存储方法及装置 |
CN104731945B (zh) * | 2015-03-31 | 2018-04-06 | 浪潮集团有限公司 | 一种基于HBase的全文检索方法及装置 |
CN105389375B (zh) * | 2015-11-18 | 2018-10-02 | 福建师范大学 | 一种基于可视域的图像索引设置方法、系统及检索方法 |
CN105740410A (zh) * | 2016-01-29 | 2016-07-06 | 浪潮电子信息产业股份有限公司 | 一种基于Hbase二级索引的数据统计方法 |
-
2016
- 2016-09-21 CN CN201610842399.7A patent/CN106446153A/zh active Pending
-
2017
- 2017-07-17 CN CN201710581237.7A patent/CN107463635B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580796.6A patent/CN107402992B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580403.1A patent/CN107368575B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710581229.2A patent/CN107491345B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580720.3A patent/CN107402989B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580423.9A patent/CN107402987B/zh active Active
- 2017-07-17 CN CN201710581256.XA patent/CN107391653B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710581291.1A patent/CN107463637B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710581193.8A patent/CN107451219B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580739.8A patent/CN107402990B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580754.2A patent/CN107402991B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710581195.7A patent/CN107451220B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710581275.2A patent/CN107329837B/zh active Active
- 2017-07-17 CN CN201710581273.3A patent/CN107451221B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580752.3A patent/CN107247808B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580794.7A patent/CN107451214B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580431.3A patent/CN107491485B/zh active Active
- 2017-07-17 CN CN201710580435.1A patent/CN107480198B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580791.3A patent/CN107291948B/zh active Active
- 2017-07-17 CN CN201710580456.3A patent/CN107402988B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580416.9A patent/CN107291947B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710585103.2A patent/CN107402995B/zh not_active Expired - Fee Related
- 2017-07-17 CN CN201710580417.3A patent/CN107463632B/zh not_active Expired - Fee Related
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107391744A (zh) * | 2017-08-10 | 2017-11-24 | 东软集团股份有限公司 | 数据存储、读取方法、装置及其设备 |
CN107391744B (zh) * | 2017-08-10 | 2020-06-16 | 东软集团股份有限公司 | 数据存储、读取方法、装置及其设备 |
CN107480260A (zh) * | 2017-08-16 | 2017-12-15 | 北京奇虎科技有限公司 | 大数据实时分析方法、装置、计算设备及计算机存储介质 |
CN107688660B (zh) * | 2017-09-08 | 2020-03-13 | 上海达梦数据库有限公司 | 并行执行计划的执行方法及装置 |
CN107688660A (zh) * | 2017-09-08 | 2018-02-13 | 上海达梦数据库有限公司 | 并行执行计划的执行方法及装置 |
CN108228750A (zh) * | 2017-12-21 | 2018-06-29 | 浪潮软件股份有限公司 | 一种分布式数据库及其对数据进行管理的方法 |
CN109408515A (zh) * | 2018-11-01 | 2019-03-01 | 郑州云海信息技术有限公司 | 一种索引执行方法与装置 |
CN110086602A (zh) * | 2019-04-16 | 2019-08-02 | 上海交通大学 | 基于gpu的sm3密码散列算法的快速实现方法 |
CN110086602B (zh) * | 2019-04-16 | 2022-02-11 | 上海交通大学 | 基于gpu的sm3密码散列算法的快速实现方法 |
CN110569257A (zh) * | 2019-09-16 | 2019-12-13 | 上海达梦数据库有限公司 | 数据处理方法、相应装置、设备及存储介质 |
CN110569257B (zh) * | 2019-09-16 | 2022-04-01 | 上海达梦数据库有限公司 | 数据处理方法、相应装置、设备及存储介质 |
CN113806611A (zh) * | 2020-06-17 | 2021-12-17 | 海信集团有限公司 | 一种存储搜索引擎结果的方法及设备 |
CN112052347A (zh) * | 2020-10-09 | 2020-12-08 | 北京百度网讯科技有限公司 | 图像存储方法、装置以及电子设备 |
CN112052347B (zh) * | 2020-10-09 | 2024-06-04 | 北京百度网讯科技有限公司 | 图像存储方法、装置以及电子设备 |
CN112925841A (zh) * | 2021-03-26 | 2021-06-08 | 瀚高基础软件股份有限公司 | 分布式jdbc实现方法、设备及计算机可读存储介质 |
CN112925841B (zh) * | 2021-03-26 | 2022-11-08 | 瀚高基础软件股份有限公司 | 分布式jdbc实现方法、设备及计算机可读存储介质 |
CN113742370A (zh) * | 2021-11-02 | 2021-12-03 | 阿里云计算有限公司 | 全加密数据库的数据查询方法、统计信息密文生成方法 |
CN116861455A (zh) * | 2023-06-25 | 2023-10-10 | 上海数禾信息科技有限公司 | 事件数据处理方法、系统、电子设备及存储介质 |
CN116861455B (zh) * | 2023-06-25 | 2024-04-26 | 上海数禾信息科技有限公司 | 事件数据处理方法、系统、电子设备及存储介质 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106446153A (zh) | 一种分布式newSQL数据库系统及方法 | |
US9990399B2 (en) | Low latency query engine for apache hadoop | |
US20220075780A1 (en) | Multi-language fusion query method and multi-model database system | |
CN102262680B (zh) | 一种基于海量数据存取需求的分布式数据库代理系统 | |
CN110196871A (zh) | 数据入库方法和系统 | |
US20130166602A1 (en) | Cloud-enabled business object modeling | |
CN106030573A (zh) | 半结构化数据作为第一等级数据库元素的实现 | |
CN106202207A (zh) | 一种基于HBase‑ORM的索引及检索系统 | |
CN103605698A (zh) | 一种用于分布异构数据资源整合的云数据库系统 | |
CN103984745A (zh) | 分布式视频垂直搜索方法及系统 | |
CN105164673A (zh) | 跨数据库和文件系统的查询一体化 | |
CN103455335A (zh) | 一种多级分类的Web实现方法 | |
CN109241384A (zh) | 一种科研信息的可视化方法及装置 | |
CN104731969A (zh) | 分布式环境下海量数据连接聚集查询方法、装置和系统 | |
Li et al. | The overview of big data storage and management | |
CN106484694B (zh) | 基于分布式数据库的全文搜索方法及系统 | |
CN112800058A (zh) | 一种HBase二级索引的实现方法 | |
CN103838781A (zh) | 数据库访问方法及系统 | |
US20090100082A1 (en) | Replication and mapping mechanism for recreating memory durations | |
CN103853612A (zh) | 一种基于分布式存储下的数字家庭内容读数据的方法 | |
Ye | Research on the key technology of big data service in university library | |
Chereja et al. | Operationalizing analytics with NewSQL | |
CN104133831A (zh) | 跨域数据联接系统、跨域数据联接方法及节点 | |
Yadav et al. | Modern Technologies of Big Data Analytics: Case study on Hadoop Platform | |
CN103744989A (zh) | 一种层次节点数据的查询方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170222 |
|
WD01 | Invention patent application deemed withdrawn after publication |