从 Apache Cassandra 迁移到 Bigtable
本文档介绍了一些开源工具,可让您以最少的中断时间将数据从 Cassandra 迁移到 Bigtable。这些工具包括 Cassandra-Bigtable 代理适配器和 Java 版 Bigtable CQL 客户端库。在开始迁移之前,请确保您熟悉面向 Cassandra 用户的 Bigtable。
代理适配器
借助 Cassandra-Bigtable 代理适配器,您可以将基于 Cassandra 的应用连接到 Bigtable。代理适配器可用作线兼容的 Cassandra 接口,可让您的应用使用 Cassandra 查询语言 (CQL) 与 Bigtable 交互。使用代理适配器无需更改 Cassandra 驱动程序,并且配置调整非常少。
如需开始使用,请参阅 Cassandra 到 Bigtable 代理适配器。
零停机迁移 (ZDM) 代理工具
您可以将 Cassandra-Bigtable 代理适配器与开源零停机迁移 (ZDM) 代理工具结合使用,以便无停机地迁移数据。
将代理适配器与 ZDM 代理工具搭配使用支持以下迁移功能:
- 双写:在迁移期间保持数据可用性
- 异步读取:扩缩 Bigtable 实例并对其进行压力测试
- 自动化数据验证和报告:确保整个流程中的数据完整性
- 数据映射:映射字段和数据类型,以满足您的生产标准
其他 Cassandra 开源工具
由于 Cassandra-Bigtable 代理适配器与 CQL 的线程兼容性,您可以在 Cassandra 开源生态系统中使用其他工具,包括:
- Cqlsh:借助 CQL shell,您可以通过代理适配器直接连接到 Bigtable。您可以使用它通过 CQL 进行调试和快速数据查询。
- Cassandra 数据迁移器 (CDM):这款基于 Spark 的工具适用于迁移大量历史数据(最多数十亿行)。该工具提供验证、差异报告和重放功能,并且与代理适配器完全兼容。
Java 版 Bigtable CQL 客户端库
借助 Java 版 Bigtable CQL 客户端库,您可以使用 CQL 将基于 Cassandra 的 Java 应用与 Bigtable 集成。该库会替换 Java 应用中的 Cassandra 驱动程序。
如需了解如何构建库并在应用代码中添加依赖项,请参阅 GitHub 自述文件。
如需查看展示如何配置应用以使用客户端库的示例代码,请参阅使用方法。