DataWorks数据集成同步至Hologres能力介绍
内容介绍
1. DataWorks数据集成--低成本、高效率、全场景数据同步方案
2. Serverless资源组核心优势
3. DEMO演示
01. DataWorks数据集成--低成本、高效率、全场景数据同步方案
关于这个方案,提供了离线与实时两种数据同步方式。对于离线同步也支持整库级别的、带有周期性的同步操作。采用离线方式将数据同步到Hologres时,系统能够自动在Hologres上创建相应的数据库和表。此外,还支持在表级别设置调度周期,或者为表设置增量同步条件。每个表级别的同步任务,在DataWorks中都可以作为调度依赖的上游任务,被其他开发任务所依赖。这意味着,当某个表的同步任务完成后,其下游的开发任务也会被自动触发。整体来看,这个方案适用的场景包括业务库的上云迁移、系统迁移以及灾备恢复等,这些都是离线同步的典型应用场景。
对于实时整库同步这一功能,我们的方案是先将历史数据全量同步到Hologres中。随后,系统会自动启动实时同步流程,将源端数据发生的任何更改实时地同步到Hologres里。确保Hologres中的数据与源端数据保持实时对齐。
在同步方面,同样能在Hologres上自动进行建库建表操作,并自动创建全量同步任务,随后自动启动实时的增量同步任务。此外,在实时与离线同步模式之间切换时,系统会自动进行数据融合,无需担心离线与实时数据之间是否存在遗漏或重叠问题。另外也支持对云端DML和DDL操作的控制,包括建表、建列以及插入、更新、删除等动作,是否需要进行特殊控制等,这些都可以在同步任务中进行配置。
整体来看,方案非常适用于数据仓库的持续集成以及实时的业务智能分析等场景。这意味着,您可以将数据实时地写入Hologres中。值得一提的是,目前DataWorks数据集成已经上线了名为“新的Serverless资源组”的新功能。现在,所有同步到Hologres的任务都支持使用这一新的Serverless资源组。
02. Serverless资源组核心优势
Serverless 资源组的核心优势在于,它能够让我们以低成本、高效率的方式完成整个同步过程。首先,这一资源组具有通用性优势。一旦使用这一新版资源组, DataWorks 的所有功能都将无需区分地得到支持。也就是说,您不仅可以使用这一资源组进行数据集成,还可以用于其他多种用途,包括数据计算、调度以及数据服务等。
此外,该资源组的付费形式相当灵活。目前提供按量付费和包年包月两种付费模式,您可以根据自身的业务需求进行选择。如果选择包年包月资源将被预留,无需担心资源抢占问题,而且相较于按小时计费,其单价更为优惠。而按量付费的优势在于可以在业务高峰期灵活使用资源,在非高峰期则完全释放资源,从而降低费用支出。
一方面支持在任务运行期间对资源组进行动态扩缩容,而任务运行不会因此受到影响。另一方面,无论您选择按量付费还是包年包月,我们的资源组均属于独享资源组,其确保了高度的隔离性和安全性。同时,我们使用的网络也是用户自己的网络,即DataWorks不再为用户代持VBC或其他网关,而是完全采用用户自有的网络环境。这一举措进一步提升了安全性和隔离性。
同样我们按需使用的理念相契合,特别是在按量付费模式下,可以根据实际使用情况购买资源,有效避免了无效资源的浪费。而我们的最小购买单位是ECU ,并且支持设置扩缩容的定时计划。例如,如果您的业务高峰期在每天的凌晨时段,而过了凌晨三四点后业务量减少,可以设置一个定时计划,确保在凌晨至三点期间资源充足,而在三点之后降低资源配置。这样一来,既可以最大限度地降低成本,又能确保业务的平稳运行。
上表列出了新版资源组的具体付费形式及一些相关限制。目前提供按量付费和包年包月两种付费模式。其中按量付费属于后付费模式。值得一提的是,我们正在开发一个功能,即允许用户将后付费模式转换为预付费模式。也就是说,如果您目前使用的是按量付费,并且感觉业务已经相对稳定,想要以更优惠的价格使用资源,您可以随时将付费模式切换为包年包月。在进行这种转换时,无需更改任务或资源组配置,并且转换过程对所有任务均不会产生影响。资源组上的变化仅限于付费形式的转换。
接下来说明一下按量付费和包年包月在使用场景上的适用性。按量付费模式非常适合那些具有周期性的任务,任务有高峰期也有低谷期,甚至在低谷期完全不需要资源。这种情况下,按量付费是一个很好的选择。而包年包月模式则更适合那些需要提前锁定资源,确保实时任务或持续在线任务稳定运行的情况。通过为这些在线任务预留资源,可以保证它们的稳定执行。因此在这种情况下,选择包年包月的资源更为合适。
在计费方式方面,按量付费是根据使用的 CO 时长及其单价,每小时进行结算的。而包年包月则是根据您使用的 CO 数量及购买的月数进行预付费。但无论选择哪种资源组,数据调度的计费都是按量计算的,而这个量具体是按次数的阶梯计价,即数据调度没有包年包月的计费形式,完全实现了 Serverless 化,即使用多少次就支付多少钱。这一点仅限于数据调度。至于数据集成服务,我们依然提供按量付费和包年包月两种计费形式。
另外,关于按量付费可以设置资源使用的上限。设置资源上限的目的是为了防止资源无限制地分配,确保企业用户能够控制预算,从而避免费用超出预期。例如,您可以设定同时最多只能使用 100CU ,一旦超过这个数值,其他任务就需要等待资源释放。这样一来,当所有任务都在运行时,就可以避免总资源量突然激增到 1000 或 2000CU ,从而及时控制成本。因为按量付费是按照小时进行结算的,所以设置资源上限也能有效防止整体费用超出预算。这是按量付费的一个重要特性。
对于包年包月付费模式,可以为每种业务用途设置保障额度。这意味着,即便购买了一个包含 100CO 的资源组,也可以为数据集成等特定业务分配固定的资源保障,例如确保数据集成在启动任务时至少有10CU的资源可用。这 10CU 资源会从您的 100CO 资源组中划出,专门用于保障数据集成任务的执行。通过这种方式,您可以根据业务需求灵活控制每种任务类型所使用的资源,确保业务能够更平稳地运行。在调度并发上限方面,两种付费模式均不受影响,即每个资源组上最多只能同时执行200个调度并发任务。
在网络配置方面,按量付费和包年包月也存在差异。对于按量付费的资源组,数据集计算和数据集成所能绑定的 VPC 数量有限,具体而言,只能绑定两个VPC ,而数据服务则只能绑定一个 VPC 。相比之下,在包年包月的付费模式下,如果 CO 数量大于10,用户可以总共绑定八个专有网络资源组;若 CO 数量小于或等于10,则总共可以绑定四个 VPC 。但无论哪种资源组或付费形式,数据服务均仅支持绑定一个 VPC 。这是数据服务本身的能力限制。对于数据集计算和数据集成而言,在包年包月的付费模式下,随着 CO 数量的增加,所能绑定的VPC数量也会相应增多。
这里列出了我们在执行数据集成同步任务时,每种任务所需的最低规格。例如,对于单表的离线任务,我们至少需要 0.5CO 。从价格角度来看,根据我国主要区域,包括上海、杭州、北京、深圳的定价,这些区域的价格基本上是相同的。具体来说,我们可以以一个离线任务为例,其每小时的费用仅为 0.25 元。而对于实时任务,运行一个实时任务所需的最小 CO 是 1CO ,其小时单价为 0.5 元。至于整库同步任务,无论是实时还是离线,我们都可以使用 2CO 来启动一个任务。其价格折算下来,相当于每小时 1 元。
这一点有个很重要的地方,特别是在选择单表同步与整库同步时,整库同步支持整个数据库实例的同步。因此,当需要同步整个数据库的数据时,建议尽量创建整库同步任务,而不是将每个表单独拆出来创建单独的任务,除非有特定的业务需求,比如需要实现数据的隔离性等。从价格角度来看,如果有100个表需要同步,并且每个表都单独创建实时同步任务,那么将消耗100CO。然而,如果这100个表都属于同一个数据库,那么将它们放在一个整库同步任务中,总共只需要2CO,资源消耗的差距是巨大的。因此,这一点需要特别注意。如果数据量是一个完整的数据库,那么建议直接创建整库同步任务,而不是将其拆分成多个单独的任务。
03. DEMO演示
3.1 Mysql整库实时同步Hologres
接下来来看一个MySQL整库实时同步到Hologres的场景。请观看这个视频,这是我们数据集成的一个页面。现在,我们要创建一个MySQL整库实时同步到Hologres的任务。首先,选择源端为MySQL ,然后选择目标端为Hologres ,接着就可以开始建立任务了。在建立任务时,我们选择任务类型为整库实时,然后指定数据源为MySQL的数据源,也就是之前提到的按量付费的资源组。接下来,我们指定目标端为Hologres ,并直接进入下一步。在下一步中,我们需要勾选要同步的所有库和表。我将它们全部勾选后,可以直接滚动到底部,然后选择我要同步到的目标位置。
接下来,如果我希望将所有选中的表都同步到Hologres中的同一张表里,我可以在这里进行表名映射的设置。我会制定一个映射规则,手动输入一个目标表名,强制将所有数据都写入到同一个表中。例如,我在这里输入“test_table”,作为所有数据的目标表。确认后,应用这个规则,可以看到所有的目标表名都已经按照我设定的规则进行了更改,都变成了“test_table”。由于这是一个新的表,它还没有被建立。此时,如果没有其他特殊配置需求,我的整个同步任务就已经设置完成了。
点击“完成配置”后,返回到任务列表页面。系统会对任务进行基本的校验,以确保其合法性。在任务列表中,可以看到我刚才创建的任务。直接点击“启动”,这个同步任务就开始运行了。之后,可以点击任务查看详情,前面我们提到的任务分为三个阶段:首先是结构迁移阶段,即建表阶段;接着是全量数据同步阶段;最后是实时同步阶段。
3.2 ClickHouse整库离线迁移Hologres
接下来将为大家介绍ClickHouse整库离线同步到Hologres的过程。与之前的整库实时同步不同,这次我们将关注整库离线同步。同样地,我将开始创建一个ClickHouse整库离线同步到Hologres的任务。在任务设置中,我选择ClickHouse作为源端,Hologres作为目标端。然后,点击创建任务,并选择同步类型为整库离线。接下来,选择一个ClickHouse的数据源,这个数据源是我们之前提到的按量付费的资源组中的一部分,并为其分配一定的计算资源,比如2CO。之后,选择Hologres作为目标端数据源,并检查网络连接,确保网络通畅后,就可以开始配置任务了。
与之前的操作类似,需要选择ClickHouse中的所有表,并将它们直接同步到目标端。在这次同步中,只需要使用离线映射功能,所有的表都会自动映射到Hologres中的对应目标表。这些目标表会由系统自动创建,无需手动操作。完成这些设置后,点击“完成配置”即可。
在任务列表中,可以看到刚刚创建的 ClickHouse 同步到Hologres的任务了。此时,点击“启动”来开始这个任务。接下来可以监控这个任务的运行状态。由于这是离线同步任务,所以它只包含两个阶段:首先是结构迁移,即建表阶段;接着是全量数据同步阶段。
此外还为大家准备了Data数据集成的体验流程。大家可以通过扫描这个二维码,了解如何使用实时同步功能将IDS的数据源同步到Hologres中,并利用DataV构建大屏展示的整体流程。为了回馈新用户,我们特别提供了Hologres的试用优惠:新用户可免费试用5000CU时及100G的存储空间。这是Hologres为新用户提供的专属优惠。