Hbase、Kudu 和 ClickHouse 全视角对比
浪尖聊大数据
共 9091字,需浏览 19分钟
·
2021-05-23 08:56
- 前言 -
- 安装部署方式对比 -
- Habse 安装 -
- Kudu 安装 -
- ClickHouse 安装 -
组成架构对比。
- 基本操作对比 -
数据读写操作
- 数据查询操作 -
HBASE在滴滴出行的应用场景和最佳实践
- 订单事件 -
- 司机乘客轨迹 -
- ETA -
- 监控工具 DCM -
- 小结 -
资源隔离控制则帮助我们有效减少集群的数量,降低运维成本,让平台管理者从多集群无止尽的管理工作中解放出来,将更多精力投入到组件社区跟进和平台管理系统的研发工作中,使业务和平台都进入一个良性循环,提升用户的使用体验,更好地支持公司业务的发展。
网易考拉基于KUDU构建实时流量数仓实践
实时流/业务数据写入
private val stream = KafkaUtils.createDirectStream[String, String](
ssc,
PreferConsistent,
Subscribe[String, String](topics, kafkaParams)
)
val offsetRanges = rdd.asInstanceOf[HasOffsetRanges].offsetRanges
val spark = SparkSession.builder.config(rdd.sparkContext.getConf).getOrCreate()
val kuduContext = new KuduContext(kuduMaster, spark.sparkContext)
val flowDf = spark.createDataFrame(rdd.map(r => {
processFlowLine(r.value)
}).filter(row => if (row.get(0) == null) false else true), schema)
kuduContext.upsertRows(flowDf, "impala::kaola_kudu_internal.dwd_kl_flw_app_rt")
stream.asInstanceOf[CanCommitOffsets].commitAsync(offsetRanges)
- 写入性能测试 -
spark.streaming.concurrentJobs = N
- 小结 -
携程CLICKHOUSE日志分析实践
消费数据到CLICKHOUSE
•建表时考虑partition的设置,之前遇到过有人将partition设置为timestamp,导致插入数据一直报Too many parts的异常。我们一般按天分partition。
- 数据展示 -
- 查询优化 -
- ClickHouse 基本运维 -
慢查询,通过kill query终止慢查询的执行,并通过前面提到的优化方案进行优化
Too many parts异常:Too many parts异常是由于写入的part过多part的merge速度跟不上产生的速度,导致part过多的原因主要包括几个方面:
- 文件系统损坏,通过修复文件系统可以解决
- 某一个表的数据异常导致ClickHouse加载失败,可以删除异常数据后启动,也可以把异常的文件搬到detached目录,等ClickHouse起来后再attach文件恢复数据
- 总结 -
作者:super_chenzhou
来源:
https://blog.csdn.net/qq_37067752/article/details/107686978
评论