logo好方法网

数据同步方法、装置、设备及计算机存储介质


技术摘要:
本发明涉及金融科技(Fintech)技术领域,并公开了一种数据同步方法,该方法包括:获取hbase中的多个wal任务列表,并将各所述wal任务列表分配至各所述任务列表对应的drc服务器;确定各所述wal任务列表中的目标wal任务列表对应的目标drc服务器,根据所述目标drc服务器获取  全部
背景技术:
随着计算机技术的发展,越来越多的技术(大数据、分布式、区块链Blockchain、人 工智能等)应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融 行业的安全性、实时性要求,也对数据同步技术提出了更高的要求。目前HBase(开源数据 库)在写入数据时,采用的典型的LSM(Log-Structured  Merge-Tree)数据结构,服务端接收 到写请求后,会先写入Memstore(内存)中,并且顺序的写入WAL日志(HDFS文件)中,WAL日志 确保数据真正写入磁盘,即使RS服务宕机。在节点故障时可以使用WAL日志恢复未被持久化 的内存数据。并且HBASE本身提供了复制功能HBASE  Replication(复制),但是HBASE  Replication所有工作都是在HBASE主机群中完成,其与HBASE集群会互相影响,比如HBASE 有大量数据写入时,会与HBASE  Replication线程争抢CPU(central  processing  unit,中 央处理器)、内存和磁盘资源,导致复制延长增加,并且复制也会导致数据的读写性能下降, 使得hbase在进行数据同步的稳定性变差。因此如何提高hbase在进行数据同步的稳定性成 为了目前亟待解决的技术问题。
技术实现要素:
本发明的主要目的在于提出一种数据同步方法、装置、设备及计算机存储介质,旨 在解决如何提高hbase在进行数据同步的稳定性的技术问题。 为实现上述目的,本发明提供一种数据同步方法,所述数据同步方法包括如下步 骤: 获取hbase中的多个wal任务列表,并将各所述wal任务列表分配至各所述任务列 表对应的drc服务器; 确定各所述wal任务列表中的目标wal任务列表对应的目标drc服务器,根据所述 目标drc服务器获取所述目标wal任务列表中的目标日志文件,并将所述目标日志文件的目 标日志文件内容复制到kafka; 若检测到kafka中的日志文件被消费,则将所述消费的消费数据写入hbase的备集 群。 可选地,将所述目标日志文件的目标日志文件内容复制到kafka的步骤,包括: 若所述目标日志文件存在多个,则依次遍历各所述目标日志文件,确定当前遍历 的当前目标日志文件在所述目标wal任务列表中的日志序号,并获取所述当前目标日志文 件对应的region已写入kafka的历史序列号,检测所述历史序列号是否大于或等于所述日 志序号; 若是,则将当前目标日志文件的目标日志文件内容复制到所述kafka,直至各所述 4 CN 111597270 A 说 明 书 2/12 页 目标日志文件遍历完成。 可选地,检测所述历史序列号是否大于或等于所述日志序号的步骤之后,包括: 若否,则停止将所述当前目标日志文件复制到kafka,并输出复制失败的提示信 息,直至各所述目标日志文件遍历完成。 可选地,获取所述当前目标日志文件对应的region已写入kafka的历史序列号的 步骤,包括: 基于所述当前目标日志文件对应的region确定所述kafka中距离当前时刻最后一 次接收的历史日志文件,并获取所述历史日志文件在所述目标wal任务列表中的历史文件 位置和历史日志序号,将所述历史日志序号和所述历史文件位置作为所述kafka对应的历 史序列号。 可选地,根据所述目标drc服务器获取所述目标wal任务列表中的目标日志文件的 步骤,包括: 根据所述目标drc服务器读取所述目标wal任务列表中的所有日志文件,并对各所 述日志文件进行过滤处理,以获取目标日志文件。 可选地,获取hbase中的多个wal任务列表的步骤,包括: 基于预设时间段读取hbase中的多个wal文件列表,并将各所述wal文件列表中的 无效文件进行删除处理,并将经过删除处理的所述wal文件列表作为hbase中的wal任务列 表。 可选地,获取hbase中的多个wal任务列表,并将各所述wal任务列表分配至各所述 任务列表对应的drc服务器的步骤之后,包括: 将各所述wal任务列表注册到所述hbase对应的配置管理及监控服务器,并通过所 述配置管理及监控服务器对各所述wal任务列表进行监控; 若在各所述wal任务列表中存在异常wal任务列表,则进行报警处理。 此外,为实现上述目的,本发明还提供一种数据同步装置,所述数据同步装置包 括: 获取单元,用于获取hbase中的多个wal任务列表,并将各所述wal任务列表分配至 各所述任务列表对应的drc服务器; 复制单元,用于确定各所述wal任务列表中的目标wal任务列表对应的目标drc服 务器,根据所述目标drc服务器获取所述目标wal任务列表中的目标日志文件,并将所述目 标日志文件的目标日志文件内容复制到kafka; 写入单元,用于若检测到kafka中的日志文件被消费,则将所述消费的消费数据写 入hbase的备集群。 此外,为实现上述目的,本发明还提供一种数据同步设备,所述数据同步设备包 括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据同步程序,所述 数据同步程序被所述处理器执行时实现如上所述的数据同步方法的步骤。 此外,为实现上述目的,本发明还提供一种计算机存储介质,所述计算机存储介质 上存储有数据同步程序,所述数据同步程序被处理器执行时实现如上所述的数据同步方法 的步骤。 本发明通过获取hbase中的多个wal任务列表,并将各所述wal任务列表分配至各 5 CN 111597270 A 说 明 书 3/12 页 所述任务列表对应的drc服务器;确定各所述wal任务列表中的目标wal任务列表对应的目 标drc服务器,根据所述目标drc服务器获取所述目标wal任务列表中的目标日志文件,并将 所述目标日志文件的目标日志文件内容复制到kafka;若检测到kafka中的日志文件被消 费,则将所述消费的消费数据写入hbase的备集群。通过将hbase中的各个任务列表分配到 各自对应的drc服务器,并通过目标drc服务器将目标日志文件复制到kafka中,并在kafka 中的日志文件被消费时将消费数据写入hbase的备集群中,从而避免了现有技术在hbase中 同时存在数据读写和hbase的复制操作时,导致hbase的整体性能不稳定的现象发生,通过 将hbase的复制操作与hbase本身分开,来提高hbase在进行数据同步时的稳定性。 附图说明 图1是本发明实施例方案涉及的硬件运行环境的数据同步设备结构示意图; 图2为本发明数据同步方法第一实施例的流程示意图; 图3为本发明数据同步装置的装置模块示意图; 图4为本发明数据同步方法中消费者数据消费的流程示意图; 图5为本发明数据同步方法中hbase的架构示意图; 图6为本发明数据同步方法中运行的流程示意图。 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
下载此资料需消耗2积分,
分享到:
收藏