生生不息,“折腾”不止;Java晋升指北,让天下没有难学的技术
为什么要持续学习?
软件领域,技术 & 业务是不可拆分的双轨车道,承载着产品这辆火车稳步前行;业务的诉求必须得到满足,所以倒逼技术提升技术的提升,同时可以为业务模式带来新的可能
为什么要学习Clickhouse?
数据分析, 早已不再满足于传统的T+1式报表、或者需要提前设置好维度与指标的OLAP查询,更希望使用可以支持任意指标、任意维度并秒级给出反馈的大数据 Ad-hoc 查询;
T+1:当日数据,要到下一工作日才能给出(股票交易制度,当日买进的股票,需要到下一交易日才能卖出)
Ad hoc:在数据仓库领域有一个概念叫Ad hoc queries,中文一般翻译为“即席查询”(用户根据自己的需求,灵活的选择查询条件,系统能够根据用户的选择生成相应的统计报表)
为什么ClickHouse很强大?
ClickHouse独特的查询语言扩展以及大量的内置处理函数能够高效第完成复杂数据分析;
相关文档如何进行ClickHouse学习?
曾经的ClickHouse就像里海怪物,无比强大却让人难以捉摸;
现在,该文档涵盖ClickHouse的时代背景 - 发展历程 - 核心概念 - 基础功能 - 运行原理 - 实践指导多维度内容,全面覆盖运行原理 & 实践开发;少走弯路吸取经验
《ClickHouse官方社区》
《ClickHouse中文社区》
《ClickHouse官方评测分析》
传统OLTP系统:联机事务处理系统
联机事务处理系统是协助企业完成日常流程办公的功能,是线下工作到线上工作的一种转变流程审批数据录入数据查询
但是,站在监管和决策层面,还需要另一种分析类视角;分析报表分析决策
Data WareHouse:数据仓库
为了解决数据散落在各个独立的系统之内,相互割裂、互不相通的问题(数据孤岛),提出了数据仓库的概念,将分散的数据统一汇集,为企业提供了全局鸟瞰一切数据的视角;
1.2 常见架构 1.2.1 ROLAPBI系统(OLAP系统):商业智能(联系分析系统)
BI系统是面向数据仓库,专注于提供数据分析、决策功能的系统;(BI一词也是指代了这类分析系统:OLAP联机分析系统)- 多维分析
BI系统受众主要是企业中的管理层或决策层,这类用户通常具有较高的话语权和决策权;
Relational OLAP,关系型OLAP,直接使用关系模型构件;典型的:Group By
海量数据时,性能大打折扣
1.2.2 MOLAP海量数据分析,性能极低
Multidimensional OLAP,多维型OLAP
- 解决了ROLAP性能问题核心思想:借助预先聚合结果,使用空间换取时间的形式最终提升查询性能
1.2.3. HOLAP维度预处理,导致数据膨胀, 2 n , n = 维 度 2^n,n=维度 2n,n=维度
数据滞后,T+1式报表,无法进行实时报表分析、追溯数据明细
Hybrid OLAP,混合架构的OLAP,HOLAP = ROLAP + MOLAP
1.3. 黑马(CK)在数据仓库的基础上,对数据进行分层,通过层层递进形成数据集市,从而减少最终查询的数据体量;对数据进行预先处理,以空间换时间,提升查询性能;等等方式,都无法满足现代BI系统的核心思潮;
实时应答简单易用
实时应答、简单易用,已经是现代互联网系统的必备因素,互联网的用户都是没有耐心的,他们不愿意多等1s,从某种角度看,以Hadoop生态为代表的这类非传统关系型数据库技术所实现的BI系统,可以称为现代BI系统,为数据分析开启了新纪元,大马力发动机相较以往,确实使数据分析显得游刃有余;但是,在海量数据下要实现多维度分析的实时应答,仍旧困难重重,而且更为致命的是Hadoop自身生态比较繁重;那么,这种情况就不得看看主角黑马(CK)了;
"What’s the meaning of the name, why we call it ClickHouse ?"
在一些列官方公布的基准测试对比中, ClickHouse都遥遥领先;
1.3.1 特点天下武功为快不破!
ROLAP在线实时查询完成的DBMS(数据库管理系统)列式存储不需要任何数据预处理支持批量更新拥有非常完善的SQL支持、函数支持高可用不依赖Hadoop复杂生态开箱即用
ClickHouse 作为一款高性能OLAP数据库,但也不是万能的,它有以下几点不足:
- 不支持事务不擅长根据主键,按行粒度进行查询不擅长按行删除数据



