码迷,mamicode.com
首页 > 其他好文 > 详细

想要读懂大数据,你不得不先掌握这些核心技术

时间:2021-06-08 22:37:38      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:tachyon   提高   lin   red   link   管理系   实现   druid   纵向扩展   

说起大数据,很多人都能聊上一会,但要是问大数据核心技术有哪些,估计很多人就说不上一二来了。

从机器学习到数据可视化,大数据发展至今已经拥有了一套相当成熟的技术树,不同的技术层面有着不同的技术架构,而且每年还会涌现出新的技术名词。面对如此庞杂的技术架构,很多第一次接触大数据的小白几乎都是望而生畏的。

其实想要知道大数据有哪些核心技术很简单,无非三个过程:取数据、算数据、用数据。这么说可能还是有人觉得太空泛,简单来说从大数据的生命周期来看,无外乎四个方面:大数据采集、大数据预处理、大数据存储、大数据分析,共同组成了大数据生命周期里最核心的技术,下面分开来说:

一、大数据采集

大数据采集,即对各种来源的结构化和非结构化海量数据,所进行的采集。

  1. 数据库采集:流行的有Sqoop和ETL,传统的关系型数据库MySQL和Oracle 也依然充当着许多企业的数据存储方式。当然了,目前对于开源的Kettle和Talend本身,也集成了大数据集成内容,可实现hdfs,hbase和主流Nosq数据库之间的数据同步和集成。
  2. 网络数据采集:一种借助网络爬虫或网站公开API,从网页获取非结构化或半结构化数据,并将其统一结构化为本地数据的数据采集方式。
  3. 文件采集:包括实时文件采集和处理技术flume、基于ELK的日志采集和增量采集等等。
技术图片

数据采集的生命周期

二、大数据预处理

大数据预处理,指的是在进行数据分析之前,先对采集到的原始数据所进行的诸如“清洗、填补、平滑、合并、规格化、一致性检验”等一系列操作,旨在提高数据质量,为后期分析工作奠定基础。数据预处理主要包括四个部分:数据清理、数据集成、数据转换、数据规约。

技术图片

大数据预处理

  1. 数据清理:指利用ETL等清洗工具,对有遗漏数据(缺少感兴趣的属性)、噪音数据(数据中存在着错误、或偏离期望值的数据)、不一致数据进行处理。
  2. 数据集成:是指将不同数据源中的数据,合并存放到统一数据库的,存储方法,着重解决三个问题:模式匹配、数据冗余、数据值冲突检测与处理。
  3. 数据转换:是指对所抽取出来的数据中存在的不一致,进行处理的过程。它同时包含了~数据清洗的工作,即根据业务规则对异常数据进行清洗,以保证后续分析结果准确性
  4. 数据规约:是指在最大限度保持数据原貌的基础上,最大限度精简数据量,以得到较小数据集的操作,包括:数据方聚集、维规约、数据压缩、数值规约、概念分层等。

三、大数据存储

大数据存储,指用存储器,以数据库的形式,存储采集到的数据的过程,包含三种典型路线:

1、基于MPP架构的新型数据库集群

采用Shared Nothing架构,结合MPP架构的高效分布式计算模式,通过列存储、粗粒度索引等多项大数据处理技术,重点面向行业大数据所展开的数据存储方式。具有低成本、高性能、高扩展性等特点,在企业分析类应用领域有着广泛的应用。

较之传统数据库,其基于MPP产品的PB级数据分析能力,有着显著的优越性。自然,MPP数据库,也成为了企业新一代数据仓库的最佳选择。

2、基于Hadoop的技术扩展和封装

基于Hadoop的技术扩展和封装,是针对传统关系型数据库难以处理的数据和场景(针对非结构化数据的存储和计算等),利用Hadoop开源优势及相关特性(善于处理非结构、半结构化数据、复杂的ETL流程、复杂的数据挖掘和计算模型等),衍生出相关大数据技术的过程。

伴随着技术进步,其应用场景也将逐步扩大,目前最为典型的应用场景:通过扩展和封装 Hadoop来实现对互联网大数据存储、分析的支撑,其中涉及了几十种NoSQL技术。

3、大数据一体机

这是一种专为大数据的分析处理而设计的软、硬件结合的产品。它由一组集成的服务器、存储设备、操作系统、数据库管理系统,以及为数据查询、处理、分析而预安装和优化的软件组成,具有良好的稳定性和纵向扩展性。

技术图片

大数据存储

四、大数据分析挖掘

从可视化分析、数据挖掘算法、预测性分析、语义引擎、数据质量管理等方面,对杂乱无章的数据,进行萃取、提炼和分析的过程。

1、可视化分析

可视化分析,指借助图形化手段,清晰并有效传达与沟通信息的分析手段。主要应用于海量数据关联分析,即借助可视化数据分析平台,对分散异构数据进行关联分析,并做出完整分析图表的过程。

具有简单明了、清晰直观、易于接受的特点。

技术图片

FineBI可视化

2、数据挖掘算法

数据挖掘算法,即通过创建数据挖掘模型,而对数据进行试探和计算的,数据分析手段。它是大数据分析的理论核心。

数据挖掘算法多种多样,且不同算法因基于不同的数据类型和格式,会呈现出不同的数据特点。但一般来讲,创建模型的过程却是相似的,即首先分析用户提供的数据,然后针对特定类型的模式和趋势进行查找,并用分析结果定义创建挖掘模型的最佳参数,并将这些参数应用于整个数据集,以提取可行模式和详细统计信息。

技术图片

FineBI的数据挖掘功能

3、预测性分析

预测性分析,是大数据分析最重要的应用领域之一,通过结合多种高级分析功能(特别统计分析、预测建模、数据挖掘、文本分析、实体分析、优化、实时评分、机器学习等),达到预测不确定事件的目的。

帮助分用户析结构化和非结构化数据中的趋势、模式和关系,并运用这些指标来预测将来事件,为采取措施提供依据。

技术图片

FineBI预测回归

4、语义引擎

语义引擎,指通过为已有数据添加语义的操作,提高用户互联网搜索体验。

5、数据质量管理

指对数据全生命周期的每个阶段(计划、获取、存储、共享、维护、应用、消亡等)中可能引发的各类数据质量问题,进行识别、度量、监控、预警等操作,以提高数据质量的一系列管理活动。


以上是从大的方面来讲,具体来说大数据的框架技术有很多,这里列举其中一些:

文件存储:Hadoop HDFS、Tachyon、KFS

离线计算:Hadoop MapReduce、Spark

流式、实时计算:Storm、Spark Streaming、S4、Heron

K-V、NOSQL数据库:HBase、Redis、MongoDB

资源管理:YARN、Mesos

日志收集:Flume、Scribe、Logstash、Kibana

消息系统:Kafka、StormMQ、ZeroMQ、RabbitMQ

查询分析:Hive、Impala、Pig、Presto、Phoenix、SparkSQL、Drill、Flink、Kylin、Druid

分布式协调服务:Zookeeper

集群管理与监控:Ambari、Ganglia、Nagios、Cloudera Manager

数据挖掘、机器学习:Mahout、Spark MLLib

数据同步:Sqoop

任务调度:Oozie

······

想要读懂大数据,你不得不先掌握这些核心技术

标签:tachyon   提高   lin   red   link   管理系   实现   druid   纵向扩展   

原文地址:https://www.cnblogs.com/IT-Evan/p/14733376.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!