学习大数据要有哪些预备知识?
大数据是我的研究方向之一,所以我来回答一下这个问题。
大数据产业链围绕数据展开,有数据采集、整理、传输、存储、安全、分析、呈现和应用,涉及到诸多学科的综合使用,不同的岗位需要的基础知识也不尽相同。下面我以大数据工程师岗位,粗粒度的介绍一下大数据的基础知识。
第一,操作系统知识。大数据平台往往搭建在Linux操作系统之上,所以大数据工程师要有Linux系列操作系统的知识。
第二,数据库基础。大数据一个重要的内容是数据存储,要掌握传统数据库知识,包括建库、建表、Sql语句的使用等等。当然在学习大数据的时候还要学习Nosql数据产品。
第三,网络基础。大数据的数据来源于网络,尤其是物联网系统,所以掌握网络基础知识对学习大数据来说非常重要。
第四,程序设计基础。在大数据领域使用比较广泛的编程语言有Python、R、Java、Scala等语言,这些编程语言也是比较常见的,所以掌握其中一门语言对学习大数据来说是至关重要的。
第五,算法基础。大数据分析需要使用到很多算法,学习大数据要了解常见的算法,比如k近邻、决策树、朴素贝叶斯、支持向量机、回归等。
我目前在带大数据团队,对大数据领域比较熟悉,我会陆续在头条上写一些关于大数据方面的科普文章,感兴趣的朋友可以关注我的头条号,相信一定会有所收获。
如果有大数据方面的问题,也可以咨询我。
谢谢!
Python大数据开发的思维导图如下:
编程语言
比较适合大数据编程语言的有以下几种:C/C++、Java、Scala和Python等,如果本身有技术栈,那么按照自己熟悉的语言走。假如没有那么我建议从Python这门语言入手,其学习反馈周期短,很容易上手。
Python相关学习资料可参考我另一回答:
深度学习
深度学习是近年来热门的概念之一,源于人工神经网络的研究。含多隐层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。
这里我只推荐一本书,MIT的《深度学习》,这本书已经能够全面地介绍深度学习的方方面面且被不少人奉为“圣经”。
大数据工具
Hadoop:
Hadoop是一个由Apache基金会所开发的分布式系统基础架构,工业上大数据热门的工具之一。其中最核心的设计就是HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。
对于Hadoop的学习,我推荐阿里云的一篇很优秀的帖子——Hadoop学习资源集合-博客-云栖社区-阿里云,链接:
Spark:
Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。
学习资料自行搜索:
Spark官方文档-快速入门,链接:
Spark官方文档-Spark编程指南,链接:
相关书籍资源:
《Spark大数据处理 技术、应用与性能优化 高彦杰》
《深入理解Spark核心思想与源码分析 耿嘉安》
其他相关知识
学习数据方面必要要有一定的数理统计知识,如果大学有学习足够的数学课程那么足够了,也可以去可汗学院参考以下课程去复习这些知识点——概率和统计和线性代数。然后有空时可刷下这本书《Python数据挖掘入门与实践》,大概梳理一遍以上的知识点,对大数据入门就有一定基础知识和自己的了解。
如果你对学习人工智能和深度学习感兴趣,可以订阅我的头条号,我会在这里发布所有与算法、机器学习以及深度学习有关的有趣文章。
(码字不易,若文章对你帮助可点个赞~)
谢邀请。
大数据包括两个层次,一是数据分析,二是技术实现。如果是做数据分析,需要掌握概率统计,时间数列分析,组合最优化,模糊数学,数字信号处理,数据结构,计算方法等内容,主要是数学。如果是做技术实现,则需要掌握数据库,一些算法语言及工具。这两者最好都能有所了解。
学习大数据需要的预备知识,其实也没有大家想象的那么多,接触过大数据技术的人都是知道,在大数据开发中用到的一些组件许多底层的一些知识都是用Java语言进行开发的,所以,这也是导致现在的大数据开发培训的课程很多都是以Java语言的学习开始的。
这里既然提到了学习大数据要预备哪些知识,我感觉需要预备的知识那就是最好有一些掌握Java相关的一下技术知识,当然,最好是能够在Java开发行业有一定的工作经验的人是更好的。
如果,是零基础的学员大家也不用过于担心害怕,因为现在的大多数的培训机构都是针对于这样的学员设计的大数据开发培训课程,只要是达到了大数据学习需求的学历和一定的思维逻辑的考察,那么学习大数据也是没有任何问题的。