做Java开发的人,想尝试大数据和数据挖掘,应如何规划学习?
首先的话,你要学习大数据和数据挖掘,那么肯定的你要知道行业的相关的一些知识和岗位应用,这样的话你才能有针对性的、有目的性的去学习。
一、大数据的职业规划方向
学习目的在于工作上的运用,以下为大数据方向的三个岗位,附上薪资待遇。
1. 大数据售前工程师、大数据运维工程师(HCNA)
2. 大数据开发工程师、大数据平台开发工程师(HCNP)
3. 大数据科学家、大数据架构师、大数据高级分析师(HCIE)
4. 其他(数据挖掘工程师、仓库采集开发工程师)
二、大数据开发工程师需要的技能点:
必须技能10条:
01.Linux 基本操作
02.python&爬虫介绍
03.hadoop分布式集中
04.离线数据处理
05.实时数据处理
06.ETL与环境相关
07.大数据应用与数据挖掘
08.java高级(虚拟机、并发)
09..HBase(JavaAPI操作+Phoenix )
10. Kafka
11. Spark (Core+sparksql+Spark streaming )
12.CDH集群
三、如何系统的学习
不管学习什么知识,学习无外乎资料,主要有视频、电子书、面试资料、项目源码。
这里重点推荐《深入理解Java虚拟机》、《Java高并发实战》必看书籍。
接着开始学hadoop,hbase,hive,scala,spark,python、kafka这些点,啃到hive的时候,人就有点晕了,按理说编程语言有相通性的,我买了相关书籍《HBase权威指南》《Hive开发指南》《快学Scala》《Spark 快速大数据分析》。
希望上面的回答对你有所帮助,欢迎关注今日头条“小熊社长”头条号。如果喜欢请转发。
我是一个有10年项目架构经验的java软件工程师,欢迎关注我,了解更多java前沿技术!
大数据技术学习网络有很多讲的非常好的视频,spark是一个不错的选择,它有大数据技术应具备的完整的生态圈,并且spark也是企业用的最多的技术。
大数据培训一般是指大数据开发,如果有Java基础的话,学习起来会快许多;大数据开发0基础班是要学习Java的,你有Java基础可以上加米谷大数据开发培训的提高班:
提高班 :
第一阶段:大数据基础·
第二阶段:Hadoop生态体系·
第三阶段:Spark生态系统·
第四阶段:项目实战
如何循序渐进的学习数据挖掘?
我自己从事过10年以上数据挖掘相关的工作。我简单说一下对这个问题的理解:
你的问题提得非常明白。但你问题下面的一段文字让人感觉迷惑:似乎做数据挖掘一定要会做big data developer方便的开发。其实在大的企业尤其是互联网企业里面这两个职位是分开的。做数据挖掘的是做数据挖掘的。做big data developer是做开发的。通常互联网企业的里面的数据相关的职位是这样分布的:
1. 数据平台:主要负责数据自动采集平台、ETL平台及调度平台的搭建和维护;
2. ETL:主要负责数据的抽取、清洗和入库,报表底层相关数据统计口径的开发以及ETL任务的维护;
3. 报表平台:基于业务需要设计报表、开发报表和维护报表;
4. 数据分析和挖掘:针对各种问题主题进行数据分析和挖掘,给出解决问题的解决方案
其它更为深入的数据挖掘或者说机器学习问题:如精准广告平台、推荐系统和搜索系统则有专门的部门负责。通常做数据挖掘的主要是在数据部门针对专门的主题进行数据挖掘,或者在专门的业务场景(广告平台、推荐系统和搜索系统)对应部门从事数据挖掘。这些部门对机器学习算法相关的工程实现能力要求会比较高。但对于数据结构和MapReduce可能要求没有那么高。但如果在数据平台部门可能对hadoop、数据结构和MapReduce要求可能会高一些。
回过头来回答你的问题:如何循序渐进的学习数据挖掘
1.重点是循序渐进的学习各种算法,比如有监督学习算法、无监督学习算法甚至强化算法和深度学习算法。要深入理解这些算法的逻辑、优点和缺点;
2.会基于python或者scale对这样算法做工程上的实现以便解决实际问题;
3.理解并熟悉特殊场景下的一些特殊问题的解决方法:比如广告系统里面点击率是如何预估的,策略如何执行的

