CN102163195B - 一种基于分布式、异构数据库统一视图的查询优化方法 - Google Patents
一种基于分布式、异构数据库统一视图的查询优化方法 Download PDFInfo
- Publication number
- CN102163195B CN102163195B CN 201010112856 CN201010112856A CN102163195B CN 102163195 B CN102163195 B CN 102163195B CN 201010112856 CN201010112856 CN 201010112856 CN 201010112856 A CN201010112856 A CN 201010112856A CN 102163195 B CN102163195 B CN 102163195B
- Authority
- CN
- China
- Prior art keywords
- query statement
- sql query
- unified view
- inquiry
- sql
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于分布式、异构数据库统一视图的查询优化方法,包括步骤:为分布式、异构数据库配置供外部访问的统一视图;对所述统一视图的SQL查询语句按要查询数据库的物理表进行有效分解以最大减少访问次数;用分解出的SQL查询语句查询对应的物理表并返回结果数据,其中首先查询缓存区,若缓存区中有相应的结果数据则直接获取结果,在查询物理表时为了每次最大可能地得到最优的结果集,对SQL查询语句进行优先级设置;将上述查询物理表返回的结果数据进行组合后,连同对应的SQL查询语句存储到缓存区中。本发明提高了分布式异构数据库统一视图查询的效率,节省了资源的占用。
Description
技术领域
本发明涉及数据库应用技术领域,特别涉及一种计算机网络中基于分布式、异构数据库统一视图的查询优化方法。
背景技术
当前的企业信息化数据已经逐步形成,但是由于信息化的时间、执行力度不一致导致数据分散在网络中,数据形式不一致,而且这些分散的数据之间往往又互相有一定关联,这些数据如果孤立起来就只是一个简单的存储,现在的情况是这些作为存储的信息已经基本完备,而应用往往是需要把各个相对独立却又有关联的数据进行方便、高效、可靠的统一访问。
要解决上述问题,统一视图是一个通用的解决方案,统一视图是多个数据库向外提供的单一视图,与各个异构数据库中的表及字段形成映射;统一视图查询是通过对统一视图的操作实现对分布式、异构数据库的多个表的数据进行关联查询和集中展现。目前统一视图查询通常都是由以下步骤实现的:
1、为异地、异构数据库配置供外部访问的统一视图。
2、统一视图对外提供JDBC、ODBC应用开发接口,支持基于SQL的数据查询。
3、系统对查询的SQL语句按真正对应的数据库的物理表进行有效分解。
4、把分解的SQL语句逐个去对应物理表进行查询并返回结果数据。
5、结果数据进行组合并采取适当缓存。
通常实现中可能也有对某一步的某一个方面进行优化的情况。通常的做法是在SQL分解阶段按物理表单独分解SQL,而没有分析组合同一数据库多张关联表的情况;在查询阶段没有很好的利用最小结果集的概念,有效的对SQL优先级机制进行处理,导致每一次查询都拿不到一个最小结果集,使得对统一视图查询效率不高,资源占用多。
发明内容
(一)要解决的技术问题
本发明的目的是提供一种基于分布式、异构数据库统一视图的查询优化方法,以解决现有技术中统一视图查询效率不高,资源占用多的问题。
(二)技术方案
一种基于分布式、异构数据库统一视图的查询优化方法,包括步骤:
S1:对所述统一视图的SQL查询语句按要查询数据库的物理表进行有效分解,包括:
当所述统一视图对应的物理表属于同一数据库时,将所述对统一视图SQL查询语句分解为查询所述物理表的一条关联SQL查询语句;
当所述统一视图对应的物理表属于多个异构数据库时,将所述对统一视图的SQL查询语句按单个数据库的物理表独立分解成各自的SQL查询语句,包括两种情况:
若所述单个数据库中的部分物理表相互关联,则把所述独立分解的SQL查询语句组合成一条查询相互关联物理表的多表关联SQL查询语句;
若数据库中的表A是和本数据库中的其它表没有关联,则对所述表A单独构成一条单表SQL查询语句;
S2:用步骤S1中分解出的SQL查询语句查询对应的物理表并返回结果数据;
S3:将步骤S2中查询物理表返回的结果数据进行组合后,连同对应的SQL查询语句存储到缓存区中。
其中,所述步骤S2包括:
S21:查找缓存区,找出缓存区中的SQL查询语句,判断当前查询的SQL查询语句的查询条件是否被所述缓存区中的SQL查询语句的查询条件所包含,若包含,则返回所述缓存区中与当前查询的SQL查询语句的查询条件对应的查询结果;
S22:若不包含,则对S1中分解出的SQL查询语句进行优先级设置,然后按优先级查询对应的物理表并返回查询结果。
其中,所述步骤S21中判断原则为:
缓存区中的SQL查询语句查询的统一视图和当前SQL查询语句要查询的统一视图相同,且当前SQL查询语句的查询结果字段被包含在缓存区的SQL查询语句查询结果字段中;
判断查询条件的字段和值是否完全相同,如果完全相同,则返回所述缓存区中由该查询条件得到的相应的查询结果;
判断查询条件的字段是否是缓存查询条件的一个子集,如果是子集,并且条件值相同,则返回所述缓存区中由该查询条件子集查询得到的相应的查询结果;
判断查询条件的字段是否是缓存查询条件的一个子集,如果是子集,但查询条件值不相同,则判断查询条件的值是否是缓存查询条件值的一个子集,如果是子集,则返回所述缓存区中由该查询条件值的子集得到的相应的查询结果。
其中,所述步骤S22中优先级设置原则为:
包含查询条件的多表关联查询优先级最高;
其次是包含查询条件的单表查询;
然后是不带条件的多表查询;
最后是不带条件的单表查询。
其中,所述步骤S22按优先级查询时将高优先级的查询结果集作为低优先级查询的条件集。
其中,所述步骤S1前还包括步骤:
为分布式、异构数据库配置供外部访问的统一视图,所述统一视图包括JDBC和ODBC应用开发接口,且支持基于SQL的数据查询。
一种基于分布式、异构数据库统一视图的查询优化系统,包括:
查询语句分解模块,用于对所述统一视图的SQL查询语句按要查询数据库的物理表进行有效分解,
当所述统一视图对应的物理表属于同一数据库时,将所述对统一视图的SQL查询语句分解为查询所述物理表的一条关联的SQL查询语句;
当所述统一视图对应的物理表属于多个异构数据库时,将所述对统一视图的SQL查询语句按单个数据库的物理表独立分解成各自的SQL查询语句,包括两种情况:
若所述单个数据库中的部分物理表相互关联,则把所述独立分解的SQL查询语句组合成一条查询相互关联物理表的多表关联SQL查询语句;
若数据库中的表A是和本数据库中的其它表没有关联,则对所述表A单独构成一条单表SQL查询语句;
查询模块,用于利用查询语句分解模块中分解出的SQL查询语句查询对应的物理表并返回结果数据;
数据缓存模块,用于将查询模块中查询物理表返回的结果数据进行组合后,连同对应的SQL查询语句存储到缓存区中。
其中,所述查询模块包括:
缓存区查询模块,用于查找缓存区,找出缓存区中的SQL查询语句,判断当前查询的SQL查询语句的查询条件是否被所述缓存区中的SQL查询语句的查询条件所包含,若包含,则返回所述缓存区中与当前查询的SQL查询语句的查询条件对应的查询结果;
物理表查询模块,用于若不包含时,则对S1中分解出的SQL查询语句进行优先级设置,然后按优先级查询对应的物理表并返回查询结果。
其中,所述系统还包括:
统一视图提供模块,用于为分布式、异构数据库配置供外部访问的统一视图,所述统一视图包括JDBC和ODBC应用开发接口,且支持基于SQL的数据查询。
(三)有益效果
本发明的基于分布式、异构数据库统一视图的查询优化方法提高了分布式异构数据库统一视图查询的效率,节省了资源的占用。
附图说明
图1是根据本发明的基于分布式、异构数据库统一视图的查询优化方法的流程图。
具体实施方式
本发明提出的基于分布式、异构数据库统一视图的查询优化方法,结合附图和实施例说明如下。
本发明的方法是对现有的基于分布式、异构数据库统一视图的查询方法优化而成,主要对现有步骤中的以下三个步骤进行了优化:
1、系统对查询的SQL语句按真正对应的数据库的物理表进行有效分解;
2、把分解的SQL语句逐个去对应物理表进行查询并返回结果数据;
3、结果数据进行组合并采取适当缓存。
在SQL语句分解阶段充分考虑同一物理库多个表的关联情况下如何分解SQL,最大减少访问次数;在SQL语句逐个查询阶段,根据查询条件关联条件等因素对SQL语句的执行顺序按优先级进行了合理编排,每次尽最大可能地拿到最优的结果集;在缓存的处理上,对数据查询的请求是否有缓存数据存在的判断进行了更智能的处理,系统可以根据新查询请求的条件分析此次查询的结果是否被包含在之前已有的缓存中。
如图1所示,步骤S101首先为分布式、异构数据库配置供外部访的统一视图,该视图包括JDBC和ODBC应用开发接口,且支持基于SQL的数据查询。
步骤S 102中将对所述统一视图的SQL查询语句按要查询数据库的物理表进行有效分解,通常的实现方式是把针对视图查询的SQL语句分解成一个个对应的不同的物理表的查询语句,不同于通常方法的是,为了最大减少访问次数,在分解时按以下情况进行:
当视图对应的物理表属于同一数据库时,将所述对统一视图SQL查询语句分解为查询所述物理表的SQL查询语句;
当所述统一视图对应的物理表属于多个异构数据库时,将所述对统一视图SQL查询语句按单个数据库的物理表独立分解成各自的SQL查询语句,包括两种情况:
1、若所述单个数据库中的部分物理表相互关联,则把所述独立分解的SQL查询语句组合成一条查询相互关联物理表的多表关联SQL查询语句;
2、若数据库中的表A是和本数据库中的其它表没有关联,则对所述表A单独构成一条单表SQL查询语句。
经过步骤S102分解后得到了对应于物理表的SQL查询语句,接着用步骤S102中分解出的SQL查询语句查询对应的物理表,并返回结果数据,在查询时分成两种情况:
1、查找缓存区,该缓存区存储有分解后的SQL查询语句和该查询语句查询到结果数据。找出缓存区中的SQL查询语句,判断当前查询的SQL查询语句的查询条件是否被所述缓存区中的SQL查询语句的查询条件所包含,若包含,则返回所述缓存区中与当前查询的SQL查询语句的查询条件对应的查询结果,见步骤S103,该步骤中具体判断原则如下:
缓存区中的SQL查询语句查询的统一视图和当前SQL查询语句要查询的统一视图相同,且当前SQL查询语句的查询结果字段被包含在缓存区的SQL查询语句查询结果字段中;
判断查询条件的字段和值是否完全相同,如果完全相同,则返回所述缓存区中由该查询条件得到的相应的查询结果;
判断查询条件的字段是否是缓存查询条件的一个子集,如果是子集,并且条件值相同,则返回所述缓存区中由该查询条件子集查询得到的相应的查询结果;
判断查询条件的字段是否是缓存查询条件的一个子集,如果是子集,但查询条件值不相同,则判断查询条件的值是否是缓存查询条件值的一个子集,如果是子集,则返回所述缓存区中由该查询条件值的子集得到的相应的查询结果。
2、若缓存区中没有包含上述的SQL查询语句,则执行步骤S104,即根据当前的SQL查询语句查询其对应的物理表,并将结果返回。在步骤S104中为了每次最大可能地得到最优的查询结果集,在查询前对当前的SQL查询语句进行优先级设置,按优先级的顺序查询,优先级设置原则如下:
包含查询条件的多表关联查询优先级最高;
其次是包含查询条件的单表查询;
然后是不带条件的多表查询;
最后是不带条件的单表查询。
这样,按优先级进行查询,多数情况下获取的都是最小的一个结果集,拿这个小的结果集再作为下一个相关查询的查询条件进行查询。会在很大程度上提高查询效率和资源占用的情况。
步骤S105中将步骤S104的查询结果进行组合,并连同相应的SQL查询语句存储到缓存区中,以供下次有类似查询时直接从缓存区中获取查询结果。
以下通过一个实例说明上述优化方法,A、B和C互为异构数据库:
数据库A(SQL Server):表(字段):T_A1(id_a1,xxx),T_A2(id_a2,xxx)
数据库B(Oracle):表(字段):T_B1(id_b1,xxx),T_B2(id_b2,xxx)
数据库C(Sybase):表(字段):T_C1(id_c1,xxx)。
把上述5张表进行关联配置为一个统一的视图(ViewX):
T_A1.id_a1=T_B1.id_b1
T_A2.id_a2=T_B1.id_b1
T_B1.id_b1=T_B2.id_b2
T_B2.id_b2=T_C1.id_c1
实际查询语句:“select*from View X where id_c1<200;”。
具体步骤:
步骤S1:SQL分解,把统一视图的查询语句按要查询数据库的物理表进行有效分解,分解为针对不同物理表的查询语句,该统一视图对应的物理表属于多个异构数据库(A、B和C),数据库B中的表T_B1和T_B2是相互关联的,所以要将对表T_B1和T_B2的单表查询语句组合为相关联的多表查询语句(查询语句c):
a.select*from T_A1 where T_A1.id_a1=?
b.select*from T_A2 where T_A2.id_a2=?
c.select*from T_B1,T_B2 where T_B1.id_b1=T_B2.id_b2 andT_B2.id_b2=?
d.select*from T_C1 where T_C1.id_c1<200
步骤S2,首先查询缓存区,找出缓存区中的SQL查询语句,由于本例为第一次查询,缓存区中没有相关的查询语句,所以直接查询物理表,在查询前对SQL查询语句a、b、c和d按上述优先级原则进行优先级排序为:d->c->b、a,按优先级查询时步骤如下:
1)先执行d返回一个结果集。
2)执行c,查询条件中的?替换为1)的结果集。
3)并发执行b和a,查询条件中的?替换为2)的执行结果。
4)返回执行结果集。
步骤S3,数据缓存:
1)缓存上述查询语句及对应的结果集到本地数据库。
2)下次再有查询过来比较查询语句中的查询的统一视图、查询结果字段和查询条件。
如果下次查询的还是统一的视图ViewX,查询语句为:“select*from ViewX where id_c1<N;”或“selectid_c1 from ViewX where id_c1<N;”,前一条SQL的查询字段和包含在缓存区的SQL查询语句查询结果字段完全相同,后一条SQL语句的查询结果字段被包含在缓存区的SQL查询语句查询结果字段中。查询条件是id_c1<N,若N等于200或者比200小的数,就可以直接从缓存获取。
本发明还提出了一种基于分布式、异构数据库统一视图的查询优化系统,包括:查询语句分解模块,用于对所述统一视图的SQL查询语句按要查询数据库的物理表进行有效分解,当视图对应的物理表属于同一数据库时,将所述对统一视图SQL查询语句分解为查询所述物理表一条关联的SQL查询语句;当所述统一视图对应的物理表属于多个异构数据库时,将所述对统一视图SQL查询语句按单个数据库的物理表独立分解成各自的SQL查询语句,包括两种情况:若所述单个数据库中的部分物理表相互关联,则把所述独立分解的SQL查询语句组合成一条查询相互关联物理表的多表关联SQL查询语句;若数据库中的表A是和本数据库中的其它表没有关联,则对所述表A单独构成一条单表SQL查询语句;查询模块,用于利用查询语句分解模块中分解出的SQL查询语句查询对应的物理表并返回结果数据;数据缓存模块,用于将查询模块中查询物理表返回的结果数据进行组合后,连同对应的SQL查询语句存储到缓存区中。
其中,所述查询模块包括:缓存区查询模块,用于查找缓存区,找出缓存区中的SQL查询语句,判断当前查询的SQL查询语句的查询条件是否被所述缓存区中的SQL查询语句的查询条件所包含,若包含,则返回所述缓存区中与当前查询的SQL查询语句的查询条件对应的查询结果;物理表查询模块,用于若不包含时,则对S1中分解出的SQL查询语句进行优先级设置,然后按优先级查询对应的物理表并返回查询结果。
其中,所述系统还包括:统一视图提供模块,用于为分布式、异构数据库配置供外部访问的统一视图,所述统一视图包括JDBC和ODBC应用开发接口,且支持基于SQL的数据查询。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (7)
1.一种基于分布式、异构数据库统一视图的查询优化方法,其特征在于,包括步骤:
S1:对所述统一视图的SQL查询语句按要查询数据库的物理表进行有效分解,包括:
当所述统一视图对应的物理表属于同一数据库时,将所述对统一视图的SQL查询语句分解为查询所述物理表的一条关联SQL查询语句;
当所述统一视图对应的物理表属于多个异构数据库时,将所述对统一视图的SQL查询语句按单个数据库的物理表独立分解成各自的SQL查询语句,包括两种情况:
若所述单个数据库中的部分物理表相互关联,则把所述独立分解的SQL查询语句组合成一条查询相互关联物理表的多表关联SQL查询语句;
若数据库中的表A是和本数据库中的其它表没有关联,则对所述表A单独构成一条单表SQL查询语句;
S2:用步骤S1中分解出的SQL查询语句查询对应的物理表并返回结果数据,具体包括:
S21:查找缓存区,找出缓存区中的SQL查询语句,判断当前查询的SQL查询语句的查询条件是否被所述缓存区中的SQL查询语句的查询条件所包含,若包含,则返回所述缓存区中与当前查询的SQL查询语句的查询条件对应的查询结果;
S22:若不包含,则对S1中分解出的SQL查询语句进行优先级设置,然后按优先级查询对应的物理表并返回查询结果;
S3:将步骤S2中查询物理表返回的结果数据进行组合后,连同对应的SQL查询语句存储到缓存区中。
2.如权利要求1所述的基于分布式、异构数据库统一视图的查询优化方法,其特征在于,所述步骤S21中判断原则为:
缓存区中的SQL查询语句查询的统一视图和当前SQL查询语句要查询的统一视图相同,且当前SQL查询语句的查询结果字段被包含在缓存区的SQL查询语句查询结果字段中;
判断查询条件的字段和值是否完全相同,如果完全相同,则返回所述缓存区中由该查询条件得到的相应的查询结果;
判断查询条件的字段是否是缓存查询条件的一个子集,如果是子集,并且条件值相同,则返回所述缓存区中由该查询条件子集查询得到的相应的查询结果;
判断查询条件的字段是否是缓存查询条件的一个子集,如果是子集,但查询条件值不相同,则判断查询条件的值是否是缓存查询条件值的一个子集,如果是子集,则返回所述缓存区中由该查询条件值的子集得到的相应的查询结果。
3.如权利要求1所述的基于分布式、异构数据库统一视图的查询优化方法,其特征在于,所述步骤S22中优先级设置原则为:
包含查询条件的多表关联查询优先级最高;
其次是包含查询条件的单表查询;
然后是不带条件的多表查询;
最后是不带条件的单表查询。
4.如权利要求3所述的基于分布式、异构数据库统一视图的查询优化方法,其特征在于,所述步骤S22按优先级查询时将高优先级的查询结果集作为低优先级查询的条件集。
5.如权利要求1-4任一所述的基于分布式、异构数据库统一视图的查询优化方法,其特征在于,所述步骤S1前还包括步骤:
为分布式、异构数据库配置供外部访问的统一视图,所述统一视图包括JDBC和ODBC应用开发接口,且支持基于SQL的数据查询。
6.一种基于分布式、异构数据库统一视图的查询优化系统,其特征在于,包括:
查询语句分解模块,用于对所述统一视图的SQL查询语句按要查询数据库的物理表进行有效分解,
当所述统一视图对应的物理表属于同一数据库时,将所述对统一视图的SQL查询语句分解为查询所述物理表的一条关联的SQL查询语句;
当所述统一视图对应的物理表属于多个异构数据库时,将所述对统一视图的SQL查询语句按单个数据库的物理表独立分解成各自的SQL查询语句,包括两种情况:
若所述单个数据库中的部分物理表相互关联,则把所述独立分解的SQL查询语句组合成一条查询相互关联物理表的多表关联SQL查询语句;
若数据库中的表A是和本数据库中的其它表没有关联,则对所述表A单独构成一条单表SQL查询语句;
查询模块,用于利用查询语句分解模块中分解出的SQL查询语句查询对应的物理表并返回结果数据;
数据缓存模块,用于将查询模块中查询物理表返回的结果数据进行组合后,连同对应的SQL查询语句存储到缓存区中;
其中,所述查询模块包括:
缓存区查询模块,用于查找缓存区,找出缓存区中的SQL查询语句,判断当前查询的SQL查询语句的查询条件是否被所述缓存区中的SQL查询语句的查询条件所包含,若包含,则返回所述缓存区中与当前查询的SQL查询语句的查询条件对应的查询结果;
物理表查询模块,用于若不包含时,则对S1中分解出的SQL查询语句进行优先级设置,然后按优先级查询对应的物理表并返回查询结果。
7.如权利要求6所述的基于分布式、异构数据库统一视图的查询优化系统,其特征在于,所述系统还包括:
统一视图提供模块,用于为分布式、异构数据库配置供外部访问的统一视图,所述统一视图包括JDBC和ODBC应用开发接口,且支持基于SQL的数据查询。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010112856 CN102163195B (zh) | 2010-02-22 | 2010-02-22 | 一种基于分布式、异构数据库统一视图的查询优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010112856 CN102163195B (zh) | 2010-02-22 | 2010-02-22 | 一种基于分布式、异构数据库统一视图的查询优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102163195A CN102163195A (zh) | 2011-08-24 |
CN102163195B true CN102163195B (zh) | 2013-04-24 |
Family
ID=44464428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010112856 Active CN102163195B (zh) | 2010-02-22 | 2010-02-22 | 一种基于分布式、异构数据库统一视图的查询优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102163195B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106547781B (zh) * | 2015-09-21 | 2021-06-11 | 南京中兴新软件有限责任公司 | 一种实现分布式事务的方法、装置及数据库服务器 |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8868546B2 (en) * | 2011-09-15 | 2014-10-21 | Oracle International Corporation | Query explain plan in a distributed data management system |
CN102521307A (zh) * | 2011-12-01 | 2012-06-27 | 北京人大金仓信息技术股份有限公司 | 一种云计算环境下的无共享数据库集群并行查询处理方法 |
CN102819557B (zh) * | 2012-06-28 | 2016-01-13 | 用友网络科技股份有限公司 | 数据查询处理装置和数据查询处理方法 |
CN103577424B (zh) * | 2012-07-24 | 2017-11-07 | 中兴通讯股份有限公司 | 分布式数据库视图的实现方法及系统 |
CN103064960B (zh) * | 2012-12-31 | 2016-09-07 | 华为技术有限公司 | 数据库查询方法及设备 |
US9189446B2 (en) * | 2013-01-04 | 2015-11-17 | Microsoft Technology Licensing, Llc | Immutable sharable zero-copy data and streaming |
CN103136364B (zh) * | 2013-03-14 | 2016-08-24 | 曙光信息产业(北京)有限公司 | 集群数据库系统及其数据查询处理方法 |
CN103123652A (zh) * | 2013-03-14 | 2013-05-29 | 曙光信息产业(北京)有限公司 | 数据查询方法和集群数据库系统 |
CN103559307A (zh) * | 2013-11-18 | 2014-02-05 | 中国农业银行股份有限公司 | 一种查询的缓存方法及装置 |
CN104050297B (zh) * | 2014-07-03 | 2017-09-29 | 中国工商银行股份有限公司 | 一种查询事务分配方法及装置 |
CN104112008A (zh) * | 2014-07-16 | 2014-10-22 | 深圳市国泰安信息技术有限公司 | 一种多表数据关联查询优化方法和装置 |
CN104484400B (zh) * | 2014-12-12 | 2018-02-23 | 北京国双科技有限公司 | 数据查询处理方法及装置 |
CN104572979B (zh) * | 2014-12-31 | 2018-09-11 | 北京锐安科技有限公司 | 一种处理结构化查询语言sql的方法及装置 |
CN106933842B (zh) * | 2015-12-29 | 2020-09-22 | 阿里巴巴集团控股有限公司 | 一种数据库查询方法和装置 |
CN106980865B (zh) * | 2016-01-19 | 2020-06-02 | 阿里巴巴集团控股有限公司 | 多条件提取中优化提取性能的方法及装置 |
CN107025240A (zh) * | 2016-02-01 | 2017-08-08 | 国家超级计算深圳中心(深圳云计算中心) | 一种语义网络中本体查询的缓存方法及系统 |
CN105912624B (zh) * | 2016-04-07 | 2019-05-24 | 北京中安智达科技有限公司 | 分布式部署的异构数据库的查询方法 |
CN105930407B (zh) * | 2016-04-18 | 2019-05-17 | 北京思特奇信息技术股份有限公司 | 一种分布式数据库跨库关联查询方法及系统 |
CN105847437B (zh) * | 2016-05-26 | 2022-12-27 | 北京科技大学 | 一种数据传输方法 |
CN106446153A (zh) * | 2016-09-21 | 2017-02-22 | 广州特道信息科技有限公司 | 一种分布式newSQL数据库系统及方法 |
CN107273506B (zh) * | 2017-06-19 | 2020-06-16 | 西安电子科技大学 | 一种数据库多表联合查询的方法 |
CN107451208B (zh) * | 2017-07-12 | 2020-08-21 | 北京潘达互娱科技有限公司 | 一种数据搜索方法与装置 |
CN107491510A (zh) * | 2017-08-03 | 2017-12-19 | 国网江苏省电力公司信息通信分公司 | 一种混合异构数据源统一查询系统及分布式查询方法 |
CN107480252A (zh) * | 2017-08-14 | 2017-12-15 | 浪潮软件股份有限公司 | 一种数据查询方法、客户端、服务端及系统 |
CN107577741A (zh) * | 2017-08-28 | 2018-01-12 | 深圳市华傲数据技术有限公司 | 一种数据查询的处理方法及装置 |
CN107609091B (zh) * | 2017-09-08 | 2020-10-27 | 国云科技股份有限公司 | 一种跨库多表联合查询系统的实现方法 |
CN110119402B (zh) * | 2018-01-26 | 2021-09-07 | 华为技术有限公司 | 数据查询方法、装置、设备及存储介质 |
CN108399233A (zh) * | 2018-02-24 | 2018-08-14 | 山东汇贸电子口岸有限公司 | 一种基于算法的分布式数据库的查询优化方法 |
CN110727693A (zh) * | 2018-07-16 | 2020-01-24 | 中兴通讯股份有限公司 | 访问异构数据库的方法、装置、设备、插件及存储介质 |
CN109657174B (zh) * | 2018-12-25 | 2023-06-02 | 北京百度网讯科技有限公司 | 用于更新数据的方法和装置 |
CN111597214A (zh) * | 2019-02-21 | 2020-08-28 | 北京京东尚科信息技术有限公司 | 用于数据查询的方法、装置、计算机系统及介质 |
CN109947796B (zh) * | 2019-04-12 | 2021-04-30 | 北京工业大学 | 一种分布式数据库系统查询中间结果集的缓存方法 |
CN110597844B (zh) * | 2019-08-14 | 2023-07-21 | 中国平安财产保险股份有限公司 | 异构数据库数据统一访问方法及相关设备 |
CN110489427A (zh) * | 2019-08-26 | 2019-11-22 | 杭州城市大数据运营有限公司 | 一种数据查询方法、装置、计算机设备和存储介质 |
CN110597927B (zh) * | 2019-10-14 | 2022-08-16 | 上海依图网络科技有限公司 | 基于异构数据库的存储查询方法和装置 |
CN111159228A (zh) * | 2019-12-26 | 2020-05-15 | 北京神州绿盟信息安全科技股份有限公司 | 一种数据查询方法和装置 |
CN113220718B (zh) * | 2021-05-19 | 2023-01-20 | 北京达佳互联信息技术有限公司 | 数据查询方法、装置、电子设备以及存储介质 |
CN117539912A (zh) * | 2023-11-23 | 2024-02-09 | 武汉软件工程职业学院(武汉开放大学) | 一种加速异构数据源访问的系统、方法及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1877523A (zh) * | 2006-06-23 | 2006-12-13 | 清华大学 | 一种支持异构构件的构件库统一管理方法 |
CN101030224A (zh) * | 2006-03-03 | 2007-09-05 | 国际商业机器公司 | 用于构建跨越异构环境的统一查询的系统和方法 |
CN101149749A (zh) * | 2007-10-29 | 2008-03-26 | 浙江大学 | 一种基于语义的异质异构关系型数据库的数据集成方法 |
CN101187937A (zh) * | 2007-10-30 | 2008-05-28 | 北京航空航天大学 | 网格环境下模式复用的异构数据库访问和集成方法 |
-
2010
- 2010-02-22 CN CN 201010112856 patent/CN102163195B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030224A (zh) * | 2006-03-03 | 2007-09-05 | 国际商业机器公司 | 用于构建跨越异构环境的统一查询的系统和方法 |
CN1877523A (zh) * | 2006-06-23 | 2006-12-13 | 清华大学 | 一种支持异构构件的构件库统一管理方法 |
CN101149749A (zh) * | 2007-10-29 | 2008-03-26 | 浙江大学 | 一种基于语义的异质异构关系型数据库的数据集成方法 |
CN101187937A (zh) * | 2007-10-30 | 2008-05-28 | 北京航空航天大学 | 网格环境下模式复用的异构数据库访问和集成方法 |
Non-Patent Citations (1)
Title |
---|
严小泉,刘渊.基于XQuery的异构数据源查询处理.《计算机工程》.2009,第35卷(第14期),87-89,107. * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106547781B (zh) * | 2015-09-21 | 2021-06-11 | 南京中兴新软件有限责任公司 | 一种实现分布式事务的方法、装置及数据库服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN102163195A (zh) | 2011-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102163195B (zh) | 一种基于分布式、异构数据库统一视图的查询优化方法 | |
CN107463632B (zh) | 一种分布式NewSQL数据库系统和数据查询方法 | |
CN101510209B (zh) | 实现实时检索的方法、系统和服务器 | |
CN101916302B (zh) | 基于哈希表的三维空间数据自适应缓存管理方法及系统 | |
CN101546325B (zh) | 基于soa的网格异构数据集成方法 | |
CN102999522B (zh) | 一种数据存储方法和装置 | |
CN104714972B (zh) | 数据库分表建立及查询方法 | |
CN102201010A (zh) | 无共享架构的分布式数据库系统及其实现方法 | |
CN104102710A (zh) | 一种海量数据查询方法 | |
CN105740472A (zh) | 一种分布式实时全文检索方法及系统 | |
CN104778277A (zh) | 一种基于Redis的RDF数据分布式存储和查询方法 | |
CN111597160A (zh) | 分布式数据库系统、分布式数据处理方法和装置 | |
CN105335479A (zh) | 一种基于sql的文本数据统计实现方法 | |
CN105516284A (zh) | 一种集群数据库分布式存储的方法和装置 | |
CN111382156A (zh) | 一种数据采集方法、系统、装置、电子设备及存储介质 | |
CN103823846A (zh) | 一种基于图论的大数据存储及查询方法 | |
CN107526762A (zh) | 服务端、多数据源搜索方法和系统 | |
CN102654878B (zh) | 嵌入式系统中分布式数据库的数据操作方法及板卡 | |
CN110109948A (zh) | 数据查询方法、计算机设备及计算机可读存储介质 | |
CN103365987A (zh) | 一种基于共享磁盘架构的集群数据库系统及数据处理方法 | |
CN106953929A (zh) | 一种SmartRack服务器高并发优化的方法 | |
CN107609091B (zh) | 一种跨库多表联合查询系统的实现方法 | |
CN105574010B (zh) | 数据查询方法及装置 | |
JPH07160557A (ja) | データベースアクセス処理方法 | |
CN116541427B (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |