大数据
zxzLife
live the life me want
展开
-
Hadoop中SequenceFile用法
概念SequenceFile是一个由二进制序列化过的key/value的字节流组成的文本存储文件,它可以在map/reduce过程中的input/output 的format时被使用。在map/reduce过程中,map处理文件的临时输出就是使用SequenceFile处理过的。 所以一般的SequenceFile均是在FileSystem中生成,供map调用的原始文件。 特点S...原创 2018-09-11 10:14:47 · 904 阅读 · 0 评论 -
hbase的基本命令
1,查询数据状态(status)hbase(main):017:0> status //hbase(main):017:0>是命令行2,查看名字空间以及名字空间下的表(list_namespace 、 list_namespace_tables)hbase(main):018:0> list_namespacehbase(main):019:0&...原创 2018-08-21 12:37:24 · 2225 阅读 · 0 评论 -
hbase介绍
一,hbase介绍1,Welcome to Apache HBase™Apache HBase™ is the Hadoop database, a distributed, scalable, big data store.hadoop数据库,分布式、可伸缩、大数据存储。适用于对大数据的随机实时读写操作。2,官方给的是他可以存储十亿行 * 百万列 每个数据都可以有上千个版本3...原创 2018-08-21 11:38:24 · 598 阅读 · 0 评论 -
Hadoop, HBase, Hive, ZooKeeper默认端口说明
Hadoop, HBase, Hive, ZooKeeper默认端口说明组件 Daemon 端口 配置 说明 HDFS DataNode 50010 dfs.datanode.address datanode服务端口,用于数据传输 50075 dfs.datanode.http.address http服...转载 2018-08-21 02:41:07 · 798 阅读 · 0 评论 -
eclipse操作zookeeper api编程
本文介绍了,使用zookeeper api实现增删改查和wacth的观察1,准备环境,eclipse,maven,和一个log4j.properties文件,zookeeper环境和一些基础介绍我就不用说了吧,之前在下面两篇文章都已经介绍了zookeeper安装: https://blog.csdn.net/weixin_41122339/article/details/8184079...原创 2018-08-21 02:38:54 · 563 阅读 · 0 评论 -
zookeeper介绍与详细分析
1,什么是zookeeperZookeeper是Google的Chubby一个开源的实现,是hadoop的分布式协调工作 用于名称服务、分组服务、配置信息等等。,它是一个轻量级分布式架构和api实现分布式管理。2,为什么要用到 zookeeper1)大部分分布式应用需要一个主控、协调器或者控制来管理物理分布的子进程(如:资源、任务分配等)2)目前,大部分应用需要开发私有的协调...原创 2018-08-19 22:17:48 · 570 阅读 · 0 评论 -
hive实现手机上网流量和美国ncdc1991年到1992的各年的最高气温统计
一、手机上网流量统计学了这么长的hive的最近打算统计一些hadoop权威指南的一个案例之前使用hadoop的MapReduce写的可以说是很难受了,现在用hive实现一遍,首先我们先实现一个简单的手机上网流量统计,如下是我们的数据是一个5万行的纯文本信息 1,这里是用外机的notepad++打开的,我们使用xftp软件直接考到虚拟机的had用户目录下flowrec.txt 2...原创 2018-08-18 01:05:34 · 358 阅读 · 0 评论 -
hive-事务支持
一、事务 在我们使用的hive中一般他是不会支持事务的,因为hive的存储基于hdfs,hdfs他每个数据都是一块,我们都成为一次写入多次读取,说明hadoop不希望你修改,或者删除数据的一部分,但有些同志没,还是想体验一下删除的快感,那么我们介绍一下关系型数据库的事务: 一、事务的基本要素(ACID) 1、原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不...原创 2018-08-17 23:02:40 · 11948 阅读 · 2 评论 -
hive-索引(加优化)
1,索引hive只有有限的索引功能,hive中没有普通关系型数据库中键的概念,但是还是可以对一些字段建立索引来加速某些操作的,一张表的索引数据在另一张表中,说到索引我们也可以理解为这是hive提供的优化功能。他可以减少MapReduce的输入数据量,因为在索引表中他把每个字段的索引和偏移量都计算出来,可以说查找的速度是很快了,尤其是大数据集1,创建索引我们有一个现成的表zxz_5....原创 2018-08-16 14:36:26 · 5018 阅读 · 0 评论 -
eclipse实现 hbase api(一)
1,环境准备如果对hbase还不了解可以看一下博客:hbase介绍: https://blog.csdn.net/weixin_41122339/article/details/81901041hbase基本命令: https://blog.csdn.net/weixin_41122339/article/details/819050651,jdk 1.82, ...原创 2018-08-21 15:50:36 · 1261 阅读 · 0 评论 -
Phoenix在HBase中的应用
一、前言业务使用HBase已经有一段时间了,期间也反馈了很多问题,其中反馈最多的是HBase是否支持SQL查询和二级索引,由于HBase在这两块上目前暂不支持,导致业务在使用时无法更好的利用现有的经验来查询HBase。虽然HBase本身不支持SQL,但业界还是有现成的方案来支持,如Hive、Impala、Phoenix等。众多方案各有各的优势,本文主要对Phoenix作一个大概的介绍。P...转载 2018-08-27 14:53:18 · 473 阅读 · 0 评论 -
使用kundera jpa操作hbase
1,介绍什么是Kundera 和JPA1,kundera是一个兼容jpa接口的对象映射器。当前kundera支持的数据库有: Cassandra,MongoDB,HBase,Redis,OracleNoSQL,Neo4j,CouchDB,Dudu,Relational databases,Apache Spark2, JPA是Java Persistence API的简称...原创 2018-08-27 20:34:42 · 1849 阅读 · 0 评论 -
phoenix upsert ERROR:MutationState size is bigger than maximum allowed number of bytes
phoenix 插入数据量大时报错:java.sql.SQLException: ERROR 730 (LIM02): MutationState size is bigger than maximum allowed number of bytesphoenix官网可设置参数列表:https://phoenix.apache.org/tuning.html报错如下:解决:...转载 2018-09-07 18:42:59 · 3665 阅读 · 1 评论 -
MapReduce 单词统计
使用hadoop2.7.41,首先准备数据,在网上随便抄了一段文章有一天,一个外来的僧人要到对面村庄去,临行前村民反复叮嘱他说:路途中如若看到路标被风刮倒或被掩埋,要重新树立起来,以免后面的人迷失方向。僧人刚上路时,牢牢记着村民嘱咐,...原创 2018-09-18 08:56:02 · 889 阅读 · 0 评论 -
sqoop导入导出数据
Sqoop是一个RDBMS和hadoop之间高效传输数据工具,本文重点介绍与MySQL的导入导出工作1,安装注意事项 在这里我不得不说一下,sqoop在下载安装时,要注意与mysql驱动的版本兼容性 sqoop真的是兼容性太差,这次我也是栽到坑爬不出来了,具体网上说是mysql驱动版本不一致,小编也是倒腾一天也没见好转,最奇葩的就是可以在hdfs上和导入导出,hi...原创 2018-09-12 22:13:15 · 402 阅读 · 0 评论 -
串行化和反串行化(java,hadoop,avro)实现
1,首先我们先说说什么是串行化和反串行化 串行化也叫序列化:就是把存在于内存的对象数据转化成可以保存成硬盘文件形式去储存 反串行化也叫反序列化:就是把串行化后硬盘文件加载到内存,重新变成对象数据,他们都是以字节流的方式在网络上传输的2,我们在这里结束3种实现串行化的用法java串行化hadoop串行化hadoop之父(Doug Cutting)...原创 2018-09-10 20:59:55 · 805 阅读 · 0 评论 -
Hadoop的datanode 服役(上线)和退役(下线)
Hadoop集群中管理员经常需要向集群中添加节点,或从集群中移除节点,例如:为了扩大存储容量,需要上线一个境界点,相反的,如果想要缩小集群规模,则需要解除节点,如果某些节点出现反常,例如故障率过高或者性能过于低下,则需要下线节点,在上线新节点(而且保证不关闭集群和不损害集群中某一天机器的数据节点数据块丢失情况下),我们需要采用以下方式来解决这些问题1,服役(上线)datanode(nod...原创 2018-09-11 18:36:06 · 2879 阅读 · 1 评论 -
Hadoop(HDFS)管理
hdfs dfsadmin管理命令图1,namenode的本地目录结构 edit //编辑日志 fsimage //镜像文件 version //版本信息1,文件系统客户端执行写操作时(例如创建或者上传等一系列操作),首先会被记录到编辑日志中,namenode在内存维护文件系统的元数据,当编辑日志被修改时,相关...原创 2018-09-11 13:17:49 · 812 阅读 · 0 评论 -
eclipse实现 hbase api进阶(二)
这篇都是纯代码,看基础的可以查看 https://blog.csdn.net/weixin_41122339/article/details/81905663zhe这篇不会像之前写的那么详细了,我就补充一下特殊的属性和方法 1,增删改查增强package myhbasedemo;import java.io.IOException;import java.util.Arr...原创 2018-08-25 22:57:29 · 460 阅读 · 0 评论 -
hbase常用命令(扩展)
1,创建表添加版本(create)版本数,跟列族相关,所有创建时必须指定列族,versions //最大版本数min_versions //默认0TTL //time to live。存活时间,默认'forever' 永不过期,这个属性关系着版本数可以存放多长时间,如果超出指定的时间他会自动减少到最小版本数hbase(main):>create '表名',{NAME...原创 2018-08-25 19:38:45 · 2740 阅读 · 0 评论 -
hive中的分桶-采样,视图,和零碎补充
1,hive分桶表1,在hive中桶表是比表或者分区更加明显的数据范围划分,针对某一列进行桶的组织,队列哈希值,然后除以桶的个数求余:分桶时间数据集分解成更容易管理若干个部分的另一种技术建桶表的格式:1,create table mybuckt(id int ,name string ,age int) clustered by (id) into 100 buckets;分析:...原创 2018-08-16 13:49:01 · 576 阅读 · 0 评论 -
hive-窗口函数
窗口函数与分析函数应用场景: (1)用于分区排序 (2)动态Group By (3)Top N (4)累计计算 (5)层次查询窗口函数FIRST_VALUE:取分组内排序后,截止到当前行,第一个值 LAST_VALUE: 取分组内排序后,截止到当前行,最后一个值 LEAD(col,n,DEFAULT) :用于统计窗口内往下第n行值。第一个参数为列名,第二个参数为往下第n行...转载 2018-08-16 13:47:58 · 238 阅读 · 0 评论 -
hdfs文件写入详情
一,首先我把写入流程图放在这,这些都是看hadoop中的源码得到的,可以说是很详细的流程图了,本文由版本hadoop2.7为主 二,我们把里面的一下细节详细讲一下:首先我们要了解block,paket,chuck:(借鉴https://www.jianshu.com/p/0fe0b1d2ff09)1,block是最大的单位,它值最终存储于DataNode上的...原创 2018-07-31 22:47:31 · 5219 阅读 · 3 评论 -
改变hdfs文件系统存储的块大小
在hadoop2x以后我们的文件系统大小变成了128MB,但有时候对我们初学者并不是一件太好的事情,所有我们只需要在${HADOOP_HOME}/etc/hadoop下的hdfs-site.xml目录下添加一下代码,我设置的是64MB<property> <name>dfs.blocksize</name>...原创 2018-07-23 20:53:48 · 441 阅读 · 1 评论 -
纯java的对HDFS文件操作系统的(增删改查)
版本是2.7.4,直接亮代码! package day_01;import java.io.ByteArrayOutputStream;import java.io.DataOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundExceptio...原创 2018-07-21 22:49:20 · 1357 阅读 · 0 评论 -
hadoop全部jar包(小技巧)
很多刚学hadoop的老哥们,肯定对jar包感到很烦恼,因为hadoop的jar包有很多,如果少一个,肯整个项目都起不来我们有两种解决办法,1,就是我们要将的在hadoop的安装包里寻找jar包,2,就是maven,maven下次会说到好,我们言归正传!(这里我们用的是2.7.4的版本)1,把hadoop的安装包解压到我们熟悉的windows系统上,解压后我们看一下他们的目录结构:...原创 2018-07-21 02:02:24 · 25454 阅读 · 1 评论 -
hadoop基本了解
一,hadoop基本了解 1)hadoop的端口: 50070 //他是namenode在web ui的一个http端口(自然他也包括datanode里面的内容) 50075 //他是datanode在web ui的一个http端口(不经常用到) 50090 //他是second...原创 2018-07-21 01:35:00 · 299 阅读 · 0 评论 -
hadoop目录介绍
我们直奔话题!一,首先我们进入hadoop目录下可以看到以下文件:我们挑重要的说:1,bin: 存放的是我们用来实现管理脚本和使用的脚本的目录,我们对hadoop文件系统操作的时候用的就是这个目录下的脚本常用的命令脚本(我们忽略.cmd的文件这是windows下的使用的文件):hdfs hadoop yarn 来执行对文件操作二,sbin: 存放的是我们管理脚本的所在目...原创 2018-07-19 20:34:58 · 9668 阅读 · 2 评论 -
十分钟了解Hadoop核心机制
一,什么是hadoop1.Hadoop核心思想 Hadoop是在分布式服务器集群上存储海量数据并运行分布式分析应用的一个平台,其核心部件是HDFS与MapReduce HDFS是一个分布式文件系统:传统文件系统的硬盘寻址慢,通过引入存放文件信息的服务器Namenode和实际存放数据的服务器Datanode进行串接。对数据系统进行分布式储存读取。 MapReduce是一个计算框...转载 2018-07-19 16:38:17 · 325 阅读 · 0 评论 -
什么是大数据
一、什么是大数据? 套用官方点的解释就是: "大数据"是一个体量特别大,数据类别特别大的数据集,并且这样的数据集无法用传统数据库工具对其内容进行抓取、管理和处理。 "大数据"首先是指数据体量(volumes)?大,指代大型数据集,一般在10TB?规模左右,但在实际应用中,很多企业用户把多个数据集放在一起,已经形成了PB级的数据量;其次是指数据类别(variety)大,数据来自...原创 2018-07-19 16:16:46 · 1247 阅读 · 0 评论 -
利用java代码实现hadoop机架感知
一,什么是机架感知和它的好处1,什么是机架感知:机架感知就是告诉Hadoop集群中那台机器属于哪个机架,Hadoop对机架的感知并非自适应,hadoop集群分辨某台slave机器是属于哪一个rack并非智能,这样hadoop的namenode启动初始化时,会将这些机器与rack的对应信息保存在内存中,用来作为接下来所有的HDFS的写块操作分配给datanode列表时,尽量将复本分布到不同...原创 2018-08-02 16:09:47 · 647 阅读 · 0 评论 -
hive的HiveServer2/beeline配置及使用
第一:修改 hadoop 集群的 hdfs-site.xml 配置文件:加入一条配置信息,表示启用 webhdfscd /home/hadoop/apps/hadoop-2.7.5/etc/hadoop<property> <name>dfs.webhdfs.enabled</name> <value>true<...转载 2018-08-08 23:51:37 · 2063 阅读 · 0 评论 -
hive的基本操作
一,认识hive1,hive介绍The Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage using SQL. Structure can be projected onto dat...原创 2018-08-09 22:22:50 · 351 阅读 · 0 评论 -
hive中order by,sort by,distribute by,cluster by作用和用法
1.order by 和 sort by1.order by hive中的order by 语句和其他的sql方言中定义是一样的,其会对查询结果集执行一个全局排序,这也就是说会有一个所有的数据都通过一个reduce进行处理的过程,对于大数据集,这个过程将消耗很大的时间来执行。2,sort by hive增加了一个可供选择的方式,也就是sort by ,其实会...原创 2018-08-15 21:25:15 · 23342 阅读 · 4 评论 -
hive的join使用
1,inner join内连接(inner join)中,只有进行连接的两个表中都存在与连接标准相匹配的数据才会被保留下来。列如,如下我们有两张表员工表(employee)和办公表(office)连接条件是oid字段,内容必须相等,我们也称oid字段这个查询语句中连接关键字。提供两个表的数据:我们这里提供两种写法(第一种中的inner join 可以简写 join)1,sel...原创 2018-08-15 17:43:11 · 6990 阅读 · 0 评论 -
网络拓扑与Hadoop
1,首先在本地网络中,两个节点被称为"彼此近邻"是什么意思?在海量数据处理中,其主要限制因素是节点之间数据的传输速率--------带宽很稀缺、这里的想法是将两个节点间作为距离的衡量标准。 2,hadoop网络拓扑的实现不用衡量节点之间的带宽-----实际上很难实现(他需要一个稳定的集群,并且在集群中两两节点对数量是节点数量的平方)----Hadoop为此采用一个简单的方法:把网...原创 2018-08-12 19:19:59 · 888 阅读 · 0 评论 -
hadoop中的hdfs数据块为什么这么大
HDFS的块比磁盘的块大,其目的是为了最小化寻址开销,如果快设置的足够大,从磁盘传输数据的时间会明显大于定位这个块开始位置所需的时间,因而,传输一个由多个块组成的文件的时间取决于磁盘传输速率。我们来做个速算,如果寻址的时间约为10ms,而传输速率为100MB/s,为了使寻址时间仅占传输时间的1%,我们要将块大小设置为100mb。默认是128已经是很接近了,以后随着新一代磁盘驱动器传输速率的提...原创 2018-08-12 18:59:29 · 1509 阅读 · 0 评论 -
eclipse使用jdbc连接hive操作
操作版本: jdk1.8 hadoop-2.7.4 hive-2.3.31,我们创建的maven项目在pom文件下添加依赖信息如下<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</...原创 2018-08-12 18:41:00 · 1748 阅读 · 0 评论 -
hive中的beeline上执行一些简单命令
1,hive cli 和 beeline hive提供了很多种连接方式: cli //基于Apache thrift beeline //基于jdbc2,查看hive服务与帮助 hive --service cli --help //查看hive cli帮助文档 hiv...原创 2018-08-12 18:15:30 · 18225 阅读 · 1 评论 -
hive分区表详细介绍
一,什么是分区表以及作用数据分区的概念以及存在很久了,通常使用分区来水平分散压力,将数据从物理上移到和使用最频繁的用户更近的地方,以及实现其目的。 ...原创 2018-08-11 20:20:50 · 53192 阅读 · 3 评论