CN116737838A - 一种数据同步方法、装置,计算机设备和存储介质 - Google Patents
一种数据同步方法、装置,计算机设备和存储介质 Download PDFInfo
- Publication number
- CN116737838A CN116737838A CN202310895461.9A CN202310895461A CN116737838A CN 116737838 A CN116737838 A CN 116737838A CN 202310895461 A CN202310895461 A CN 202310895461A CN 116737838 A CN116737838 A CN 116737838A
- Authority
- CN
- China
- Prior art keywords
- data
- synchronized
- synchronization
- source
- target database
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000003860 storage Methods 0.000 title claims abstract description 17
- 230000001360 synchronised effect Effects 0.000 claims abstract description 177
- 238000013468 resource allocation Methods 0.000 claims abstract description 38
- 238000013439 planning Methods 0.000 claims abstract description 12
- 238000005192 partition Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 12
- 238000009960 carding Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 208000024780 Urticaria Diseases 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012432 intermediate storage Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000011068 loading method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明适用于数据梳理技术领域,提供了一种数据同步方法、装置,计算机设备和存储介质,所述同步方法包括:获取源数据并生成待同步数据;根据所述待同步数据生成资源配置表,所述资源配置表用于表征待同步数据的来源信息、表征存储待同步数据的目标数据库信息以及表征执行待同步数据同步任务的资源池信息;根据所述资源配置表将所述待同步数据同步至目标数据库。通过设置资源配置表,并在资源配置表的规划下,对待同步数据以及用于同步待同步数据的资源进行双向规划,使计算引擎无需在有同步任务时就启动,防止计算引擎多次启动导致同步时间慢;且能够对每个资源池得以最大利用;另外,也可以防止短时间内同时执行大量同步任务。
Description
技术领域
本发明涉及数据处理领域,特别是涉及一种数据同步方法、装置,计算机设备和存储介质。
背景技术
当今世界是一个充满着数据的互联网世界,充斥着大量的数据。即这个互联网世界就是数据世界。通过数据库来存储数据已经深入生活中的各种场景,数据的来源有很多,比如出行记录、消费记录、浏览的网页、发送的消息等等。除了文本类型的数据,图像、音乐、声音都是数据。
不同的业务系统之间经常有数据流转,且数据交互变得越来越频繁,当数据在业务系统之间流转过程中,需要保证数据的正确性,保证数据同步可以兼容多种数据库格式;即数据同步要保证数据的完整性和一致性。常用的数据同步方式有批同步和流同步,也存在批同步和流同步同时进行的场景。
现有技术在进行数据同步过程中,通常是将源数据通过计算引擎直接同步至目标数据库中。
现有技术在数据同步过程中耗时较慢并表浪费计算资源。
发明内容
基于此,有必要针对上述的问题,提供一种数据同步方法、装置,计算机设备和存储介质。
在一个实施例中,获取源数据并生成待同步数据;
根据所述待同步数据生成资源配置表,所述资源配置表用于表征待同步数据的来源信息、表征存储待同步数据的目标数据库信息以及表征执行待同步数据同步任务的资源池信息;
根据所述资源配置表将所述待同步数据同步至目标数据库。
在其中一个实施例中,一种数据同步装置,所述同步装置包括:
获取模块,获取源数据并生成待同步数据;
配置模块,所述资源配置表用于表征待同步数据的来源信息、表征存储待同步数据的目标数据库信息以及表征执行待同步数据同步任务的资源池信息;
同步模块,根据所述资源配置表将所述待同步数据同步至目标数据库。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述数据同步方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述数据同步方法的步骤。
上述数据同步方法、装置,计算机设备和存储介质,通过设置资源配置表,并在资源配置表的规划下,对待同步数据以及用于同步待同步数据的资源进行双向规划,使计算引擎无需在有同步任务时就启动,防止计算引擎多次启动导致同步时间慢;且能够对每个资源池得以最大利用;另外,也可以通过对同步时间进行规划,防止短时间内同时执行大量同步任务。
附图说明
图1为一个实施例中提供的数据同步方法的应用环境图;
图2为一个实施例中数据同步方法的流程图;
图3为一个实施例中数据同步方法的架构示意图;
图4为一个实施例中数据同步装置的结构框图;
图5为一个实施例中计算机设备的内部结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一xx脚本称为第二xx脚本,且类似地,可将第二xx脚本称为第一xx脚本。
DataX:DataX是一个开源数据集成工具,可以将不同类型的数据从一个数据源转移到另一个数据源。它支持多种数据源,例如MySQL、Oracle、HDFS等等,并且可以将数据导出到CSV、JSON、XML等格式。
MySQL:MySQL是一个关系型数据库管理系统(RDBMS),常用于存储结构化数据。在数据同步中,MySQL可以充当源数据库或目标数据库,从而实现数据的提取、转换和加载。
HDFS:Hadoop Distributed File System,Hadoop分布式文件系统(HDFS)是一个分布式文件系统,通常用于存储非结构化或半结构化数据,如日志、音频、视频等等。在数据同步中,HDFS可以充当数据的中间存储,方便数据的读写和处理。
Spark:Apache Spark是一个快速、通用的大规模数据处理引擎。它支持各种数据源和格式,包括文本、CSV、JSON、Parquet等等,并且提供了强大的数据处理和转换功能。在数据同步中,Spark可以用来读取、转换和加载数据,还可以完成复杂的数据处理任务。
Hive:Hive是一个基于Hadoop的数据仓库系统,用于支持大规模的数据存储和查询。它允许将SQL查询转换为MapReduce作业,并且能够与HDFS和其他数据源集成。在数据同步中,Hive可以用来读取和写入数据,还可以处理复杂的查询和分析任务。
Kafka:Apache Kafka是一个分布式消息传递系统,常被用作高吞吐量、可靠性和可扩展性数据管道。在数据同步中,Kafka可以用于将数据从源系统传送到目标系统,充当中间层缓存,在不同数据处理和存储系统之间实现解耦,提高了可靠性和可扩展性。
Flink:Apache Flink是一个分布式流处理框架,支持低延迟和高吞吐量数据处理。它提供了复杂事件处理、窗口计算、状态管理等丰富的流处理功能。在数据同步中,Flink可以用于实时数据处理,例如实时数据清洗、转换、聚合和计算等等,能够帮助企业更快地做出决策并提升竞争力。
如图1所示,图1为本申请实施例提供的一种数据同步的应用环境图,如图1所示,在该应用环境中,包括计算机设备110、终端120。
计算机设备110可以是独立的物理服务器或终端,也可以是多个物理服务器构成的服务器集群,可以是提供云服务器、云数据库、云存储和CDN等基础云计算服务的云服务器。
终端120可以是智能手机,台式计算机,平板计算机,笔记本电脑等,这里不做具体限定。
计算机设备120可以与终端120通过网络连接,并将终端120中的数据同步至计算机设备120中;计算机设备12也可以数据在不同的数据库之间同步。
如图2所示,在一个实施例中,提出了一种数据同步方法,所述同步方法包括以下步骤:
步骤S202,获取源数据并生成待同步数据;
在本实施例中,源数据可以是来自计算机设备中不同的数据库内的数据,即离线数据,也可以是从其他端获取的在线数据;当有同步数据的需求时,需要现将源数据转存为待同步数据,来方便数据的读写与处理。
步骤S204,根据所述待同步数据生成资源配置表,所述资源配置表用于表征待同步数据的来源信息、表征存储待同步数据的目标数据库信息以及表征执行待同步数据同步任务的资源池信息;
在本实施例中,将待同步数据同步至目标数据库中,待同步数据的类型可能具有多种,需要通过计算引擎来将待同步数据进行同步,比如利用Spark工具来进行同步,Spark在启动时需要时间,且还需要为其分配单独的驱动和堆外内存。而本申请另外生成资源配置表,来规划待同步数据的任务分配,待同步数据可被分为不同的同步任务,根据待同步任务的数据量大小、同步时间、表类型等因素,为同步任务分配不同的资源池,即同步数据与资源池的对应关系被记录在资源配置表中,每个同步任务的资源池名称也记载在资源配置表中;资源池是计算引擎中分离出相应的资源来执行同步任务的单元。资源配置表中还记载有待同步数据的来源信息,比如其来源数据库的IP,域名、名称,来源数据库的表名等。资源配置表中还记载有待同步数据的目标数据库信息,比如目标数据库的表名,分区字段等。通过建立资源配置表,对待同步数据以及用于同步待同步数据的资源进行双向规划,使计算引擎无需在有同步任务时就启动,防止计算引擎多次启动导致同步时间慢;且能够对每个资源池得以最大利用;另外,也可以对同步时间进行规划,防止短时间内同时执行大量同步任务。
步骤S206,根据所述资源配置表将所述待同步数据同步至目标数据库。
在本实施例中,计算引擎可以直接根据资源配置表的信息,来执行对应的同步任务,来将待同步数据同步至目标数据库;任务可能具有多个,资源池也具有多个,可以利用多个资源池依次执行任务,对计算机设备的集群资源得以最大化利用,提高同步效率。
在本申请实施例中,通过设置资源配置表,并在资源配置表的规划下,对待同步数据以及用于同步待同步数据的资源进行双向规划,使计算引擎无需在有同步任务时就启动,防止计算引擎多次启动导致同步时间慢;且能够对每个资源池得以最大利用;另外,也可以通过对同步时间进行规划,防止短时间内同时执行大量同步任务。
在一个实施例中,步骤S202即获取源数据并生成待同步数据的步骤具体可以包括以下步骤:
步骤S302,利用离线数据同步工具,从源数据库中获取源数据,并将源数据转存为待同步数据;
步骤S304,利用在线数据同步工具,从源接口中获取源数据,并将源数据转存为待同步数据。
参考图3,,离线同步时,源数据来源于源数据库,源数据库可以是Mysql数据库,源数据为表格,离线同步工具可以是DataX,目标数据库可以是Hive数据库,将Mysql业务数据库的数据同步至大数据集群的Hive中的过程为批同步。此时待同步数据的生成过程如,使用DataX从MySQL中读取需要同步的数据,将所读取的数据存储至HDFS,即得到待同步数据。HDFS作为待同步数据的暂存系统。
在线同步时,源数据来源于在线数据,如通过API接口或爬虫抓取到的数据,在线同步工具则为Kafka、Flink,将在线数据同步至Hive中的过程为流同步。此时待同步数据生成过程如,爬虫工具抓取API接口的源数据并存入Kafka中,使用Flink对Kafka中的数据进行消费,使用Flink Sink将消费后的数据写入HDFS,得到待同步数据。
在一个实施例中,步骤S204即根据所述待同步数据生成资源配置表的步骤具体可以包括以下步骤:
步骤S402,提取并写入待同步数据的来源信息,包括待同步数据的来源数据库、待同步数据的名称;
步骤S404,确定并写入待同步数据的目标数据库信息,包括待同步数据的目标数据库以及同步后的名称;
步骤S406,规划并写入为待同步数据分配的资源池信息。
同步配置表中定义了若干字段,待同步数据的表格或者接口的信息被提取并填写至资源配置表中对应的字段中,其中字段要包括待同步数据的来源数据库、待同步数据的名称、待同步数据的目标数据库、同步后的名称以及为待同步数据分配的资源池信息。为待同步数据分配资源池时,可以考虑待同步数据的同步时间,数据量大小为其分配相应的资源池。
示例性的,下表示出了同步配置表的字段和其含义:
通过定义资源配置表,规划了待同步数据的提取、执行同步任务的资源池、写入方式、目标数据库、目标数据库中的表格等,其中数据库IP、数据库域名、数据库名称、数据库表名等用于确定待同步数据来源;Hive表名表示待同步数据在目标数据库的所存储的表格;得以更加有序地同步数据。
在一个实施例中,步骤S206即根据所述资源配置表将所述待同步数据同步至目标数据库的步骤具体包括以下步骤:
步骤S502,读取所述资源配置表与待同步信息;
步骤S504,根据所述资源配置表,得到若干同步任务,每个同步任务表征每个资源池以及该资源池所对应的待同步数据;
步骤S506,依次执行同步任务来将待同步数据写入目标数据库中。
计算引擎读取资源配置表并读取待同步信息,对于资源配置表,需要读取其中的同步数据所需的字段,例如以下字段:
英文名 | 含义 |
HIVE_TABLE_NAME | Hive表名 |
PARTITION_FIELD | 分区字段 |
TIME_FORMAT | 分区时间格式 |
HDFS_PATH | HDFS路径 |
WRITE_MODE | 写入模式,追加或者覆盖 |
POOL | 资源池 |
Spark在读取资源配置表之后,根据POOL字段选择需要同步的任务列表,每个Spark任务都只同步对应资源池的数据;再循环读取资源池的数据,来依次执行同步任务来将待同步数据写入目标数据库中。
进一步的,步骤S506即依次执行同步任务来将待同步数据写入目标数据库中的步骤具体包括以下步骤:
步骤S602,读取同步任务,若不为空则判断是否有待同步数据;
步骤S604,若存在待同步数据则将其剪切至临时文件夹;
步骤S606,确定分区字段以及写入方式;
步骤S608,将临时文件夹中数据写入目标数据库。
对于每个同步任务,根据HDFS_PATH字段记录的数据路径,判断该路径在有没有待同步数据需要同步,如果存在待同步数据,则根据PARTITION_FIELD字段是否有值判断是否需要分区字段,如果分区字段有值,则继续根据TIME_FORMAT字段创建分区字段,最后根据WRITE_MODE字段确定写入模式,选择对待同步数据追加Hive还是覆盖Hive,来将临时文件夹中的数据写入目标数据库Hive中;如果PARTITION_FIELD字段为空则直接根据WRITE_MODE字段确定写入模式,选择对待同步数据追加Hive还是覆盖Hive。完成该同步任务后可以继续循环执行下一个同步任务。
如图4所示,在一个实施例中,提供了一种数据同步装置,该同步装置可以集成于上述的计算机设备120中,具体可以包括:
获取模块,获取源数据并生成待同步数据;
配置模块,所述资源配置表用于表征待同步数据的来源信息、表征存储待同步数据的目标数据库信息以及表征执行待同步数据同步任务的资源池信息;
同步模块,根据所述资源配置表将所述待同步数据同步至目标数据库。
在本实施例中,源数据可以是来自计算机设备中不同的数据库内的数据,即离线数据,也可以是从其他端获取的在线数据;当有同步数据的需求时,需要现将源数据转存为待同步数据,来方便数据的读写与处理。
在本实施例中,将待同步数据同步至目标数据库中,待同步数据的类型可能具有多种,需要通过计算引擎来将待同步数据进行同步,比如利用Spark工具来进行同步,Spark在启动时需要时间,且还需要为其分配单独的驱动和堆外内存。而本申请另外生成资源配置表,来规划待同步数据的任务分配,待同步数据可被分为不同的同步任务,根据待同步任务的数据量大小、同步时间、表类型等因素,为同步任务分配不同的资源池,即同步数据与资源池的对应关系被记录在资源配置表中,每个同步任务的资源池名称也记载在资源配置表中;资源池是计算引擎中分离出相应的资源来执行同步任务的单元。资源配置表中还记载有待同步数据的来源信息,比如其来源数据库的IP,域名、名称,来源数据库的表名等。资源配置表中还记载有待同步数据的目标数据库信息,比如目标数据库的表名,分区字段等。通过建立资源配置表,对待同步数据以及用于同步待同步数据的资源进行双向规划,使计算引擎无需在有同步任务时就启动,防止计算引擎多次启动导致同步时间慢;且能够对每个资源池得以最大利用;另外,也可以对同步时间进行规划,防止短时间内同时执行大量同步任务。
在本实施例中,计算引擎可以直接根据资源配置表的信息,来执行对应的同步任务,来将待同步数据同步至目标数据库;任务可能具有多个,资源池也具有多个,可以利用多个资源池依次执行任务,对计算机设备的集群资源得以最大化利用,提高同步效率。
在本申请实施例中,通过设置资源配置表,并在资源配置表的规划下,对待同步数据以及用于同步待同步数据的资源进行双向规划,使计算引擎无需在有同步任务时就启动,防止计算引擎多次启动导致同步时间慢;且能够对每个资源池得以最大利用;另外,也可以通过对同步时间进行规划,防止短时间内同时执行大量同步任务。
图5示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的服务器120。如图5所示,该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现数据同步方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行数据同步方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的数据同步装置可以实现为一种计算机程序的形式,计算机程序可在如图5所示的计算机设备上运行。计算机设备的存储器中可存储组成该数据同步装置的各个程序模块,比如,图4所示的获取模块、配置模块和同步模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的数据同步方法中的步骤。
例如,图5所示的计算机设备可以通过如图4所示的数据装置中的获取模块执行步骤S202。计算机设备可通过配置模块执行步骤S206。计算机设备可通过同步模块执行步骤S206。
在一个实施例中,提出了一种计算机设备,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
步骤S202,获取源数据并生成待同步数据;
步骤S206,根据所述待同步数据生成资源配置表,所述资源配置表用于表征待同步数据的来源信息、表征存储待同步数据的目标数据库信息以及表征执行待同步数据同步任务的资源池信息;
步骤S208,根据所述资源配置表将所述待同步数据同步至目标数据库。
在一个实施例中,提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:
步骤S202,获取源数据并生成待同步数据;
步骤S206,根据所述待同步数据生成资源配置表,所述资源配置表用于表征待同步数据的来源信息、表征存储待同步数据的目标数据库信息以及表征执行待同步数据同步任务的资源池信息;
步骤S208,根据所述资源配置表将所述待同步数据同步至目标数据库。
应该理解的是,虽然本发明各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种数据同步方法,其特征在于,所述同步方法包括:
获取源数据并生成待同步数据;
根据所述待同步数据生成资源配置表,所述资源配置表用于表征待同步数据的来源信息、表征存储待同步数据的目标数据库信息以及表征执行待同步数据同步任务的资源池信息;
根据所述资源配置表将所述待同步数据同步至目标数据库。
2.根据权利要求1所述的一种数据同步方法,其特征在于,所述获取源数据并生成待同步数据包括以下步骤:
利用离线数据同步工具,从源数据库中获取源数据,并将源数据转存为待同步数据;
利用在线数据同步工具,从源接口中获取源数据,并将源数据转存为待同步数据。
3.根据权利要求2所述的一种数据同步方法,其特征在于,所述源数据库为Mysql数据库,所述目标数据库为Hive数据库;所述离线数据同步工具为DataX,所述在线数据同步工具为Kafka和Flink。
4.根据权利要求1所述的一种数据同步方法,其特征在于,所述根据待同步数据的数据量生成资源配置表包括以下步骤:
提取并写入待同步数据的来源信息,包括待同步数据的来源数据库、待同步数据的名称;
确定并写入待同步数据的目标数据库信息,包括待同步数据的目标数据库以及同步后的名称;
规划并写入为待同步数据分配的资源池信息。
5.根据权利要求1所述的一种数据同步方法,其特征在于,所述根据所述资源配置表将所述待同步数据同步至目标数据库包括以下步骤:
读取所述资源配置表与待同步信息;
根据所述资源配置表,得到若干同步任务,每个同步任务表征每个资源池以及该资源池所对应的待同步数据;
依次执行同步任务来将待同步数据写入目标数据库中。
6.根据权利要求5所述的一种数据同步方法,其特征在于,所述执行同步任务来将待同步数据写入目标数据库中包括以下步骤;
读取同步任务;
若不为空则判断是否有待同步数据;
若存在待同步数据则将其剪切至临时文件夹;
确定分区字段以及写入方式;
将临时文件夹中数据写入目标数据库。
7.根据权利要求6所述的一种数据同步方法,其特征在于,所述确定分区字段以及写入方式包括以下步骤:
判断分区字段是否有值;
若分区字段有值则根据分区时间格式创建分区字段,并根据写入模式字段确定写入方式;
若分区字段为空则根据写入模式字段确定写入方式。
8.一种数据同步装置,其特征在于,所述同步装置包括:
获取模块,获取源数据并生成待同步数据;
配置模块,所述资源配置表用于表征待同步数据的来源信息、表征存储待同步数据的目标数据库信息以及表征执行待同步数据同步任务的资源池信息;
同步模块,根据所述资源配置表将所述待同步数据同步至目标数据库。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1-7任意一项所述的数据同步方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1-7任意一项所述的数据同步方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310895461.9A CN116737838A (zh) | 2023-07-20 | 2023-07-20 | 一种数据同步方法、装置,计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310895461.9A CN116737838A (zh) | 2023-07-20 | 2023-07-20 | 一种数据同步方法、装置,计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116737838A true CN116737838A (zh) | 2023-09-12 |
Family
ID=87911629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310895461.9A Pending CN116737838A (zh) | 2023-07-20 | 2023-07-20 | 一种数据同步方法、装置,计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116737838A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117331513A (zh) * | 2023-12-01 | 2024-01-02 | 蒲惠智造科技股份有限公司 | 基于Hadoop架构的数据精简方法和系统 |
-
2023
- 2023-07-20 CN CN202310895461.9A patent/CN116737838A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117331513A (zh) * | 2023-12-01 | 2024-01-02 | 蒲惠智造科技股份有限公司 | 基于Hadoop架构的数据精简方法和系统 |
CN117331513B (zh) * | 2023-12-01 | 2024-03-19 | 蒲惠智造科技股份有限公司 | 基于Hadoop架构的数据精简方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107169083B (zh) | 公安卡口海量车辆数据存储与检索方法及装置、电子设备 | |
CN111177302B (zh) | 业务单据处理方法、装置、计算机设备和存储介质 | |
TW201530328A (zh) | 爲半結構化資料構建NoSQL資料庫索引的方法及裝置 | |
CN105205154B (zh) | 数据迁移方法以及装置 | |
CN104199899A (zh) | 一种基于Hbase的海量图片存储方法及装置 | |
CN116737838A (zh) | 一种数据同步方法、装置,计算机设备和存储介质 | |
WO2017174013A1 (zh) | 数据存储管理方法、装置及数据存储系统 | |
Mehmood et al. | Distributed real-time ETL architecture for unstructured big data | |
CN115292414A (zh) | 一种业务数据同步到数仓的方法 | |
CN115858322A (zh) | 日志数据处理方法、装置和计算机设备 | |
CN112148705A (zh) | 数据迁移的方法和装置 | |
CN111221814A (zh) | 二级索引的构建方法、装置及设备 | |
Perwej et al. | An extensive investigate the mapreduce technology | |
CN113032495B (zh) | 基于数据仓库的多层数据存储系统、处理方法、及服务器 | |
CN114780648A (zh) | 任务调度方法、装置、计算机设备、存储介质和程序产品 | |
CN116414801A (zh) | 数据迁移方法、装置、计算机设备和存储介质 | |
TW201837742A (zh) | 資料收集與儲存系統及其方法 | |
CN112965939A (zh) | 一种文件合并方法、装置和设备 | |
CN113515518A (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
US9946784B2 (en) | Data cache architecture | |
CN117827802B (zh) | 一种基于Hbase的数据处理系统、方法及装置 | |
Singh | NoSQL: A new horizon in big data | |
CN115543970B (zh) | 数据页处理方法、数据页处理装置、电子设备及存储介质 | |
CN111694803A (zh) | 数据查询方法、装置、设备及计算机存储介质 | |
Cao | Big Data Database for Business |
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 |