hadoop 笔记】的更多相关文章

学习资料参考地址: 1.http://blog.csdn.net/zhoudaxia/article/details/8801769 1.先说说什么是Hadoop? 个人理解:一个分布式文件存储系统+一个分布式计算框架,在其上还有很多的开源项目来丰富他的功能,如Hbase,hive等等.官方:Hadoop是一个用Java编写的开源系统,可安排在大规模的计算平台上,从而提高计算效率.本质上它只是一个海量数据处理平台架构. 2.Hadoop与MapReduce,有什么关系? Hadoop生态圈的三个…
我们常说的分布式系统,其实就是分布式软件系统,支持分布式处理的软件系统.他是在通信网络互联的多处理机体系结构上执行任务.   hadoop是分布式软件系统中文件系统层的软件,他实现了分布式文件系统和部分分布式数据库系统.hadoop中的分布式文件系统hdfs可以实现数据在计算机集群组成的云上,高效的存储和管理.hadoop中的并行编程框架mapreduce可以让用户编写hadoop应用程序.   mapreduce应用程序开发是基于mapreduce编程模型,mapreduce编程的原理是:利用…
教程: Elasticsearch.MongoDB和Hadoop比较:  http://blog.csdn.net/hong0220/article/details/47631409…
hbase 基础: hbase是基于列的数据,其数据模式如下: 1.安装 1.1)hbase安装分为单机.伪分布式.分布式,单机下安装不依赖于hadoop:因为不需要分布式文件系统支持: 1.2)安装并启动服务: tar xfz hbase-0.94.12.tar.gz; start-hbase.sh stop-hbase.sh 备注:需要先安装jdk 1.3) 配置hbase-site.xml <configuration> <property> <name>hbas…
高级Hadoop MapReduce管理 1 调试部署好的Hadoop的配置 2 运行基准测试检验Hadoop的安装 3 重新利用JVM提升性能 4 容错性 5 调试脚本-分析失败任务原因 6 设置失败比例以及忽略无效的记录 7 共享型用户Hadoop集群 8 Hadoop的安全性 9 使用Hadoop工具interface 内容目录 一调整参数 1.首先需要关掉正在运行的Hadoop集群(stop-dfs.sh以及stop-yarn.sh) 存放Hadoop参数的主要是下面4个文件: core…
环境:Hadoop2.7.3 1.Benchmarking HDFS 1.1测试集群的写入 运行基准测试是检测HDFS集群是否正确安装以及表现是否符合预期的好方法.DFSIO是Hadoop自带的一个基准测试程序,可以用来分析HDFS集群的I/O能力 脚本: $HADOOP_HOME/bin/hadoop jar hadoop-mapreduce-client-jobclient-2.7.3-tests.jar TestDFSIO -write -nrFiles 10 -size 50MB nrF…
Hive的数据存储(内部表) Hive的数据存储(内部表) 基于HDFS 可使用hadoop给我们提供的web管理工具查看数据.打开管理工具localhost:9000–>Utilities下的Browse the file system–>/user/hive/warehouse就能看到表目录–>打开表目录能看到表文件–>点击表文件,会询问是否需要下载文件–>点击download,可以用编辑器查看文件 没有专门的数据存储格式(因为来自不同的数据库) 存储结构主要包括:数据库…
Hive入门(二) Hive入门(二) Hive的体系结构 ○ Hive的元数据 Hive将元数据存储在数据库中(metastore),支持mysql.derby.oracle等数据库,Hive默认是derby数据库 Hive中的元数据包括表的名字,表的列和分区及其属性,表的属性(是否为外部表等),表的数据所在目录等 ○ HQL的执行过程 解释器.编译器.优化器完成HQL查询语句从词法分析.语法分析.编译.优化以及查询计划(Plan)的生成.生成的查询计划存储在HDFS中,并在随后有MapRed…
Hive入门(一) Hive入门(一) 什么是Hive? Hive是个数据仓库,数据仓库就是数据库,但又与一般意义上的数据库有点区别 实际上,Hive是构建在hadoop HDFS上的一个数据仓库. 什么又是数据仓库? 而数据仓库是一个面向主题的.集成的.不可更新的.随时间不变化的数据集合,它用于支持企业或组织的决策分析处理 面向主题,那么什么又是主题呢?主题就是指用户使用数据仓库决策时所关心的重点的方面,比如商品的推荐系统,那么这里我们所关心的主题就是商品的信息 数据仓库是个集成的数据库,也就…
MapReduce的应用案例(利用MapReduce进行排序) MapReduce的应用案例(利用MapReduce进行排序) 思路: Reduce之后直接进行结果合并 具体样例: 程序名:Sort.java import java.io.IOException;import java.util.StringTokenizer;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import o…
MapReduce的应用案例(WordCount单词计数) MapReduce的应用案例(WordCount单词计数) 1. WordCount单词计数 作用: 计算文件中出现每个单词的频数 输入结果按照字母顺序进行排序 Map过程 Reduce过程 WordCount的源代码 import java.io.IOException;import java.util.StringTokenizer;import org.apache.hadoop.conf.Configuration;import…
MapReduce的运行流程 MapReduce的运行流程 基本概念: Job&Task:要完成一个作业(Job),就要分成很多个Task,Task又分为MapTask和ReduceTask JobTracker TaskTracker Hadoop MapReduce体系结构 JobTracker的角色 作业调度 分配任务.监控任务执行进度 监控TaskTracker的状态 TaskTracker的角色 执行任务 汇报任务状态 MapReduce作业执行过程 MapReduce的容错机制 重复…
HDFS命令行操作 HDFS命令行操作 (以下是hadoop 1.x 版本的命令使用) 装好hadoop之前首先要进行一个格式化 hadoop namenode -format 运行之后,可以将文件夹都列出来 hadoop fs -ls / 例如打印user目录 hadoop fs -ls /user 如何将本地文件提交到hadoop的inpput目录下去 hadoop fs -put xxx /input (注意当前所在的位置pwd) 如何将文件从hadoop上input文件目录下的xxx文件…
1.HDFS设计基础与目标 1.HDFS设计基础与目标 (1)硬件错误是常态,因此需要冗余. (2)流式数据访问.即数据批量读取而非随机读写,Hadoop擅长做的是数据分析而不是事务处理. (3)大规模数据集 (4)简单一致性模型.为了降低系统复杂度,对文件采用一次性写多次读的逻辑设计,即是文件一经写入,关闭,就再也不能修改. (5)程序采用"数据就近"原则分配节点执行. 2.HDFS体系结构 Namenode Datanode 事务日志 映像文件 SecondaryNameNode…
1. hadoop 是什么 以及解决的问题 (自行百度) 2.基本概念的讲解 1. NodeName  master 节点(NN) 主节点 保存了metaData(元数据信息) 包括文件的owener和permission ,文件包换哪些block,block保存在哪个DataNode NameNode的metaData信息在启动时会加载 到内存 ,操作文件的日志信息,edit文件,同时不断合并edit和fsimage 这两个文件就可以记录 HDFS 上所有文件的信息 2.secondary N…
目录 · 概况 · Hadoop · 云计算 · 大数据 · 数据挖掘 · 手工搭建集群 · 引言 · 配置机器名 · 调整时间 · 创建用户 · 安装JDK · 配置文件 · 启动与测试 · Cloudera Manager · 原理 · Hadoop架构 · 性能调优 · 硬件选型 · 操作系统调优 概况 Hadoop 1. ASF(Apache软件基金会)给出定义:Hadoop软件库是一个框架,允许在集群中使用简单的编程模型对大规模数据集进行分布式计算. 2. Hadoop生态圈 a) H…
//**********************************//安装配置1. 修改配置文件 1.1 在conf文件夹下 touch hive-site.xml <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost:3306/hivedb?createDatabaseIfNotExist=t…
Hadoop的环境搭建分为单机模式.伪分布式模式.完全分布式模式. 因为我的本本比较挫,所以就使用伪分布式模式. 安装JDK 一般Linux自带的Java运行环境都是Open JDK,我们到官网下载Oracle JDK(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html): 需要注意的是官网上直接右键复制的话是下载不成功的,F12,单机,看网络请求包: 然后复制地址wget即可:…
核心:分布式存储和分布式计算 闲话: 底层基于socket通信 NIO——java异步io,不阻塞,不等待 bt——p2p软件(点对点传输,每个人既是上传者又是下载者.但是会占用大量网络带宽,所以很多运营商通过在交换机上封杀bt端口的方式来遏制bt软件占用流量) 关键:压缩算法 1.归档 很小的文件压缩后反而会变大. 但是如果有成千上万很小的文件,我们要对其进行压缩的话,就需要先归档 hadoop归档命令:har (har.tar.jar.war等表示压缩的文件,都以ar结尾,因为ar表示arc…
1.大数据的概述 大数据:巨量数据.海量数据,首先在数据的量上达到一定的规模,首先是人或者计算机在不合理时间内是不能够实现的数据量. 2.特点:数据量比较大,数据类型多样化.处理速度问题 3.大数据平台分为硬件和软件 4.hadoop出现:数据的不断加大,单机的计算机无法在硬盘.网络IO,计算机的CPU,内存存储上是无法达到的情况下出现的一种处理方式. 5.hadoop是Apache基金会所开发的分布式的基本跨架,可以在不了解分布式的情况下开发分布式的程序,充分的利用集群的高速运算和存储. 6.…
概念 文件系统 磁盘进行读写的最小单位:数据块,文件系统构建于磁盘之上,文件系统的块大小是磁盘块的整数倍. 文件系统块一般为几千字节,磁盘块一般512字节. hdfs的block.pocket.chunk block hdfs的块,常说的block,是这三个里最大的单位.默认128MB(配置参数:dfs.block.size). 128MB的原因:块太小会增加寻址时间:块太大会减少Map的任务(通常一个Map只处理一个块的数据). 注:文件的大小小于一个block并不会占据整个block的空间,…
1.安装 需要提前安装java环境,本文下载zookeeper-3.3.6.tar.gz包. 1.1 tar -zxvf zookeeper-3.3.6.tar.gz 1.2 修改conf中的zoo_sample.cfg为zoo.cfg 2.服务端命令 /bin/zkServer.sh start //启动服务 /bin/zkServer.sh stop //停止服务 /bin/zkServer.sh restart //重启服务 /bin/zkServer.sh status //查看状态 3…
Hive的数据存储(视图) Hive的数据存储(视图) 视图(view) 视图是一种虚表,是一个逻辑概念:可以跨越多张表 既然视图是一种虚表,那么也就是说用操作表的方式也可以操作视图 但是视图是建立在已有表的基础上,视图赖以建立的这些表称为基表 视图最大的好处就是可以简化复杂的查询 现在有两张表 ①部门表 ②员工表 而在关系性数据库中两张表的deptno部门号是外键的关系 现在来建立一张视图来查询员工数据 --查询员工信息:员工号.姓名.月薪.年薪.部门名称create view empinfo…
Hive的数据存储(桶表) Hive的数据存储(桶表) 桶表 桶表是对数据进行哈希取值,然后放到不同文件中存储. 比如说,创建三个桶,而创建桶的原则可以按照左边表中学生的名字来创建对应的桶.这样子把左边的数据存到桶里面来的时候可以把学生名字经过哈希运算,把相同哈希运算的值的列存放在同一个桶当中.比如Tom.Jerry.Scott经运算以后它们的哈希值是一样的,那么这三个人的信息就会存放在相同的一个桶里面. 有了桶表以后,就能够降低系统的文件块,从而提高查询速度 ○ 如何创建桶表?(用名字进行创建…
Hive的数据存储(外部表) Hive的数据存储(外部表) 外部表 指向已经在HDFS中存在的数据,可以创建Partition 它和内部表在元数据的组织上是相同的,而实际数据的存储则有较大的差异 外部表只有一个过程,加载数据和创建表同时完成,并不会移动到数据仓库目录中,只是与外部数据建立一个链接.而删除一个外部表时,仅删除该链接 ○如何创建一个外部表? hdfs源文件查看 [root@hadooppseudo ~]# ls student0*student01.txt student02.txt…
Hive的数据存储(分区表) Hive的数据存储(分区表) 分区表 Partition对应于数据库的Partition列的密集索引 在Hive中,表中的一个Partition对应于表下的一个目录,所有的Partition的数据都存储在对应的目录中 那么如果我们要查询男性的身高,那么只需要扫描gender='M'的分区就好了 ○如何建立一张基于性别的分区表 create table partition_table(sid int,sname string)partitioned by (gende…
Hive的数据类型 Hive的数据类型 前面说过,Hive是一个数据仓库,相当于一个数据库.既然是数据库,那么就必须能创建表,既然有表,那么当中就有列,列中就有对应的类型 总的来讲,hive的数据类型可以分为三类: 基本数据类型: tinyint/smallint/int/bigint:整数类型 float/double:浮点数类型 boolean:布尔类型 string:字符串类型 复杂数据类型 Array:数组类型,由一系列相同数据类型的元素组成 Map:集合类型,包含key–>value键…
Hive的管理(三) Hive的管理(三) Hive的远程服务 远程服务启动方式 端口号10000 启动方式:hive --service hiveserver (注意:以JDBC或ODBC的程序登录到hive中操作数据时,必须选用远程服务启动方式,否则我们的程序是连接不上的) 输入hive --service hiveserver以后 Starting Hive Thrift Server 然后就能远程登录到hive当中进行数据库操作…
Hive的管理(二) Hive的管理(二) Web界面方式 端口号9999 启动方式:hive --service hwi 通过浏览器来访问:http://<IP地址>:9999/hwi/ web管理器编译与配置 初次执行hive --service hwi的可能会出现一个错误 ls:cannot access /root.training.apache-hive-0.13.0-bin/lib/hive-hwi-*.war:No such file or directory 通常一个web程序…
Hive的管理(一) Hive的管理(一) Hive的启动方式 CLI(命令行)方式 Web界面方式 远程服务启动方式 CLI方式 1. 进入命令行方式 直接输入<HIVE_HOME>/bin/hive的执行程序 或者输入hive --service cli 2. 退出命令行方式 exit; 3. 常用的CLI命令 清屏 ctrl+L或者!clear 查看数据仓库中的表 show tables --查看表列表; 注意在Hive命令行模式下用两个--表示后面的内容属于注释部分,用;表示结束 查看…