方案实践测评 | DataWorks集成Hologres构建一站式高性能的OLAP数据分析

本文涉及的产品
RDS Agent(兼容OpenClaw),2核4GB
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介: DataWorks在任务开发便捷性、任务运行速度、产品使用门槛等方面都表现出色。在数据处理场景方面仍有改进和扩展的空间,通过引入更多的智能技术、扩展数据源支持、优化任务调度和可视化功能以及提升团队协作效率,DataWorks将能够为企业提供更全面、更高效的数据处理解决方案。

DataWorks基于阿里云ODPS/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。作为阿里巴巴数据中台的建设者,DataWorks从2009年起不断沉淀阿里巴巴大数据建设方法论,同时与数万名政务/金融/零售/互联网/能源/制造等客户携手,助力产业数字化升级。

Hologres是阿里云自研一站式实时数仓,统一数据平台架构,支持海量结构化/半结构化数据的实时写入、实时更新、实时加工、实时分析,支持标准SQL(兼容PostgreSQL协议),无缝对接主流BI工具,支持OLAP查询、即席分析、在线服务、向量计算多个场景,分析性能打破TPC-H世界记录,与MaxCompute、Flink、DataWorks深度融合,提供离在线一体化全栈数仓解决方案。

一、方案概述

本方案基于阿里云实时数仓Hologres和DataWorks数据集成,通过简单的产品操作即可完成数据库RDS实时同步数据到Hologres,并通过Hologres强大的查询分析性能,完成一站式高性能的OLAP数据分析。
image.png

方案部署

1、创建专有网络VPC和交换机

为确保后续任务的网络连通,请务必保证Hologres与DataWorks资源组使用同⼀个VPC。

image.png

image.png

在创建专有网络页面,您可查看到创建的专有网络VPC和交换机的ID、实例名称等信息。
image.png

2、试用实时数仓Hologres。新用户可以有3个月免费试用期。

image.png

在实时数仓Hologres面板,根据如下参数说明进行配置,未提及的参数保持默认即可,单击立即试用。
image.png

image.png

大概需要5-10分钟,在实例列表页面,等待运行状态变为运行正常,即可正常使用。
image.png

3、开通DataWorks

image.png

image.png

image.png
创建工作空间列表。注意需要类似XXXX_123这种格式,即字母、数字、下划线都用到才可以。
image.png

image.png

在资源组列表页面,等待目标资源组的状态变为运行中,即可正常使用资源组。
image.png

4、创建公网NAT

首次使用NAT网关时,在创建公网NAT网关页面关联角色创建区域,单击创建关联角色。角色创建成功后即可创建NAT网关。
image.png

image.png
image.png

image.png

image.png
返回如下页面,表示您已创建成功,可以查看到创建的弹性公网IP、NAT网关等资源的资源ID。
image.png

5、创建Hologres表

在实例列表页面,但是实例ID。
image.png

在实例详情页面,单击登录实例,进入HoloWeb。
image.png

image.png

在顶部菜单栏中,单击SQL编辑器。

image.png

新建SQL查询
image.png

新建Hologres内部表。

将如下命令复制并粘贴至临时Query查询页签中,单击执行,创建Hologres内部表hologres_dataset_github_event.hologres_github_event,后续会将数据实时写入至该表中。

-- 新建schema用于创建内表并导入数据
CREATE SCHEMA IF NOT EXISTS hologres_dataset_github_event;

DROP TABLE IF EXISTS hologres_dataset_github_event.hologres_github_event;

BEGIN;
CREATE TABLE hologres_dataset_github_event.hologres_github_event (
 id bigint PRIMARY KEY,
 actor_id bigint,
 actor_login text,
 repo_id bigint,
 repo_name text,
 org_id bigint,
 org_login text,
 type text,
 created_at timestamp with time zone NOT NULL,
 action text, 
 commit_id text,
 member_id bigint,
 language text
);
CALL set_table_property ('hologres_dataset_github_event.hologres_github_event', 'distribution_key', 'id');
CALL set_table_property ('hologres_dataset_github_event.hologres_github_event', 'event_time_column', 'created_at');
CALL set_table_property ('hologres_dataset_github_event.hologres_github_event', 'clustering_key', 'created_at');

COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.id IS '事件ID';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.actor_id IS '事件发起⼈ID';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.actor_login IS '事件发起⼈登录名';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.repo_id IS 'repoID';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.repo_name IS 'repo名称';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.org_id IS 'repo所属组织ID';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.org_login IS 'repo所属组织名称';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.type IS '事件类型';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.created_at IS '事件发⽣时间';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.action IS '事件行为';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.commit_id IS '提交记录ID';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.member_id IS '成员ID';
COMMENT ON COLUMN hologres_dataset_github_event.hologres_github_event.language IS '编程语⾔';

COMMIT;

执行结束
image.png

6、实时同步数据至Hologres

在管理中心页面,在下拉框中选择默认⼯作空间,单击进入管理中心。
image.png

在左侧导航栏中,选择数据源 > 数据源列表。

image.png

创建MySQL数据源。

image.png

image.png

配置完成后,在连接配置区域,找到您创建的资源组,单击其右侧的测试连通性。

image.png

image.png
image.png

创建Hologres数据源。

image.png

image.png
image.png

image.png

创建实时同步任务。
image.png

在数据集成页面,在创建同步任务中,选择来源与去向数据源,单击开始创建。

来源:选择MySQL。去向:选择Hologres

image.png

在基本信息区域中,配置任务信息。 新任务名称:data_test。 同步类型:选择整库实时。

image.png

在网络与资源配置区域中,配置任务网络连通。

image.png

image.png

image.png

实时同步任务设置。在选择要同步的库表区域的源端库表中,勾选github_public_event表,然后右移。

image.png
image.png

在目标表映射区域,勾选github_public_event表,单击批量刷新映射。基于上述已创建的Hologres内部表,将目标Schema名改为hologres_dataset_github_event,目标表名改为hologres_github_event,单击完成配置。
image.png

image.png

image.png

在任务列表页面,单击启动。

image.png

image.png
image.png

在任务详情页面,您可查看到任务的执行情况,请耐心等待任务执行完成。

image.png

进度如下:
image.png

image.png

7、实时OLAP分析

返回至SQL编辑器·HoloWeb页签。在临时Query查询页签中,执行如下命令,查询实时更新的过去24小时GitHub最活跃项⽬。


SELECT
  repo_name,
  COUNT(*) AS events
FROM
  hologres_dataset_github_event.hologres_github_event
WHERE
  created_at >= now() - interval '1 day'
GROUP BY
  repo_name
ORDER BY
  events DESC
LIMIT 5;

查看同步的相关监控数据

image.png
image.png
image.png

image.png
image.png
image.png

8、清除资源

删除实时数仓Hologres。

image.png

image.png

image.png

image.png

删除实时同步任务、数据源、资源组和工作空间。

image.png

在数据集成页面,找到目标同步任务,单击其右侧操作列下的停止。

image.png

任务停止以后,选择其右侧操作列下的更多 > 删除。
image.png

image.png

在工作空间列表页面,找到目标工作空间,单击其右侧操作列下的管理。

image.png

在数据源页面,分别单击Hologre和MySQL数据源右侧操作列下的删除。

image.png

image.png

在DataWorks控制台左侧导航栏中,单击资源组列表,找到您创建的资源组

image.png

image.png

image.png

删除工作空间列表
image.png
image.png

删除公网NAT和弹性公网IP。
image.png
image.png

image.png

image.png

image.png

删除VPC及交换机。

image.png

image.png

三、体验总结

在本方案中,DataWorks作为阿里云提供的大数据开发治理平台,其产品在多个方面如任务开发便捷性、任务运行速度、产品使用门槛等,通常都能满足大部分企业的数据处理需求,特别是在与Hologres等阿里云自研产品结合使用时,能够发挥出更高的效能。以下是对这些方面的具体分析:

  1. 任务开发便捷性

    • DataWorks提供了丰富的数据开发组件和模板,简化了数据处理的流程。
    • 支持拖拽式的界面操作,降低了数据开发的技术门槛。
    • 集成了多种数据源和数据目标,方便数据的接入和输出。

    因此,从任务开发便捷性的角度来看,DataWorks能够很好地满足企业的需求。

  2. 任务运行速度

    • DataWorks基于阿里云的大数据引擎(如ODPS、EMR等)构建,能够充分利用云端的计算资源。
    • 支持分布式计算和并行处理,提高了数据处理的效率。
    • 与Hologres等高性能数仓产品的结合,能够进一步提升数据查询和分析的速度。

    所以,在任务运行速度方面,DataWorks同样表现出色。

  3. 产品使用门槛

    • DataWorks提供了详尽的文档和教程,帮助用户快速上手。
    • 支持多种身份认证和权限管理方式,确保了数据的安全性和合规性。
    • 提供了丰富的API和SDK,方便用户进行二次开发和集成。

    在产品使用门槛方面,DataWorks也做得相当不错,既适合初学者快速入门,也适合高级用户进行复杂的数据处理。

  4. 其他功能

    • DataWorks还提供了数据质量管理、数据资产管理、数据安全审计等功能,满足了企业对数据治理的全方位需求。
    • 支持实时数据监控和告警,确保数据处理的稳定性和可靠性。

针对数据处理场景,DataWorks可以改进或增加的功能点如下:

  • 更智能的数据处理:引入更多的AI和机器学习算法,实现数据的智能清洗、转换和分析,提高数据处理的效率和准确性。
  • 更丰富的数据源支持:除了现有的数据源外,还可以进一步扩展对新兴数据源(如物联网设备、社交媒体等)的支持。
  • 更灵活的任务调度:提供更丰富的任务调度策略和触发机制,以满足不同场景下的数据处理需求。
  • 更强大的数据可视化:虽然DataWorks可以与主流BI工具无缝对接,但自身也可以提供更强大的数据可视化功能,方便用户进行直观的数据分析和展示。
  • 更高效的团队协作:优化团队协作功能,如版本控制、任务分配、进度跟踪等,以提高团队的工作效率和协作效果。
相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
存储 消息中间件 OLAP
基于 Flink+Paimon+Hologres 搭建淘天集团湖仓一体数据链路
本文整理自淘天集团高级数据开发工程师朱奥在Flink Forward Asia 2024的分享,围绕实时数仓优化展开。内容涵盖项目背景、核心策略、解决方案、项目价值及未来计划五部分。通过引入Paimon和Hologres技术,解决当前流批存储不统一、实时数据可见性差等痛点,实现流批一体存储与高效近实时数据加工。项目显著提升了数据时效性和开发运维效率,降低了使用门槛与成本,并规划未来在集团内推广湖仓一体架构,探索更多技术创新场景。
1988 3
基于 Flink+Paimon+Hologres 搭建淘天集团湖仓一体数据链路
|
11月前
|
SQL 分布式计算 DataWorks
破界·融合·进化:解码DataWorks与Hologres的湖仓一体实践
基于阿里云DataWorks与实时数仓Hologres,提供统一的大数据开发治理平台与全链路实时分析能力。DataWorks支持多行业数据集成与管理,Hologres实现海量数据的实时写入与高性能查询分析,二者深度融合,助力企业构建高效、实时的数据驱动决策体系,加速数字化升级。
|
11月前
|
分布式计算 Serverless OLAP
实时数仓Hologres V3.1版本发布,Serverless型实例从零开始构建OLAP系统
Hologres推出Serverless型实例,支持按需计费、无需独享资源,适合新业务探索分析。高性能查询内表及MaxCompute/OSS外表,弹性扩展至512CU,性能媲美主流开源产品。新增Dynamic Table升级、直读架构优化及ChatBI解决方案,助力高效数据分析。
实时数仓Hologres V3.1版本发布,Serverless型实例从零开始构建OLAP系统
|
11月前
|
SQL DataWorks 关系型数据库
DataWorks+Hologres:打造企业级实时数仓与高效OLAP分析平台
本方案基于阿里云DataWorks与实时数仓Hologres,实现数据库RDS数据实时同步至Hologres,并通过Hologres高性能OLAP分析能力,完成一站式实时数据分析。DataWorks提供全链路数据集成与治理,Hologres支持实时写入与极速查询,二者深度融合构建离在线一体化数仓,助力企业加速数字化升级。
|
数据挖掘 OLAP OLTP
体验AnalyticDB无感集成(Zero-ETL)下的一站式数据分析,完成任务可领取300社区积分兑换各种商城好礼!
瑶池数据库的无感数据集成实现秒级同步,性能提升15%。借助AnalyticDB的Zero-ETL功能,快速搭建OLTP与OLAP同步链路,一站式管理数据分析。参与活动完成任务即可领取300社区积分,还有机会抽取红酒收纳箱、键盘鼠标垫、福禄寿淘公仔等好礼!
|
DataWorks 关系型数据库 Serverless
DataWorks数据集成同步至Hologres能力介绍
本文由DataWorks PD王喆分享,介绍DataWorks数据集成同步至Hologres的能力。DataWorks提供低成本、高效率的全场景数据同步方案,支持离线与实时同步。通过Serverless资源组,实现灵活付费与动态扩缩容,提升隔离性和安全性。文章还详细演示了MySQL和ClickHouse整库同步至Hologres的过程。
|
Java Maven Docker
gitlab-ci 集成 k3s 部署spring boot 应用
gitlab-ci 集成 k3s 部署spring boot 应用
|
消息中间件 监控 Java
您是否已集成 Spring Boot 与 ActiveMQ?
您是否已集成 Spring Boot 与 ActiveMQ?
583 0
|
监控 druid Java
spring boot 集成配置阿里 Druid监控配置
spring boot 集成配置阿里 Druid监控配置
1645 6
|
Java 关系型数据库 MySQL
如何实现Springboot+camunda+mysql的集成
【7月更文挑战第2天】集成Spring Boot、Camunda和MySQL的简要步骤: 1. 初始化Spring Boot项目,添加Camunda和MySQL驱动依赖。 2. 配置`application.properties`,包括数据库URL、用户名和密码。 3. 设置Camunda引擎属性,指定数据源。 4. 引入流程定义文件(如`.bpmn`)。 5. 创建服务处理流程操作,创建控制器接收请求。 6. Camunda自动在数据库创建表结构。 7. 启动应用,测试流程启动,如通过服务和控制器开始流程实例。 示例代码包括服务类启动流程实例及控制器接口。实际集成需按业务需求调整。
1254 4