CN114328598A - 基于ClickHouse数据库的pipeline的缓存优化方法及系统 - Google Patents
基于ClickHouse数据库的pipeline的缓存优化方法及系统 Download PDFInfo
- Publication number
- CN114328598A CN114328598A CN202111428731.2A CN202111428731A CN114328598A CN 114328598 A CN114328598 A CN 114328598A CN 202111428731 A CN202111428731 A CN 202111428731A CN 114328598 A CN114328598 A CN 114328598A
- Authority
- CN
- China
- Prior art keywords
- sql
- interpreter
- startkey
- pipeline
- executing
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000005457 optimization Methods 0.000 title claims abstract description 32
- 230000004048 modification Effects 0.000 claims abstract description 4
- 238000012986 modification Methods 0.000 claims abstract description 4
- 230000003993 interaction Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 7
- 230000009191 jumping Effects 0.000 claims description 6
- 238000004088 simulation Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了基于ClickHouse数据库的pipeline的缓存优化方法及系统,属于数据缓存技术领域,本发明要解决的技术问题为如何优化缓存,进而提高sql的执行效率,采用的技术方案为:该方法是将每一条的sql首次生成的interpreter解释器与sql本身保存下来,在每次执行sql流程前,比较是不是与缓存的sql是同一条sql;再采用缓存的interpreter解释器修改后,进行查询,并用所对应的sql作为索引进行查找替换操作;再生成QueryPlan逻辑计划及生成pipeline物理计划的流程,并通过与Mergetree存储引擎进行交互,读取数据后返回请求结果。该系统包括客户端、分析选择查询模块、AST抽象语法树、interpreter解释器、QueryPlan逻辑计划模块及pipeline物理计划模块。
Description
技术领域
本发明涉及数据库缓存领域,具体地说是一种基于ClickHouse数据库的pipeline的缓存优化方法及系统。
背景技术
ClickHouse是一款MPP架构的列式存储数据库,主要用于在线分析处理查 询(OLAP),能够使用SQL查询实时生成分析数据报告,分析性能超过市场上 大部分的列式存储数据库。鉴于ClickHouse数据库是根据执行sql来获取的 MergeTree数据,并且MergeTree引擎对于数据的获取是按批次进行的,若遇 到一个大数据量的表就会造成多次与存储的交互,耗时较多。故如何优化缓存, 进而提高sql的执行效率是目前亟待解决的技术问题。
发明内容
本发明的技术任务是提供一种基于ClickHouse数据库的pipeline的缓存 优化方法及系统,来解决如何优化缓存,进而提高sql的执行效率的问题。
本发明的技术任务是按以下方式实现的,一种基于ClickHouse数据库的pipeline的缓存优化方法,该方法是将每一条的sql首次生成的interpreter 解释器与sql本身保存下来,在每次执行sql流程前,比较是不是与缓存的sql 是同一条sql;再采用缓存的interpreter解释器略作修改后,进行查询,并 用所对应的sql作为索引进行查找替换操作;再进行生成QueryPlan逻辑计划 及生成pipeline物理计划的流程,并通过与Mergetree存储引擎进行交互,读 取数据后返回请求结果。
作为优选,该方法具体如下:
S1、每次查询时,在context的map结构中查找是否有已保存的相同的sql:
①、若有相同的sql,则跳转至步骤S7;
②、若无相同的sql,则执行步骤S2;
S2、进行生成AST抽象语法树及生成interpreter解释器,下一步执行步 骤S3;
S3、判断本次sql的startkey是否为空值:
①、若不为空值,则执行步骤S4;
②、若为空值,则不保留startkey为空值时的interpreter解释器,下一 步跳转至步骤S9;
S4、将生成的interpreter解释器保存进map结构中,下一步执行步骤S5;
S5、判断map结构中是否达到了设置的上限数量:
若是,则执行步骤S6;
S6、用一个最近最少使用LRU的算法替换掉context中保留的interpreter 解释器,下一步执行步骤S7;
S7、使用map结构保存不同sql查询生成的interpreter解释器,下一步 执行步骤S8;
S8、用该条spl保存的interpreter解释器结构中的starkey替代为本次 查询新的starkey即可,下一步执行步骤S9;
S9、生成QueryPlan逻辑计划及生成pipeline物理计划的流程。
更优地,在执行生成AST抽象语法树前,将sql进行简化处理,具体如下:
将startkey、endkey、HLC及limit信息从sql中剔除,再与context中 map结构里缓存的sql进行一次是否存在的查找操作。
更优地,生成QueryPlan逻辑计划具体如下:
interpreter解释器对AST抽象语法树进行优化重写后,对AST抽象语法 树进行解析,生成操作链,操作链即为QueryPlan逻辑计划。
更优地,生成及执行pipeline物理计划具体如下:
QueryPlan逻辑计划与底层进行模拟交互,底层数据为有序数据,根据本 次查询的startkey和endkey来确定访问的目标range,具体实现具体为:
遍历所有的范围range,来确定本次访问的数据范围是否在该range内:
若有,则在processors处理器中添加对该range的访问、查询及合并可能 出现的问题操作;
全部遍历完成后,将processors处理器赋值给pipeline物理计划中;
执行pipeline物理计划:每次进行processors处理器中的操作,对 Mergetree存储引擎进行交互,读取数据后返回请求结果。
一种基于ClickHouse数据库的pipeline的缓存优化系统,该系统包括, 客户端,用于生成sql,并对sql进行简化处理;
分析选择查询(ParserSelect Query)模块,用于在每次查询时,在map 结构中查找是否有已保存的相同的sql;
AST抽象语法树,用于构建相应的解释器;
interpreter解释器,用于对AST抽象语法树进行优化重写后,对AST抽 象语法树进行即系,生成操作链,即为逻辑计划;
QueryPlan逻辑计划模块,用于与底层进行交互,并生成物理计划;
pipeline物理计划模块,用于根据本次查询的startkey和endkey来确定 访问的目标range,并在每次进行processors处理器中的操作时,与Mergetree 存储引擎进行交互,读取数据后返回请求结果。
作为优选,对sql进行简化处理具体如下:
将startkey、endkey、HLC及limit信息从sql中剔除,再与context中 map结构里缓存的sql进行一次是否存在的查找操作。
更优地,该系统的工作过程具体如下:
S1、每次查询时,在context的map结构中查找是否有已保存的相同的sql:
①、若有相同的sql,则跳转至步骤S7;
②、若无相同的sql,则执行步骤S2;
S2、进行生成AST抽象语法树及生成interpreter解释器,下一步执行步 骤S3;
S3、判断本次sql的startkey是否为空值:
①、若不为空值,则执行步骤S4;
②、若为空值,则不保留startkey为空值时的interpreter解释器,下一 步跳转至步骤S9;
S4、将生成的interpreter解释器保存进map结构中,下一步执行步骤S5;
S5、判断map结构中是否达到了设置的上限数量:
若是,则执行步骤S6;
S6、用一个最近最少使用LRU的算法替换掉context中保留的interpreter 解释器,下一步执行步骤S7;
S7、使用map结构保存不同sql查询生成的interpreter解释器,下一步 执行步骤S8;
S8、用该条spl保存的interpreter解释器结构中的starkey替代为本次 查询新的starkey即可,下一步执行步骤S9;
S9、生成QueryPlan逻辑计划及生成pipeline物理计划的流程。
一种电子设备,包括:存储器和至少一个处理器;
其中,所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至 少一个处理器执行如上述的基于ClickHouse数据库的pipeline的缓存优化方 法。
一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行 指令,当处理器执行所述计算机执行时,实现如上述的基于ClickHouse数据库 的pipeline的缓存优化方法。
本发明的基于ClickHouse数据库的pipeline的缓存优化方法及系统具有 以下优点:
(一)本发明通过保留interpreter解释器结构,每次只做简单的修改, 减少查询过程中的生成AST抽象语法树和生成interpreter解释器的时间,进 而提升查询性能;
(二)本发明使用map结构保存近几次不同sql查询生成的interpreter 解释器,接下来的每次查询在map结构中查找是否有已保存的相同的sql,若 有的话只用将该条sql保存的interpreter解释器结构中的startkey与endkey 替换为本次查询新的startkey与endkey即可,这样就能大大减少耗费在生成 AST抽象语法树和生成interpreter解释器上的时间,提高查询效率;
(三)当一条sql语句读取到大规模数据时,可以只生成一次interpreter 解释器,其余查询只需要修改interpreter解释器内的startkey与endkey的 值;
(四)当一条sql多次重复进行查询时,也只在第一次查询的第一个批次 需要生成一次AST抽象语法树跟interpreter解释器,避免了过多的资源浪费;
(五)当数条sql反复执行查询对比时,也可以大大减少查询所耗费的时 间,优化前后耗时对比参照,如附图2所示。
附图说明
下面结合附图对本发明进一步说明。
附图1为基于ClickHouse数据库的pipeline的缓存优化方法的流程框图;
附图2为优化前后SQL执行各阶段时间消耗对比示意图。
具体实施方式
参照说明书附图和具体实施例对本发明的基于ClickHouse数据库的 pipeline的缓存优化方法及系统作以下详细地说明。
实施例1:
本发明的基于ClickHouse数据库的pipeline的缓存优化方法,该方法是 将每一条的sql首次生成的interpreter解释器与sql本身保存下来,在每次 执行sql流程前,比较是不是与缓存的sql是同一条sql;再采用缓存的interpreter解释器略作修改后,进行查询,并用所对应的sql作为索引进行 查找替换操作;再进行生成QueryPlan逻辑计划及生成pipeline物理计划的流 程,并通过与Mergetree存储引擎进行交互,读取数据后返回请求结果;如附 图1所示,该方法具体如下:
S1、每次查询时,在context的map结构中查找是否有已保存的相同的sql:
①、若有相同的sql,则跳转至步骤S7;
②、若无相同的sql,则执行步骤S2;
S2、进行生成AST抽象语法树及生成interpreter解释器,下一步执行步 骤S3;
S3、判断本次sql的startkey是否为空值:
①、若不为空值,则执行步骤S4;
②、若为空值,则不保留startkey为空值时的interpreter解释器,下一 步跳转至步骤S9;
S4、将生成的interpreter解释器保存进map结构中,下一步执行步骤S5;
S5、判断map结构中是否达到了设置的上限数量:
若是,则执行步骤S6;
S6、用一个最近最少使用LRU的算法替换掉context中保留的interpreter 解释器,下一步执行步骤S7;
S7、使用map结构保存不同sql查询生成的interpreter解释器,下一步 执行步骤S8;
S8、用该条spl保存的interpreter解释器结构中的starkey替代为本次 查询新的starkey即可,下一步执行步骤S9;
S9、生成QueryPlan逻辑计划及生成pipeline物理计划的流程。
本实施例中的在执行生成AST抽象语法树前,将sql进行简化处理,具体 如下:
将startkey、endkey、HLC及limit信息从sql中剔除,再与context中 map结构里缓存的sql进行一次是否存在的查找操作。
本实施例中的生成QueryPlan逻辑计划具体如下:
interpreter解释器对AST抽象语法树进行优化重写后,对AST抽象语法 树进行解析,生成操作链,操作链即为QueryPlan逻辑计划。
本实施例中的生成及执行pipeline物理计划具体如下:
(1)、QueryPlan逻辑计划与底层进行模拟交互,底层数据为有序数据, 根据本次查询的startkey和endkey来确定访问的目标range,具体实现具体 为:
(2)、遍历所有的范围range,来确定本次访问的数据范围是否在该range 内:
若有,则在processors处理器中添加对该range的访问、查询及合并可能 出现的问题操作;
(3)、全部遍历完成后,将processors处理器赋值给pipeline物理计划 中;
(4)、执行pipeline物理计划:每次进行processors处理器中的操作, 对Mergetree存储引擎进行交互,读取数据后返回请求结果。
实施例2:
本发明的基于ClickHouse数据库的pipeline的缓存优化系统,该系统包 括,
客户端,用于生成sql,并对sql进行简化处理;
分析选择查询(ParserSelect Query)模块,用于在每次查询时,在map 结构中查找是否有已保存的相同的sql;
AST抽象语法树,用于构建相应的解释器;
interpreter解释器,用于对AST抽象语法树进行优化重写后,对AST抽 象语法树进行即系,生成操作链,即为逻辑计划;
QueryPlan逻辑计划模块,用于与底层进行交互,并生成物理计划;
pipeline物理计划模块,用于根据本次查询的startkey和endkey来确定 访问的目标range,并在每次进行processors处理器中的操作时,与Mergetree 存储引擎进行交互,读取数据后返回请求结果。
本实施例中的对sql进行简化处理具体如下:
将startkey、endkey、HLC及limit信息从sql中剔除,再与context中 map结构里缓存的sql进行一次是否存在的查找操作。
该系统的工作过程具体如下:
S1、每次查询时,在context的map结构中查找是否有已保存的相同的sql:
①、若有相同的sql,则跳转至步骤S7;
②、若无相同的sql,则执行步骤S2;
S2、进行生成AST抽象语法树及生成interpreter解释器,下一步执行步 骤S3;
S3、判断本次sql的startkey是否为空值:
①、若不为空值,则执行步骤S4;
②、若为空值,则不保留startkey为空值时的interpreter解释器,下一 步跳转至步骤S9;
S4、将生成的interpreter解释器保存进map结构中,下一步执行步骤S5;
S5、判断map结构中是否达到了设置的上限数量:
若是,则执行步骤S6;
S6、用一个最近最少使用LRU的算法替换掉context中保留的interpreter 解释器,下一步执行步骤S7;
S7、使用map结构保存不同sql查询生成的interpreter解释器,下一步 执行步骤S8;
S8、用该条spl保存的interpreter解释器结构中的starkey替代为本次 查询新的starkey即可,下一步执行步骤S9;
S9、生成QueryPlan逻辑计划及生成pipeline物理计划的流程。
实施例3:
本发明实施例还提供了一种电子设备,包括:存储器和处理器;
其中,所述存储器存储计算机执行指令;
处理器执行所述存储器存储的计算机执行指令,使得处理器执行本发明任 一项所述的基于ClickHouse数据库的pipeline的缓存优化方法。
处理器可以是中央处理单元(CPU),还可以是其他通用处理器、数字信号 处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可 编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通过处理器可 以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器可用于储存计算机程序和/或模块,处理器通过运行或执行存储在存 储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现电子设 备的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序 区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据 终端的使用所创建的数据等。此外,存储器还可以包括高速随机存取存储器, 还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,只能存储卡(SMC), 安全数字(SD)卡,闪存卡、至少一个磁盘存储期间、闪存器件、或其他易失 性固态存储器件。
实施例4:
本发明实施例还提供了一种计算机可读存储介质,其中存储有多条指令, 指令由处理器加载,使处理器执行本发明任一实施例中的基于ClickHouse数据 库的pipeline的缓存优化方法。具体地,可以提供配有存储介质的系统或者装 置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代 码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介 质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何 一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的 一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如 CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失 性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且 可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全 部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的 扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储 器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的CPU等来执 行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其 限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术 人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者 对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相 应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种基于ClickHouse数据库的pipeline的缓存优化方法,其特征在于,该方法是将每一条的sql首次生成的interpreter解释器与sql本身保存下来,在每次执行sql流程前,比较是不是与缓存的sql是同一条sql;再采用缓存的interpreter解释器修改后,进行查询,并用所对应的sql作为索引进行查找替换操作;再生成QueryPlan逻辑计划及生成pipeline物理计划的流程,并通过与Mergetree存储引擎进行交互,读取数据后返回请求结果。
2.根据权利要求1所述的基于ClickHouse数据库的pipeline的缓存优化方法,其特征在于,该方法具体如下:
S1、每次查询时,在context的map结构中查找是否有已保存的相同的sql:
①、若有相同的sql,则跳转至步骤S7;
②、若无相同的sql,则执行步骤S2;
S2、进行生成AST抽象语法树及生成interpreter解释器,下一步执行步骤S3;
S3、判断本次sql的startkey是否为空值:
①、若不为空值,则执行步骤S4;
②、若为空值,则不保留startkey为空值时的interpreter解释器,下一步跳转至步骤S9;
S4、将生成的interpreter解释器保存进map结构中,下一步执行步骤S5;
S5、判断map结构中是否达到了设置的上限数量:
若是,则执行步骤S6;
S6、用一个最近最少使用LRU的算法替换掉context中保留的interpreter解释器,执行步骤S7;
S7、使用map结构保存不同sql查询生成的interpreter解释器,下一步执行步骤S8;
S8、用该条spl保存的interpreter解释器结构中的starkey替代为本次查询新的starkey即可,下一步执行步骤S9;
S9、生成QueryPlan逻辑计划及生成pipeline物理计划的流程。
3.根据权利要求1或2所述的基于ClickHouse数据库的pipeline的缓存优化方法,其特征在于,在执行生成AST抽象语法树前,将sql进行简化处理,具体如下:
将startkey、endkey、HLC及limit信息从sql中剔除,再与context中map结构里缓存的sql进行一次是否存在的查找操作。
4.根据权利要求3所述的基于ClickHouse数据库的pipeline的缓存优化方法,其特征在于,生成QueryPlan逻辑计划具体如下:
interpreter解释器对AST抽象语法树进行优化重写后,对AST抽象语法树进行解析,生成操作链,操作链即为QueryPlan逻辑计划。
5.根据权利要求4所述的基于ClickHouse数据库的pipeline的缓存优化方法,其特征在于,生成及执行pipeline物理计划具体如下:
QueryPlan逻辑计划与底层进行模拟交互,底层数据为有序数据,根据本次查询的startkey和endkey来确定访问的目标range,具体实现具体为:
遍历所有的范围range,来确定本次访问的数据范围是否在该range内:
若有,则在processors处理器中添加对该range的访问、查询及合并可能出现的问题操作;
全部遍历完成后,将processors处理器赋值给pipeline物理计划中;
执行pipeline物理计划:每次进行processors处理器中的操作,对Mergetree存储引擎进行交互,读取数据后返回请求结果。
6.一种基于ClickHouse数据库的pipeline的缓存优化系统,其特征在于,该系统包括,
客户端,用于生成sql,并对sql进行简化处理;
分析选择查询模块,用于在每次查询时,在map结构中查找是否有已保存的相同的sql;
AST抽象语法树,用于构建相应的解释器;
interpreter解释器,用于对AST抽象语法树进行优化重写后,对AST抽象语法树进行即系,生成操作链,即为逻辑计划;
QueryPlan逻辑计划模块,用于与底层进行交互,并生成物理计划;
pipeline物理计划模块,用于根据本次查询的startkey和endkey来确定访问的目标range,并在每次进行processors处理器中的操作时,与Mergetree存储引擎进行交互,读取数据后返回请求结果。
7.根据权利要求6所述的基于ClickHouse数据库的pipeline的缓存优化系统,其特征在于,对sql进行简化处理具体如下:
将startkey、endkey、HLC及limit信息从sql中剔除,再与context中map结构里缓存的sql进行一次是否存在的查找操作。
8.根据权利要求7所述的基于ClickHouse数据库的pipeline的缓存优化系统,其特征在于,该系统的工作过程具体如下:
S1、每次查询时,在context的map结构中查找是否有已保存的相同的sql:
①、若有相同的sql,则跳转至步骤S7;
②、若无相同的sql,则执行步骤S2;
S2、进行生成AST抽象语法树及生成interpreter解释器,下一步执行步骤S3;
S3、判断本次sql的startkey是否为空值:
①、若不为空值,则执行步骤S4;
②、若为空值,则不保留startkey为空值时的interpreter解释器,下一步跳转至步骤S9;
S4、将生成的interpreter解释器保存进map结构中,下一步执行步骤S5;
S5、判断map结构中是否达到了设置的上限数量:
若是,则执行步骤S6;
S6、用一个最近最少使用LRU的算法替换掉context中保留的interpreter解释器,执行步骤S7;
S7、使用map结构保存不同sql查询生成的interpreter解释器,下一步执行步骤S8;
S8、用该条spl保存的interpreter解释器结构中的starkey替代为本次查询新的starkey即可,下一步执行步骤S9;
S9、生成QueryPlan逻辑计划及生成pipeline物理计划的流程。
9.一种电子设备,其特征在于,包括:存储器和至少一个处理器;
其中,所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1至5任一所述的基于ClickHouse数据库的pipeline的缓存优化方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行时,实现如权利要求1至5中任一所述的基于ClickHouse数据库的pipeline的缓存优化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111428731.2A CN114328598B (zh) | 2021-11-29 | 2021-11-29 | 基于ClickHouse数据库的pipeline的缓存优化方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111428731.2A CN114328598B (zh) | 2021-11-29 | 2021-11-29 | 基于ClickHouse数据库的pipeline的缓存优化方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114328598A true CN114328598A (zh) | 2022-04-12 |
CN114328598B CN114328598B (zh) | 2024-06-11 |
Family
ID=81047558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111428731.2A Active CN114328598B (zh) | 2021-11-29 | 2021-11-29 | 基于ClickHouse数据库的pipeline的缓存优化方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114328598B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117149914A (zh) * | 2023-10-27 | 2023-12-01 | 成都优卡数信信息科技有限公司 | 一种基于ClickHouse的存储方法 |
CN116662449B (zh) * | 2023-06-14 | 2024-06-04 | 浙江大学 | 基于广播子查询缓存的olap查询优化方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110309196A (zh) * | 2019-05-22 | 2019-10-08 | 深圳壹账通智能科技有限公司 | 区块链数据存储和查询方法、装置、设备及存储介质 |
CN111400297A (zh) * | 2020-03-19 | 2020-07-10 | 上海德拓信息技术股份有限公司 | 基于Hadoop的海量数据数据质量校验方法 |
CN112269802A (zh) * | 2020-10-16 | 2021-01-26 | 银盛支付服务股份有限公司 | 一种基于Clickhouse频繁删改查优化的方法及系统 |
CN112347108A (zh) * | 2020-11-26 | 2021-02-09 | 上海天旦网络科技发展有限公司 | 适用于混合后端的数据查询方法和系统 |
US20210064619A1 (en) * | 2019-08-29 | 2021-03-04 | Oracle International Corporation | First futamura projection in the context of sql expression evaluation |
CN112597199A (zh) * | 2020-12-22 | 2021-04-02 | 南京三眼精灵信息技术有限公司 | 异构多数据源适配方法及装置 |
CN113626433A (zh) * | 2021-08-03 | 2021-11-09 | 浪潮云信息技术股份公司 | 一种基于两层art树的数据存储方法 |
CN113626464A (zh) * | 2021-08-02 | 2021-11-09 | 浪潮云信息技术股份公司 | 基于ClickHouse数据库内存数据的查询支持方法及系统 |
-
2021
- 2021-11-29 CN CN202111428731.2A patent/CN114328598B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110309196A (zh) * | 2019-05-22 | 2019-10-08 | 深圳壹账通智能科技有限公司 | 区块链数据存储和查询方法、装置、设备及存储介质 |
WO2020233367A1 (zh) * | 2019-05-22 | 2020-11-26 | 深圳壹账通智能科技有限公司 | 区块链数据存储和查询方法、装置、设备及存储介质 |
US20210064619A1 (en) * | 2019-08-29 | 2021-03-04 | Oracle International Corporation | First futamura projection in the context of sql expression evaluation |
CN111400297A (zh) * | 2020-03-19 | 2020-07-10 | 上海德拓信息技术股份有限公司 | 基于Hadoop的海量数据数据质量校验方法 |
CN112269802A (zh) * | 2020-10-16 | 2021-01-26 | 银盛支付服务股份有限公司 | 一种基于Clickhouse频繁删改查优化的方法及系统 |
CN112347108A (zh) * | 2020-11-26 | 2021-02-09 | 上海天旦网络科技发展有限公司 | 适用于混合后端的数据查询方法和系统 |
CN112597199A (zh) * | 2020-12-22 | 2021-04-02 | 南京三眼精灵信息技术有限公司 | 异构多数据源适配方法及装置 |
CN113626464A (zh) * | 2021-08-02 | 2021-11-09 | 浪潮云信息技术股份公司 | 基于ClickHouse数据库内存数据的查询支持方法及系统 |
CN113626433A (zh) * | 2021-08-03 | 2021-11-09 | 浪潮云信息技术股份公司 | 一种基于两层art树的数据存储方法 |
Non-Patent Citations (2)
Title |
---|
刘译璟;徐林杰;代其锋;: "基于自然语言处理和深度学习的NL2SQL技术及其在BI增强分析中的应用", 中国信息化, no. 11, 20 November 2019 (2019-11-20) * |
谷伟;陈莲君;: "基于MySql的查询优化技术研究", 微型电脑应用, no. 07, 20 July 2013 (2013-07-20) * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116662449B (zh) * | 2023-06-14 | 2024-06-04 | 浙江大学 | 基于广播子查询缓存的olap查询优化方法及系统 |
CN117149914A (zh) * | 2023-10-27 | 2023-12-01 | 成都优卡数信信息科技有限公司 | 一种基于ClickHouse的存储方法 |
CN117149914B (zh) * | 2023-10-27 | 2024-01-26 | 成都优卡数信信息科技有限公司 | 一种基于ClickHouse的存储方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114328598B (zh) | 2024-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170083573A1 (en) | Multi-query optimization | |
Yan et al. | Understanding database performance inefficiencies in real-world web applications | |
US8396852B2 (en) | Evaluating execution plan changes after a wakeup threshold time | |
CN110309196A (zh) | 区块链数据存储和查询方法、装置、设备及存储介质 | |
US7370043B1 (en) | Method and system for upgrade validation of database query plans | |
CN114328598A (zh) | 基于ClickHouse数据库的pipeline的缓存优化方法及系统 | |
CN111339041A (zh) | 文件解析入库、文件生成方法及装置 | |
CN107943952B (zh) | 一种基于Spark框架进行全文检索的实现方法 | |
US7502775B2 (en) | Providing cost model data for tuning of query cache memory in databases | |
US10678784B2 (en) | Dynamic column synopsis for analytical databases | |
US20070250517A1 (en) | Method and Apparatus for Autonomically Maintaining Latent Auxiliary Database Structures for Use in Executing Database Queries | |
CN112988782B (zh) | Hive支持交互式查询的方法、装置及存储介质 | |
CN107480260B (zh) | 大数据实时分析方法、装置、计算设备及计算机存储介质 | |
CN113204571B (zh) | 涉及写入操作的sql执行方法、装置及存储介质 | |
CN110909014A (zh) | 优化建议生成及数据库查询方法、装置、设备及存储介质 | |
CN113297212A (zh) | 一种基于物化视图的Spark查询方法、装置及电子设备 | |
CN115269631A (zh) | 数据查询方法、数据查询系统、设备及存储介质 | |
CN111078705A (zh) | 基于Spark平台建立数据索引方法及数据查询方法 | |
CN114297204A (zh) | 一种异构数据源的数据存储、检索方法及装置 | |
US8285755B2 (en) | Partial updating in a database proxy driver | |
Medina et al. | Evaluation of indexing strategies for possibilistic queries based on indexing techniques available in traditional RDBMS | |
US20240045868A1 (en) | Method and device for accelerating database operation | |
CN115114325A (zh) | 数据查询方法、装置、电子设备以及存储介质 | |
CN114116773A (zh) | 一种结构化查询语言sql文本审核方法及装置 | |
CN114428776A (zh) | 一种面向时序数据的索引分区管理方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221214 Address after: Room 305-22, Building 2, No. 1158 Zhangdong Road and No. 1059 Dangui Road, China (Shanghai) Pilot Free Trade Zone, Pudong New Area, Shanghai, 200120 Applicant after: Shanghai Yunxi Technology Co.,Ltd. Address before: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park Applicant before: Inspur cloud Information Technology Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |