大数据分析的技术栈如何选型?各种技术栈对比下来各有什么优劣?

近年来,随着万物互联,智能电话、电视、洗衣机、冰箱、各种传感器、甚至衣服都可以通过5G连接至互联网,大数据一词早已变得无处不在。但是,如果无法从数据中提取有用的信息,再多的数据也毫无价值。由于体量太大,单人单机已经无法处理和分析这些海量数据,大数据技术应运而生。然而,大数据领域目前尚不存在一种可以解决所有问题的通用解决方案。现有的各种各样的工具和技术有着各自的功能和特性,专注于解决各领域内的特定问题。通常大数据技术体系可以分为5层,即数据生成层、数据获取层、数据储存层、数据处理层和数据分析层。每一层都有若干面向不同需求的组件。下面简单列举一二。

数据生成层

模块例子
结构化数据表格、交易数据、财务数据
半结构化数据XML、JSON、email
非结构化数据文本、图像、视频、日志
结构化流式数据高频交易数据
半结构化数据传感器数据、社交平台信息流
非结构化数据实时监控音频、视频日志

数据获取层

数据储存层

模块组件
关系型数据库(SMP)Microsoft SQL Server、MySQL
关系型数据库(MPP)Greenplum、Vertica、Teradata
NoSQL(键值对存储)Riak
NoSQL(文档存储)MongoDB
NoSQL(列式存储)HBase
NoSQL(图结构存储)Neo4J
分布式文件系统HDFS

数据处理层

模块组件
SQL处理关系型数据库
批处理MapReduce
统一处理Spark
流处理Storm

数据分析层

模块组件
OLAP工具Microsoft SSAS、Pentaho Mondrian
初级机器学习R、RapidMiner、KNIME、SAS、WEKA
进阶机器学习Mahout (MapReduce)
高级机器学习Mahout(Spark/H2O/Flink)、MLlib、H2O ML、 Flink-ML SAMOA、MADlib

跟进和使用这些技术需要花费较多的人力、物力和时间成本,抬高了大数据的使用门槛。尤其对于中小企业来说,较高的使用门槛延缓了他们从大数据中获益的脚步。希望通过这个讨论,帮助中小企业理解大数据技术体系,从而选择适合自己业务场景的大数据技术。

参与8

3同行回答

StevenSteven课题专家组IT顾问steven
技术栈选型通常是 基于企业和技术人员的实际情况和发展规划选择。在实际的业务处理中,通常要基于现实的情况来选择合适的厂商、产品和工具:(1)业务处理需求和特点,是否有特定的场景要求(2)自有技术人员的技术能力和特点;(3)技术发展趋势和技术成熟程度 (4)资金、时间、人员等成本投...显示全部
  1. 技术栈选型通常是 基于企业和技术人员的实际情况和发展规划选择。

在实际的业务处理中,通常要基于现实的情况来选择合适的厂商、产品和工具:(1)业务处理需求和特点,是否有特定的场景要求(2)自有技术人员的技术能力和特点;(3)技术发展趋势和技术成熟程度 (4)资金、时间、人员等成本投入等,离开了这些条件,单独谈技术选型没有意义。

2.技术栈和各种工具各有自己适合和擅长的场景,单纯比较优缺点没有太大意义,需要放在具体的场景中进行比较,这样在遇到类似的场景才能有合适合理的选择。

可以选择几个实际的场景,搜索相应的技术进行比较参考,或者做一些交流和测试。

中小企业数据量通常不够大,达不到大数据的应用场景,因此也没必要非要引入大数据组件。中小企业通常数据库产品其实就足够用了,除非有特殊的要求,或者就是做数据处理的。

总的来说,对于技术人员可以关注不同的技术方向,对企业而言则基于企业现实确定。

收起
证券 · 2020-05-24
浏览3099
zftangzftang其它小白一枚
关系型数据库选择上有歧义显示全部

关系型数据库选择上有歧义

收起
互联网服务 · 2020-05-07
浏览4129
冰玉冰玉数据库开发工程师上海海典
另外的三个分层模块:1.元数据管理2.即席查询3.数据可视化显示全部

另外的三个分层模块:
1.元数据管理
2.即席查询
3.数据可视化

收起
IT其它 · 2020-05-06
浏览4291

提问者

windix
商业分析师某证券公司
擅长领域: 大数据数据库大数据平台

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2020-05-06
  • 关注会员:5 人
  • 问题浏览:8208
  • 最近回答:2020-05-24
  • X社区推广