大数据行业介绍与技术难点

大数据时代
·大数据( Big Data)的定义
维基百科给出的定义︰大数据是指利用常用软件工具捕获、管理和处理数据所耗时间超过可容忍时间的数据集。
大数据研究机构Gartner给出的定义∶大数据是需要新处理模式(具有更强的决策力、洞察发现力和流程优化能力)来适应海量、高增长率和多样化的信息资产。
·大数据的特征
体量巨大
类型繁多
处理速度快
价值密度低
 
大数据分析与传统数据分析
·大数据分析与传统数据分析的不同点(按以下三个角度分析)∶
数据角度
处理架构角度
数据处理角度
 
大数据分析与传统数据分析-数据角度
·数据角度:
传统数据分析大多使用数据库存储数据,数据处理规模以MB为单位。
大数据的处理规模则以GB、TB、PB为单位。
传统数据分析处理的数据类型主要以结构化数据为主。大数据分析处理的数据类型繁多,包含结构化数据、半结构化数据以及非结构化的数据。
 
大数据分析与传统数据分析-处理架构角度(1)
处理架构角度:
扩展性
  • 传统数据分析的扩展主要以纵向扩展(Scale-up)为主。纵向扩展即在需要处理更多负载的时候通过提高单个系统的处理能力的方法来解决问题。最为常见的情况是通过提高基础的硬件配置,从而提高系统的处理能力。在这种情况下,服务器数量没有变化,但是配置会越来越高。
  • 大数据分析的扩展主要以横向扩展(Scale-out)为主。横向扩展是将服务划分为多个子服务,并利用负载均衡等技术在应用中添加新的服务实例。在这种情况下,服务器的配置保持不变,增加的是服务器的数量。
 
大数据分析与传统数据分析-处理架构角度(2)
·处理架构角度:
分布式
  • 传统数据分析主要采用集中式处理方法,主要包括集中式计算、集中式存储、集中式数据库等。
  • 大数据分析则更加倾向于分布式处理方法。
—分布式系统由许多独立的、可协同工作的中央处理器(Central Processing Unit,CPU)组成,从用户的角度看,整个系统更像一台独立的计算机。
一分布式系统是从分散处理的概念出发来组织计算机系统的,冲破了传统的集中式单机的局面,具有较高的性价比,灵活的系统可扩展性,良好的实时性、可靠性与容错性。
一组成分布式系统的各计算机节点由分布式操作系统管理,以便让各个节点共同承担整个计算功能。一常见的分布式系统有分布式计算系统、分布式文件系统及分布式数据库系统等。
 
大数据分析与传统数据分析-数据处理角度
·数据处理角度:
  • 传统数据分析采用的数据处理方法以处理器为中心,主要使用数据库和数据仓库(DataWarehouse)进行存储、管理及分析,其存储、管理及分析的数据量也相对较小。
  • 不同于传统的数据处理方法,大数据拥有一套通用的数据处理流程。一般而言,大数据处理流程可分为4步,即数据采集、数据清洗与预处理、数据统计分析与挖掘、结果可视化。
 
 
大数据不能做什么?
·不能替代管理的决策力。
数据间的打通需要最高领导推动决策。
·不能替代有效的商业模式。
不是拥有大数据就一定能有收益,商业模式虽是首要的,但如何盈利要提前考虑清楚。
·不能无目的地发现知识。
数据挖掘需要约束与目标,否则就是徒劳的。
·不能替代专业人员的作用。
在模型建立中专业人员对聚集关键特征意义重大。
专业人员的作用可能会随时间而减小,但开始时专业人员的作用非常大。
·不能一次建模,终生受益。
大数据需要“活”的数据,模型需要不断地进行学习、更新。
 
大数据应用领域

 

 

大数据时代企业所面临的挑战
挑战:
  • 挑战一:业务部门无清晰的大数据需求
  • 挑战二:企业内部数据“孤岛”严重
  • 挑战三:数据可用性低,质量低
  • 挑战四:数据相关管理技术和架构
  • 挑战五:数据安全
  • 挑战六:大数据人才缺乏
  • 挑战七:数据开放与隐私的权衡
 
大数据时代企业所面临的机遇
机遇:
  • 数据分析成为大数据技术的核心
  • 广泛采用实时性的数据处理方式
  • 基于云的数据分析平台将更加完善
  • 开源软件将会成为推动大数据发展的新动力
 
大数据代表技术
代表技术:Hadoop
目前有三个版本:1.x、2.x、3.x Hadoop 3.x较Hadoop 2.x的新特性
  • 所需最低的Java版本从Java 7变为Java 8
  • 支持HDFS中的纠删码
  • YARN时间线服务
  • 修改多个服务更改的默认端口
  • 更好地支持两个以上的NameNode、支持机会容器和分布式计划、支持Intra-DataNode平衡器等特性
 
大数据生态系统
HDFS
1.HDFS
  • HDFS是Hadoop体系中数据存储管理的基础,它是一个高度容错的系统,能检测和应对硬件故障,可在低成本的通用硬件上运行。
  • HDFS简化了文件的一致性模型,通过流式数据访问,提供高吞吐量数据访问能力,适合带有大型数据集的应用程序。
  • HDFs提供了一次写入、多次读取的机制,数据以块的形式分布在集群的不同物理机上。HDFS的架构基于一组特定的节点构建,这是由它自身的特点决定的。
  • HDFS的节点NameNode,在HDFS内部提供元数据服务。若干个DataNode为HDFS提供存储块。
 
MapReduce、HBase和Pig
2.MapReduce
MapReduce是一种分布式计算框架,用于大数据计算。
口它屏蔽了分布式计算框架的细节,将计算抽象成Map和Reduce两部分
3.HBase
HBase是一个面向列的、针对结构化数据的可伸缩、高可靠、高性能、分布式数据库。HBase采用了BigTable的数据模型:增强的稀疏排序映射表( key-value )。
4.Pig
Pig简化了Hadoop常见的工作任务,可加载数据、转换数据以及存储最终结果。
 
Sqoop和Flume
5.Sqoop
主要用于在传统数据库和Hadoop之间传输数据。它可以将关系数据库(如MySQL、OraclePostgres等)中的数据导入Hadoop的HDFS中,也可以将HDFS中的数据导入关系数据库中。Sqoop利用数据库技术描述数据架构,并充分利用了MapReduce的并行化和容错性。
6.Flume
将数据从产生、传输、处理并最终写入目标路径的过程抽象为数据流。
 
Mahout和Oozie
7.Mahout
Mahout的主要目标是创建一些可扩展的机器学习领域经典算法的实现,旨在帮助开发者更加方便、快捷地创建智能应用程序。
Mahout现在已经包含聚类、分类、推荐引擎(协同过滤)和频繁集挖掘等广泛使用的数据挖掘算法。
8.Oozie
Oozie具有可扩展的工作体系,集成于Hadoop的堆栈,用于协调多个MapReduce作业的执行。它能够管理一个复杂的系统,使其基于外部事件来执行。
 
YARN和Mesos
9.YARN
YARN是一种新的Hadoop资源管理器。它是一个通用资源管理系统,可为上层应用提供统一的
资源管理和调度。
10.Mesos
Mesos是一个资源统一管理和调度的平台,同样支持MapReduce、Streaming等多种运算框架。Mesos作为数据中心的内核,其设计原则是分离资源分配和任务调度,为大量不同类型的负载提供可靠服务。
 
Tachyon和Tez
11.Tachyon
Tachyon是以内存为中心的分布式文件系统,拥有高性能和容错能力,并具有类Java的文件API、插件式的底层文件系统、兼容Hadoop、MapReduce和Apache Spark等特点,能够为集群框架
(如Spark、MapReduce)提供可靠的内存级速度的文件共享服务。
Tachyon充分使用内存和文件对象之间的谱系(lineage)信息,因此速度很快。
12.Tez
核心思想是将Map和Reduce两个操作进一步拆分,即Map被拆分成Input、Processor、Sort、Merge和Output等,Reduce被拆分成Input、Shuffle、Sort、Merge、Processor和Output等。拆分后的元操作可以任意灵活组合,产生新的操作。这些操作经过一些控制程序组装后,可形成一个大的DAG作业。
 
Spark、Giraph和MLlib
13.Spark
Spark提供了一个更快、更通用的数据处理平台。
14.Giraph
Giraph是一个可伸缩的分布式迭代图处理系统。
15.MLlib
MLlib是一个机器学习库,提供了各种各样的算法,这些算法在集群上针对分类、回归、聚类、
协同过滤等。
MLLib是Spark对常用的机器学习算法的实现库,同时包括相关的测试和数据生成器。
 
Spark Streaming和Spark SQL
16.Spark Streaming
Spark Streaming支持对流数据的实时处理,以“微批”的方式对实时数据进行计算。
它是构建在Spark上处理Stream数据的框架,基本原理是将Stream数据分成小的片段,以类似批量处理( Batch)的方式来处理每个片段数据。
17. Spark SQL
Spark SQL是Spark中用来处理结构化数据的一个模块,它提供了一个称为DataFrame的编程抽象,并且可以充当分布式sQL查询引擎。
它将数据的计算任务通过sQL的形式转换成了RDD的计算,类似于Hive通过sQL的形式将数据的计算任务转换成了MapReduce。
 
Kafka、Phoenix和Kylin+Druid
18.Kafka
主要用于处理活跃的流式数据。
19. Phoenix
Phoenix是HBase的SQL驱动。
20. Kylin+Druid
Kylin是一个开源的分布式分析引擎,它提供了Hadoop之上的sQL查询接口和多维分析(如OLAP)能力以支持大规模数据,能够处理TB乃至PB级别的分析任务,能够在亚秒级查询巨大的Hive表,并支持高并发。
 
Superset和Storm
21. Superset
能快速创建可交互的、形象直观的数据集合,有丰富的可视化方法来分析数据,具有灵活的扩
展能力,与Druid深度结合,可快速地分析大数据。
22.Storm
Storm是一个分布式实时大数据处理系统,用于在容错和水平可扩展方法中处理大量数据。它
具有一个流数据框架,且有较高的摄取率。
 
业界主流解决方案解决方案:
  • Cloudera
  • Fusionlnsight
 
 
 
 


posted @ 2022-07-26 09:23  十一没有撤退可言!  阅读(645)  评论(0编辑  收藏  举报