大数据行业目前炒的很是火爆,但是大数据的发展依然并不是很成熟,尤其是对于一些小白。了解系统的学习大数据的方法将更有利于自己更加快速有效的去学习大数据。
分享一下零基础需要学习哪些大数据的知识和软件。
第一:JavaSE,大数据的基础之一,不会点Java去搞大数据就是去澡堂不搓背。
第二:Python(基础+Numpy+Pandas+Matplotlib),SQL(主要是查,查询一定要精),Scala(会基础语法就行)
第三:Linux+shell(可以直接把笔记本刷成双系统,逼自己去用),也可以了解一些网络基础知识
第四:数据分析+统计学(用Python去做做简单的数据分析,看看自己有没有对数据的敏感度。同时掌握一些这方面的知识对以后也有好处。)
上面四项,如果学过之后还坚定要学习大数据,就继续向下看。上面的知识在扩展一下Javaweb,消息队列,分布式协调,dobbo等等知识也可以去做Java后端开发。或者学习一下TF,opencv也可以去做现在的AI工程师。
毕竟"import tensorflow as tf" 这句代码价值一个亿。
第五:Hadoop,大数据的基本盘之二,不管听别人再怎么说Hadoop之死,他的核心思想是必须要掌握的。Hadoop分为三部分,hdfs(存储系统),MapReduce(计算系统),yarn(资源管理系统)。
第六:ZooKeePer,搞Java必须要会的东西。
第七:HBASE/HIVE,总不能直接就把数据存到HDFS中吧,总得让人操作起来舒服一点,不会代码的也能用SQL去做做查询分析。
第八:OLTP数据引擎,可选,推荐Phoenix。
第九:OLAP数据引擎,必选,无脑kylin就行,再学个Druid,不过ClickHouse才是目前的神。
第十:spark,离线计算核心,虽然未来的主流是流批一体化,但是乾坤未定,spark说不定可以击败flink(不过也得击败beam)。spark不是一个组件,而是一套完整的生态架构。
第十一:flink,流计算核心。大数据生态核心地位。
第十二:消息队列,kafka,RocketMQ,先学kafka。消息队列的重要性是属于第一梯队的。
第十三:数据迁移工具,sqoop,kettle。任选其一即可。
第十四:文本搜索引擎,lucene必学,Elastic Stack。
第十五:数仓建模,《数据仓库工具箱(第3版) ---维度建模权威指南》
第十六:数据湖,hudi,Delta Lake。
基本梯队:Java/spark/或其它开发语言,操作系统/网络知识,数据分析,统计学
第一梯队:Hadoop,spark,flink,kafka,zookeeper
本文系作者在时代Java发表,未经许可,不得转载。
如有侵权,请联系nowjava@qq.com删除。