共计 1805 个字符,预计需要花费 5 分钟才能阅读完成。
1.Hadoop 是什么?
适合大数据的分布式存储与计算平台
HDFS: Hadoop Distributed File System 分布式文件系统
MapReduce:并行计算框架
2.Hadoop 生态圈
①HBase
Google Bigtable 的开源实现
列式数据库
可集群化
可以使用 shell、web、api 等多种方式访问
适合高读写(insert)的场景
HQL 查询语言
NoSQL 的典型代表产品
②Hive
数据仓库工具。可以把 Hadoop 下的原始结构化数据变成 Hive 中的表
支持一种与 SQL 几乎完全相同的语言 HiveQL。除了不支持更新、索引和事务,几乎 SQL 的其它特征都能支持
可以看成是从 SQL 到 Map-Reduce 的映射器
提供 shell、JDBC/ODBC、Thrift、Web 等接口
③Zookeeper
Google Chubby 的开源实现
用于协调分布式系统上的各种服务。例如确认消息是否准确到达,防止单点失效,处理负载均衡等
应用场景:Hbase,实现 Namenode 自动切换
工作原理:领导者,跟随者以及选举过程
④Sqoop
用于在 Hadoop 和关系型数据库之间交换数据
通过 JDBC 接口连入关系型数据库
⑤Chukwa
架构在 Hadoop 之上的数据采集与分析框架
主要进行日志采集和分析
通过安装在收集节点的“代理”采集最原始的日志数据
代理将数据发给收集器
收集器定时将数据写入 Hadoop 集群
指定定时启动的 Map-Reduce 作业队数据进行加工处理和分析
⑥Pig
Hadoop 客户端
使用类似于 SQL 的面向数据流的语言 Pig Latin
Pig Latin 可以完成排序,过滤,求和,聚组,关联等操作,可以支持自定义函数
Pig 自动把 Pig Latin 映射为 Map-Reduce 作业上传到集群运行,减少用户编写 Java 程序的苦恼
⑦Avro
数据序列化工具,由 Hadoop 的创始人 Doug Cutting 主持开发
用于支持大批量数据交换的应用。支持二进制序列化方式,可以便捷,快速地处理大量数据
动态语言友好,Avro 提供的机制使动态语言可以方便地处理 Avro 数据。
Thrift 接口
⑧Cassandra
NoSQL,分布式的 Key-Value 型数据库,由 Facebook 贡献
与 Hbase 类似,也是借鉴 Google Bigtable 的思想体系
只有顺序写,没有随机写的设计,满足高负荷情形的性能需求
3.Hadoop 生态圈流程图
下面关于 Hadoop 的文章您也可能喜欢,不妨看看:
Ubuntu14.04 下 Hadoop2.4.1 单机 / 伪分布式安装配置教程 http://www.linuxidc.com/Linux/2015-02/113487.htm
CentOS 安装和配置 Hadoop2.2.0 http://www.linuxidc.com/Linux/2014-01/94685.htm
CentOS 6.3 下 Hadoop 伪分布式平台搭建 http://www.linuxidc.com/Linux/2016-11/136789.htm
Ubuntu 14.04 LTS 下安装 Hadoop 1.2.1(伪分布模式)http://www.linuxidc.com/Linux/2016-09/135406.htm
Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm
实战 CentOS 系统部署 Hadoop 集群服务 http://www.linuxidc.com/Linux/2016-11/137246.htm
单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm
Hadoop 2.6.0 HA 高可用集群配置详解 http://www.linuxidc.com/Linux/2016-08/134180.htm
Spark 1.5、Hadoop 2.7 集群环境搭建 http://www.linuxidc.com/Linux/2016-09/135067.htm
更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137332.htm