一般的大数据平台从平台搭建到数据分析大概包括以下几个步骤:
1、linux系统安装
一般使用开源版的redhat系统--centos作为底层平台。为了提供稳定的硬件基础,在给硬盘做raid和挂载数据存储节点的时,需要按情况配置。比如,可以选择给hdfs的namenode做raid2以提高其稳定性,将数据存储与操作系统分别放置在不同硬盘上,以确保操作系统的正常运行。
2、分布式计算平台/组件安装
当前分布式系统的大多使用的是hadoop系列开源系统。hadoop的核心是hdfs,一个分布式的文件系统。在其基础上常用的组件有yarn、zookeeper、hive、hbase、sqoop、impala、elasticsearch、spark等。
使用开源组件的优点:1)使用者众多,很多bug可以在网上找的答案(这往往是开发中最耗时的地方);2)开源组件一般免费,学习和维护相对方便;3)开源组件一般会持续更新;4)因为代码开源,如果出现bug可自由对源码作修改维护。
常用的分布式数据数据仓库有hive、hbase。hive可以用sql查询,hbase可以快速读取行。外部数据库导入导出需要用到sqoop。sqoop将数据从oracle、mysql等传统数据库导入hive或hbase。zookeeper是提供数据同步服务, impala是对hive的一个补充,可以实现高效的sql查询
3、数据导入
前面提到,数据导入的工具是sqoop。它可以将数据从文件或者传统数据库导入到分布式平台。
4、数据分析
数据分析一般包括两个阶段:数据预处理和数据建模分析。
数据预处理是为后面的建模分析做准备,主要工作时从海量数据中提取可用特征,建立大宽表。这个过程可能会用到hive sql,spark ql和impala。
数据建模分析是针对预处理提取的特征/数据建模,得到想要的结果。如前面所提到的,这一块最好用的是spark。常用的机器学习算法,如朴素贝叶斯、逻辑回归、决策树、神经网络、tfidf、协同过滤等,都已经在ml lib里面,调用比较方便。
5、结果可视化及输出api
可视化一般式对结果或部分原始数据做展示。一般有两种情况,行数据展示,和列查找展示。
以上就简单介绍这么多,如果有小伙伴想了解和学习更多的大数据技术,可以私信小编索要资料