【大数据入门笔记系列】第一节 大数据常用组件

【大数据入门笔记系列】第一节 大数据常用组件

    • 大数据释义
    • 大数据组件
    • 跳转

大数据释义

近些年来,坊间一直流传着这样的言论:“大数据时代,人人都在裸奔”。对于外行人来说,对于“大数据”这个词最直观的理解就是“大的数据集”,这样理解是没有错的,但对于行内人来说,这样的理解就太过苍白了。

  • 大数据究竟指的是什么?
    答:大数据是指在一定时间内无法用常规软件工具对其内容进行抓取、管理和处理的数据集合。
  • 适用于大数据的技术有哪些?
    答:1、数据挖掘;
            2、分布式文件系统;
            3、大规模并行处理(MPP)数据库;
            4、分布式数据库;
            5、云计算平台;
            6、互联网和可扩展的存储系统;

大数据组件

大数据的组件有很多,且随着时间的推移有些组件不再流行,我这里不能一一列举,只列举一些常见的组件:

  • Hadoop:一种分布式系统基础架构包含Hdfs、MapReduce、Yarn三大组件;
  • Hadoop-Hdfs:一种分布式文件系统,具有高容错、高伸缩的特点;
  • Hadoop-MapReduce:一种分布式编程模型,是基于Yarn的大数据并行处理系统;
  • Hadoop-Yarn:是一种用于作业调度和集群资源管理的框架;
  • Hive:一种基于Hadoop的数据仓库系统,它实现了使用类SQL的查询语言,能够方便地进行数据汇总、特定查询和分析文件系统中的大数据,在大数据平台中Hive主要主要解决数据处理和计算问题,一般是配合其他组件使用;
  • Hbase:一种分布的、可伸缩的大数据存储库(注意,Hive不能算存储库),通常Hdfs为其提供高可靠性的底层存储支持,它主要被用来解决实时数据查询问题,支持随机、实时的读写访问;
  • Pig:是一个平台,用来分析大数据集,Pig平台是由一种表达数据分析程序的高级语言和对这些程序进行评估的基础设施一起组成;
  • Sqoop:是一种高效传输批量数据的工具,主要用于Hadoop和结构化数据库之间的数据传输;
  • Kettle:是一种完成数据抽取、转换、装载(ETL)过程的工具,它支持图形化的GUI设计界面,然后可以以工作流的形式流转,在做一些简单或复杂的数据抽取、质量检测、数据清洗、数据转换、数据过滤等方面有着比较稳定的表现;
  • Flume:是一种分布式、有用且可靠的服务,该服务常用于高效收集、汇总、移动大量数日志数据;
  • Logstash:一个开源数据收集引擎,具有实时管道功能,它可以动态地将来自不同数据源的数据统一起来,并将数据标准化到你所选择的目的地,与ElasticSearch、Kibana并称ELK;
  • Zookeeper:一个分布式的、开放源码的分布式应用程序协调服务,该服务用于维护配置信息、提供分布式同步以及分组等事务;
  • Mahout:一种基于Hadoop的机器学习和数据挖掘的分布式计算框架算法集,实现了多种MapReduce模式的数据挖掘算法;
  • Spark:一种开源的数据分析集群计算框架,建立与分布式文件系统(Hdfs)只上(常与Hive相结合),与Hadoop一样,用语构建大规模、低延迟的数据分析应用,Spark采用scala语言实现,使用scala作为应用框架;
  • Storm:一种分布式的、高容错的实时计算系统,它属于流处理平台,多用于实时计算并更新数据库;
  • Shark:即前面提到的Hive On Spark,一个专为Spark打造的大规模数据仓库系统,兼容Hive,无需修改现有的数据或者查询,就可以用100倍的速度执行HiveSql,Shark支持Hive查询语言、无存储、序列化格式及自定义函数,与现有的数据仓库系统(Hive)无缝集成,是一个更快、更强大的替代方案;
  • Hue:一个开源的Hadoop UI系统,能够做HiveSql编辑器、搜索引擎Solr的各种图表以及与Oozie集成,可进行workflow的编辑、查看;
  • Oozie:一种任务调度框架,可与Hue集成,用来完成工作流的设计、录入、触发与监控等;
  • Phoenix:一个构建在大数据存储库(Hbase)只上的Sql中间层,完全使用java编写,提供了一个客户端可嵌入的JDBC(数据库连接,由java编写的类及接口组成)驱动,它的查询引擎会将Sql转换成一个或多个Hbase scan,并编排执行以生成标准的数据库连接(JDBC)结果集,Phoenix直接使用Hbase API、协同处理器与自定义过滤器,对于简单的查询来说,其性能量级是毫秒,对于百万级别的行数来说,其性能量级是秒;
  • Tez:一个基于作业调度和集群资源管理的框架(Yarn)之上的DAG(有向无环图)计算框架,他把MapReduce拆分成若干个子过程,同时又把若干个MapReduce组合成一个较大的DAG(有向无环图)任务,减少了MapReduce之间的文件存储(落地),同时合理组合其子过程,减少任务运行时间;
  • Kafka:一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景;
  • Ambari:作为Hadoop集群的一个供应、管理和监视的开源框架,该开源框架提供一个直观的操作工具和一系列健壮的Hadoop API,可吟唱负责的Hadoop相关操作,使集群操作大大简化;
  • CDH:是Hadoop众多分支中的一种,由Cloudera维护,基于稳定版本的Apache Hadoop构建,提供了Hadoop的核心可扩展存储(HDFS)和分布式计算(MR),还提供了WEB页面进行管理、监控;

跳转

【大数据入门笔记系列】写在前面
【大数据入门笔记系列】第一节 大数据常用组件
【大数据入门笔记系列】第二节 Zookeeper简介
【大数据入门笔记系列】第三节 Hdfs读、写数据处理流程
【大数据入门笔记系列】第四节 NameNode元数据缓存机制
【大数据入门笔记系列】第五节 SpringBoot集成hadoop开发环境(复杂版的WordCount)

你可能感兴趣的:(大数据入门笔记,大数据)