一种数据处理方法及装置的制造方法

文档序号:9818331阅读:283来源:国知局
一种数据处理方法及装置的制造方法
【技术领域】
[0001 ]本发明涉及数据存储技术领域,尤其涉及一种数据处理的方法及装置。
【背景技术】
[0002] 随着大量的业务数据和社会网络累积的各种数据越来越多,数据存储方式对于数 据的查询速度有着重要的影响。
[0003] 现有技术中的行存储方式按行存储所管理的,每次读入内存的都是若干完整的行 数据,适用于小批量的数据处理。对大数据集的分析查询,通常只用到一个逻辑表的少数几 个列,若按行的方式存储数据,由于每次要读取的数据量非常大,而查询时可能只用到一个 逻辑表的少数几个列,这样,在查询时会读取大量无关数据,从而浪费了带宽,降低了效率, 影响了查询处理速度。
[0004] 现有技术中的列存储方式按行存储所管理的,只读取与查询相关的列数据,可以 避免对无关列数据的读取,但该方式存储的数据进行查询时,通常需要将不同列的数据重 新组织成元组,查询处理过程中的元组重构操作时影响查询处理速度。
[0005] 现有技术中的行列混合存储方式按行存储所管理的,同一份数据保存两份,即一 份用行存储,一份用列存储;该方法所占的存储空间是原始数据的两倍,存储的数据利用率 低,并且维护困难。PAX方法是一种常用的行列混合存储,其原理为:读入内存的数据在每个 页内按列存储,缓解了元组重构的代价。同一元组的所有属性值在同一页内,重构一条元组 不需要通过多次输入/输出(I/O)从不同的文件中获取同一元组的不同列值。PAX使用混合 结构的目标是优化高速缓存从内存读取数据的性能,但是对处理大数据时的磁盘I/O性能 没有影响。PAX方法只是在数据从外存读入内存以后,在页内按列的方式组织,而在存储上 仍然按行的方式存储。由于PAX方法没有改变磁盘的读取速度,影响了查询速度。
[0006] 目前对于如何提高查询处理速度,如何提高存储数据的利用率是需要解决的问 题。

【发明内容】

[0007] 本发明的目的是提供一种数据处理的方法及装置,以解决查询处理速度慢,存储 数据的利用率低的问题。
[0008] 本发明的目的是通过以下技术方案实现的:
[0009] -种数据处理方法,包括:
[0010]接收用户的查询请求,其中,所述查询请求中携带所需查询的属性和属性值;
[0011]若未保存所需查询的属性对应的列存储,从行存储中确定出所需查询的属性值对 应的行号,根据确定出的行号,从行存储中获取对应的记录并将所需查询的属性对应的查 询次数增加设定值;
[0012]若保存有所需查询的属性对应的列存储,从所述列存储中确定出所需查询的属性 值对应的行号,并从行存储中获取所述行号对应的记录。
[0013] 可选的,将所需查询的属性对应的查询次数增加设定次数之后,该方法还包括:
[0014] 在所需查询的属性对应的查询次数达到设定阈值时,从行存储中确定出所需查询 的属性对应的所有属性值和行号信息,并将确定出的属性值和行号信息以列存储方式进行 存储。
[0015] 可选的,若所述查询请求中携带至少两个所需查询的属性,且保存有所述至少两 个所需查询的属性对应的列存储,则从所述列存储中确定出所需查询的属性值对应的行 号,并从行存储中获取所述行号对应的记录,包括:
[0016] 对于每个所需查询的属性,从所需查询的属性对应的列存储中,确定出所需查询 的属性值对应的行号形成的行号集合;
[0017] 确定出所述行号集合的交集,并根据所述行号集合的交集,从行存储中获取对应 的记录。
[0018] 可选的,若所述查询请求中携带至少两个所需查询的属性,且未保存所述至少两 个所需查询的属性中至少一个所需查询的属性对应的列存储,则从所述列存储中确定出所 需查询的属性值对应的行号,并从行存储中获取所述行号对应的记录,包括:
[0019] 对于存在对应的列存储的所需查询的属性,从所需查询的属性对应的列存储中, 确定出所需查询的属性值对应的行号,并根据确定出的行号,从行存储中获取对应的记录;
[0020] 从获取到的记录中,确定出不存在对应的列存储的所需查询的属性所对应的记 录。
[0021] 基于与方法同样的发明构思,本发明实施例提供了一种数据处理装置,包括:
[0022] 接收模块,用于接收用户的查询请求,其中,所述查询请求中携带所需查询的属性 和属性值;
[0023] 处理模块,用于若未保存所需查询的属性对应的列存储,从行存储中确定出所需 查询的属性值对应的行号,根据确定出的行号,从行存储中获取对应的记录并将所需查询 的属性对应的查询次数增加设定值;
[0024] 若保存有所需查询的属性对应的列存储,从所述列存储中确定出所需查询的属性 值对应的行号,并从行存储中获取所述行号对应的记录。
[0025] 可选的,将所需查询的属性对应的查询次数增加设定次数之后,所述处理模块还 用于:
[0026] 在所需查询的属性对应的查询次数达到设定阈值时,从行存储中确定出所需查询 的属性对应的所有属性值和行号信息,并将确定出的属性值和行号信息以列存储方式进行 存储。
[0027] 可选的,若所述查询请求中携带至少两个所需查询的属性,且保存有所述至少两 个所需查询的属性对应的列存储,则从所述列存储中确定出所需查询的属性值对应的行 号,并从行存储中获取所述行号对应的记录,所述处理模块还用于:
[0028] 对于每个所需查询的属性,从所需查询的属性对应的列存储中,确定出所需查询 的属性值对应的行号形成的行号集合;
[0029]确定出所述行号集合的交集,并根据所述行号集合的交集,从行存储中获取对应 的记录。
[0030]可选的,若所述查询请求中携带至少两个所需查询的属性,且未保存所述至少两 个所需查询的属性中至少一个所需查询的属性对应的列存储,则从所述列存储中确定出所 需查询的属性值对应的行号,并从行存储中获取所述行号对应的记录,所述处理模块还用 于:
[0031] 对于存在对应的列存储的所需查询的属性,从所需查询的属性对应的列存储中, 确定出所需查询的属性值对应的行号,并根据确定出的行号,从行存储中获取对应的记录;
[0032] 从获取到的记录中,确定出不存在对应的列存储的所需查询的属性所对应的记 录。
[0033] 本发明实施例提供的一种数据处理的方法及装置,接收用户的查询请求后,若未 保存所需查询的属性对应的列存储时,从行存储中确定出所需查询的属性值对应的行号, 根据确定出的行号,从行存储中获取对应的记录并将所需查询的属性对应的查询次数增加 设定值;若保存有所需查询的属性对应的列存储,从所述列存储中确定出所需查询的属性 值对应的行号,并从行存储中获取所述行号对应的记录。提高了查询处理速度以及存储数 据的利用率。
【附图说明】
[0034] 图1为本发明实施例提供的一种数据处理方法流程图;
[0035]图2为本发明实施例提供的另一种数据处理方法流程图;
[0036]图3为本发明实施例提供的一种数据处理装置示意图。
【具体实施方式】
[0037]下面将结合附图,对本发明实施例提供的技术方案进行详细说明。
[0038]本发明实施例提供一种数据处理方法,如图1所示,包括如下操作:
[0039] 步骤100、接收用户的查询请求,其中,所述查询请求中携带所需查询的属性和属 性值;
[0040] 步骤110、在确定出未保存所需查询的属性对应的列存储时,将所需查询的属性对 应的查询次数增加设定次数,并从行存储中确定出所需查询的属性值对应的行号,根据确 定出的行号,从行存储中获取对应的记录;
[0041 ]步骤120、在确定出保存有所需查询的属性对应的列存储时,从所述列存储中确定 出所需查询的属性值对应的行号,并从行存储中获取所述行号对应的记录。
[0042]本发明实施例提供的一种数据处理的方法,接收用户的查询请求后,若未保存所 需查询的属性对应的列存储时,从行存储中确定出所需查询的属性值对应的行号,根据确 定出的行号,从行存储中获取对应的记录并将所需
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1