CN113177089A - 一种分布式数据存储引擎调度方法 - Google Patents
一种分布式数据存储引擎调度方法 Download PDFInfo
- Publication number
- CN113177089A CN113177089A CN202110409396.5A CN202110409396A CN113177089A CN 113177089 A CN113177089 A CN 113177089A CN 202110409396 A CN202110409396 A CN 202110409396A CN 113177089 A CN113177089 A CN 113177089A
- Authority
- CN
- China
- Prior art keywords
- engine
- distributed
- scheduling method
- data storage
- time sequence
- 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.)
- Withdrawn
Links
Images
Classifications
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Fuzzy Systems (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种分布式数据存储引擎调度方法,包括:获取并基于分布式数据库的个数构建多个并行的时序引擎;基于每个时序引擎得到多个分布式数据库的时序查询结果;对多个时序查询结果通过分布式存储引擎处理实现数据的读写。通过构建时序引擎,对分布式数据库进行并行且顺序查找存储节点位置,从而实现大规模、有序的数据查找,在保证查找全面性的同时,提高数据库的查找效率。
Description
技术领域
本发明属于分布式存储技术领域,具体地说涉及一种分布式数据存储引擎调度方法。
背景技术
随着大数据时代的到来,企业数据也随之越来越多,这对数据存储提出了更高的要求,基于传统的单机数据库的基础上发展出的分布式数据库技术虽然能够很好的满足存储需求,但在海量数据的查找仍处于较低效的状态,如何处理分布式、高并发的PB级存储数据仍是目前亟待解决的难题。
因此,现有技术还有待于进一步发展和改进。
发明内容
针对现有技术的种种不足,为了解决上述问题,现提出一种分布式数据存储引擎调度方法。本发明提供如下技术方案:
一种分布式数据存储引擎调度方法,包括:
获取并基于分布式数据库的个数构建多个并行的时序引擎;
基于每个时序引擎得到多个分布式数据库的时序查询结果;
对多个时序查询结果通过分布式存储引擎处理实现数据的读写。
进一步的,所述时序引擎包括依次执行的前台引擎、计划引擎、调度引擎以及查询引擎。
进一步的,所述前台引擎包括对用户进行身份认证,过滤用户的单批次重复请求后,将用户请求分发给计划引擎。
进一步的,所述计划引擎包括基于前台引擎分发的用户请求,进行SQL语句的解析、语义检查和查询优化,产生逻辑任务规划。
进一步的,所述调度引擎包括执行并跟踪计划引擎的逻辑任务规划。
进一步的,所述查询引擎包括将调度引擎执行的逻辑任务规划转化为对应的物理计划,基于该物理计划进行相应的资源配置,控制物理计划的执行,并将执行结果返回上一层级。
进一步的,构建多个并行的时序引擎包括基于用户的一个请求构建多个相同的时序引擎以及基于用户的多个请求构建多个不同的时序引擎,并对该多个不同的时序引擎进行顺序编码。
进一步的,所述分布式数据库为预先基于相近语义构建的多个数据库,获取分布式数据库的个数为获取包含有效数据的数据库个数。
进一步的,所述分布式存储引擎包括交叉互联式混合存储、分布式文件系统存储管理以及动态读写调度管理。
进一步的,所述分布式存储引擎还包括组合数据压缩算法、自适应数据整理以及数据更新算法。
有益效果:
1.通过构建时序引擎,对分布式数据库进行并行且顺序查找存储节点位置,从而实现大规模、有序的数据查找,在保证查找全面性的同时,提高数据库的查找效率。
2.通过在前台引擎中添加对用户的身份认证步骤,有效降低数据库的资源浪费,通过对重复提交的数据请求进行去重,降低用户的请求发送重复等误操作,减少搜索资源占用,通过前台引擎对已认证的单次请求进行有序分发,实现数据查找的顺序、有效进行。
3.通过计划引擎对用户请求进行初步分类,产生逻辑任务规划,有效降低无序查找的搜索数据量,基于分布式存储特点进行定向规划,最终产生分布式的查询任务规划工作,实现引擎在分布式数据库内的有序查找。
4.通过对不同的时序引擎进行编码,极大的缩短了多数据请求的查询时间,通过编码验证实现数据查找及返回的准确性,实现多个时序引擎同步查询功能,提高了分布式数据库的水平横向扩展能力,加快数据读取速度。
5.基于包含有效数据的数据库构建时序引擎,基于数据库个数进行合理规划,避免对无数据占用的部分数据库进行无效扫描,节省系统运行资源。
附图说明
图1是本发明具体实施例中一种分布式数据存储引擎调度方法流程示意图。
具体实施方式
为了使本领域的人员更好地理解本发明的技术方案,下面结合本发明的附图,对本发明的技术方案进行清楚、完整的描述,基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的其它类同实施例,都应当属于本申请保护的范围。此外,以下实施例中提到的方向用词,例如“上”“下”“左”“右”等仅是参考附图的方向,因此,使用的方向用词是用来说明而非限制本发明创造。
如图1所示,一种分布式数据存储引擎调度方法,包括:
S100、获取并基于分布式数据库的个数构建多个并行的时序引擎;
S200、基于每个时序引擎得到多个分布式数据库的时序查询结果;
S300、对多个时序查询结果通过分布式存储引擎处理实现数据的读写。
通过构建时序引擎,对分布式数据库进行并行且顺序查找存储节点位置,从而实现大规模、有序的数据查找,在保证查找全面性的同时,提高数据库的查找效率。
进一步的,所述时序引擎包括依次执行的前台引擎、计划引擎、调度引擎以及查询引擎。基于用户的请求分别顺次进行前台引擎、计划引擎、调度引擎以及查询引擎的查找,通过前台引擎对请求进行认证授权、去重以及分发,通过计划引擎对请求进行分类规划,通过调度引擎执行计划引擎发布的任务,最后通过查询引擎查找对应的执行结果。
进一步的,所述前台引擎包括对用户进行身份认证,过滤用户的单批次重复请求后,将用户请求分发给计划引擎。具体的,实时获取身份认证信息,将身份认证信息与预设身份信息和权限对应表相匹配,当匹配成功时,输出与该身份信息对应的权限信息,基于输出的权限信息和预设权限数据库对应表,匹配出该权限信息对应的数据库,使该用户仅在对应匹配的数据库范围内进行遍历,从而降低数据库遍历范围。进一步的,获取用户请求,并对用户请求进行逐一判断,删选重复请求暂存,将非重复请求分发给计划引擎。通过在前台引擎中添加对用户的身份认证步骤,有效降低数据库的资源浪费,通过对重复提交的数据请求进行去重,降低用户的请求发送重复等误操作,减少搜索资源占用,通过前台引擎对已认证的单次不重复请求向计划引擎进行有序分发,实现数据查找的顺序、有效进行。
进一步的,所述计划引擎包括基于前台引擎分发的用户请求,进行SQL语句的解析、语义检查和查询优化,产生逻辑任务规划。通过计划引擎对用户请求进行初步分类,产生逻辑任务规划,有效降低无序查找的搜索数据量,基于分布式存储特点进行定向规划,最终产生分布式的查询任务规划工作,实现引擎在分布式数据库内的有序查找。计划引擎的逻辑任务规划包括查询任务规划和加载任务规划。支持SQL语句,通过编写SQL实现复杂的业务逻辑,极大的降低了使用成本,根据SQL语句的解析选择优化器,获得对应的优化器选择结果,从而选择对应的数据连接方式以及连接顺序,即找到对应的搜索路径,产生最优化的逻辑任务规划。
进一步的,所述调度引擎包括执行并跟踪计划引擎的逻辑任务规划。逻辑任务规划包括子任务节点的调度服务、数据包交换服务、数据包传送接口、数据包接收接口、主控节点调度服务等。
进一步的,所述查询引擎包括将调度引擎执行的逻辑任务规划转化为对应的物理计划,基于该物理计划进行相应的资源配置,控制物理计划的执行,并将执行结果返回上一层级。查询引擎包括查询执行器、批量数据加载器、本地资源规划器、JIT运算优化器以及轻量级编码,负责将分布式调度引擎转发的逻辑计划转换成物理计划并完成资源配置,启动并控制整个查询计划的执行并将执行结果透过分布式调度引擎传回上层执行节点。
进一步的,构建多个并行的时序引擎包括基于用户的一个请求构建多个相同的时序引擎以及基于用户的多个请求构建多个不同的时序引擎,并对该多个不同的时序引擎进行顺序编码。当同一用户在一定时间内同时发布多个请求时,去掉相同请求后,剩下的不同的请求进行顺序编码,并以该编码为二次认证基础在前台引擎进行认证传输,前台引擎分别基于不同的编码同步向计划引擎进行任务分发,计划引擎基于不同的编码分别配置不同的逻辑任务规划,从而实现多条请求搜索的同步调度。通过对不同的时序引擎进行编码,极大的缩短了多数据请求的查询时间,通过编码验证实现数据查找及返回的准确性,实现多个时序引擎同步查询功能,提高了分布式数据库的水平横向扩展能力,加快数据读取速度。
进一步的,所述分布式数据库为预先基于相近语义构建的多个数据库,获取分布式数据库的个数为获取包含有效数据的数据库个数。基于包含有效数据的数据库构建时序引擎,基于数据库个数进行合理规划,避免对无数据占用的部分数据库进行无效扫描,节省系统运行资源。
进一步的,所述分布式存储引擎包括交叉互联式混合存储、分布式文件系统存储管理以及动态读写调度管理。交叉互联式混合存储能够实现分布式存储的广泛互联性及数据读取的顺序全面性,通过交叉存储将数据分别存储在不同的数据库节点上,再通过将各个数据库节点进行互联,实现数据的网状联通。分布式文件系统中由于采用的存储区较多,不同的存储区间也存在存储性能间的差异,文件的访问次数也存在不均匀性,通过设置分布式文件系统存储管理和动态读写调度管理,将用户经常访问的数据存储到高性能存储区,不常访问的数据存储到性能低的存储区,依据不同的调度请求关键词分配不同的存储区域,有效提高分布式文件系统的读写性能,避免存储不合理导致的数据读取缓慢拥堵情况发生。
进一步的,所述分布式存储引擎还包括组合数据压缩算法、自适应数据整理以及数据更新算法。不同的压缩算法对不同类型的数据压缩效果不同,通过设置组合数据压缩算法,最大限度且最优化的对数据进行分类压缩,在保证数据不受损失的前提下降低内存的占用,提高存储空间利用率。需要存储的数据存在大量性、复杂性和关联性,只有对数据不断进行整理、更新,才能适应最优化的快速查找目标。
本发明实施例还提供了一种计算机存储介质,计算机存储介质存储有计算机程序代码,当计算机程序代码在计算设备上运行时,导致计算设备执行上文任一实施例中的分布式数据存储引擎调度方法。
另外,本发明实施例还提供了一种计算设备,包括处理器;存储有计算机程序代码的存储器;当计算机程序代码被处理器运行时,导致计算设备执行上文任一实施例中的分布式数据存储引擎调度方法。
所属领域的技术人员可以清楚地了解到,上述描述的系统、设备和单元的具体工作过程,可以参考前述方法实施例中的对应过程,为简洁起见,在此不另赘述。
另外,在本发明各个实施例中的各功能单元可以物理上相互独立,也可以两个或两个以上功能单元集成在一起,还可以全部功能单元都集成在一个处理单元中。上述集成的功能单元既可以采用硬件的形式实现,也可以采用软件或者固件的形式实现。
本领域普通技术人员可以理解:集成的功能单元如果以软件的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,其包括若干指令,用以使得一台计算设备(例如个人计算机,服务器,或者网络等)在运行指令时执行本发明各实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM)、随机存取存储器(RAM),磁碟或者光盘等各种可以存储程序代码的介质。
或者,实现前述方法实施例的全部或部分步骤可以通过程序指令相关的硬件(诸如个人计算机,服务器,或者网络等的计算设备)来完成,所述程序指令可以存储于一计算机可读取存储介质中,当所述程序指令被计算设备的处理器执行时,所述计算设备执行本发明各实施例所述方法的全部或部分步骤。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。
Claims (10)
1.一种分布式数据存储引擎调度方法,其特征在于,包括:
获取并基于分布式数据库的个数构建多个并行的时序引擎;
基于每个时序引擎得到多个分布式数据库的时序查询结果;
对多个时序查询结果通过分布式存储引擎处理实现数据的读写。
2.根据权利要求1所述的一种分布式数据存储引擎调度方法,其特征在于,所述时序引擎包括依次执行的前台引擎、计划引擎、调度引擎以及查询引擎。
3.根据权利要求2所述的一种分布式数据存储引擎调度方法,其特征在于,所述前台引擎包括对用户进行身份认证,过滤用户的单批次重复请求后,将用户请求分发给计划引擎。
4.根据权利要求3所述的一种分布式数据存储引擎调度方法,其特征在于,所述计划引擎包括基于前台引擎分发的用户请求,进行SQL语句的解析、语义检查和查询优化,产生逻辑任务规划。
5.根据权利要求4所述的一种分布式数据存储引擎调度方法,其特征在于,所述调度引擎包括执行并跟踪计划引擎的逻辑任务规划。
6.根据权利要求5所述的一种分布式数据存储引擎调度方法,其特征在于,所述查询引擎包括将调度引擎执行的逻辑任务规划转化为对应的物理计划,基于该物理计划进行相应的资源配置,控制物理计划的执行,并将执行结果返回上一层级。
7.根据权利要求1所述的一种分布式数据存储引擎调度方法,其特征在于,构建多个并行的时序引擎包括基于用户的一个请求构建多个相同的时序引擎以及基于用户的多个请求构建多个不同的时序引擎,并对该多个不同的时序引擎进行顺序编码。
8.根据权利要求1所述的一种分布式数据存储引擎调度方法,其特征在于,所述分布式数据库为预先基于相近语义构建的多个数据库,获取分布式数据库的个数为获取包含有效数据的数据库个数。
9.根据权利要求1所述的一种分布式数据存储引擎调度方法,其特征在于,所述分布式存储引擎包括交叉互联式混合存储、分布式文件系统存储管理以及动态读写调度管理。
10.根据权利要求9所述的一种分布式数据存储引擎调度方法,其特征在于,所述分布式存储引擎还包括组合数据压缩算法、自适应数据整理以及数据更新算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110409396.5A CN113177089A (zh) | 2021-04-16 | 2021-04-16 | 一种分布式数据存储引擎调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110409396.5A CN113177089A (zh) | 2021-04-16 | 2021-04-16 | 一种分布式数据存储引擎调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113177089A true CN113177089A (zh) | 2021-07-27 |
Family
ID=76923444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110409396.5A Withdrawn CN113177089A (zh) | 2021-04-16 | 2021-04-16 | 一种分布式数据存储引擎调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113177089A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116483886A (zh) * | 2023-04-10 | 2023-07-25 | 上海沄熹科技有限公司 | 结合kv存储引擎和时序存储引擎查询olap的方法 |
-
2021
- 2021-04-16 CN CN202110409396.5A patent/CN113177089A/zh not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116483886A (zh) * | 2023-04-10 | 2023-07-25 | 上海沄熹科技有限公司 | 结合kv存储引擎和时序存储引擎查询olap的方法 |
CN116483886B (zh) * | 2023-04-10 | 2024-04-02 | 上海沄熹科技有限公司 | 结合kv存储引擎和时序存储引擎查询olap的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111338766B (zh) | 事务处理方法、装置、计算机设备及存储介质 | |
CN111159252B (zh) | 事务执行方法、装置、计算机设备及存储介质 | |
Okcan et al. | Processing theta-joins using mapreduce | |
US8364751B2 (en) | Automated client/server operation partitioning | |
CN110399373A (zh) | 一种区块链账本存储系统、存储查询方法及删除方法 | |
CN104834557B (zh) | 一种基于Hadoop的数据分析方法 | |
US12026160B2 (en) | Query plan cache in database systems | |
Senthilkumar et al. | A survey on job scheduling in big data | |
CN115114374B (zh) | 事务执行方法、装置、计算设备及存储介质 | |
US11537613B1 (en) | Merge small file consolidation | |
CN107193898A (zh) | 基于分级复用的日志数据流的查询共享方法和系统 | |
Zhang et al. | Oceanrt: Real-time analytics over large temporal data | |
CN110231977B (zh) | 数据库的处理方法、装置、存储介质及电子装置 | |
CN114443680A (zh) | 数据库管理系统、相关装置、方法和介质 | |
US8396858B2 (en) | Adding entries to an index based on use of the index | |
CN113177089A (zh) | 一种分布式数据存储引擎调度方法 | |
WO2013153029A1 (en) | Method and system for managing and processing data in a distributed computing platform | |
Wang et al. | HTD: heterogeneous throughput-driven task scheduling algorithm in MapReduce | |
US11816132B2 (en) | Method and system for optimizing data storage of query statistics of graph database | |
EP4030312A1 (en) | Method and apparatus for querying data, computing device, and storage medium | |
Raikhlin et al. | Clusterix-Like BigData DBMS | |
CN114020446A (zh) | 一种跨多引擎的路由处理方法、装置、设备及存储介质 | |
Shabeera et al. | A novel approach for improving data locality of mapreduce applications in cloud environment through intelligent data placement | |
Zhang et al. | Improving performance for geo-distributed data process in wide-area | |
US20240184780A1 (en) | Scouting queries for improving query planning in distributed asynchronous graph queries |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210727 |
|
WW01 | Invention patent application withdrawn after publication |