大数据学习之路

大数据从入门到入土

  语言基础:java(Java se,javaweb)

  Linux 基础:Linux(shell,高并发架构,lucene,solr)

  框架学习:Hadoop(Hadoop,HDFS,Mapreduce,yarn,hive,hbase,sqoop,zookeeper,flume)

  机器学习(R,mahout)

  Storm(Storm,kafka,redis)

  Spark(scala,spark,spark core,spark sql,spark streaming,spark mllib,spark graphx)

  Python(python,spark python)

  云计算平台(docker,kvm,openstack)

  名词解释

  对于小白学习大数据须要注意的点有不少,但不管如何,既然你选择了进入大数据行业,那么便只顾风雨兼程。正所谓不忘初心、方得始终,学习大数据你最须要的仍是一颗锲而不舍的心。

  1、Linux

  lucene: 全文检索引擎的架构

  solr: 基于lucene的全文搜索服务器,实现了可配置、可扩展并对查询性能进行了优化,而且提供了一个完善的功能管理界面。

  今天为你们整理了部分大数据学习教程与你们共享,每一个人能够根据本身的须要来选择,须要的小伙伴能够+下学习资料分享裙 943加上064最后是644数字连起来就是了。

  2、Hadoop

  HDFS: 分布式存储系统,包含NameNode,DataNode。NameNode:元数据,DataNode。DataNode:存储数据。

  yarn: 能够理解为MapReduce的协调机制,本质就是Hadoop的处理分析机制,分为ResourceManager NodeManager。

  MapReduce: 软件框架,编写程序。

  Hive: 数据仓库 能够用SQL查询,能够运行Map/Reduce程序。用来计算趋势或者网站日志,不该用于实时查询,须要很长时间返回结果。

  HBase: 数据库。很是适合用来作大数据的实时查询。Facebook用Hbase存储消息数据并进行消息实时的分析

  ZooKeeper: 针对大型分布式的可靠性协调系统。Hadoop的分布式同步等靠Zookeeper实现,例如多个NameNode,active standby切换。

  Sqoop: 数据库相互转移,关系型数据库和HDFS相互转移

  Mahout: 可扩展的机器学习和数据挖掘库。用来作推荐挖掘,汇集,分类,频繁项集挖掘。

  Chukwa: 开源收集系统,监视大型分布式系统,创建在HDFS和Map/Reduce框架之上。显示、监视、分析结果。

  Ambari: 用于配置、管理和监视Hadoop集群,基于Web,界面友好。

  2、Cloudera

  Cloudera Manager: 管理 监控 诊断 集成

  Cloudera CDH:(Cloudera's Distribution,including Apache Hadoop) Cloudera对Hadoop作了相应的改变,发行版本称为CDH。

  Cloudera Flume: 日志收集系统,支持在日志系统中定制各种数据发送方,用来收集数据。

  Cloudera Impala: 对存储在Apache Hadoop的HDFS,HBase的数据提供直接查询互动的SQL。

  Cloudera hue: web管理器,包括hue ui,hui server,hui db。hue提供全部CDH组件的shell界面的接口,能够在hue编写mr。

  3、机器学习/R

  R: 用于统计分析、绘图的语言和操做环境,目前有Hadoop-R

  mahout: 提供可扩展的机器学习领域经典算法的实现,包括聚类、分类、推荐过滤、频繁子项挖掘等,且可经过Hadoop扩展到云中。

  4、storm

  Storm: 分布式,容错的实时流式计算系统,能够用做实时分析,在线机器学习,信息流处理,连续性计算,分布式RPC,实时处理消息并更新数据库。

  Kafka: 高吞吐量的分布式发布订阅消息系统,能够处理消费者规模的网站中的全部动做流数据(浏览,搜索等)。相对Hadoop的日志数据和离线分析,能够实现实时处理。目前经过Hadoop的并行加载机制来统一线上和离线的消息处理

  Redis: 由c语言编写,支持网络、可基于内存亦可持久化的日志型、key-value型数据库。

  5、Spark

  Scala: 一种相似java的彻底面向对象的编程语言。

  jblas: 一个快速的线性代数库(JAVA)。基于BLAS与LAPACK,矩阵计算实际的行业标准,并使用先进的基础设施等全部的计算程序的ATLAS艺术的实现,使其很是快。

  Spark: Spark是在Scala语言中实现的相似于Hadoop MapReduce的通用并行框架,除了Hadoop MapReduce所具备的优势,但不一样于MapReduce的是job中间输出结果能够保存在内存中,从而不须要读写HDFS,所以Spark能更好的适用于数据挖掘与机器学习等须要迭代的MapReduce算法。能够和Hadoop文件系统并行运做,用过Mesos的第三方集群框架能够支持此行为。

  Spark SQL: 做为Apache Spark大数据框架的一部分,可用于结构化数据处理并能够执行相似SQL的Spark数据查询

  Spark Streaming:一种构建在Spark上的实时计算框架,扩展了Spark处理大数据流式数据的能力。

  Spark MLlib: MLlib是Spark是经常使用的机器学习算法的实现库,目前(2014.05)支持二元分类,回归,聚类以及协同过滤。同时也包括一个底层的梯度降低优化基础算法。MLlib以来jblas线性代数库,jblas自己以来远程的Fortran程序。

  Spark GraphX: GraphX是Spark中用于图和图并行计算的API,能够在Spark之上提供一站式数据解决方案,能够方便且高效地完成图计算的一整套流水做业。

  Fortran: 最先出现的计算机高级程序设计语言,普遍应用于科学和工程计算领域。

  BLAS: 基础线性代数子程序库,拥有大量已经编写好的关于线性代数运算的程序。

  LAPACK: 著名的公开软件,包含了求解科学与工程计算中最多见的数值线性代数问题,如求解线性方程组、线性最小二乘问题、特征值问题和奇异值问题等。

  ATLAS: BLAS线性算法库的优化版本。

  Spark Python: Spark是由scala语言编写的,可是为了推广和兼容,提供了java和python接口。

  6、Python

  Python: 一种面向对象的、解释型计算机程序设计语言。

  7、云计算平台

  Docker: 开源的应用容器引擎

  kvm: (Keyboard Video Mouse)

  openstack: 开源的云计算管理平台项目

  以上就是我的关于大数据的学习心得和路线推荐。本片文章对大数据技术栈作了比较狭义的限定,随着学习的深刻,你们也能够把 Python 语言、推荐系统、机器学习等逐步加入到本身的大数据技术栈中。java

相关文章
相关标签/搜索