网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
离线处理一般按天进行数据处理,每天凌晨等数据采集和同步的数据到位后,相关的数据处理任务会被按照预先设计的 ETL(抽取、转换、加载,一般用来泛指数据清洗、关联、规范化等数据处理过程)逻辑以及 ETL 任务之间的拓扑关系依次调用,最终的数据被写入离线数据仓库中。离线数据仓库中的数据通常是按照某种建模思想(最常用的是维度建模思想)精心组织的,这样既可以使下游用户非常直观和方便地使用,又可以使数据处理过程很方便地扩展和修改。
随着着 Google 关于分布式计算三篇论文的发表和基于此开源的Hadoop 生态系统(分别对应 Google 三篇论文一 HDFS, MapReduce, HBase)兴起,大数据时代真正到来。
现在,大数据时代对于数据的使用已经不限于离线数据的分析,实时数据正变得越来越重要,而这必须借助专业的流计算工具和框架才能实现。目前,最为流行和使用广泛的是 Spark Streaming 和 Flink 。
国内外大厂在使用这些开源框架的同时,还结合自身的使用实践对这些流计算框架从不同层面进行改进和创新,如稳定性、可扩展性、性能等。但是作者认为这其中最具革命性的是 SQL 抽象层的出现,SQL 抽象层使得实时开