OneSQL OLAP实践问题之BIGO ClickHouse实现二阶段提交事务机制如何解决

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: OneSQL OLAP实践问题之BIGO ClickHouse实现二阶段提交事务机制如何解决

问题一:在处理流维表JOIN时,面对Hive大维表导致的OOM问题,采取了哪些优化措施?


在处理流维表JOIN时,面对Hive大维表导致的OOM问题,采取了哪些优化措施?


参考回答:

"为了处理Hive大维表导致的OOM问题,我们采取了以下优化措施:

Hive维表Hash分片:将Hive大维表按照Join Key进行Hash分片,通过Hash函数计算后分布到Flink作业的不同并行子任务的HashMap中。这样,每个HashMap只存放大维表的一部分数据,通过增加作业的并行度,可以将大维表的数据拆分成足够多份进行分片保存。

使用Rocksdb Map State:对于一些仍然太大的维表分片,我们使用Rocksdb Map State来保存分片数据,以进一步减少内存压力。


关于本问题的更多问答可点击原文查看:

https://developer.aliyun.com/ask/666308



问题二:在Flink中将流表数据与Hive维表进行JOIN时,数据是如何被分配到对应subtask的?


在Flink中将流表数据与Hive维表进行JOIN时,数据是如何被分配到对应subtask的?


参考回答:

"在Flink中,Kafka流表中的数据在需要下发到不同的subtask上进行JOIN时,会首先通过相同的Join Key和Hash函数进行计算。这个Hash计算结果决定了数据应该被分配到哪个subtask进行JOIN操作。由于Hive维表已经按照相同的Hash函数进行了分片,因此流表中的数据可以准确地找到对应的subtask进行JOIN,从而输出JOIN后的结果。


关于本问题的更多问答可点击原文查看:

https://developer.aliyun.com/ask/666309



问题三:BIGO ClickHouse是如何实现二阶段提交事务机制来支持Exactly-Once语义的?


BIGO ClickHouse是如何实现二阶段提交事务机制来支持Exactly-Once语义的?


参考回答:

"BIGO ClickHouse实现了一个二阶段提交事务机制来支持Exactly-Once语义。具体步骤如下:

临时写入:当需要写入数据到ClickHouse时,首先将数据以temporary模式写入,表示这些数据是临时的。

记录Insert ID:数据插入完成后,返回一个Insert ID,用于后续的提交操作。

批量提交:在两次checkpoint之间,可能会有多次insert操作产生多个Insert ID。当checkpoint完成时,将这些Insert ID批量提交,将临时数据转为正式数据。

Failover处理:如果作业出现Failover,Flink作业重启后会从最近一次完成的checkpoint恢复状态。对于未提交的Insert ID,会进行重试提交。而那些已经写入但Insert ID未记录的数据,由于是临时数据,会被ClickHouse的过期清理机制清理掉,从而避免数据重复。"


关于本问题的更多问答可点击原文查看:

https://developer.aliyun.com/ask/666310



问题四:BIGO实时计算平台Bigoflow主要提供了哪些功能?


BIGO实时计算平台Bigoflow主要提供了哪些功能?


参考回答:

"BIGO实时计算平台Bigoflow主要提供了以下功能:

多类型作业支持:支持Flink JAR、SQL、Python等多种类型作业,满足不同开发者的需求。

版本兼容性:支持不同的Flink版本,覆盖公司内部大部分实时计算相关业务。

一站式管理:集作业开发、提交、运行、历史展示、监控、告警于一体,便于用户随时查看作业的运行状态和发现问题。

血缘关系查询:提供血缘关系查询功能,方便用户了解每个作业的数据源、数据目的以及数据计算的来龙去脉。


关于本问题的更多问答可点击原文查看:

https://developer.aliyun.com/ask/666311


问题五:Onesql OLAP 分析平台在公司内部主要用于哪些类型的查询?


Onesql OLAP 分析平台在公司内部主要用于哪些类型的查询?


参考回答:

Onesql OLAP 分析平台在公司内部主要应用于 AdHoc 查询。用户通过 Hue 页面提交的 SQL 查询,由 OneSQL 后端转发给 Flink SQL Gateway,并在 Flink Session 集群上执行这些查询任务。


关于本问题的更多问答可点击原文查看:

https://developer.aliyun.com/ask/666312

相关实践学习
AnalyticDB MySQL海量数据秒级分析体验
快速上手AnalyticDB MySQL,玩转SQL开发等功能!本教程介绍如何在AnalyticDB MySQL中,一键加载内置数据集,并基于自动生成的查询脚本,运行复杂查询语句,秒级生成查询结果。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
6天前
|
SQL 存储 消息中间件
vivo基于Paimon的湖仓一体落地实践
本文整理自vivo互联网大数据专家徐昱在Flink Forward Asia 2024的分享,基于实际案例探讨了构建现代化数据湖仓的关键决策和技术实践。内容涵盖组件选型、架构设计、离线加速、流批链路统一、消息组件替代、样本拼接、查询提速、元数据监控、数据迁移及未来展望等方面。通过这些探索,展示了如何优化性能、降低成本并提升数据处理效率,为相关领域提供了宝贵的经验和参考。
358 3
vivo基于Paimon的湖仓一体落地实践
|
11天前
|
SQL 分布式计算 数据挖掘
从湖仓分离到湖仓一体,四川航空基于 SelectDB 的多源数据联邦分析实践
川航选择引入 SelectDB 建设湖仓一体大数据分析引擎,取得了数据导入效率提升 3-6 倍,查询分析性能提升 10-18 倍、实时性提升至 5 秒内等收益。
从湖仓分离到湖仓一体,四川航空基于 SelectDB 的多源数据联邦分析实践
|
22天前
|
SQL 存储 HIVE
鹰角基于 Flink + Paimon + Trino 构建湖仓一体化平台实践项目
本文整理自鹰角网络大数据开发工程师朱正军在Flink Forward Asia 2024上的分享,主要涵盖四个方面:鹰角数据平台架构、数据湖选型、湖仓一体建设及未来展望。文章详细介绍了鹰角如何构建基于Paimon的数据湖,解决了Hudi入湖的痛点,并通过Trino引擎和Ranger权限管理实现高效的数据查询与管控。此外,还探讨了湖仓一体平台的落地效果及未来技术发展方向,包括Trino与Paimon的集成增强、StarRocks的应用以及Paimon全面替换Hive的计划。
148 1
鹰角基于 Flink + Paimon + Trino 构建湖仓一体化平台实践项目
|
12天前
|
SQL 存储 HIVE
鹰角基于 Flink + Paimon + Trino 构建湖仓一体化平台实践项目
鹰角基于 Flink + Paimon + Trino 构建湖仓一体化平台实践项目
|
13天前
|
存储 分布式数据库 Apache
小米基于 Apache Paimon 的流式湖仓实践
小米基于 Apache Paimon 的流式湖仓实践
小米基于 Apache Paimon 的流式湖仓实践
|
16天前
|
存储 分布式数据库 Apache
小米基于 Apache Paimon 的流式湖仓实践
本文整理自Flink Forward Asia 2024流式湖仓专场分享,由计算平台软件研发工程师钟宇江主讲。内容涵盖三部分:1)背景介绍,分析当前实时湖仓架构(如Flink + Talos + Iceberg)的痛点,包括高成本、复杂性和存储冗余;2)基于Paimon构建近实时数据湖仓,介绍其LSM存储结构及应用场景,如Partial-Update和Streaming Upsert,显著降低计算和存储成本,简化架构;3)未来展望,探讨Paimon在流计算中的进一步应用及自动化维护服务的建设。
小米基于 Apache Paimon 的流式湖仓实践
|
2月前
|
DataWorks 关系型数据库 OLAP
云端问道5期实践教学-基于Hologres轻量实时的高性能OLAP分析
本文基于Hologres轻量实时的高性能OLAP分析实践,通过云起实验室进行实操。实验步骤包括创建VPC和交换机、开通Hologres实例、配置DataWorks、创建网关、设置数据源、创建实时同步任务等。最终实现MySQL数据实时同步到Hologres,并进行高效查询分析。实验手册详细指导每一步操作,确保顺利完成。
|
5月前
|
存储 关系型数据库 MySQL
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB区别,适用场景
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景比较
|
3月前
|
SQL Unix OLAP
ClickHouse安装教程:开启你的列式数据库之旅
ClickHouse 是一个高性能的列式数据库管理系统,适用于在线分析处理(OLAP)。本文介绍了 ClickHouse 的基本使用步骤,包括下载二进制文件、安装应用、启动服务器和客户端、创建表、插入数据以及查询新表。还提到了图形客户端 DBeaver 的使用,使操作更加直观。通过这些步骤,用户可以快速上手并利用 ClickHouse 的强大性能进行数据分析。
177 4
|
5月前
|
存储 分布式计算 数据库
阿里云国际版设置数据库云分析工作负载的 ClickHouse 版
阿里云国际版设置数据库云分析工作负载的 ClickHouse 版