大数据
ysjh0014
QQ:3463446481
展开
-
Hive中DML数据操作
1.数据导入 1)向表中装载数据(load)语法load data [local] inpath '/opt/module/datas/student.txt' [overwrite] into table student [partition (partcol1=val1,…)]; load data:表示加载数据 local:表示从本地加载数据到hive...原创 2018-09-07 21:33:55 · 216 阅读 · 0 评论 -
Hive中数据查询
1.基本查询全表和特定列查询1)全表查询hive (default)> select * from emp;2)选择特定列查询hive (default)> select empno, ename from emp; 注意: (1)SQL 语言大小写不敏感。 (2)SQL 可以写在一行或者多行 (3)关键字不能被缩写...原创 2018-09-08 18:05:10 · 1506 阅读 · 1 评论 -
Hive中分桶及抽样查询
1.分桶分桶表数据存储 分区针对的是数据的存储路径;分桶针对的是数据文件 分区提供一个隔离数据和优化查询的便利方式。不过,并非所有的数据集都可形成合理的分区,特别是之前所提到过的要确定合适的划分大小这个疑虑。 分桶是将数据集分解成更容易管理的若干部分的另一个技术数据准备student.txt1001 ss11002 ss...原创 2018-09-08 19:22:15 · 633 阅读 · 0 评论 -
Hive中函数
1.系统自带的函数1)查看系统自带的函数hive> show functions;2)显示自带的函数的用法hive> desc function upper;3)详细显示自带的函数的用法hive> desc function extended upper;2.自定义函数1)Hive 自带了一些函数,比如:max/min 等,但是数量有限,自己...原创 2018-09-08 19:35:39 · 1558 阅读 · 0 评论 -
Hive文件存储格式
Hive 支持的存储数的格式主要有:textfile sequencefile orc parquet1.列式存储和行式存储右边第一个为行式存储,第二个为列式存储 行存储的特点: 查询满足条件的一整行数据的时候,列存储则需要去每个聚集的字段找到对应的每个列的值,行存储只需要找到其中一个值,其余的值都在相邻地方,所以此时 行存储查询的速度...原创 2018-09-08 20:04:18 · 446 阅读 · 0 评论 -
Hive数据类型
1.基本数据类型 Hive数据类型 Java数据类型 长度 例子 TINYINT byte 1byte有符号整数 20 SMALINT short 2byte有符号整数 ...原创 2018-09-05 21:38:47 · 1088 阅读 · 0 评论 -
Zookeeper之JavaAPI应用
1.eclipse环境搭建首先创建一个java工程,然后将解压后的zookeeper文件中的zookeeper-3.4.10.jar、jline-0.9.94.jar、log4j-1.2.16.jar、netty-3.10.5.Final.jar、slf4j-api-1.6.1.jar、slf4j-log4j12-1.6.1.jar拷贝到工程的lib目录,最后build一下,导入工程,并且拷贝...原创 2018-08-31 16:49:27 · 153 阅读 · 0 评论 -
Zookeeper中写数据流程
1.Client向Zookeeper的Server1上写数据,发送一个写请求2.如果Server1不是Leader,那么Server1会把接收到的请求进一步转发给Leader,这个Leader会把写请求广播给各个Leader,各个Server写成功后就会通知Leader3.当Leader收到大多数Server数据写成功了,那么就说明数据写成功了,比如这里有三个节点,只有两个节点数据写成功了...原创 2018-08-30 16:54:23 · 2156 阅读 · 0 评论 -
Zookeeper中监听器原理
1.监听原理1)首先有一个main()线程2)在main线程中创建Zookeeper客户端,会创建两个线程,connect负责网络连接通信,listener负责监听3)通过connect线程将注册的监听事件发送给Zookeeper4)在Zookeeper的注册监听器列表中将注册的监听事件添加到列表中5)Zookeeper监听到有数据或路径变化,就会将这个消息发送给liste...原创 2018-08-24 14:32:31 · 2089 阅读 · 2 评论 -
Zookeeper客户端命令行操作
启动客户端:bin/zkCli.sh显示所有操作命令:help查看当前节点中所包含的内容:ls /查看当前节点内容和详细信息:ls2 /获取节点的值:get /节点名创建普通节点:create /ys ysjh0014.cn 创建短暂节点:create -e /ys ysjh0014.cn使用quit退出客户端后该...原创 2018-08-23 21:45:45 · 7313 阅读 · 0 评论 -
Zookeeper节点类型
节点类型1.Znode有两种类型 短暂(ephemeral): 客户端和服务器端断开连接后,创建的节点自己删除长久(persistent): 客户端和服务器端断开连接后,创建的节点不删除2.Znode有四种形式的目录节点(默认是persistent) 1).持久化目录节点(PERSISTENT)客户端与zookeeper断开连接后,该节点依旧存在 ...原创 2018-08-21 16:17:05 · 830 阅读 · 0 评论 -
Zookeeper选举机制
选举机制1.集群中半数以上机器存活,则集群可用,所以zookeeper集群适合安装在奇数台机器上2.zookeeper集群虽然在配置文件中并没有指定master和slave,但是zookeeper在工作时,是有一个为leader,其他为follower,leader是通过内部的选举机制临时产生的3.下边通过一个例子来说明整个选举的过程假设有五台服务器组成的zookeeper集群,它...原创 2018-08-21 13:28:00 · 177 阅读 · 0 评论 -
Hbase集群搭建
前面已经对Hbase进行过介绍,Hbase是存储在HDFS上的,并且由zookeeper进行管理的,因此安装准备如下:一个hadoop集群一个zookeeper集群,这里重点是讲Hbase集群的搭建,所以默认你已经有了hadoop集群和zookeeper集群,并且已经全部运行了我这里用的是CDH5.3.6,所以不用考虑兼容性问题,角色分配如下:机器一: namenode...原创 2018-08-10 14:19:40 · 316 阅读 · 0 评论 -
Hbase的基本特性及工作机制
基本特性:Hbase是一种nosql数据库,是一种分布式数据库系统,可以提供数据的实时随机读写 数据的最终持久化存储是基于hdfs的,特点是可以随时实现在线扩容 数据的增删改查模块是基于分布式系统的Hbase数据库与关系型数据库不一样: 关系型数据库的表结构是字段名,下面存储的是字段值,而Hbase数据库没有这些,Hbase的表结构是rowkey(行键...原创 2018-07-20 13:50:00 · 2019 阅读 · 0 评论 -
Zookeeper的分布式安装部署
Zookeeper对集群时间同步要求非常严格,所以配置分布式zookeeper集群时,必须要求集群时间同步分布式安装部署的步骤:1.修改zookeeper目录下的conf目录中的zoo_sample.cfgmv zoo_sample.cfg zoo.cfgvi zoo.cfg如图所示在zookeeper目录下创建一个/data/zkData文件夹,然后将dataD...原创 2018-07-16 17:35:01 · 316 阅读 · 0 评论 -
Sqoop导入数据到HDFS的一些常用设置
*只导入表中数据的某些列bin/sqoop import \--connect jdbc:mysql://192.168.83.112:3306/test \--username root \--password root \--table student \--target-dir /user/root/sqoop/import/student \--num-mapp...原创 2018-07-16 14:03:37 · 2297 阅读 · 0 评论 -
使用Sqoop导入数据
1.RDBMS到HDFSSqoop把关系型数据库(这里以mysql为例)的数据导入到HDFS中,主要分为两步 *得到元数据(mysql数据库中的数据) *提交map这样流程就很清晰了,首先连接到mysql数据库得到表中的数据,然后进行map任务即可1)先在mysql中创建一张表create table ys.test(id int(...原创 2018-07-16 11:40:20 · 1439 阅读 · 0 评论 -
Sqoop的安装及基本使用
Sqoop的安装: Sqoop的安装非常简单,首先Sqoop的底层是mapreduce,所以必须依赖于hadoop将Sqoop的压缩包上传解压后,然后修改配置文件即可先将conf目录下的 sqoop-env-template.sh修改为 sqoop-env.sh,然后再如上图所示修改,最后将mysql的驱动包拷贝到sqoop的lib目录下Sqoop的基本使用:s...原创 2018-07-13 16:58:22 · 4155 阅读 · 0 评论 -
大数据协作框架
学习了hadoop和hive之后,就可以对例如日志类型的海量数据进行分析处理,数据存储在hdfs上,用mapreduce或者hive来进行处理,但是你会发现还有一些问题第一个问题: 数据来源?海量数据如何存储到hdfs上? 现实数据来源有两个方面: *RDBMS(oracle mysql DB2.......) ...原创 2018-07-13 09:14:06 · 202 阅读 · 0 评论 -
hive常用的交互操作详解
bin/hive -help1. bin/hive -e "要执行的sql语句";这样可以不用进入交互式命令行去执行sql语句,直接就能显示出结果2. bin/hive -f sql语句脚本目录可以执行sql脚本文件 bin/hive -f sql语句脚本目录 > 执行结果要写到的目录这样可以将执行结果写到指定的位置目录3. bin/hive -i ...原创 2018-07-12 16:47:33 · 987 阅读 · 0 评论 -
hive基本操作及常见属性配置
前面已经对hive进行了简单的讲解,包括如何在hive中创建一张表,并向表中加载数据,下面说一些hive的其它基本操作下边的讲解中的数据库和表为db_hive和student基本操作:1.查看表的信息用desc和select能够查看表的字段和字段下边的数据,这个和sql语句中的一样查看表的具体信息:desc formatted db_hive.student; ...原创 2018-07-12 14:58:54 · 960 阅读 · 0 评论 -
分布式协作服务框架Zookeeper功能简介
Zookeeper是什么: *一个开源的分布式的,为分布式应用提供协调服务的Apache项目 *提供一个简单的原语集合,以便于分布式应用可以在它之上构建更高层次的同步服务 *设计非常易于编程,它使用的是类似于文件系统那样的树形数据结构 *目的就是将分布式服务不再需要由于协作冲突而另外实现协作服务简单...原创 2018-06-28 20:19:16 · 672 阅读 · 0 评论 -
hive安装部署及初步使用
hive是将mapreduce这个过程进行了封装,现在只需要写HSQL语句就可以实现mapreduce,所以hive的运行环境就是hadoop下面的hive安装部署是在hadoop集群已经安装好并且能够运行的前提下,如果没有可以参考我之前的博文,hadoop的伪分布式和分布式都有详细的步骤介绍hive安装部署:我这里的hive是1.2.1版本的,2.0以上的版本和以下的版本底层不一样,...原创 2018-06-20 11:07:40 · 3339 阅读 · 0 评论 -
大数据仓库hive初识简介
hive是FaceBook实现并开源的用于解决海量结构化日志的数据统计,是为了解决Mapreduce编程的不便性以及成本高的问题,可以简化操作什么是hive: 处理的数据储存在HDFS上 底层分析数据的实现是Mapreduce 执行程序运行在yarn上hive是基于hadoop的一个数据仓库工具,可以将结构化的数据文件映射成一张表,并提供类S...原创 2018-06-17 18:05:03 · 329 阅读 · 0 评论 -
hadoop完全分布式搭建
之前的文章都是伪分布式的hadoop集群搭建,而完全分布式集群搭建可以在之前伪分布式的基础上进行修改,但是下面介绍的是完全从零开始搭建的首先要搭建完全分布式集群,至少要三台机器,这里使用的是三台虚拟机,然后进行规划,例如namenode,resourcemanager要放在哪台机器上,下面是我的三台机器的规划机器一: 静态ip:192.168.157.110:nameno...原创 2018-06-08 18:17:18 · 258 阅读 · 1 评论 -
MapReduce编程模板及常见的优化
MapReduce编程模板:public class ModuleWordCount extends Configured implements Tool{// mappublic static class WordCountMap extends Mapper<LongWritable, Text, Text, IntWritable>{@Overrideprotec...原创 2018-06-01 20:10:46 · 361 阅读 · 4 评论 -
MapReduce执行流程Shuffle
Shuffle:*洗牌或者弄乱的意思*Collections.shuffle(List):随机得打乱参数里的元素顺序*MapReduce里Shuffle:描述着数据从map task输出到reduce task输入的这段过程下面就详细介绍Shuffle这段过程:*map task输出的<key,value>对,首先先放在内存(memory)中,然后会spill,溢写...原创 2018-06-01 19:47:04 · 239 阅读 · 0 评论 -
MapReduce框架的数据类型
在之前的文章WordCount编程及执行流程的源码中可以看出,wordcount程序中并没有使用java原生或者封装的数据类型,而是使用Text,LongWritable,IntWritable之类的数据类型,下面就介绍一下MapReduce框架的数据类型*该数据类型都实现Writable接口,以便用这些类型定义的数据可以被序列化进行网络传输和文件存储*基本的数据类型: I...原创 2018-06-01 14:13:29 · 974 阅读 · 0 评论 -
WordCount编程及执行流程
MapReduce程序分为三部分: map reduce driver这里先放出最经典的wordcount程序源码:public class WordCount extends Configured implements Tool{ //mappublic static class WordCountMap extends Mapper&...原创 2018-06-01 00:26:28 · 9032 阅读 · 0 评论 -
并行计算框架Mapreduce简介
hadoop的三个组件,先有mapreduce(分布式计算模型),后有hdfs,知道hadoop才有了yarn,因此掌握mapreduce很有必要,虽然现在都是使用流式处理框架,如storm,spark等,但是这几种框架的思想及原理都来源于mapreduceMapreduce: 思想:分而治之:map(映射)--->对每一部分的数据进行处理,可以高度并行(最核心的部...原创 2018-05-31 13:18:15 · 2701 阅读 · 0 评论 -
yarn对集群资源的管理和调度
*资源调度和资源隔离是yarn作为一个资源管理系统,最重要和最基础的两个功能,资源调度是由ResourceManager完成的,资源隔离是由各个NodeManager实现的*ResourceManager将某个NodeManager上资源分配给任务(这就是所谓的"资源调度")后,NodeManager需按照要求为任务提供相应的资源,甚至保证这些资源应具有独占性,为任务运行提供基础的保证,这就是...原创 2018-05-29 14:42:08 · 1064 阅读 · 0 评论 -
HDFS启动时的safemode模式
安全模式safemode整个过程是从启动datanode到启动完毕 safemode的作用: *等待datanode向namenode发送块的报告 *namenode会将块的个数和fsimage和edits中的作比较,当达到99.999%的阈值时安全模式safemode会自行在30秒后 退出,这30秒的缓冲时间是为了...原创 2018-05-28 15:50:16 · 1533 阅读 · 0 评论 -
NameNode启动过程以及SecondaryNameNode辅助功能
NameNode存储的是整个文件系统的元数据,存放在两个地方: *内存 *本地磁盘: fsimage镜像文件 edits编辑日志文件第一次启动hdfs时会进行格式化操作,目的就是为了生成fsimage镜像文件,用来存储整个文件系统的元数据以下是整个流程:第一次启动: 1)进行hdfs的格式化操作 2)生成fsimage镜像文件 3...原创 2018-05-28 09:44:38 · 1553 阅读 · 0 评论 -
YARN的架构组件功能
hadoop1.0和hadoop2.0的最大区别就在于hadoop2.0多出了一个yarn,hadoop1.0中Mapreduce即承担集群资源的管理和调 度,又承担数据的处理,而hadoop2.0中将这两个任务分离开,yarn来对集群的资源进行管理和调度,Mapreduce来进行数据的处理,并且Mapreduce是运行在yarn上边的,yarn上不仅能运行Mapreduce这种并行计算框架,还...原创 2018-05-29 14:07:51 · 1097 阅读 · 0 评论 -
hadoop集群部署
hadoop集群部署分为三种:本地部署 伪分布式部署 分布式部署分布式部署顾名思义前提要有至少多台服务器,所以这里只介绍前两种部署方式,但是本地部署非常简单,只有几步,按照官方文档完全可以进行,所以下面主要讲伪分布式部署方式伪分布式:1.准备工作:在linux环境下安装jdk和hadoop,上传压缩包----》解压----》检验是否安装成功2.在core-...原创 2018-05-25 21:16:47 · 1953 阅读 · 2 评论 -
Zookeeper的单机模式安装
本文以centos7系统为例,不过无论是虚拟机还是远程云服务器都是一样的操作 1.首先下载zookeeper的压缩包,然后把压缩包传到服务器上,使用命令解压: 2.然后进入到zookeeper目录下,创建文件夹data 3.进入zookeeper的conf目录下,修改zoo_sample.cfg为zoo.cfg 4.编辑zo...原创 2018-04-26 19:18:38 · 254 阅读 · 0 评论 -
Hive中DDL数据定义之数据库操作
1.创建数据库create database 数据库名;避免要创建的数据库已经存在错误,增加if not exists判断(标准写法)create database if not exists 数据库名;创建一个数据库,指定数据库在HDFS上存储的位置:create database 数据库名 location '/你想要存放HDFS中的目录'; *这里会自动生...原创 2018-09-06 11:14:13 · 264 阅读 · 0 评论 -
Hive中DDL数据定义之建表语法
1.创建表建表语法create [external] table [if not exists] table_name [(col_name data_type [comment col_comment], ...)][comment table_comment][partitioned by (col_name data_type [comment col_comment]...原创 2018-09-06 11:36:14 · 571 阅读 · 1 评论 -
Flume使用案例二
之前的案例一只算是一个小demo,在实际生产环境中是不会用Flume来做这种需求的实时监控hive日志,并上传到HDFS中1)拷贝Hadoop相关jar包到Flume的lib目录下(将监控日志实时上传到HDFS中,相当于持有Hadoop的API,才能操作Hadoop)hadoop/common/lib/hadoop-auth-2.5.0-cdh5.3.6.jarhadoop/com...原创 2018-09-15 18:16:27 · 203 阅读 · 0 评论 -
Flume使用案例三
实时读取目录文件到HDFS使用flume监听整个目录的文件1)创建Job的job_flume2.conf文件a3.sources = r3a3.sinks = k3a3.channels = c3# Describe/configure the sourcea3.sources.r3.type = spooldira3.sources.r3.spoolDir = /opt/...原创 2018-09-15 20:48:57 · 171 阅读 · 0 评论