企业该如何构建大数据平台【技术角度】

问题导读 1.作为一个技术人员,你认为该如何搭建大数据平台? 2.构建大数据平台,你认为包括哪些步骤? 3.本文是如何构建大数据平台的?

亲身参与,作为主力完成了一个信息大数据分析平台。中间经历了很多问题,算是有些经验,因而作答。

整体而言,大数据平台从平台部署和数据分析过程可分为如下几步:

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可自由对源码作修改维护。

再简略讲讲各组件的功能。分布式集群的资源管理器一般用Yarn,『全名是Yet Another Resource Negotiator』。常用的分布式数据数据『仓』库有Hive、Hbase。Hive可以用SQL查询『但效率略低』,Hbase可以快速『近实时』读取行。外部数据库导入导出需要用到Sqoop。Sqoop将数据从Oracle、MySQL等传统数据库导入Hive或Hbase。Zookeeper是提供数据同步服务,Yarn和Hbase需要它的支持。Impala是对hive的一个补充,可以实现高效的SQL查询。ElasticSearch是一个分布式的搜索引擎。针对分析,目前最火的是Spark『此处忽略其他,如基础的MapReduce 和 Flink』。Spark在core上面有ML lib,Spark Streaming、Spark QL和GraphX等库,可以满足几乎所有常见数据分析需求。

值得一提的是,上面提到的组件,如何将其有机结合起来,完成某个任务,不是一个简单的工作,可能会非常耗时。

3、数据导入

前面提到,数据导入的工具是Sqoop。用它可以将数据从文件或者传统数据库导入到分布式平台『一般主要导入到Hive,也可将数据导入到Hbase』。

4、数据分析

数据分析一般包括两个阶段:数据预处理和数据建模分析。

数据预处理是为后面的建模分析做准备,主要工作时从海量数据中提取可用特征,建立大宽表。这个过程可能会用到Hive SQL,Spark QL和Impala。

数据建模分析是针对预处理提取的特征/数据建模,得到想要的结果。如前面所提到的,这一块最好用的是Spark。常用的机器学习算法,如朴素贝叶斯、逻辑回归、决策树、神经网络、TFIDF、协同过滤等,都已经在ML lib里面,调用比较方便。

5、结果可视化及输出API

可视化一般式对结果或部分原始数据做展示。一般有两种情况,行数据展示,和列查找展示。在这里,要基于大数据平台做展示,会需要用到ElasticSearch和Hbase。Hbase提供快速『ms级别』的行查找。 ElasticSearch可以实现列索引,提供快速列查找。

平台搭建主要问题:

1、稳定性 Stability

理论上来说,稳定性是分布式系统最大的优势,因为它可以通过多台机器做数据及程序运行备份以确保系统稳定。但也由于大数据平台部署于多台机器上,配置不合适,也可能成为最大的问题。 曾经遇到的一个问题是Hbase经常挂掉,主要原因是采购的硬盘质量较差。硬盘损坏有时会到导致Hbase同步出现问题,因而导致Hbase服务停止。由于硬盘质量较差,隔三差五会出现服务停止现象,耗费大量时间。结论:大数据平台相对于超算确实廉价,但是配置还是必须高于家用电脑的。

2、可扩展性 Scalability

如何快速扩展已有大数据平台,在其基础上扩充新的机器是云计算等领域应用的关键问题。在实际2B的应用中,有时需要增减机器来满足新的需求。如何在保留原有功能的情况下,快速扩充平台是实际应用中的常见问题。

上述是自己项目实践的总结。整个平台搭建过程耗时耗力,非一两个人可以完成。一个小团队要真正做到这些也需要耗费很长时间。

目前国内和国际上已有多家公司提供大数据平台搭建服务,国外有名的公司有Cloudera,Hortonworks,MapR等,国内也有华为、明略数据、星环等。另外有些公司如明略数据等还提供一体化的解决方案,寻求这些公司合作对 于入门级的大数据企业或没有大数据分析能力的企业来说是最好的解决途径。

对于一些本身体量较小或者目前数据量积累较少的公司,个人认为没有必要搭建这一套系统,暂时先租用AWS和阿里云就够了。对于数据量大,但数据分析需求较简单的公司,可以直接买Tableau,Splunk,HP Vertica,或者IBM DB2等软件或服务即可。

知乎:徐晓鹏

原文发布于微信公众号 - about云(wwwaboutyuncom)

原文发表时间:2016-07-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏华章科技

【收藏】全球100款大数据工具汇总

是第一家针对的数据集成工具市场的ETL(数据的提取Extract、传输Transform、载入Load)开源软件供应商。Talend的下载量已超过200万人次,...

10910
来自专栏喵了个咪的博客空间

[喵咪大数据]初识大数据

大数据互联网时代下大家耳熟能详的名词,但是我们离大数据有多远呢?从2011Hadoop1.0问世到现在,渐渐地大数据解决方案已经趋向成熟,笔者觉得也是时间来学习...

333100
来自专栏钱塘大数据

大数据技术人员必备工具包,为工作提质增效

本文作者:秦陇纪 ? 本文简介:数据科学家的常用工具与基本思路,数据分析师和数据科学家使用的工具综合概述,包括开源的技术平台相关工具、挖掘分析处理工具、其它常见...

42850
来自专栏大数据技术学习

Hadoop工具如何形成SAP Hana的大数据平台

自2008年以来,SAP Hana一直是领先的数据库管理系统之一。它比许多其他数据库管理解决方案能够更有效地处理数据,主要是因为它可以使用一些最先进的hadoo...

16440
来自专栏钱塘大数据

【干货】全球100款大数据工具汇总,入行必备

1、 Talend Open Studio 是第一家针对数据集成工具市场的ETL(数据的提取Extract、传输Transform、载入Load)开源软件供应商...

976150
来自专栏用户2442861的专栏

浅谈Storm流式处理框架

http://blog.csdn.net/fanyun_01/article/details/50921678

14120
来自专栏钱塘大数据

【干货】全球100款大数据工具汇总,入行必备

是第一家针对数据集成工具市场的ETL(数据的提取Extract、传输Transform、载入Load)开源软件供应商。Talend的下载量已超过200万人次,其...

16000
来自专栏大数据文摘

数据科学工具包(万余字介绍几百种工具,经典收藏版!)

278110
来自专栏大数据挖掘DT机器学习

R语言为Hadoop集群数据统计分析带来革命性变化

R作为开源的数据统计分析语言正潜移默化的在企业中扩大自己的影响力。特有的扩展插件可提供免费扩展,并且允许R语言引擎运行在Hadoop集群之上。 R语言是主要...

31770
来自专栏华章科技

经典收藏丨数据科学家&大数据技术人员工具包

本文简介:数据科学家的常用工具与基本思路,数据分析师和数据科学家使用的工具综合概述,包括开源的技术平台相关工具、挖掘分析处理工具、其它常见工具等几百种,几十个大...

13820

扫码关注云+社区

领取腾讯云代金券