
大数据
运动人生
本人很懒,什么都没留下!
展开
-
Hive概述、内部表、外部表、分区表的操作
Hive概述、内部表、外部表、分区表的操作一、Hive概述 Hive是基于Hadoop的一个数据仓库工具。可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 Hive是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取、转化、加载(ETL Extract-Transform-Lo...原创 2018-11-09 16:48:08 · 510 阅读 · 0 评论 -
flume
flume一、event 事件 flume的核心是把数据从数据源(source)收集过来,在将收集到的数据送到指定的目的地(sink)。为了保证输送的过程一定成功,在送到目的地(sink)之前,会先缓存数据(channel),待数据真正到达目的地(sink)后,flume在删除自己缓存的数据。在整个数据的传输的过程中,流动的是event,即事务保证是在event级别进行的。那么什么是eve...原创 2018-11-05 16:12:39 · 245 阅读 · 0 评论 -
zookeeper
zookeeper1、zk解决的问题: 1.分布式环境下的数据一致性。 2.分布式环境下的统一命名服务。 3.分布式环境下的配置管理。 4.分布式环境下的分布式锁。单台机器使用的锁:同步代码块、重入锁。但是在分布式环境这个锁就发挥不出来作用。分布锁分为共享锁和排他锁。 5.集群管理问题。2、分布式编程容易出现的问题: 1.死锁 2.活锁 活锁定义:在程序里,由...原创 2018-11-04 16:34:59 · 212 阅读 · 0 评论 -
Yarn
Yarn一、Yarn概述 Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。 YARN的基本思想是将JobTracker的两个主要功能(资源管理和作业...原创 2018-11-06 20:37:37 · 310 阅读 · 0 评论 -
MR计算框架特点
MR计算框架特点1.数据划分和计算任务调度: 系统自动将一个作业(Job)待处理的大数据划分为很多个数据块,每个数据块对应于一个计算任务(Task),并自动 调度计算节点来处理相应的数据块。作业和任务调度功能主要负责分配和调度计算节点(Map节点或Reduce节点),同时负责监控这些节点的执行状态,并 负责Map节点执行的同步控制。2.数据/代码互定位(数据本地化策略) 为了减少数据通...原创 2018-11-07 10:40:54 · 909 阅读 · 1 评论 -
MapReduce实现WordCount以及聊聊Shuffle过程
MapReduce实现WordCount一、Mapper代码public class WCMapper extends Mapper<LongWritable, Text, Text, LongWritable> { /** * 一个Block对应一个Mapper * 一个行出发一次Mapper中的map * Key:map的输入,是当前处理的行在文件中的偏移量...原创 2018-11-06 14:40:06 · 292 阅读 · 0 评论 -
Hbase常用面试题和高级查询
Hbase常用面试题和高级查询一、HBase的工作方式 hbase表中的数据按照行键的字典顺序排序,hbase表中的数据按照行的的方向切分为多个region,最开始只有一个region 随着数据量的增加 产生分裂 这个过程不停的进行 一个表可能对应一个或多个region。region是hbase表分布式存储和负载均衡的基本单元 一个表的多个region可能分布在多台HRegionServer...原创 2018-11-15 17:01:34 · 1364 阅读 · 0 评论 -
kafka的特点和优势
kafka的特点和优势一、kafka的特点 高吞吐量:Kafka 每秒可以生产约 25 万消息(50 MB),每秒处理 55 万消息(110 MB) 持久化数据存储:可进行持久化操作。将消息持久化到磁盘,因此可用于批量消费,例如 ETL,以及实时应用程序。通过将数据持久化到硬盘以及replication 防止数据丢失。 分布式系统易于扩展:所有的 producer、broker 和 ...原创 2018-11-15 22:44:51 · 22546 阅读 · 0 评论 -
Hive执行中map的数量和reduce的数量怎么控制
一、 控制hive任务中的map数:通常情况下,作业会通过input的目录产生一个或者多个map任务。主要的决定因素有: input的文件总个数,input的文件大小,集群设置的文件块大小(目前为128M, 可在hive中通过set dfs.block.size;命令查看到,该参数不能自定义修改);举例:a) 假设input目录下有1个文件a,大小为780M,那么had...转载 2018-11-16 21:25:47 · 756 阅读 · 0 评论 -
sqoop常用问题总结
sqoop常用问题总结参考这篇博客:sqoop使用经验总结及问题汇总转载 2018-11-18 15:09:47 · 395 阅读 · 0 评论 -
Hive中json格式数据的处理
Hive中json格式数据的处理参考博客:Hive中自定义UDF函数解析json格式数据转载 2018-11-18 15:45:13 · 464 阅读 · 0 评论 -
sqoop导入和导出数据脚本
sqoop导入和导出数据脚本一、将mysql数据导入到Hivesqoop import \--connect jdbc:mysql://:3306/bd?characterEncoding=utf-8 \--username root \--password '' \--table tongji_1 \--delete-target-dir \--hive-import \--...原创 2018-11-18 16:43:02 · 1047 阅读 · 0 评论 -
操作hdfs的api
操作hdfs的api一、连接namenode以及读取hdfs中指定文件public void testConnectNamenode() throws Exception{ Configuration conf=new Configuration(); FileSystem fs=FileSystem.get(new URI("hdfs://192.168.234.21:9000"), c...原创 2018-11-06 10:22:12 · 179 阅读 · 0 评论 -
hdfs读写删文件流程
hdfs读取文件和写文件流程一、HDFS体系架构图 1.namenode 管理元数据,不存储文件块 2.Metadata 元数据(文件所在的目录,replication) 3.Datanode 存储数据块的 4.Rack 机架 5.Block 文件块 6.Client 客户端二、HDFS读取(下载)文件的流程 1.Open file 是要获取HDFS上指定文件的...原创 2018-11-06 10:47:29 · 4160 阅读 · 0 评论 -
hdfs的特点
hdfs的特点一、hdfs的优点 1.支持海量数据的存储:一般来说,HDFS存储的文件可以支持TB和PB级别的数据。 2.检测和快速应对硬件故障:在集群环境中,硬件故障是常见性问题。因为有上千台服务器连在一起,故障率很高,因此故障检测和自动恢复hdfs文件系统的一个设计目标。假设某一个datanode挂掉之后,因为数据是有备份的,还可以从其他节点里找到。namenode通过心跳机制来检测...原创 2018-11-06 11:24:39 · 17262 阅读 · 0 评论 -
Hive数据类型、 explode、自定义UDF
Hive数据类型、 explode、自定义UDF一、基本类型二、复杂类型三、数组类型 array 案例一、 元数据: 100,200,300 200,300,500 建表语句:create external table ex(vals array) row format delimited fields terminated by ‘\t’ collection ...原创 2018-11-09 17:38:17 · 1288 阅读 · 0 评论 -
Hive常用函数和分桶表
Hive常用函数和分桶表一、字符串常用函数二、分桶表 分桶操作是更细粒度的分配方式,一张表可以同时分区和分桶,分桶的原理是根据指定的列的计算hash值模余分桶数量后将数据分开存放。 Hive的分桶实际上就是Hadoop的分区,有几个桶,就用几个reduce任务来处理。 需要注意的是:分桶表必须是内部表。因为只有在创建表的时候才能指定桶的数量,然后在往表里插入数据的...原创 2018-11-09 20:30:19 · 798 阅读 · 0 评论 -
sqoop安装及指令
一、Sqoop介绍: sqoop是Apache 提供的工具,用于hdfs和关系型数据库之间数据的导入和导出,可以从hdfs导出数据到关系型数据库,也可以从关系型数据库导入数据到hdfs。二、实现步骤: 1.准备sqoop安装包,官网地址:http://sqoop.apache.org 2.配置jdk环境变量和Hadoop的环境变量。因为sqoop在使用是会去找环境变量对应的路径,从而...原创 2018-11-09 21:03:59 · 274 阅读 · 0 评论 -
Hive体系结构
Hive体系结构一、用户接口 用户接口主要有三个:CLI,JDBC 和 WUI 1.CLI,最常用的模式。实际上在>hive 命令行下操作时,就是利用CLI用户接口。 2.JDBC,通过java代码操作,需要启动hiveserver,然后连接操作。 3.WUI,是通过浏览器访问Hive。但是需要启动hwi服务,执行:./hive service hwi & ...原创 2018-11-09 21:22:23 · 420 阅读 · 0 评论 -
Spark本地调试和程序重启checkpoint恢复碰到的问题
Spark本地调试和程序重启checkpoint恢复碰到的问题1、产生问题的背景 今天自测Spark程序碰到两个问题,(1)、启动流式程序报错 (2)、重启Spark程序,同一个对象的部分数据恢复了,一部分没有恢复 第一个问题的报错信息: 第二个问题的结果信息:2、排查问题的原因 第一个问题的原因是:没有配置hadoop的环境变量,导致在写checkpoint数据的时候报错了...原创 2018-09-29 20:34:03 · 1522 阅读 · 0 评论 -
Spark线上日志处理
spark线上日志处理1、日志产生的背景 多个spark程序在线上跑,每天打印很多的info日志和业务中的调试日志2、日志导致的问题 由于程序中的日志没有控制好,导致磁盘空间很快就被占满了,最终hdfs的datanode和namenode挂掉,最终整个集群瘫痪3、解决办法 1)首先将spark的conf目录下log4j.properties默认info级别改成warn级别 ...原创 2018-09-21 18:11:20 · 1095 阅读 · 0 评论 -
spark 生产线上碰到的问题
spark 生产线上碰到的问题1、第一张错误信息图片 2、第二张错误信息图片 3、第三张错误信息图片 4、第四张sparkUI上显示的信息 一、产生事故的背景: 上线一个疲劳驾驶事件处理的流式分析,由于中间业务处理的代码逻辑有变更,导致需要重新部署。每次都是将checkpoint中的元数据删掉,因为已经过了比较长的时间了,而且又用到updateStateByKey...原创 2018-09-08 16:38:21 · 1149 阅读 · 0 评论 -
服务器被挖矿
服务器被挖矿1、产生事故的背景 最近购买的服务器CPU使用率经常达到100%,收到短信和邮件通知 2、产生事故的原因 服务部被黑客通过yarn的8088端口访问进来,执行了一些脚本,导致cpu使用很高 3、解决办法 (1)将crontab -e命令查询可疑定时脚本,将这些删除 (2)查看/usr/tem目录下的可疑文件,进行删除 (3)查看/var/spool...原创 2018-09-17 17:38:40 · 335 阅读 · 0 评论 -
Hbase生产线上碰到的问题
Hbase生产线上碰到的问题1、产生事故的背景 spark做轨迹异常处理,计算用户的在线时间 2、分析事故产生的原因 3、最后解决的办法...原创 2018-11-01 18:14:55 · 388 阅读 · 0 评论 -
Hadoop的JVM重用机制和小文件解决
Hadoop的JVM重用机制和小文件解决一、hadoop2.0 uber功能 1) uber的原理:Yarn的默认配置会禁用uber组件,即不允许JVM重用。我们先看看在这种情况下,Yarn是如何执行一个MapReduce job的。首先,Resource Manager里的Application Manager会为每一个application(比如一个用户提交的MapReduce Job)...原创 2018-11-07 10:34:02 · 2237 阅读 · 0 评论 -
Hadoop压缩
Hadoop压缩1、2种Hadoop自带压缩格式的特征比较2、gzip压缩 优点:压缩率比较高,而且压缩/解压速度也比较快;hadoop本身支持,在应用中处理gzip格式的文件就和直接处理文本一样;有hadoop native库;大部分linux系统都自带gzip命令,使用方便。缺点:不支持split。3、bzip2压缩 优点:支持split;具有很高的压缩率,比gzip压缩率都高;...原创 2018-11-06 17:21:55 · 204 阅读 · 0 评论 -
Hadoop调优策略
Hadoop调优策略一、调优策略 1.调节溢写缓冲区大小,减少Spill溢写次数,减少磁盘I/O次数 2.加入Combiner中间过程,在溢写缓冲区就会发生Combiner,好处是:比如——hello 1 hello 1一共占14个字节,Combiner 后,变为hello 2 。所以也能够间接减少Spill溢写次数,从而提高性能。 3.加入Combiner中间过程,在Merger过...原创 2018-11-06 15:24:03 · 644 阅读 · 0 评论 -
hadoop
hadoop一、配置主机名 执行:vim /etc/sysconfig/network(需要重启)。 临时使用:hostname hadoop01二、配置hosts文件 执行:vim /etc/hosts(配置主键名和ip的映射关系)三、配置免秘钥 执行:ssh-keygen 然后一直回车 生成节点的公钥和私钥,生成的文件会自动放在/root/.ssh目录下。然后把公钥发...原创 2018-11-06 09:46:56 · 223 阅读 · 0 评论