云原生多模数据库Lindorm提供LTS服务能够支持各种Lindorm版本之间相互迁移和实时同步,并且支持同步RDS、Loghub的实时数据到Lindorm。DataX是阿里巴巴集团内被广泛使用的离线数据同步工具,实现MySQL、Oracle、SqlServer、PostgreSQL、HDFS、Hive、ADS、Lindorm、TableStore(OTS)、MaxCompute(ODPS)、DRDS等各种异构数据源之间高效的数据同步功能。

前提条件

导入数据前,请根据DataX所部署的ECS需要添加白名单,才能访问Lindorm实例。同时,如果ECS与HBase增强版不在一个VPC网络下,则需要使用公网地址访问。

使用DataX进行数据同步

使用DataX进行数据同步有两种方法:
  • 使用阿里云DataWorks的数据集成服务配置DataX任务(推荐使用该方法)。
  • 使用开源DataX配置同步任务。

使用DataWorks配置DataX

  1. 创建工作空间,具体操作请参见创建工作空间
  2. 创建资源组,资源组类型和说明如下表。
    资源组类型 配置文档 特点 注意事项
    独享资源组 独享资源组模式 独享资源组的机器由DataWorks自动买出,运维完全托管于系统,您无需担心机器服务和可用性等问题。 独享资源不支持跨地域使用。例如,华东2(上海)地域的独享资源,只能给华东2(上海)地域的工作空间使用(无法绑定其他区域的VPC),并且独享资源组不能夸Vswtich访问Lindorm集群。
    自定义资源组 新增自定义数据集成资源组 仅DataWorks企业版及以上版本支持自定义资源组。自定义资源组的ECS机器由用户自己买出,用户可以将ECS买在Lindorm的VPC内,从而用内网访问Lindorm,否则只能用外网访问。 自定义资源组的机器完全可控、可登录访问,但是需要自行安装/运维/升级DataX版本(配置文档中有安装方法)。
    默认资源组 默认资源组机器无法从内网访问Lindorm所在VPC,只能通过公网访问Lindorm。 公网访问Lindorm会在DataWorks产生额外费用。
  3. 配置网络。
    • 独享资源组网络配置
      1. 将独享资源组与Lindorm所在VPC绑定,详情请参见独享资源组模式
      2. VPC控制台中找到独立资源组所绑定的VPC和Vswtich所在的IPv4网段。将IPv4添加至Lindorm白名单,具体操作请参见设置白名单
    • 自定义资源组网络配置

      自定义资源组的机器都是用户自己购买,因此能看到每台ECS的具体IP,将这些IP添加至Lindorm白名单,具体操作请参见设置白名单

    • 默认资源组网络配置

      默认资源组机器的IP段详见IP网段,将区域对应的IP添加至Lindorm白名单,具体操作请参见设置白名单

  4. 创建同步任务,具体操作请参见创建同步任务
  5. 修改插件配置。
    说明 上述配项中的lindorm.client.seedserver参数为Lindorm控制台数据库连接页面的HBase兼容地址,连接地址格式为host:30020。
    "configuration": {
      "lindorm.client.namespace" : "namespace",
      "lindorm.client.seedserver" : "host:30020",
      "lindorm.client.username" : "root",
      "lindorm.client.password" : "root"
    }
    说明
    • lindorm.client.namespace:访问的Lindorm表所在的namespace。
    • Lindorm.client.seedserver:用户控制台上提供的Java API访问地址,用户可以参见连接集群获得。
    • Lindorm.client.username和password :Lindorm增强版中用户自己创建的用户名和密码(默认均为root),用户必须保证提供的用户有读写Lindorm增强版中表的权限(默认提供的root用户已经具有读写所有表的权限)。关于用户和ACL,请参见连接集群
  6. 配置任务资源组。

使用开源DataX同步任务(仅支持使用HBase API访问的表)

  1. 下载DataX安装包。
    说明 如果已经有DataX安装包,需要下载最新版本的DataX安装包,同时需要导入JAR包。仅需要下载1.x版本(选择最新版本)的aliLindorm-connector-1.x jar文件,将下载的JAR包导入DataX/plugin/writer/hbase11xwriter/libs目录中,如果需要用DataX读取Lindorm增强版的数据,则需将此JAR包也导入DataX/plugin/reader/hbase11xreader/libs目录中。
  2. 解压DataX安装包。
  3. 编辑配置文件。在DataX中,读取Lindorm的插件为hbase11xreader,此插件的具体配置请参见hbase11xreader。写入Lindorm的插件为hbase11xwriter,此插件的具体配置请参见hbase11xwriter。读写Lindorm的Lindormconfig部分配置如下,其他部分与官方配置保持一致。
    "hbaseConfig": {
      "hbase.client.connection.impl" : "com.alibaba.hbase.client.AliHBaseUEConnection",
      "hbase.client.endpoint" : "host:30020",
      "hbase.client.username" : "root",
      "hbase.client.password" : "root"
    }
    说明
    • hbase.client.connection.impl:固定配置不需要修改。
    • hbase.client.endpoint:Lindorm控制台数据库连接页面的HBase兼容地址。
    • hbase.client.username和password :Lindorm增强版中用户自己创建的用户名和密码(默认均为root),用户必须保证提供的用户有读写Lindorm增强版中表的权限(默认提供的root用户已经具有读写所有表的权限)。关于用户和ACL,请参见连接集群
  4. 启动DataX开始迁移数据,DataX的具体使用方式请参见官方文档