背景
StarRocks 和 Doris 是近两年来相当流行的、国产的、开源的实时数仓,不仅数据检索、分析能力出众,而且数据准备实时性好、准确度高、使用丝滑,可如同在线数据库般使用。
CloudCanal 在早期即支持此两种实时数仓,并且经过多次迭代,无论功能、性能、稳定性都趋于成熟。
不过正儿八经使用这两款流行数仓的全功能,搭建调优也并不简单,为了规避这个问题,我们将 阿里云 EMR for StarRocks/Doris 作为 CloudCanal 数据源,快速、低成本接入业务数据,实现”极速一体”的实时数据分析体验。
此方案特点:
数据实时准备、实时数仓皆具备生产级别能力,数据一产生即可做复杂查询
无复杂部署、调优,软件、服务获取简便
数据同步软件、数仓全功能,无阉割,有云和软件厂商的社区/商业保障
无缝适配私有机房(本文选择了 EMR for StarRocks & Doris 半托管模式, Serverless 模式根据笔者测试同样有效)
废话不多说,直接来看怎么操作吧。
云资源入口
阿里云官网 > 产品 > 大数据计算 > 开源大数据平台 E-MapReduce。
EMR on ECS > 创建集群 , 选择数据分析 tab。这里笔者选择了 EMR on ECS , 即半托管模式, 对于有计划私有机房使用的用户更加匹配些。
创建并添加 Aliyun EMR for StarRocks
选择一个 StarRocks 版本,点击下一步。
各个节点都挂载公网(如 VPC 内使用,则忽略),点击下一步。
查看 StarRocks be/fe 节点和端口, 和默认有所区别, 其中 fe 端口名称为 query_port, 走 MySQL 协议, be 端口 webserver_port, 可走 HTTP 协议(stream load)
CloudCanal 控制台 > 数据源管理 > 添加数据源, 选择添加 自建 StarRocks。
创建并添加 Aliyun EMR for Doris
选择一个 Doris 版本,点击下一步。
各个节点都挂载公网(如 VPC 内使用,则忽略),点击下一步。
查看 Doris be/fe 节点和端口, 和默认有所区别, 其中 fe 端口名称为 query_port, 走 MySQL 协议, be 端口 webserver_port, 可走 HTTP 协议(stream load)。
CloudCanal 控制台 > 数据源管理 > 添加数据源。
使用
创建 CloudCanal 任务,实时同步数据到 阿里云 EMR for StarRocks/Doris。
使用 MySQL 客户端或 CloudDM 连接 阿里云 EMR for StarRocks/Doris 进行检索分析体验。
总结
本文主要介绍使用 CloudCanal 和 阿里云 EMR for StarRocks & Doris 快速构建具备真实业务数据的查询分析,步骤简单、功能完整、稳定性好,且价格便宜。欢迎大家尝试。