CN110879812A - 一种电商平台中基于spark的数据同步方法 - Google Patents

一种电商平台中基于spark的数据同步方法 Download PDF

Info

Publication number
CN110879812A
CN110879812A CN201911138971.1A CN201911138971A CN110879812A CN 110879812 A CN110879812 A CN 110879812A CN 201911138971 A CN201911138971 A CN 201911138971A CN 110879812 A CN110879812 A CN 110879812A
Authority
CN
China
Prior art keywords
data
hive
hbase
spark
opt
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
Application number
CN201911138971.1A
Other languages
English (en)
Other versions
CN110879812B (zh
Inventor
张秀超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Software Co Ltd
Original Assignee
Inspur Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Software Co Ltd filed Critical Inspur Software Co Ltd
Priority to CN201911138971.1A priority Critical patent/CN110879812B/zh
Publication of CN110879812A publication Critical patent/CN110879812A/zh
Application granted granted Critical
Publication of CN110879812B publication Critical patent/CN110879812B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种电商平台中基于spark的数据同步方法,属于于数据处理技术领域,Mysql作为电商平台中的关系型数据库的源数据实时产生增量数据,通过ETL工具读取mysql的binlog日志获取增量数据并标注数据存放于hbase中。设置同步规则定时通过spark把标注的数据从hbase同步到hive中。解决电商平台中多个***之间的业务数据同步问题。

Description

一种电商平台中基于spark的数据同步方法
技术领域
本发明涉及数据处理技术,尤其涉及一种电商平台中基于spark的数据同步方法。
背景技术
在当前互联网电商平台中必然会涉及多个***,***之间的数据同步尤为重要,各部门对业务数据的需求不同时,比如对数据进行分析或者报表展示,数据需要从当前的业务库迁移到相应的目标库。对于数据分析,通常是通过ETL工具抽取到目标库,但是对于大数据平台数据湖中例如hive对删除操作不友好。
DB2数据库的增量进行增量同步,同步策略过于单一没有弹性伸缩设计,数据同步失败的补救错误不足。
从电商平台到大数据平台数据同步,因为涉及历史数据的更新(或删除),如果选择HIVE作为唯一存储组件,需要启动HIVE事务表机制,但是缺点是HIVE事务表在更新(或删除)操作上性能差,而且无法使用SPARK读取事务表数据做计算;如果选择HBASE作为唯一存储组件,优点是可以利用HBASE更新(或删除),但是缺点是SPARK读取HBASE表数据做计算,其性能远低于HIVE,无法满足汇总计算的时间要求
发明内容
为了解决以上技术问题,本发明提出了一种电商平台中基于spark的数据同步方法,应用于电商平台关系数据库中的业务数据同步到大数据平台中,多用于海量数据的同步,适用于数据准确性较高的***并为后续基于大数据平台做多维度汇总计算提供海量数据。解决电商平台中多个***之间的业务数据同步问题。
本发明可以从电商平台中的业务库例如mysql每天实时产生的增量数据同步到大数据平台中,然后在大数据平台对数据进行加工、萃取、汇总、计算。
本发明的技术方案是:
一种电商平台中基于spark的数据同步方法,由Hbase作为增量表,存中间增量数据,Hive存昨天(包含昨天)同步之前的全量数据,通过SPARK把HBASE库增量数据同步至HIVE库然后在进行业务汇总计算、日结。
进一步的,
涉及组件有MYSQL、NIFI、HBASE、HIVE以及SPARK。
Mysql作为电商平台中的关系型数据库的源数据实时产生增量数据,通过ETL工具读取mysql的binlog日志获取增量数据并标注数据存放于hbase中。设置同步规则定时通过spark把标注的数据从hbase同步到hive中。
设置同步规则定时通过spark把标注的数据从hbase同步到hive中。
具体步骤如下:
1)、获取增量数据;NIFI从MYSQL抽取数据写入HBASE表,并为每条记录增加“OPT_TIME”和“OPT_TYPE”字段;
2)、设置同步规则;Hbase增量数据同步到hive中,如果hive表中涉及的分区有更新需要先truncate该分区在***最新的数据,白天同步近三天的关键数据;晚上同步七天的数据;周末在同步其他数据;
3)、SPARK把HBASE的增量数据同步至HIVE。
进一步的,
“OPT_TIME”表示更新时间,格式为“yyyyMMddHHmmss”;
“OPT_TYPE”表示数据更新类型,包含三种:“INSERT”、“UPDATE”和“DELETE”;
进一步的,
Spark根据“OPT_TIME”字段读取增量数据increDF,并根据“OPT_TYPE”字段把数据分为deleteDF、updateDF和insertDF三种数据集。
进一步的,
从increDF中获取涉及更新的分区partitionLists,Spark读取HIVE分区partitionLists中的数据hiveDF;
根据联合主键把hiveDF中deleteDF、updateDF删掉,然后把hiveDF与updateDF和insertDF合并。
进一步的,TRUNCATE HIVE表分区partitionLists的数据,然后把hiveDF***HIVE中;
最后根据主键把HBASE表中increDF数删除。
该数据同步可以独立运行,不依赖与其他***。
关系型数据库中的数据同步到大数据平台中,通过该***可以将电商平台多个***的数据接入到大数据平台中。
数据同步通过Hbase作为中间存储库,通过设置同步策略调用spark程序,快速高效的同步到大数据平台中。
本发明的有益效果是
电商平台关系数据库中的数据同步更新至大数据平台hive中进行汇总计算,既保证了数据的准确性,同时数据同步的性能和效率也比较高。
附图说明
图1是电商平台数据同步到大数据平台流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
该方法涉及组件有MYSQL、NIFI、HBASE、HIVE以及SPARK。
MYSQL:电商平台业务库。
NIFI:数据抽取和回写。
HBASE:创建增量表,存中间增量数据。
HIVE:存昨天(包含昨天)之前的全量数据。
SPARK:HBASE库增量数据同步至HIVE库。
具体步骤如下:
1、获取增量数据。NIFI从MYSQL抽取数据写入HBASE表,并为每条记录增加“OPT_TIME”和“OPT_TYPE”字段。“OPT_TIME”表示更新时间,格式为“yyyyMMddHHmmss”比如“201910180423”;“OPT_TYPE”表示数据更新类型,包含三种:“INSERT”、“UPDATE”和“DELETE”。
2、设置同步规则。基于当前的方法,Hbase增量数据同步到hive中,如果hive表中涉及的分区有更新需要先truncate该分区在***最新的数据,对于当前业务中延迟提交数据时长发生造成,每次同步hive的分区很多,造成同步的时间过长。设置同步规则,可以白天同步近三天的关键数据。晚上同步七天的数据。周末在业务不忙时同步其他数据保证数据的一致性。
3、SPARK把HBASE的增量数据同步至HIVE。具体方法:Spark根据“OPT_TIME”字段读取增量数据increDF,并根据“OPT_TYPE”字段把数据分为deleteDF、updateDF和insertDF三种数据集。从increDF中获取涉及更新的分区partitionLists,Spark读取HIVE分区partitionLists中的数据hiveDF。根据联合主键把hiveDF中deleteDF、updateDF删掉,然后把hiveDF与updateDF和insertDF合并。TRUNCATE HIVE表分区partitionLists的数据,然后把hiveDF***HIVE中。最后根据主键把HBASE表中increDF数删除。
本发明应用于电商平台关系数据库中的业务数据同步到大数据平台中,多用于海量数据的同步,适用于数据准确性较高的***并为后续基于大数据平台做多维度汇总计算提供海量数据。本***解决上述电商平台中,多个***之间的业务数据同步问题。
以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (8)

1.一种电商平台中基于spark的数据同步方法,其特征在于,
由Hbase作为增量表,存中间增量数据,Hive存昨天(包含昨天)同步之前的全量数据,通过SPARK把HBASE库增量数据同步至HIVE库然后在进行业务汇总计算、日结。
2.根据权利要求1所述的方法,其特征在于,
Mysql作为电商平台中的关系型数据库的源数据实时产生增量数据,通过ETL工具读取mysql的binlog日志获取增量数据并标注数据存放于hbase中。
3.根据权利要求2所述的方法,其特征在于,
设置同步规则定时通过spark把标注的数据从hbase同步到hive中。
4.根据权利要求3所述的方法,其特征在于,
具体步骤如下:
1)、获取增量数据;NIFI从MYSQL抽取数据写入HBASE表,并为每条记录增加“OPT_TIME”和“OPT_TYPE”字段;
2)、设置同步规则;Hbase增量数据同步到hive中,如果hive表中涉及的分区有更新需要先truncate该分区在***最新的数据,白天同步近三天的关键数据;晚上同步七天的数据;周末在同步其他数据;
3)、SPARK把HBASE的增量数据同步至HIVE。
5.根据权利要求4所述的方法,其特征在于,
“OPT_TIME”表示更新时间,格式为“yyyyMMddHHmmss”;
“OPT_TYPE”表示数据更新类型,包含三种:“INSERT”、“UPDATE”和“DELETE”。
6.根据权利要求5所述的方法,其特征在于,
Spark根据“OPT_TIME”字段读取增量数据increDF,并根据“OPT_TYPE”字段把数据分为deleteDF、updateDF和insertDF三种数据集。
7.根据权利要求6所述的方法,其特征在于,
从increDF中获取涉及更新的分区partitionLists,Spark读取HIVE分区partitionLists中的数据hiveDF;
根据联合主键把hiveDF中deleteDF、updateDF删掉,然后把hiveDF与updateDF和insertDF合并。
8.根据权利要求7所述的方法,其特征在于,
TRUNCATE HIVE表分区partitionLists的数据,然后把hiveDF***HIVE中;
最后根据主键把HBASE表中increDF数删除。
CN201911138971.1A 2019-11-20 2019-11-20 一种电商平台中基于spark的数据同步方法 Active CN110879812B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911138971.1A CN110879812B (zh) 2019-11-20 2019-11-20 一种电商平台中基于spark的数据同步方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911138971.1A CN110879812B (zh) 2019-11-20 2019-11-20 一种电商平台中基于spark的数据同步方法

Publications (2)

Publication Number Publication Date
CN110879812A true CN110879812A (zh) 2020-03-13
CN110879812B CN110879812B (zh) 2023-06-20

Family

ID=69729014

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911138971.1A Active CN110879812B (zh) 2019-11-20 2019-11-20 一种电商平台中基于spark的数据同步方法

Country Status (1)

Country Link
CN (1) CN110879812B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112286941A (zh) * 2020-12-23 2021-01-29 武汉物易云通网络科技有限公司 一种基于Binlog+HBase+Hive的大数据同步方法和装置
CN117407445A (zh) * 2023-10-27 2024-01-16 上海势航网络科技有限公司 一种车联网数据平台数据存储方法、***及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015062181A1 (zh) * 2013-11-04 2015-05-07 广东电子工业研究院有限公司 用于实现多源异构数据资源自动同步的方法
CN106021422A (zh) * 2016-05-13 2016-10-12 北京思特奇信息技术股份有限公司 一种基于关系型数据库形成Hive数据仓库的方法及***
CN107330003A (zh) * 2017-06-12 2017-11-07 上海藤榕网络科技有限公司 数据同步方法、***、存储器及数据同步设备
CN110019477A (zh) * 2017-12-27 2019-07-16 航天信息股份有限公司 一种使用hive备份表进行大数据处理的方法及***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015062181A1 (zh) * 2013-11-04 2015-05-07 广东电子工业研究院有限公司 用于实现多源异构数据资源自动同步的方法
CN106021422A (zh) * 2016-05-13 2016-10-12 北京思特奇信息技术股份有限公司 一种基于关系型数据库形成Hive数据仓库的方法及***
CN107330003A (zh) * 2017-06-12 2017-11-07 上海藤榕网络科技有限公司 数据同步方法、***、存储器及数据同步设备
CN110019477A (zh) * 2017-12-27 2019-07-16 航天信息股份有限公司 一种使用hive备份表进行大数据处理的方法及***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
岑凯伦;于红岩;杨腾霄;: "大数据下基于Spark的电商实时推荐***的设计与实现" *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112286941A (zh) * 2020-12-23 2021-01-29 武汉物易云通网络科技有限公司 一种基于Binlog+HBase+Hive的大数据同步方法和装置
CN112286941B (zh) * 2020-12-23 2021-03-23 武汉物易云通网络科技有限公司 一种基于Binlog+HBase+Hive的大数据同步方法和装置
CN117407445A (zh) * 2023-10-27 2024-01-16 上海势航网络科技有限公司 一种车联网数据平台数据存储方法、***及存储介质
CN117407445B (zh) * 2023-10-27 2024-06-04 上海势航网络科技有限公司 一种车联网数据平台数据存储方法、***及存储介质

Also Published As

Publication number Publication date
CN110879812B (zh) 2023-06-20

Similar Documents

Publication Publication Date Title
US10180946B2 (en) Consistent execution of partial queries in hybrid DBMS
CN107544984B (zh) 一种数据处理的方法和装置
US9953051B2 (en) Multi-version concurrency control method in database and database system
US20180137134A1 (en) Data snapshot acquisition method and system
CN110647579A (zh) 数据同步方法及装置、计算机设备与可读介质
CN110209728B (zh) 一种分布式异构数据库同步方法、电子设备及存储介质
CN109241175A (zh) 数据同步方法、装置、存储介质及电子设备
US20200409931A1 (en) Graph database system
CN112286941B (zh) 一种基于Binlog+HBase+Hive的大数据同步方法和装置
CN109885617A (zh) 分布式异构数据库***的数据同步方法及装置
CN111339103A (zh) 一种基于全量分片和增量日志解析的数据交换方法及***
CN111651519B (zh) 数据同步方法、数据同步装置、电子设备及存储介质
CN110727684B (zh) 一种用于大数据统计分析的增量数据同步的方法
CN113111129A (zh) 数据同步方法、装置、设备及存储介质
CN103514274A (zh) 非关系型数据库HBase的数据迁移方法
CN110489092B (zh) 一种数据库读写分离架构下读取数据延迟问题的解决方法
CN111143368A (zh) 一种关系型数据库数据对比方法及***
CN110879812A (zh) 一种电商平台中基于spark的数据同步方法
CN109189798B (zh) 一种基于spark同步更新数据的方法
CN105787058A (zh) 一种用户标签***及基于用户标签***的数据推送***
CN114138907A (zh) 数据处理方法、计算机设备、存储介质和计算机程序产品
CN112000649B (zh) 一种基于map reduce的增量数据同步的方法和装置
CN108363791A (zh) 一种数据库的数据同步方法和装置
CN113868028A (zh) 一种在数据节点上回放日志的方法、数据节点及***
CN115185955A (zh) 一种数据湖数据处理方法和***

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 271000 Langchao science and Technology Park, 527 Dongyue street, Tai'an City, Shandong Province

Applicant after: INSPUR SOFTWARE Co.,Ltd.

Address before: No. 1036, Shandong high tech Zone wave road, Ji'nan, Shandong

Applicant before: INSPUR SOFTWARE Co.,Ltd.

GR01 Patent grant
GR01 Patent grant