您的位置:首页 > 运维架构

Hadoop学习:

2016-04-12 20:13 225 查看
文件名称            格式               描述
hadoop-env.sh      BaSh              脚本 记 录 脚 本 要 用 的 环 境 变 , 以 运 行Hadoop
core-site.xml      HadooP配XML    Hadoop Core的配项,例如 HDFS 和MapReduce 常用 的 I/o 设置等
hdfs-site.xml      Hadoop配置XML  Hadoop守护进程的配置项,包括namenode、辅助namenode和datanode等
mapred-site.xml    HadooP配置XML  MaPReduce守护进程的配项,包括jobtracker和tasktracker
masters            纯文本         运?辅助namenode的机器列表(每行?个)
slaves             纯文本         运?datanode和tasktracker的机器列 表
hadoop-metrics.properties Java属性 控制 metrics 在 Hadoop 上如何发布的属性
log4j.properties Java属性         系统日志文件、namenode审计日志、taSktracker?进程的任务日志的属性


Hive:是一个构建在Hadoop 上的数据仓库框架,MapReduce (输入hive启动shell)
metastore:是Hive元数据的集中存放地
HBase:是一个在HDFS上开发的面向列的分布式nosql数据库(输入hbase shell启动shell)
HBase 提供Avro,REST,Thrift接口
1、hive是sql语言,通过数据库的方式来操作hdfs文件系统,为了简化编程,底层计算方式为mapreduce。
2、hive是面向行存储的数据库。
3、Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑。
4、HBase为查询而生的,它通过组织起节点內所有机器的內存,提供一個超大的內存Hash表
5、hbase不是关系型数据库,而是一个在hdfs上开发的面向列的分布式数据库,不支持sql。
6、hbase是物理表,不是逻辑表,提供一个超大的内存hash表,搜索引擎通过它来存储索引,方便查询操作。
7、hbase是列存储。
Hive和Hbase有各自不同的特征:hive是高延迟、结构化和面向分析的,hbase是低延迟、非结构化和面向编程的。Hive数据仓库在hadoop上是高延迟的。
那么,hive是什么?
白话一点再加不严格一点,hive可以认为是map-reduce的一个包装。hive的意义就是把好写的hive的sql转换为复杂难写的map-reduce程序。
于是,hbase是什么?
同样白话一点加不严格一点,hbase可以认为是hdfs的一个包装。他的本质是数据存储,是个NoSql数据库;hbase部署于hdfs之上,并且克服了hdfs在随机读写方面的缺点。



MapReduce是一种可用于数据处理的编程模型,优势在于处理大规模的数据集。
MapReduce任务分为Map阶段和Reduce阶段,每个阶段都有键值对作为输入输出。
map函数的输出经由MapReduce框架处理后最后发送到redeuce函数,这一过程中需要根据键值排序和分组

1.查看Hadoop的版本:hadoop -version
2.查看hive版本没有好办法,可以去hive目录下的lib文件夹下查看jar包的版本
3.查看hbase版本方法:直接用hbase shell命令进入shell的时候就会显示版本号进入shell后

TBLS 所有hive表的基本信息,记录和存储hive table的创建时间,名称,类型等信息。 TBL_ID,SD_ID
TABLE_PARAM 表级属性,如是否外部表,表注释等 TBL_ID
COLUMNS Hive表字段信息(字段注释,字段名,字段类型,字段序号) SD_ID
SDS 所有hive表、表分区所对应的hdfs数据目录和数据格式存储hive table以及hive partitioner table的InputFormat以及OutputFormat等信息 SD_ID,SERDE_ID
SERDE_PARAM 序列化反序列化信息,如行分隔符、列分隔符、NULL的表示字符等,存储和表述hive table的序列化/反序列化方式 SERDE_ID
PARTITIONS Hive表分区信息 PART_ID,SD_ID,TBL_ID
PARTITION_KEYS Hive分区表分区键,hive partitioner table的分区键名称 TBL_ID
PARTITION_KEY_VALS Hive表分区名(键值) PART_ID
Db_privs:记录了User/Role在DB上的权限
Tbl_privs:记录了User/Role在table上的权限
Tbl_col_privs:记录了User/Role在table column上的权限
Roles:记录了所有创建的role
Role_map:记录了User与Role的对应关系

Spark: 一个基于 SCa1a API 的分布式数据集的分布式计算框架。 其可以使用 HDFS 文件, 而且其对于 MapReduCe 中多种计算可以提供显著的性能改进。 同时还有一个将 HiVe 指向Spark 的项目, 称作 Shark

Storm: 一个实时事件流处理系统

kafka: 一个分布式 的发布-订阅消息传递系统

在Hadoop-2.2.0及以上版本中,由于不再有JobTracker以及TaskTracker的概念和角色(已经替换成ResourceManager和NodeManager)所以在这些版本中已经不再存在 mapred.tasktracker.map.tasks.maximum 和mapred.tasktracker.reduce.tasks.maximum 这两个属性
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: