在过去的几年中,业务系统一直在生成大量数据,并且需要工具来管理数据。业务需求之一是将主要数据复制到辅助数据库。市场上有几种流行的工具可以将数据从主数据库复制到辅助数据库。本文将讨论用于实时数据库复制和基于流的复制的各种开源工具。
复制是在多个地方共享/存储信息以确保可靠性、容错性和可访问性的过程。复制选项描述如下:
许多 RDBMS(关系数据库管理系统)支持数据库复制,以将数据从主数据库系统复制到辅助数据库系统。数据库复制对于主动/主动复制来说很复杂,尤其是对于使用水平扩展功能的系统。数据库复制如图 1 所示,其中 Web/企业应用程序的写入和读取操作是不同的。复制系统将始终与主数据库同步。在数据库复制过程中将考虑 CAP(一致性、可用性和分区容错性)以避免数据复制问题。
图 1:为 Web/企业应用程序的单独读取操作复制数据
数据复制对于企业系统在整个网络中维护多个节点中的数据以实现数据可用性至关重要。关键方面包括以下内容:
许多组织更喜欢基于其业务需求的数据迁移开源工具。有多种商业和开源工具可用于数据迁移。本文讨论了过去几年在开源市场上流行的四种工具。
这是最流行的开源数据复制工具,用于将批量数据从关系数据库传输到关系/NoSQL 数据库。它卸载 ETL 活动。目前,支持的数据库有:
ReplicaDB 是一个命令行工具,可以支持任何平台。来自 Kafka 等系统的流数据不支持 ReplicaDB。
图 2:图像源 - GitHub 上的 ReplicaDB
这种用于数据库的开源复制工具支持过滤同步、多主复制和转换功能等功能。它可以与许多数据库进行压缩,并跨不同平台复制数据。使用 SymmetricDS,以异构方式从数据库同步到数据库。表和列级同步配置可用。数据迁移是单向/多向的。高级架构如图 3 所示。
图 3:使用 SymmetricDS 从 Oracle 到 MySQL 的数据复制
其他功能包括事务感知功能,其中记录和回放更改。在多主复制中,会自动检测并解决冲突。通信使用推/拉。
使用Talend的开源复制工具将数据源集成到干净和完整的位置。超过 1000 多个连接器可用于连接云中或本地的任何数据源。通过拖放功能使用 GUI 界面轻松开发数据管道。内部使用 Spark 平台,支持无时间线的海量数据复制。Talend 与包括 Amazon、Azure 和 Google 在内的主要供应商合作提供数据复制解决方案。Talend 被评为 2022 年 Gartner 数据集成工具魔力象限。商业版本也可用于数据复制。
目前,大多数应用程序正在向使用Kafka的实时处理架构发展。出于这个原因,数据驻留在流媒体平台中,需要将数据从流媒体平台复制到 DB/NoSQL/其他系统。使用 Apache Kafka 和 Kafka 连接器框架将数据从源数据库复制到目标/目标数据库。图 4 提供了高级架构。
图 4:Apache Kafka 和 Kafka Connector 之间的数据复制
高级流程步骤如下:
希望您在结束本文时了解数据复制和用于数据复制的开源工具。应用程序使用可以根据商业或开源数据复制的业务需求做出决策。除了这些工具,我们还描述了使用流平台以及接收连接器在不同数据库之间进行数据复制的数据库复制。
留言与评论(共有 0 条评论) “” |