个人理解,欢迎指正
对比指标 | Hive | Clickhouse |
元数据管理 | 元数据存MySQL,通过HiveMetaStore管理 | 每个Shard自己管理 |
数据存储 | HDFS | 本地磁盘 |
架构设计 | MR架构 | MPP架构 |
资源消耗 | 运行时申请资源 | 常驻进程 |
线程模式 | 单线程 | 多线程 |
写数据过程 | 可以直接附加写HDFS,不是排序的 | 旧数据在一个Part,新数据会写另一个Part,然后通过MergeTree引擎将多个Part异步合并(按排序键归并排序) |
查询过程 | 向Yarn申请资源,通过Spark或MR计算 | 任务提交到各Shard上面,Shard各自计算,结果再汇总返回 |
稳定性 | 通过Yarn资源调度,稳定性好 | 稳定性差,有时候相同的sql可能会成功,也会失败,建议重试 |
查询速度 | MR还是挺慢的,Spark会有所提速,分钟级 | 使用LSM Tree + 排序键 + 稀疏索引,查询速度快,秒级或毫秒级 |