|
|
大数据平台的搭建步骤:
7 q p; J9 J3 m; v3 |, _- y* o; T5 q3 C/ v/ v) U7 J
1、linux系统安装6 e# q( l8 P5 d( ~- f Z- o
一般使用开源版的Redhat系统--CentOS作为底层平台。为了提供稳定的硬件基础,在给硬盘做RAID和挂载数据存储节点的时,需要按情况配置。. X6 ^. L6 ^9 z( A: d, v# p
2、分布式计算平台/组件安装; w; ~% a! @# \: X) g8 |, P; y
国内外的分布式系统的大多使用的是Hadoop系列开源系统。Hadoop的核心是HDFS,一个分布式的文件系统。在其基础上常用的组件有Yarn、Zookeeper、Hive、Hbase、Sqoop、Impala、ElasticSearch、Spark等3 e' j! @- F9 @
使用开源组件的优点:1)使用者众多,很多bug可以在网上找的答案(这往往是开发中最耗时的地方)。2)开源组件一般免费,学习和维护相对方便。3)开源组件一般会持续更新,提供必要的更新服务『当然还需要手动做更新操作』。4)因为代码开源,若出bug可自由对源码作修改维护。
$ R5 t F) \. c3 b' ~* G6 R3、数据导入8 ~4 ] g" g' n% B$ g1 R
数据导入的工具是Sqoop。用它可以将数据从文件或者传统数据库导入到分布式平台『一般主要导入到Hive,也可将数据导入到Hbase』。
/ P' ^4 _8 O9 D9 h+ ~4、数据分析
& h8 p! D1 a: q& l/ a9 y8 N" k数据分析一般包括两个阶段:数据预处理和数据建模分析。* f8 {' z" }6 J- T; J, h* V
数据预处理是为后面的建模分析做准备,主要工作时从海量数据中提取可用特征,建立大宽表。这个过程可能会用到Hive SQL,Spark QL和Impala。
( @$ t, q2 |2 e0 F" @$ a数据建模分析是针对预处理提取的特征/数据建模,得到想要的结果。这一块最好用的是Spark。常用的机器学习算法,如朴素贝叶斯、逻辑回归、决策树、神经网络、TFIDF、协同过滤等,都已经在ML lib里面,调用比较方便。
3 h5 p2 r! n3 ~% f# @) N7 E% K5、结果可视化及输出API
% I G2 ?& C5 i0 v4 |可视化一般式对结果或部分原始数据做展示。一般有两种情况,行数据展示,和列查找展示。要基于大数据平台做展示,会需要用到ElasticSearch和Hbase。Hbase提供快速『ms级别』的行查找。 ElasticSearch可以实现列索引,提供快速列查找。 |
|