CN103345518A - 基于数据块的自适应数据存储管理方法及系统 - Google Patents
基于数据块的自适应数据存储管理方法及系统 Download PDFInfo
- Publication number
- CN103345518A CN103345518A CN2013102915392A CN201310291539A CN103345518A CN 103345518 A CN103345518 A CN 103345518A CN 2013102915392 A CN2013102915392 A CN 2013102915392A CN 201310291539 A CN201310291539 A CN 201310291539A CN 103345518 A CN103345518 A CN 103345518A
- Authority
- CN
- China
- Prior art keywords
- data block
- data
- access type
- self
- storage
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于数据块的自适应数据存储管理方法及系统,该基于数据块的自适应数据存储管理方法包括:获取数据库的工作负荷,该工作负荷包括用于访问该数据库的SQL语句;获取与该工作负荷相关的数据块;根据该工作负荷确定该数据块的访问类型;根据该访问类型对该数据块的存储格式进行转换。本发明能够同时支持OLTP和OLAP服务。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种基于数据块的自适应数据存储管理方法及系统。
背景技术
传统的关系型数据库系统都是基于行存储(简称行数据库),行数据库经过几十年的发展历史,是数据一体化存储和管理最为成熟的技术。它们持续提供了简单性、健壮性、灵活性以及性能的最佳组合,并带来了通用数据管理的兼容性,这种方式非常适合于读写操作,满足短事务频繁的应用场景,很好地支持联机事务处理(OLTP)服务。行数据库的特点有:数据都是按行存储的;为了提高查询效率,需要创建索引、物化视图等辅助物理结构,需要大量额外的存储空间。缺点是查询过程中会读取投影之外的列,面对复杂查询效率低下,系统维护复杂,索引等物理结构的管理开销较大,需要不断进行系统优化,因此在数据挖掘、决策支持和在线事务分析(OLAP)等数据仓库领域表现出较差的性能。
随着互联网技术的发展、硬件的不断更新、企业信息化的不断深入,应用的复杂性要求越来越高,推动着数据存储技术向着海量数据、分析数据、智能数据的方向发展,以便为数据仓库、在线分析提供高效实时的技术支持。为了适应需求的变化,近些年来基于列存储的关系型数据库(简称列数据库)的相关技术及应用快速发展,在企业决策领域已经开辟了一条新道路。列数据库的特点是将记录的列分开存储,然后通过连接数据来重构记录。列存储的设计带来很多优点,比如可以对同列数据进行数据压缩和索引优化处理等,这种方式极大地优化了读操作,满足复杂查询的应用场景,系统维护简单,特别适合对OLAP应用的处理。缺点是数据更新性能较低,不适合插入、更新事务频繁的应用场景,因此无法有效支持OLTP应用。
面对各种不同类型的应用处理需求,近年来,大多数企业选择针对不同的需求使用与之相适应的数据库管理系统,因此,出现了事务型数据库管理系统、分析型数据库管理系统。然而在过去的几年里企业应用的数据管理需求发生重大变化,继续以事务型和分析型的访问模式来区分和实现数据管理已经是不合理的。一方面在交易环境中的查询需要产生已交付订单数的总和,或者计算某个客户的全部负债情况等,另外一方面,在分析环境中的查询往往需要立即获得当前的操作数据来提供精准的预测和实时的决策支持。数据管理正朝着OLTP和OLAP融合的方向发展。通过使用两套数据库来解决数据的存储问题,无疑大大地增加了企业的维护和管理成本,不是一种根本解决问题的办法。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:在使用一套数据库的情况下,如何同时支持OLTP和OLAP服务。
(二)技术方案
为解决上述技术问题,本发明提供了一种基于数据块的自适应数据存储管理方法,包括:
获取数据库的工作负荷,所述工作负荷包括用于访问所述数据库的SQL语句;
获取与所述工作负荷相关的数据块;
根据所述工作负荷确定所述数据块的访问类型;
根据所述访问类型对所述数据块的存储格式进行转换。
进一步地,根据所述工作负荷确定所述数据块的访问类型包括:
获取所述工作负荷中SQL语句的关键字和返回结果集;
根据所述关键字和返回结果集确定所述数据块的访问类型。
进一步地,根据所述关键字和返回结果集确定所述数据块的访问类型包括:
若所述SQL语句的关键字是SELECT,且所述结果集的大小超过预先设定的第一阈值,确定所述数据块的访问类型为OLAP,否则,确定所述数据块的访问类型为OLTP。
进一步地,根据所述关键字和返回结果集确定所述数据块的访问类型之后还包括:
若所述数据块的访问类型为OLAP,在预先设置的数据块信息字典中将所述数据块的OLAP访问次数加一,若所述数据块的访问类型为OLTP,在所述数据块信息字典中将所述数据块的OLTP访问次数加一。
进一步地,根据所述访问类型对所述数据块的存储格式进行转换包括:
若所述数据块信息字典中所述数据块的OLTP访问次数大于预先设置的第二阈值,将所述数据块转换为NSM存储模型;
若所述数据块信息字典中所述数据块的OLAP访问次数大于预先设置的第三阈值,将所述数据块转换为PAX存储模型。
进一步地,在将所述数据块转换之前还包括:
判断当前所述数据库所在的服务器负载是否达到第四阈值,若是,推迟所述转换。
进一步地,在对所述数据库进行数据读取操作中,以数据块为单位进行批量扫描。
为解决上述技术问题,本发明还提供一种基于数据块的自适应数据存储管理系统,包括:
行列混合存储管理器,用于对数据库实现包含行存储和列存储的混合存储机制;
信息采集器,用于采集用户对所述数据库中数据块的访问类型;
模式转换管理器,用于根据所述访问类型确定所述数据块的存储格式,并对所述数据块进行格式转换;
磁盘管理器,用于管理磁盘上不同存储格式的数据块的系统调用方法,其中,在对所述数据库进行数据读取操作中,以数据块为单位进行批量扫描。
(三)有益效果
本发明通过获取数据库的工作负荷,根据所述工作负荷确定所述数据块的访问类型,根据所述访问类型对所述数据块的存储格式进行转换,任意一个数据块可以根据应用的变换动态自适应调整存储格式,从而有效地同时支持OLTP和OLAP服务。
附图说明
图1是本发明实施方式提供的一种基于数据块的自适应数据存储管理方法的流程图;
图2是现有技术中传统关系数据库的存储模型示例图;
图3是本发明实施方式提供的基于数据块的行列混合存储示例图;
图4是本发明实施方式提供的基于行列混合存储的数据块元数据结构示例图;
图5是本发明实施方式提供的数据访问类型的收集、分析和统计流程图;
图6是本发明实施方式提供的数据存储模式转换流程图;
图7是本发明实施方式提供的基于数据块的数据预取示例图;
图8是本发明实施方式提供的基于数据块的自适应数据存储管理系统的示意图。
具体实施方式
本发明的核心思想为:在数据库运行期间,实时收集、统计和分析数据库的工作负荷,以数据块为单位对数据的存储格式进行自适应调整,针对更新等短事务频繁的数据采用行存储,针对查询统计等分析事务频繁的数据采用列存储。数据自适应调整的基本单位是数据块,一个数据块内存储的数据具有相同的存储格式,要么全是基于行存储,要么全是基于列存储,利用数据块头部元数据中的存储格式标识来识别数据块的存储格式。数据文件中存在不同存储格式的数据块,任意一个数据块可以根据应用的变换动态自适应调整存储格式,从而有效地同时支持OLTP和OLAP服务。
图1是本发明实施方式提供的一种基于数据块的自适应数据存储管理方法的流程图,包括:
步骤S1:获取数据库的工作负荷,所述工作负荷包括用于访问所述数据库的SQL语句;
本发明基于现有存储模型的特点及其适应的环境,建立一种基于数据块的混合存储模型。图2中展示了传统关系数据库的三个存储模型。其中,NSM存储模型在每个磁盘页面中连续地存储记录,使用相对页面的偏移标识每条记录的开始。特别适合小规模数据的随机插入和访问操作,在OLTP应用中取得很好的效果。然而面对海量数据的存储和检索,NSM存储模型具有如下缺点:由于元组数据按顺序存放,那么检索时需要扫描额外的属性数据;不适合采用具有侵略性的压缩方法等。DSM存储模型在每个页面中把属性按列分开存储;由于每列数据具有相同的数据类型,适合采用高效的压缩方法;检索时只需要访问查询涉及到的列,显著降低磁盘I/O。DSM存储模型具有如下缺点:插入更新的效率比较低;多列数据的重组代价比较大。因此DSM模型和NSM模型相反,适合OLAP应用,不适合OLTP应用。而PAX存储模型实际上就是对DSM存储模型进行了改进,实现页面内垂直布局,确保同一元组记录内的所有属性存在一个页面中,避免了对主存不必要的访问,目的在于提升CPU Cache的命中率。
我们可以根据应用的特点采取一种折中的策略——行列混合存储。在某段时间内被OLTP应用频繁访问的数据以行存储,而其余数据按列存储,数据会根据访问类型的变化及时以数据块为单位执行行、列两种存储模式的转换。在理论上,当存储的数据规模达到一定数量级,针对各种不同的应用类型这种混合存储模型即使不会达到最优的存储效果,也能达到近似最优效果。由于OLTP应用一般在某段时间内都是针对某些局部数据进行操作处理,而其余大部分数据都不会被OLTP访问到,所以我们可以把数据进行划分,如图3所示,以数据块作为单位,划分后的数据块采用多样的存储模型,使这些被OLTP频繁访问的数据块按NSM存储模型进行存储,实现对OLTP应用的有效支持;而其余不经常被访问的数据块按PAX(PAX比DSM更适合块内布局)存储模型进行存储,实现对OLAP应用的有效支持。从OLTP应用的角度来看,整个数据库供其访问操作的数据都是基于行存储,有利于其进行频繁的更新等事务性操作;从OLAP应用的角度来看,整个数据库大部分数据都是基于列存储,只有少量数据是基于行存储(当数据量达到一定数据规模后,数据以行存储的比例相对于列存储非常小),也非常有利于其进行统计等分析性操作。
由于OLTP应用涉及到的数据可能是阶段性被访问的,所以存在由PAX模型转换为NSM模型的必要,为了实现数据块存储模型的双向动态转换,要求一个元组的数据必须存储在相同的数据块,否则数据不完整,不利于实现存储模型转换。由于NSM存储模型是把一个元组的数据依据属性顺序存放的,只要保证数据都以元组为单位写入数据块,就可以保证相同元组的所有数据存在于相同数据块内。而在DSM存储模型中,不同的列存放在不同的数据块内,不利于以数据块为单位进行存储模型转换,因此我们选择使用PAX存储模型替换DSM存储模型,把数据块划分成n(属性个数)个迷你块,在迷你块内分别存储各个属性的数据。
使用基于数据块的混合存储模型,需要对数据块的存储格式进行标识,如图4所示,数据块内包含如下元数据:Block Header用来存储数据块的标识、类型和大小等信息;Block ID表示数据块唯一编号;Store Flag标识在该数据块内数据的存储方式;Attr-Count用来标识当前数据块存储了多少个属性;Record-Size用来标识当前数据块存储了多少条记录。针对行存储,一个聚集中的属性按顺序依次把数据写入数据块,直到数据块达到设定的存储上限,然后再申请一个数据块继续写入,在一个数据块内要确保元组记录的完整性。另外,在数据块的尾部设置每条记录存储起始位置的指针。针对列存储,采用PAX存储模型的策略,首先根据属性的定义把数据块的数据存储空间划分成n(属性个数)个迷你块(每个迷你块大小可能不一样,根据属性长度划分,变长属性的迷你块相对要大些),在迷你块内分别存储各个属性的数据。数据分为两种,一种是定长数据,另一种是变长数据,定长数据直接按照元组的插入顺序依次存储,访问时通过偏移量乘以属性长度直接确定数据的存储位置,变长数据需要在迷你块的尾部设置每个变长数据的起始位置的指针。
当创建一个新的数据块后,由于刚插入的数据较新,进行OLTP操作的可能性较大,而且NSM存储模型比较适合插入过程,因此数据块在创建初期都按照NSM存储模型进行存储。在后期的访问过程中,如果OLAP操作多于OLTP操作或者OLTP操作很少甚至几乎没有,那么利用存储模型转换模块自动把NSM存储模型转换为PAX存储模型,如果OLTP操作比较频繁,也可以再自动转换回来。
在我们的自适应方法中,数据的存储模式是根据应用的访问方式来自适应调整的。一个数据库系统如何被使用对于数据库系统优化和管理是非常重要的。在传统关系数据库中,数据被访问的特征以一种特殊的形式被表示,即工作负荷,它是一组SQL语句的集合。在过去的几十年里,出现了很多基于工作负荷驱动的数据库系统优化和管理的应用,比如统计直方图调优、改进查询优化和索引选择等。类似这些应用,本发明提出基于工作负荷来驱动存储模式转换的方法。创建一个子系统实时收集、分析和统计用户的工作负荷,统计分析数据块内存储的数据主要面向何种应用,推荐应采取何种存储模型,以便实时对数据块内的数据进行存储格式的适应性调整。
步骤S2:获取与所述工作负荷相关的数据块;
步骤S3:根据所述工作负荷确定所述数据块的访问类型;
步骤S4:根据所述访问类型对所述数据块的存储格式进行转换。
本实施方式通过获取数据库的工作负荷,根据所述工作负荷确定所述数据块的访问类型,根据所述访问类型对所述数据块的存储格式进行转换,任意一个数据块可以根据应用的变换动态自适应调整存储格式,从而有效地同时支持OLTP和OLAP服务。
优选地,步骤S3包括:
获取所述工作负荷中SQL语句的关键字和返回结果集;
根据所述关键字和返回结果集确定所述数据块的访问类型;具体地:
若所述SQL语句的关键字是SELECT,且所述结果集的大小超过预先设定的第一阈值,确定所述数据块的访问类型为OLAP,否则,确定所述数据块的访问类型为OLTP。
优选地,根据所述关键字和返回结果集确定所述数据块的访问类型之后还包括:
若所述数据块的访问类型为OLAP,在预先设置的数据块信息字典中将所述数据块的OLAP访问次数加一,若所述数据块的访问类型为OLTP,在所述数据块信息字典中将所述数据块的OLTP访问次数加一。
数据块的访问类型的收集、分析和统计的流程如图5所示,首先要实时收集系统在一段时间内的工作负荷(SQL语句),分析SQL语句的关键字,统计SQL语句的返回结果集,如果SQL语句的关键字是SELECT而且返回结果集的大小超过设定的第一阈值,那么可以确定该工作负荷属于OLAP操作,否则认为属于OLTP操作,然后更新数据块信息字典,增加该数据块的某种操作访问次数,作为后期存储模式优化的依据。在统计数据达到某种条件时,要对当前SQL语句访问涉及到的数据块进行存储模式推荐,及时地优化数据块的存储格式,有效地提高数据库的性能。最后,实现对某个数据块的存储模型进行切换,把基于行存储的数据转换为基于列存储的数据或者把基于列存储的数据转换为基于行存储的数据,并修改数据块头部的元数据。转换过程可以立即转换也可以推迟转换,找一个空闲时间进行转换,推迟转换操作由转换模块自动检测和执行。
优选地,步骤S4具体包括:
若所述数据块信息字典中所述数据块的OLTP访问次数大于预先设置的第二阈值,将所述数据块转换为NSM存储模型;
若所述数据块信息字典中所述数据块的OLAP访问次数大于预先设置的第三阈值,将所述数据块转换为PAX存储模型。
优选地,在将所述数据块转换之前还包括:
判断当前所述数据库所在的服务器负载是否达到第四阈值,若是,推迟所述转换。
由于数据块的访问方式定期会发生本质变化,那么数据块的存储格式也要自适应地进行调整。这就涉及到类似数据迁移的问题,如果统一对需要转换存储模型的数据块进行转换,一定会给数据库服务器带来很大的压力,影响用户的实时访问性能。为了解决以上分析的问题,我们的方法把存储模型的转换过程分而治之,不是把一段时间内达到转换条件的数据块同时进行转换,而是通过应用的变化来触发转换操作,针对在当前应用访问过程中涉及到的数据块,如果检测其达到转换条件,那么就在该应用访问结束后立即进行存储模型的转换。如果此时服务器负载较高,为了不影响实时性能,可以根据实际情况采用推迟转换,找一个空闲时间进行转换,推迟转换操作由切换模块自动检测和执行,这种策略有两个优点:第一、实现了数据的局部转换,不给系统造成过重的负担。第二、对于那些暂时没有被访问且符合转换条件的数据块不进行转换,避免由于需求的变化进行错误的调整。
转换过程如图6所示,转换功能模块收到某个数据块的转换命令,首先判断当前是否适合立即转换,如果系统繁忙则把该数据块标记为推迟转换状态,转换模块会定期检测系统状态,找到合适时间段继续完成模型转换;如果可以立即转换,那么先把该数据块内的数据(包括元数据)从磁盘读取到转换缓存区内,然后在内存中修改数据块的存储格式(包括修改元数据标识),最后把转换缓存区内的新数据块写回磁盘。
其中,在对所述数据库进行数据读取操作中,以数据块为单位进行批量扫描。
关系数据库查询过程中的执行计划通常以树型的数据结构表示,树的叶子节点主要负责数据扫描,从磁盘上读取数据,树中的非叶节点被称为操作符,每个操作符完成一个特定的功能,操作符对两个子节点进行操作加工后产生一个中间结果集,继续为父节点提供数据。当执行到根节点产生最后的查询结果。在操作符完成操作的过程中,需要逐条记录依次处理。传统关系数据库都是一边扫描一边处理,也就是两个叶子节点分别扫描并提取一条记录,然后进行操作符相应的操作并产生一个中间结果,接着再向叶子节点索要数据继续处理。每次对磁盘的系统调用只返回一条数据记录,由于系统调用过于频繁,严重降低IO性能,为了提高数据的提取效率,在行数据库中提出数据预取技术,在列数据库中提出成组迭代技术,通过批量扫描并提取数据,可以显著降低IO访问次数,提高查询性能。
而在本发明中,数据以混合模型存储,有的数据块以行存储,有的数据块以列存储,扫描方法变得异常复杂。针对异构的存储结构,参见图7,可以统一采用基于数据块的预取技术,即可以提高数据的访问效率,又成功解决了行列混合存储模型中的异构扫描问题。因为本发明中的存储模型存在行存储和列存储两种,把整个数据块作为扫描单位是可以不区分数据块内部数据是如何存储的,因此数据块无论是行存储还是列存储其扫描方法都是一样的。只有在访问数据块内的具体某条记录时才会考虑是行存储还是列存储。
图8是本发明实施方式提供的一种基于数据块的自适应数据存储管理系统的示意图,包括:
行列混合存储管理器,用于对数据库实现包含行存储和列存储的混合存储机制。该行列混合存储管理器实现记录的混合存储机制,支持有效的数据压缩和索引技术。
信息采集器,用于采集用户对所述数据库中数据块的访问类型。信息采集器实时采集用户在某段时间内对数据块的访问类型,为存储模式转换器提供转换依据。
模式转换管理器,用于根据所述访问类型确定所述数据块的存储格式,并对所述数据块进行格式转换。该模式转换管理器管理整个数据库的所有数据块的存储模模型,根据采集的信息确定数据块的存储模型,并选择合适时机进行模型转换。
磁盘管理器,用于管理磁盘上不同存储格式的数据块的系统调用方法,其中,在对所述数据库进行数据读取操作中,以数据块为单位进行批量扫描。
本发明实施方式提供的基于数据块的自适应数据存储管理系统实时采集用户在一段时间内对数据块的访问类型,为存储模式转换器提供转换依据,通过模式转换管理器及时对数据库系统的物理存储结构进行优化,任意一个数据块可以根据应用的变换动态自适应调整存储格式,从而有效地同时支持OLTP和OLAP服务,此外,该系统支持基于数据块的批量预取技术,能够提高磁盘的I/O性能,并且较好的解决异构扫描问题。
Claims (8)
1.一种基于数据块的自适应数据存储管理方法,其特征在于,包括:
获取数据库的工作负荷,所述工作负荷包括用于访问所述数据库的SQL语句;
获取与所述工作负荷相关的数据块;
根据所述工作负荷确定所述数据块的访问类型;
根据所述访问类型对所述数据块的存储格式进行转换。
2.根据权利要求1所述的基于数据块的自适应数据存储管理方法,其特征在于,根据所述工作负荷确定所述数据块的访问类型包括:
获取所述工作负荷中SQL语句的关键字和返回结果集;
根据所述关键字和返回结果集确定所述数据块的访问类型。
3.根据权利要求2所述的基于数据块的自适应数据存储管理方法,其特征在于,根据所述关键字和返回结果集确定所述数据块的访问类型包括:
若所述SQL语句的关键字是SELECT,且所述结果集的大小超过预先设定的第一阈值,确定所述数据块的访问类型为OLAP,否则,确定所述数据块的访问类型为OLTP。
4.根据权利要求3所述的基于数据块的自适应数据存储管理方法,其特征在于,根据所述关键字和返回结果集确定所述数据块的访问类型之后还包括:
若所述数据块的访问类型为OLAP,在预先设置的数据块信息字典中将所述数据块的OLAP访问次数加一,若所述数据块的访问类型为OLTP,在所述数据块信息字典中将所述数据块的OLTP访问次数加一。
5.根据权利要求4所述的基于数据块的自适应数据存储管理方法,其特征在于,根据所述访问类型对所述数据块的存储格式进行转换包括:
若所述数据块信息字典中所述数据块的OLTP访问次数大于预先设置的第二阈值,将所述数据块转换为NSM存储模型;
若所述数据块信息字典中所述数据块的OLAP访问次数大于预先设置的第三阈值,将所述数据块转换为PAX存储模型。
6.根据权利要求5所述的基于数据块的自适应数据存储管理方法,其特征在于,在将所述数据块转换之前还包括:
判断当前所述数据库所在的服务器负载是否达到第四阈值,若是,推迟所述转换。
7.根据权利要求1所述的基于数据块的自适应数据存储管理方法,其特征在于,在对所述数据库进行数据读取操作中,以数据块为单位进行批量扫描。
8.一种基于数据块的自适应数据存储管理系统,其特征在于,包括:
行列混合存储管理器,用于对数据库实现包含行存储和列存储的混合存储机制;
信息采集器,用于采集用户对所述数据库中数据块的访问类型;
模式转换管理器,用于根据所述访问类型确定所述数据块的存储格式,并对所述数据块进行格式转换;
磁盘管理器,用于管理磁盘上不同存储格式的数据块的系统调用方法,其中,在对所述数据库进行数据读取操作中,以数据块为单位进行批量扫描。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310291539.2A CN103345518B (zh) | 2013-07-11 | 2013-07-11 | 基于数据块的自适应数据存储管理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310291539.2A CN103345518B (zh) | 2013-07-11 | 2013-07-11 | 基于数据块的自适应数据存储管理方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103345518A true CN103345518A (zh) | 2013-10-09 |
CN103345518B CN103345518B (zh) | 2016-08-10 |
Family
ID=49280313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310291539.2A Active CN103345518B (zh) | 2013-07-11 | 2013-07-11 | 基于数据块的自适应数据存储管理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103345518B (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104361099A (zh) * | 2014-11-21 | 2015-02-18 | 北京邮电大学 | 一种面向异构存储的适配装置 |
CN104866597A (zh) * | 2015-05-29 | 2015-08-26 | 北京奇虎科技有限公司 | 数据库访问请求的分析方法和装置 |
CN104933105A (zh) * | 2015-05-29 | 2015-09-23 | 北京奇虎科技有限公司 | 数据库访问请求的分析方法和装置 |
WO2015139193A1 (zh) * | 2014-03-18 | 2015-09-24 | 华为技术有限公司 | 一种数据存储格式的转换方法及装置 |
CN105701185A (zh) * | 2016-01-08 | 2016-06-22 | 广州西麦科技股份有限公司 | 一种提高数据库性能的优化方法 |
CN106777027A (zh) * | 2016-12-08 | 2017-05-31 | 北京国电通网络技术有限公司 | 大规模并行处理行列混合数据存储装置及存储、查询方法 |
CN106874437A (zh) * | 2017-02-04 | 2017-06-20 | 中国人民大学 | 面向数据库一体机的内存数据仓库行列存储转换实现方法 |
WO2017101477A1 (zh) * | 2015-12-17 | 2017-06-22 | 深圳市华讯方舟软件技术有限公司 | 一种PostgreSQL块 |
CN108388640A (zh) * | 2018-02-26 | 2018-08-10 | 北京环境特性研究所 | 一种数据转换方法、装置以及数据处理系统 |
CN108572786A (zh) * | 2017-03-09 | 2018-09-25 | 上海宝存信息科技有限公司 | 避免读取扰动的数据搬移方法以及使用该方法的装置 |
CN109284072A (zh) * | 2018-09-28 | 2019-01-29 | 北京航空航天大学 | 一种针对异构存储系统的自适应数据动态调度方法和系统 |
CN109803107A (zh) * | 2019-01-09 | 2019-05-24 | 安徽睿极智能科技有限公司 | 多媒体数据的嵌入式文件系统及基于该系统的快速读写方法 |
WO2020034757A1 (zh) * | 2018-08-16 | 2020-02-20 | 腾讯科技(深圳)有限公司 | 数据处理方法和装置、存储介质及电子装置 |
CN111475584A (zh) * | 2020-06-19 | 2020-07-31 | 阿里云计算有限公司 | 数据处理方法、系统以及装置 |
CN111723078A (zh) * | 2020-06-24 | 2020-09-29 | 苏州松鼠山人工智能科技有限公司 | 一种数据存储方法和装置 |
CN111897891A (zh) * | 2020-06-19 | 2020-11-06 | 阿里云计算有限公司 | 数据处理方法及装置 |
CN112860726A (zh) * | 2021-02-07 | 2021-05-28 | 天云融创数据科技(北京)有限公司 | 结构化查询语句分类模型训练方法和装置 |
CN114706861A (zh) * | 2022-06-08 | 2022-07-05 | 天津南大通用数据技术股份有限公司 | 一种在列存储引擎中按列动态分组存储的方法 |
WO2022257575A1 (zh) * | 2021-06-11 | 2022-12-15 | 华为技术有限公司 | 一种数据处理方法、装置以及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495905A (zh) * | 2011-12-23 | 2012-06-13 | 天津神舟通用数据技术有限公司 | 一种基于行存数据库引擎的列存方法 |
CN102591910A (zh) * | 2010-12-08 | 2012-07-18 | 达索系统艾诺维亚公司 | 用于组合oltp数据库和olap数据库环境的计算机方法和系统 |
US20130073513A1 (en) * | 2010-05-17 | 2013-03-21 | Technische Universitat Munchen | Hybrid OLTP and OLAP High Performance Database System |
CN102999519A (zh) * | 2011-09-15 | 2013-03-27 | 上海盛付通电子商务有限公司 | 一种数据库的读写方法及系统 |
-
2013
- 2013-07-11 CN CN201310291539.2A patent/CN103345518B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130073513A1 (en) * | 2010-05-17 | 2013-03-21 | Technische Universitat Munchen | Hybrid OLTP and OLAP High Performance Database System |
CN102591910A (zh) * | 2010-12-08 | 2012-07-18 | 达索系统艾诺维亚公司 | 用于组合oltp数据库和olap数据库环境的计算机方法和系统 |
CN102999519A (zh) * | 2011-09-15 | 2013-03-27 | 上海盛付通电子商务有限公司 | 一种数据库的读写方法及系统 |
CN102495905A (zh) * | 2011-12-23 | 2012-06-13 | 天津神舟通用数据技术有限公司 | 一种基于行存数据库引擎的列存方法 |
Non-Patent Citations (1)
Title |
---|
崔跃生 等: "数据库物理结构优化技术", 《软件学报》, vol. 24, no. 4, 30 April 2013 (2013-04-30), pages 761 - 780 * |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015139193A1 (zh) * | 2014-03-18 | 2015-09-24 | 华为技术有限公司 | 一种数据存储格式的转换方法及装置 |
CN105378716A (zh) * | 2014-03-18 | 2016-03-02 | 华为技术有限公司 | 一种数据存储格式的转换方法及装置 |
CN105378716B (zh) * | 2014-03-18 | 2019-03-26 | 华为技术有限公司 | 一种数据存储格式的转换方法及装置 |
CN104361099A (zh) * | 2014-11-21 | 2015-02-18 | 北京邮电大学 | 一种面向异构存储的适配装置 |
CN104361099B (zh) * | 2014-11-21 | 2017-10-20 | 北京邮电大学 | 一种面向异构存储的适配装置 |
CN104933105B (zh) * | 2015-05-29 | 2019-02-12 | 北京奇虎科技有限公司 | 数据库访问请求的分析方法和装置 |
CN104866597A (zh) * | 2015-05-29 | 2015-08-26 | 北京奇虎科技有限公司 | 数据库访问请求的分析方法和装置 |
CN104933105A (zh) * | 2015-05-29 | 2015-09-23 | 北京奇虎科技有限公司 | 数据库访问请求的分析方法和装置 |
WO2017101477A1 (zh) * | 2015-12-17 | 2017-06-22 | 深圳市华讯方舟软件技术有限公司 | 一种PostgreSQL块 |
CN105701185A (zh) * | 2016-01-08 | 2016-06-22 | 广州西麦科技股份有限公司 | 一种提高数据库性能的优化方法 |
CN106777027A (zh) * | 2016-12-08 | 2017-05-31 | 北京国电通网络技术有限公司 | 大规模并行处理行列混合数据存储装置及存储、查询方法 |
CN106874437A (zh) * | 2017-02-04 | 2017-06-20 | 中国人民大学 | 面向数据库一体机的内存数据仓库行列存储转换实现方法 |
CN108572786A (zh) * | 2017-03-09 | 2018-09-25 | 上海宝存信息科技有限公司 | 避免读取扰动的数据搬移方法以及使用该方法的装置 |
CN108388640A (zh) * | 2018-02-26 | 2018-08-10 | 北京环境特性研究所 | 一种数据转换方法、装置以及数据处理系统 |
CN108388640B (zh) * | 2018-02-26 | 2020-11-13 | 北京环境特性研究所 | 一种数据转换方法、装置以及数据处理系统 |
WO2020034757A1 (zh) * | 2018-08-16 | 2020-02-20 | 腾讯科技(深圳)有限公司 | 数据处理方法和装置、存储介质及电子装置 |
US11636083B2 (en) | 2018-08-16 | 2023-04-25 | Tencent Technology (Shenzhen) Company Limited | Data processing method and apparatus, storage medium and electronic device |
CN109284072A (zh) * | 2018-09-28 | 2019-01-29 | 北京航空航天大学 | 一种针对异构存储系统的自适应数据动态调度方法和系统 |
CN109284072B (zh) * | 2018-09-28 | 2020-06-02 | 北京航空航天大学 | 一种针对异构存储系统的自适应数据动态调度方法和系统 |
CN109803107A (zh) * | 2019-01-09 | 2019-05-24 | 安徽睿极智能科技有限公司 | 多媒体数据的嵌入式文件系统及基于该系统的快速读写方法 |
CN111897891A (zh) * | 2020-06-19 | 2020-11-06 | 阿里云计算有限公司 | 数据处理方法及装置 |
CN111475584A (zh) * | 2020-06-19 | 2020-07-31 | 阿里云计算有限公司 | 数据处理方法、系统以及装置 |
CN111897891B (zh) * | 2020-06-19 | 2023-06-13 | 阿里云计算有限公司 | 数据处理方法及装置 |
CN111723078A (zh) * | 2020-06-24 | 2020-09-29 | 苏州松鼠山人工智能科技有限公司 | 一种数据存储方法和装置 |
CN112860726A (zh) * | 2021-02-07 | 2021-05-28 | 天云融创数据科技(北京)有限公司 | 结构化查询语句分类模型训练方法和装置 |
WO2022257575A1 (zh) * | 2021-06-11 | 2022-12-15 | 华为技术有限公司 | 一种数据处理方法、装置以及设备 |
CN114706861A (zh) * | 2022-06-08 | 2022-07-05 | 天津南大通用数据技术股份有限公司 | 一种在列存储引擎中按列动态分组存储的方法 |
CN114706861B (zh) * | 2022-06-08 | 2022-09-16 | 天津南大通用数据技术股份有限公司 | 一种在列存储引擎中按列动态分组存储的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103345518B (zh) | 2016-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103345518A (zh) | 基于数据块的自适应数据存储管理方法及系统 | |
US10261862B2 (en) | Data replication in a database management system | |
US10262013B2 (en) | Efficient full delete operations | |
US10346383B2 (en) | Hybrid database table stored as both row and column store | |
US9298761B2 (en) | Adaptive merging in database indexes | |
US9558258B2 (en) | Hybrid database table stored as both row and column store | |
US9542424B2 (en) | Lifecycle-based horizontal partitioning | |
US20140244628A1 (en) | Hybrid Database Table Stored as Both Row and Column Store | |
US8572063B2 (en) | Computer-implemented method for operating a database and corresponding computer-system | |
US10037355B2 (en) | Mechanisms for merging index structures in MOLAP while preserving query consistency | |
US20110137875A1 (en) | Incremental materialized view refresh with enhanced dml compression | |
JP2017518584A (ja) | フラッシュ最適化データ・レイアウトのための方法、フラッシュ最適化記憶のための装置、およびコンピュータ・プログラム | |
US20170293649A1 (en) | Automatically revising synopsis table structure | |
US9208180B2 (en) | Determination of database statistics using application logic | |
CN101510209A (zh) | 实现实时检索的方法、系统和服务器 | |
CN110096509A (zh) | 大数据环境下实现历史数据拉链表存储建模处理的系统及方法 | |
US20130060782A1 (en) | Determining indexes for improving database system performance | |
CN102193938A (zh) | 增量数据采集的方法和装置 | |
CN109299143B (zh) | 基于Redis缓存的数据互操作测试知识库的知识快速索引方法 | |
Kvet et al. | Analysis of current trends in relational database indexing | |
US20050228772A1 (en) | Apparatus and method for using values from a frequent values list to bridge additional keys in a database index | |
CN103309890A (zh) | 一种Linux文件系统与实时数据库索引融合的技术 | |
KR100921683B1 (ko) | 키-값 데이터 모델을 위한 메모리 페이지 내 데이터저장방법 | |
CN117725283B (zh) | 一种基于大数据的档案数据存储系统 | |
KR20240044233A (ko) | 로그 및 인덱스 최근접 데이터 고속 처리 장치 및 방법 |
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 |