场景实践 | 基于Flink+Hologres搭建GitHub实时数据分析

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
实时计算 Flink 版,5000CU*H 3个月
简介: 基于Flink和Hologres构建的实时数仓方案在数据开发运维体验、成本与收益等方面均表现出色。同时,该产品还具有与其他产品联动组合的可能性,能够为企业提供更全面、更智能的数据处理和分析解决方案。

以GitHub公开事件数据为例,通过使用Flink、Hologres构建实时数仓,实现海量数据实时分析

搭建实时数仓时,Flink可对待处理数据进行实时清洗,完成后Hologres可直接读取Flink中的数据,示例架构如图所示。
image.png

一、实践步骤

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

登录专有网络管理控制台,单击专有网络。
image.png

在创建专有网络页⾯,根据下方参数说明配置1个专有网络(VPC)和2台交换机,然后单击确定。
image.png
image.png
image.png

2、创建实时数仓Hologres

image.png

在实例列表页面,等待运行状态变为运行正常,即可正常使用。
image.png

3、创建对象存储OSS

登录对象存储OSS控制台,单击Bucket列表。
image.png

4、创建实时计算Flink

先领取资源抵扣包
image.png

购买Flink实例
image.png

image.png

在实时计算控制台Flink全托管页签,刷新页面查看工作空间状态,当工作空间状态为运行中时,即可进入下一步。
image.png

5、创建Hologres内部表

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

2、在元数据管理页签,单击新建库
image.png

3、在SQL编辑器页面,单击左上⻆的image图标,新建SQL查询。
image.png

6、通过Flink实时写入数据至Hologres

1、选择运维中心 > Session管理。在Session集群页面,单击创建Session集群。
image.png

image.png
image.png

2、在集群总览页签,当Session集群状态(页面上方集群名称旁边)从启动中变为运行中。
image.png

3、创建SQL作业。在左侧导航栏,选择数据开发 > ETL
image.png
image.png
image.png
image.png

4、在作业页面右上角,单击部署。

image.png
image.png
image.png

5、在作业运维页面,单击目标作业右侧操作列下的启动。
image.png

image.png

状态变为运行中时,表示您成功启动作业。
image.png

7、查询实时数据

1、切换至Hologres的SQL编辑器页签。

2、在Hologres中通过内部表查询今日最活跃项目。

在临时Query查询页签,执行如下命令,查询今日最活跃项目。

SELECT
    repo_name,
    COUNT(*) AS events
FROM
    hologres_dataset_github_event.hologres_github_event
WHERE
    created_at >= CURRENT_DATE
GROUP BY
    repo_name
ORDER BY
    events DESC
LIMIT 5;

image.png

8、清理资源

1、登录实时计算控制台

在页面顶部菜单栏中,地域切换至华东2(上海),然后选择目标工作空间右侧操作列下的更多 > 释放资源。
image.png

image.png

2、登录Hologres控制台

在页面右上角,地域切换至华东2(上海),然后在左侧导航栏中,单击实例列表。
image.png

image.png

image.png

image.png

3、登录对象存储OSS控制台。删除Bucket。
image.png
image.png
image.png

4、登录AccessKey管理。删除阿里云AccessKey。先禁用再删除。
image.png
image.png

5、登录专有网络,删除VPC及交换机。先删除交换机再删除VPC。
image.png

image.png

image.png

二、实践总结

在通过Flink和Hologres构建实时数仓,并实现海量数据实时分析的场景下,针对以下几个方面:

1、 数据开发运维体验

  • 实时数据清洗:Flink能够对待处理的GitHub事件数据进行实时清洗,确保数据的准确性和一致性。
  • 高效数据读取:Hologres能够直接读取Flink中的数据,无需额外的数据转换或传输步骤,从而提高了数据处理效率。
  • 易于维护和扩展:基于Flink和Hologres的解决方案易于维护和扩展,可以随着数据量的增长和业务需求的变化进行灵活调整。

2、成本与收益

1) 成本

  • 硬件成本:由于Flink版是全托管产品,因此无需担心硬件采购和维护成本。
  • 运维成本:全托管服务降低了运维成本,因为阿里云会负责产品的运维和升级工作。
  • 学习成本:对于熟悉Flink和Hologres的开发人员来说,学习成本相对较低。但对于新手来说,可能需要一定的时间来熟悉和掌握这些工具。

2) 收益

  • 提高数据处理效率:实时计算Flink版能够显著提高数据处理效率,确保数据的实时性和准确性。
  • 降低延迟:通过实时数仓的搭建,可以显著降低数据处理的延迟,从而更快地响应业务需求。
  • 提升业务决策能力:基于实时数据的分析能够为企业提供更准确的业务洞察和决策支持。

3、产品改进与功能拓展

  • 支持更多数据源:推出Flink对更多数据源的支持,以满足不同业务场景的需求。
  • 增强可视化能力:可以开发更加直观和易用的可视化工具,帮助用户更好地理解数据和分析结果,无须使用第三方工具来展示。

4、与其他产品的联动组合

  • 与Kafka等消息队列产品联动:可以将Kafka作为数据源的入口,通过Flink实时处理数据后写入Hologres进行存储和分析。
  • 与机器学习平台/大模型联动:可以将Flink处理后的数据输入到机器学习平台/大模型中进行训练和预测,以实现更加智能化的业务决策。
相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
相关文章
|
1月前
|
SQL 运维 网络安全
【实践】基于Hologres+Flink搭建GitHub实时数据查询
本文介绍了如何利用Flink和Hologres构建GitHub公开事件数据的实时数仓,并对接BI工具实现数据实时分析。流程包括创建VPC、Hologres、OSS、Flink实例,配置Hologres内部表,通过Flink实时写入数据至Hologres,查询实时数据,以及清理资源等步骤。
|
1天前
|
消息中间件 JSON 数据库
探索Flink动态CEP:杭州银行的实战案例
本文由杭州银行大数据工程师唐占峰、欧阳武林撰写,介绍Flink动态CEP的定义、应用场景、技术实现及使用方式。Flink动态CEP是基于Flink的复杂事件处理库,支持在不重启服务的情况下动态更新规则,适应快速变化的业务需求。文章详细阐述了其在反洗钱、反欺诈和实时营销等金融领域的应用,并展示了某金融机构的实际应用案例。通过动态CEP,用户可以实时调整规则,提高系统的灵活性和响应速度,降低维护成本。文中还提供了具体的代码示例和技术细节,帮助读者理解和使用Flink动态CEP。
157 2
探索Flink动态CEP:杭州银行的实战案例
|
16天前
|
流计算 开发者
【开发者评测】实时计算Flink场景实践和核心功能体验测评获奖名单公布!
【开发者评测】实时计算Flink场景实践和核心功能体验测评获奖名单公布!
|
28天前
|
机器学习/深度学习 算法 数据挖掘
数据分析的 10 个最佳 Python 库
数据分析的 10 个最佳 Python 库
83 4
数据分析的 10 个最佳 Python 库
|
4月前
|
数据采集 数据可视化 数据挖掘
数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
在数字化时代,数据分析至关重要,而Python凭借其强大的数据处理能力和丰富的库支持,已成为该领域的首选工具。Python作为基石,提供简洁语法和全面功能,适用于从数据预处理到高级分析的各种任务。Pandas库则像是神兵利器,其DataFrame结构让表格型数据的处理变得简单高效,支持数据的增删改查及复杂变换。配合Matplotlib这一数据可视化的魔法棒,能以直观图表展现数据分析结果。掌握这三大神器,你也能成为数据分析领域的高手!
93 2
|
4月前
|
机器学习/深度学习 数据采集 数据可视化
基于爬虫和机器学习的招聘数据分析与可视化系统,python django框架,前端bootstrap,机器学习有八种带有可视化大屏和后台
本文介绍了一个基于Python Django框架和Bootstrap前端技术,集成了机器学习算法和数据可视化的招聘数据分析与可视化系统,该系统通过爬虫技术获取职位信息,并使用多种机器学习模型进行薪资预测、职位匹配和趋势分析,提供了一个直观的可视化大屏和后台管理系统,以优化招聘策略并提升决策质量。
231 4
|
4月前
|
机器学习/深度学习 算法 数据挖掘
2023 年第二届钉钉杯大学生大数据挑战赛初赛 初赛 A:智能手机用户监测数据分析 问题二分类与回归问题Python代码分析
本文介绍了2023年第二届钉钉杯大学生大数据挑战赛初赛A题的Python代码分析,涉及智能手机用户监测数据分析中的聚类分析和APP使用情况的分类与回归问题。
103 0
2023 年第二届钉钉杯大学生大数据挑战赛初赛 初赛 A:智能手机用户监测数据分析 问题二分类与回归问题Python代码分析
|
1月前
|
SQL 数据挖掘 Python
数据分析编程:SQL,Python or SPL?
数据分析编程用什么,SQL、python or SPL?话不多说,直接上代码,对比明显,明眼人一看就明了:本案例涵盖五个数据分析任务:1) 计算用户会话次数;2) 球员连续得分分析;3) 连续三天活跃用户数统计;4) 新用户次日留存率计算;5) 股价涨跌幅分析。每个任务基于相应数据表进行处理和计算。
|
2月前
|
机器学习/深度学习 数据采集 数据可视化
数据分析之旅:用Python探索世界
数据分析之旅:用Python探索世界
37 2
|
3月前
|
数据采集 数据可视化 数据挖掘
数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
【9月更文挑战第2天】数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
70 5