[发明专利]数据搬运方法、数据搬运装置及电子设备有效
| 申请号: | 201710340072.4 | 申请日: | 2017-05-15 |
| 公开(公告)号: | CN107169098B | 公开(公告)日: | 2020-06-30 |
| 发明(设计)人: | 邵先凯;张鹏 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
| 主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/22 |
| 代理公司: | 北京律智知识产权代理有限公司 11438 | 代理人: | 王辉;阚梓瑄 |
| 地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数据 搬运 方法 装置 电子设备 | ||
本公开提供了一种数据搬运方法、数据搬运装置及电子设备,该方法包括:读取数据源中的数据并将数据源中行键相同的N条数据压缩拼装为一条等宽数据;将从所述数据源读取的所述等宽数据存储在一中间队列;将存储在所述中间队列的所述等宽数据写入和分发到一目标存储器。本公开通过使用等宽数据,提高了数据搬运效率。
技术领域
本公开涉及数据处理技术领域,具体而言,涉及一种数据搬运方法、一种数据搬运装置以及一种电子设备。
背景技术
随着通信技术的发展,大数据的存储、抽取、搬运、计算、分析以及决策越来越受到关注。随着对大数据处理分析的迫切需求,以及数据存储空间与数据访问时间之间的矛盾激化,大多数用户通过分布式存储系统HBase来对数据进行存储,以满足对数据高效的插入和读取操作。
现有技术中,一般采用开源数据仓库框架Hadoop+Hive进行底层数据分析及数据存储,其中分布式系统基础架构Hadoop为底层数据的存储介质,基于Hadoop数据仓库工具Hive为类SQL(Structured Query Language,结构化查询语言)查询引擎,两者的结合使得数据的查询方式更加简便。
这种方式会存在以下问题:一、在海量数据的情况下,映射和化简Map-Reduce的查询形式已经无法满足对大数据进行即席查询的效率;二、行键Rowkey是多字段拼装的字符串类型,因此除冗余字段之外的行键中的其他字段都不能参与计算;同时由于行键中每个字段长短的设计都依赖于HBase底层存储的字典序来进行后续的查询,因此对于较多的字段所拼装的行键,空数据量大,对传输过程中的输入/输出产生较大的影响,从而影响数据的搬运效率。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种数据搬运方法、一种数据搬运装置以及一种电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
根据本公开的第一方面,提供一种数据搬运方法,所述方法包括:
读取数据源中的数据并将所述数据源中行键相同的多条数据压缩拼装为一条等宽数据;
将从所述数据源读取的所述等宽数据存储在一中间队列;
将存储在所述中间队列的所述等宽数据写入和分发到一目标存储器。
在本公开的一种示例性实施例中,将数据源中行键相同的多条数据压缩拼装为一条等宽数据包括:
在对数据进行压缩拼装时,自定义配置所述数据源中行键对应的每个字段和每个列的类型。
在本公开的一种示例性实施例中,读取数据源中的数据包括:
循环读取所述数据源中的数据到所述数据源的缓冲区,并对读取的数据进行映射操作以及自定义预处理;
在对读取的数据进行映射操作以及自定义预处理之后,判断所述数据源是否已满;
在判断所述数据源已满时,将数据推送到所述中间队列并循环读取所述数据源中的数据。
在本公开的一种示例性实施例中,将所述等宽数据写入和分发到一目标存储器包括:
将所述数据源中行键相同的数据按照一致性哈希算法分发到相同的线程,并通过多线程的形式将数据写入所述目标存储器;
在将数据写入所述目标存储器时,判断所述目标存储器中是否存在空数据;
在判断所述目标存储器中未存在所述空数据时,判断写入数据的行键是否相同;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710340072.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





