
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的企业都引入了大数据技术,而本文我们就通过案例分析来简单了解一下,大数据应用都包含哪些环节。
1、数据源
数据收集层由直接跟数据源对接的模块构成,负责将数据源中的数据近实时或实时收集到一起。数据源具有分布式、异构性、多样化及流式产生等特点:
分布式:数据源通常分布在不同机器或设备上,并通过网络连接在一起。
异构性:任何能够产生数据的系统均可以称为数据源,比如Web服务器、数据库、传感器、手环、视频摄像头等。
多样化:数据的格式是多种多种多样的,既有像用户基本信息这样的关系型数据,也有如图片、音频和视频等非关系型数据。
流式产生:数据源如同“水龙头”一样,会源源不断地产生“流水”(数据),而数据收集系统应实时或近实时地将数据发送到后端,以便及时对数据进行分析。
2、数据收集层
主要由关系型与非关系型数据收集组件,分布式消息队列构成。
Sqoop/Canal:关系型数据收集和导入工具,是连接关系型数据库(比如MySQL)和Hadoop(比如HDFS)的桥梁,Sqoop可将关系型数据库中的数据全量导入Hadoop,反之亦可,而Canal则可用于实现数据的增量导入。
Flume:非关系型数据收集工具,主要是流式日志数据,可近实时收集,经过滤,聚集后加载到HDFS等存储系统。
Kafka:分布式消息队列,一般作为数据总线使用,它允许多个数据消费者订阅并获取感兴趣的数据。相比于其他消息队列,它采用分布式高容错设计,更适合大数据应用场景。
3、数据储存层
在大数据时代,由于数据收集系统会将各类数据源源不断地发到中央化存储系统中,这对数据存储层的扩展性、容错性及存储模型等有较高要求,总结如下:
扩展性:在实际应用中,数据量会不断增加,现有集群的存储能力很快将达到上限,此时需要增加新的机器扩充存储能力,这要求存储系统本身具备非常好的线性扩展能力。
容错性:考虑到成本等因素,大数据系统从初就假设构建在廉价机器上,这就要求系统本身就有良好的容错机制确保在机器出现故障时不会导致数据丢失。
存储模型:由于数据具有多样性,数据存储层应支持多种数据模型,确保结构化和非结构化的数据能够很容易保存下来。
4、数据分析层
数据分析层直接跟用户应用程序对接,为其提供易用的数据处理工具。为了让用户分析数据更加容易,计算引擎会提供多样化的工具,包括应用程序API、类SQL查询语言、数据挖掘SDK等。
在解决实际问题时,数据科学家往往需根据应用的特点,从数据分析层选择合适的工具,大部分情况下,可能会结合使用多种工具,的使用模式是:先使用批处理框架对原始海量数据进行分析,产生较小规模的数据集,在此基础上,再使用交互式处理工具对该数据集进行快速查询,获取终结果。
5、数据可视化层
数据可视化层是直接面向用户展示结果的一层,由于该层直接对接用户,是展示大数据价值的“门户”,因此数据可视化是极具意义的。考虑到大数据具有容量大、结构复杂和维度多等特点,对大数据进行可视化是极具挑战性的。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei456学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。