开源 OLAP 迁移 HSAP 实战(二)|学习笔记

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 快速学习开源 OLAP 迁移 HSAP 实战(二)

开发者学堂课程【实时数仓 Hologres 实战课程开源 OLAP 迁移 HSAP 实战(】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/904/detail/14392


开源 OLAP 迁移 HSAP 实战(二)


七、ClickHouse 简介及应用场景

ClickHouse :

自带存储引擎,支持实时数据,并提供亚秒级查询,C++ 实现的 OLAP 分 布式列式数据库

适用场景∶

1.海量明细数据存储

2.单表聚合类查询

3.写入可见性/一致性要求不高

不适用场景

1.高 QPS 查询

2.高 QPS 更新

3.需要 join 的场景


八、ClickHouse 迁移 Hologres 实践

数据写入链路迁移

image.png 常见实时数仓写入链路如上图,通过Flink将实时日志数据写入到实时数仓系统中。

增量数据迁移

Hologres 紧密结合 Flink 生态,如果客户之前是通过 Flink 来向 ClickHouse 灌入实时数据

那么通过集成 Hologres ,Connector,可以方便地将数据导入 Hologres,将增量数据迁移过来。

存量数据迁移

由于 DataX 等插件,暂不支持 ClickHouse Reader。如果已经在 ClickHouse 中存储了存量数据,需要搬迁至 Hologres,目前可以用 ClickHouse -> COPY OUT -> Data File -> COPY IN ->Hologres 的链路,需要确定好字符集、分隔符和 NULL 标记等规范

 

九、ClickHouse 迁移 Hologres 实践-数据模型

 

ClickHouse

Hologres

DB

create database xx

create database xx

Table Group/Shard

对所有的<SHARD> , <REPLICA>:ENGINE= Replicated MergeTree( " /path/to','clusterO1-<SHARD>-<REPLICA> "dt,(cmd,dt,log_timestamp) 8192)

—键设置

begin;

create table xo (a int);

Call

set_table _property’( ‘xx ', ‘shard_count". "100’);

commit;

TABLE

create table xx (a int) ENGINE=

engine

无需engine设置

默认列存

默认死存,支持行存

表级TTL

表级TTL

COLUMN

列级TTL

不支持

 

CONSTRAINT

支持primary key., default , not null等

VIEW

支持Materialized view

支持VlEwW,不支持Materialized view

 

十、ClickHouse 迁移 Hologres 实践- DDL

ClickHouse

CREATE TABLE test (

`a`Int64 DEFAULT CAST(O, "Int64'),

`b`Float64 DEFAULT O.,

'c' String DEFAULT ".

‘d’ DateTime DEFAULT CAST('0o00-00-00 00:00:00",'DateTime'),

) ENGINE = ReplicatedMergeTree(' /clickhouse/tables/{layer}-(shard}/test', "(replica}')

PARTITION BY formatDateTime(d, '%D")

ORDER BY d

SETTINGS index_granularity = 8192;

Hologres

BEGIN;

CREATE TABLE test (

a bigint DEFAULT 0,

b double precision DEFAULT 0

c text DEFAULT ",

d timestamptz DEFAULT O.

);

CALL set_table_property('test', 'clustering_key", 'd'); --聚簇列(段内排序列),与 ClickHouse 的 ORDER BY 类似

CALL set_table_property('‘test , 'segment_key’ , d )

--分段列,与 ClickHouse 的 PARTITOIN BY 类似,注: PARTITION 多的表,也可以改造成 Holo 的分区表

CALL set_table_property('test", 'bitmap_columns', 'c');

-- bitmap 索引

CALL set_table_property('test,'shard_count', "100');

shard_count 根据数据量而定

COMMIT;

 

十一、ClickHouse 迁移 Hologres 实践-查询

 

 

ClickHouse

Hologres

ldendifier quote

”,“””支持反引号,双引号

“”支持双引号

QUANTILE

quantile(level)(expr)

approx_percentile(level)

WITHGROUP (ORDER BY expr)

quantileDeterministic(level)

(expr, determinator)

--

quantileExact(level)(expr)

percentile_cont(level)

WITHGROUP (ORDER BY expr)

DISTINCT

uniq(x)

uniqCombined(x)

uniqCombined64(x)

uniqHLL12(x)

approx_count_distinct(x)

uniqExact(x)

count (distinct x)

WINDOW

不支持

支持(参考PG或Holo官方文档)

JOIN

支持

支持(参考PG或Holo官方文档)

 

十二、Hologres 升级–客户案例

阿里集团-搜索推荐业务

KVStore : Redis/Mysql/Hbase/Cassandra 存储能力

交互式计算能力:Presto/Drill 计算能力

实时数仓:Clickhouse/Druid 存诸+计算

 image.png

image.png

HSAP : Hybrid Serving/Analytical Processing

 

指标

Druid

Hologres

资源

-

节省60%

平均查询性能

300ms

复杂查询100ms,点查询5ms

写入可见性

5s

<1ms

写入QPS

千万

1.3亿

查询量

千万

1.5亿

开发周期

小时

 

公共云-某社交网站客户

 

指标

CilckHouse

Hologres

资源

1320core

1024core

存储

只能存7天

无限制

复杂查询

只能查3天

7-15

实时写入QPS

<30k/s

>40k/s

写入可见性

秒级

毫秒级

查询性能

-

提升2-5倍

 

公共云-某游戏客户

 

指标

Redis/Faiss

Hologres

成本

-

节省50%

扩展性

单机

分布式

复杂查询

不支持

支持

学习成本

业务耦合度

易用性

 

十三 、新一代技术理念HSAP:服务、分析一体化

Hybrid ServingiAnalytical Processing

image.png

相关实践学习
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
相关文章
|
5月前
|
SQL 分布式计算 HIVE
开源湖仓一体平台(二):Arctic(上篇)
开源湖仓一体平台(二):Arctic(上篇)
开源湖仓一体平台(二):Arctic(上篇)
|
5月前
|
SQL 消息中间件 分布式计算
开源湖仓一体平台(一):LakeSoul
开源湖仓一体平台(一):LakeSoul
|
5月前
|
存储 SQL 分布式计算
Hadoop(HDFS+MapReduce+Hive+数仓基础概念)学习笔记(自用)
Hadoop(HDFS+MapReduce+Hive+数仓基础概念)学习笔记(自用)
466 0
|
SQL 分布式计算 运维
面向未来的开源 OLAP 技术架构探讨以及选型实践
本文详细介绍了开源大数据OLAP的演化过程和最佳实践。
9475 1
|
存储 SQL DataWorks
数仓建模理论与规范(三)| 学习笔记
快速学习数仓建模理论与规范。
452 0
数仓建模理论与规范(三)| 学习笔记
|
5月前
|
关系型数据库 OLAP 分布式数据库
PolarDB 开源版通过 duckdb_fdw 支持 parquet 列存数据文件以及高效OLAP
背景PolarDB 的云原生存算分离架构, 具备低廉的数据存储、高效扩展弹性、高速多机并行计算能力、高速数据搜索和处理; PolarDB与计算算法结合, 将实现双剑合璧, 推动业务数据的价值产出, 将数据变成生产力.本文将介绍PolarDB 开源版通过duckdb_fdw 支持 parquet 列存...
409 0
|
存储 并行计算 算法
PolarDB 开源版通过 duckdb_fdw 支持 parquet 列存数据文件以及高效OLAP
PolarDB 的云原生存算分离架构, 具备低廉的数据存储、高效扩展弹性、高速多机并行计算能力、高速数据搜索和处理; PolarDB与计算算法结合, 将实现双剑合璧, 推动业务数据的价值产出, 将数据变成生产力. 本文将介绍PolarDB 开源版通过duckdb_fdw 支持 parquet 列存数据文件以及高效OLAP.
1631 0
|
3月前
|
数据采集 运维 Cloud Native
Flink+Paimon在阿里云大数据云原生运维数仓的实践
构建实时云原生运维数仓以提升大数据集群的运维能力,采用 Flink+Paimon 方案,解决资源审计、拓扑及趋势分析需求。
18469 54
Flink+Paimon在阿里云大数据云原生运维数仓的实践
|
27天前
|
存储 机器学习/深度学习 监控
阿里云 Hologres OLAP 解决方案评测
随着大数据时代的到来,企业面临着海量数据的挑战,如何高效地进行数据分析和决策变得尤为重要。阿里云推出的 Hologres OLAP(在线分析处理)解决方案,旨在为用户提供快速、高效的数据分析能力。本文将深入探讨 Hologres OLAP 的特点、优势以及应用场景,并针对方案的技术细节、部署指导、代码示例和数据分析需求进行评测。
75 7
|
27天前
|
运维 数据挖掘 OLAP
阿里云Hologres:一站式轻量级OLAP分析平台的全面评测
在数据驱动决策的今天,企业对高效、灵活的数据分析平台的需求日益增长。阿里云的Hologres,作为一站式实时数仓引擎,提供了强大的OLAP(在线分析处理)分析能力。本文将对Hologres进行深入评测,探讨其在多源集成、性能、易用性以及成本效益方面的表现。
40 7
下一篇
无影云桌面