1.ClickHouse架构设计
1.1 ClickHouse的核心特性
MPP (Massively Parallel Processing),即大规模并行处理,将任务并行的分散到多个服务器和节点上,在每个节点上计算完成后,将各自部分的结果汇总在一起得到最终的结果(与hadoop相似)。
多个节点通过网络进行连接,协同工作,完成相同的任务(分布式存储,分布式计算)
每个节点只访问自己的本地资源(内存、存储等)
它是一种完全无共享(Share Nothing)结构,因而扩展能力非常好。
ClickHouse是一款MPP架构的列式存储数据库,吸取了其他优秀技术的精髓,将每个细节做到极致,从而在性能上远远超过其他技术。
1.完备的DBMS功能
ClickHouse拥有DBMS完备的管理功能,但它不仅仅是一个数据库。作为DBMS,它具备以下基本功能。
DDL(数据定义语言):可以动态地创建、修改删除数据库、表和视图,而无须重启服务。
DML(数据操作语言):可以动态查询、插入、修改或者删除数据。
权限控制:可以按照用户粒度设置数据库或者表的操作权限,保障数据的安全性。
数据备份与恢复:提供了数据备份导出与导入恢复机制,满足生产环境的要求。
分布式管理:提供集群模式,能够自动管理多个数据库节点。
2.列式存储和数据压缩
行式存储和列式存储,数据在磁盘上的组织结构有着根本不同,数据分析计算时,行式存储需要遍历整表,列式存储只需要遍历单个列,所以列式库更适合做大宽表,用来做数据分析计算。
列式存储和数据压缩,是高性能数据库必不可少的重要特性。如果想让查询变得更快,最简单且最有效的方法就是减少数据扫描范围和数据传输时的大小。
HBase,BigTable,Cassandra,这些系统也可以单独存储单独列的值,但由于其他场景的优化,无法有效处理分析查询。在这些系统中,每秒钟可以获得大约十万行的吞吐量,但是每秒不会达到数亿行。
原文链接:https://blog.csdn.net/dajiangtai007/article/details/126018331
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




