快速入门教程
1.开通DataHub
使用DataHub的第一步,首先点击开通DataHub
2.创建Project和 Topic
创建Topic方式解读,Tuple还是Blob?
Tuple支持的是强Schema的结构化数据,Blob指的是没有类型的非结构化数据,在实际中Blob就是只有一列为string类型的schema
值得注意的是:使用Blob类型topic的话,数据会采用Base64加密,无论是抽样还是下游消费,都需要进行解密
Schema设计
DataHub目前只支持字段的新增,不支持删除和修改,针对上游数据源字段经常发生变动的场景,建议设置允许字段为空,如果上游字段变更的话,针对多出来的字段可以通过SDK新增字段,而对于减少的字段则由于允许为空,值将会置为NULL,不会对业务造成影响
shard 和生命周期设置
- shard在DataHub中代表的是并发通道,每个shard每秒吞吐限制为5M/s,每个shardQPS(每秒请求数)为2000次,您可根据这两项指标合理设置shard个数
- 针对生命周期而言,可以根据业务需要设置,如果需要更改的话,可以使用Java SDK修改生命周期
3.上游的选择
DataHub目前支持的数据采集插件
OGG
- OGG for MySQL
- OGG for Oracle
- LogStash
- Flume
- Canal插件
- Fluentd
https://help.aliyun.com/document_detail/158836.html?spm=a2c4g.11186623.6.588.5e65710b7RMCns
通过SDK自定义写入DataHub
注意:
https://help.aliyun.com/document_detail/158841.html?spm=a2c4g.11186623.6.599.28c21333xe8wPo
https://help.aliyun.com/document_detail/158834.html?spm=a2c4g.11186623.6.583.2db4710bEEOlFZ
兼容Kafka
https://help.aliyun.com/document_detail/168118.html?spm=a2c4g.11186623.6.586.6aec6bdbCi1ElZ
DTS数据同步
从PolarDB MySQL同步至Datahub
DataHub目前的上游生态就是这样了
4.指标查看 or数据抽样
在将数据写入到DataHub之后,DataHub提供了可视化指标来查看内部情况,具体详情请查看
指标查看
用户如何查看数据质量,写入是否正确?可以通过Web抽样功能来查看数据
5.订阅
什么是订阅?
订阅最主要的功能就是存储消费点位,以及通过点位重置重新消费
用户可创建不同的订阅针对同一个Topic数据的不同消费模式
创建同步自动会创建对应的订阅
6.同步数据到下游
消费DataHub数据有两种方式,通过DataHub支持的同步数据库同步到下游,或者通过自定义SDK消费数据进行处理
DataHub支持的同步类型:
- Hologres
- Maxcompute
- ADS
- ElasticSearch
- 函数计算
- OSS
- TableStore
- RDS/MySQL/ADS 3.0
自定义SDK消费
您可以使用SDK对DataHub数据进行消费
同时DataHub协同消费解决多个消费者同时消费一个topic时,自动分配shard的问题,您也可以选择使用协同消费对DataHub数据进行处理
同步往往是出现问题最多的,请参考 DataHub同步问题
7.监控报警
在同步数据过程中,DataHub支持了监控报警,目前只有订阅延迟报警这一项,您可以通过创建报警规则方式对DataHub同步到下游数据进行监控,当超过延迟时间阈值时,会通过钉钉、短信等多种方式提醒您。
具体报警说明请查看文档:监控报警
8 总结
本文通过对DataHub的创建使用,上游数据源的选择,同步到DataHub的指标查看,以及下游类型的说明,阐述了DataHub做为数据通道的概念模型以及实际的落地场景,如有更多使用疑问,请加DataHub公共云群组进行反馈