自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 SparkStreaming

流(Streaming),在大数据时代为数据流处理,就像水流一样,是数据流;既然是数据流处理,就会想到数据的流入、数据的加工、数据的流出。日常工作、生活中数据来源很多不同的地方。例如:工业时代的汽车制造、监控设备、工业设备会产生很多源数据;信息时代的电商网站、日志服务器、社交网络、金融交易系统、黑客攻击、垃圾邮件、交通监控等;通信时代的手机、平板、智能设备、物联网等会产生很多实时数据,数据

2018-02-08 15:51:43 361

原创 Kafka

======================================================================根据官网的介绍,ApacheKafka®是一个分布式流媒体平台,它主要有3种功能:  1:发布和订阅消息流,这个功能类似于消息队列,这也是kafka归类为消息队列框架的原因  2:以容错的方式记录消息流,kafka以文件的方式来存储消息

2018-02-01 16:30:04 971

原创 SparkSQL DSL开发

import org.apache.spark.sql.SQLContextimport org.apache.spark.sql.expressions.Windowimport org.apache.spark.sql.hive.HiveContextimport org.apache.spark.{SparkConf, SparkContext}case class Person

2018-01-30 16:18:06 2631

原创 SparkSQL

============SparkSQL的前身Shark概述=================================在三四年前,Hive可以说是SQL on Hadoop的唯一选择,负责将SQL编译成可扩展的MapReduce作业。鉴于Hive的性能以及与Spark的兼容,Shark项目由此而生。Shark即Hive on Spark,本质上是通过Hive的HQL解析,把HQL翻

2018-01-30 11:51:54 398

原创 SparkCore

SparkCore========================================MapReduce  分布式计算框架  缺点:   -1.执行速度慢      IO瓶颈:磁盘IO、网络IO      shuffle的机制:数据需要输出到磁盘,而且每次都需要进行排序的操作   -2. 框架的缺陷      只有map和reduce两个操作

2018-01-29 17:02:04 1931

原创 Scala基础

Scala基础教程:http://www.runoob.com/scala/scala-tutorial.html值与变量(推荐使用val,第一选择使用val,如果业务需要,才允许使用var)  val和var的区别?  val: 值,赋值后,数据不可变  var: 变量,赋值后,数据可变  定义格式:    [var or val] name[:type]

2018-01-29 11:40:57 177

原创 HUE简介及部署集成

一:Hue简介及核心功能描述Hue是一个开源的Apache Hadoop UI系统,由Cloudera Desktop演化而来,最后Cloudera公司将其贡献给Apache基金会的Hadoop社区,它是基于Python Web框架Django实现的。通过使用Hue我们可以在浏览器端的Web控制台上与Hadoop集群进行交互来分析处理数据,例如操作HDFS上的数据,运行MapRed

2017-12-26 10:30:01 988

原创 Oozie的使用

一:Oozie运行examples。1、解压示例包$ tar -zxf oozie-examples.tar.gz -C ./2、$ bin/hdfs dfs -put /opt/cdh5/oozie-4.0.0-cdh5.3.6/examples/3、编写job.properties# http://www.apache.org/licenses/LICENSE-2

2017-12-25 09:35:47 823

原创 Oozie的简介及安装部署

Oozie是任务调度框架,简单的说Oozie是一个工作流引擎。只不过它是一个基于Hadoop的工作流引擎,在实际工作中,遇到对数据进行一连串的操作的时候很实用,不需要自己写一些处理代码了,只需要定义好各个action,然后把他们串在一个工作流里面就可以自动执行了,对于大数据的分析工作非常有用。     Oozie有3个主要概念workflow  工作流coordinator

2017-12-22 11:05:03 269

原创 Flume使用

flume使用1、source读取hive日志2、选择mem channel3、sink-》日志文件4、给agent起一个名称,名称任意5、初始化三大组件的名称a1.sources = s1a1.channels = c1a1.sinks = k16、channel的存储是按照event来计算的7、运行格式:需求:source:读hive日志  ch

2017-12-20 16:31:41 188

原创 实时收集文件框架之Flume

Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。Flume提供了从console(控制台)、RPC(Thrift-RPC)、text(文件)、tail(UNIX tail)、syslog(syslog日志

2017-12-20 15:49:56 306

原创 Hadoop压缩

1、MR流程input -> map -> shuffle(combiner/compress) -> reduce -> output2、Hadoop设置压缩-》解压压缩包 2.5.0-native-snappy.tar.gz-》解压到hadoop/lib/native替换下面的文件-》检验是否支持压缩格式$ bin/hadoop checknativesnappy:

2017-12-14 15:08:43 175

原创 hive数据倾斜问题

一、hive数据倾斜1、MR由于某个key值分布过多,导致某个reduce运行速度严重影响了整个job的运行2、思考问题原因-》比如:分区阶段-》解决的办法1:自定义分区规则,partitioner-》解决的办法2:针对于key加入随机数00 1reduce101 2reduce202 3reduce303 3reduce104 3red

2017-12-13 14:43:03 191

原创 Hive结合shell脚本实现自动化业务

【案例】hive脚本加载数据到hive分区表access_logs/20170610/2017061000.log2017061001.log2017061002.log......                     2017061023.log二级分区:天/小时crontab+shell 实现自动调度。建库:create database loa

2017-12-13 10:23:10 5536

原创 Hbase性能优化

相关参数说明:如果不希望自动触发溢写,就将值调大 hbase.hregion.memstore.flush.size    134217728一般在企业中这个参数是禁用的hbase.hregion.majorcompaction    604800000直接将值设置为0就可以了,表示禁用何时执行split

2017-12-07 19:36:44 179

原创 Hbase的热点问题

hbase热点1、一张表最初只有一个region2、实际工作中可能会创建多个region(预分区)五、hbase rowkey设计1、长度原则rowkey的长度就是大小,最长:64KB,一般建议:10-100个字节rowkey不宜过长2、个数原则:列簇不能过多3、散列原则将多个字段进行组合timestamp+uuid 容易引发热点问题 适合于经常通过

2017-12-07 19:23:39 368

原创 Hbase与Mapreduce集成的案例

【需求】将info列簇中的name这一列导入到另外一张表中去建表:create 'test:stu_info','info','degree','work'插入数据:6个rowkey 3个列簇put 'test:stu_info','20170222_10001','degree:xueli','benke'put 'test:stu_info','20170222_100

2017-12-07 19:13:02 443

原创 HBase与MapReduce集成

HBase与MapReduce集成1、集成的模式-》从hbase读数据,就是将hbase数据作为map的输入-》将数据写入hbase,将hbase作为reduce的输出-》inputformat输入-》key默认类型longwritable+value text类型-》outputformat输出-》写入HDFS文件-》上面两种的结合,从hbase读,再写入hbase,

2017-12-07 18:53:24 418

原创 Hbase数据库的常用操作命令

HBase的使用1、自带了shell命令行$ bin/hbase shell2、输入help获取帮助信息3、shell命令行的删除,需要按住ctrl+删除键才可以删除4、list列出当前数据库中的表5、list_namespace列出当前数据库中的所有namespace相关Hbase数据库的常用操作命令:http://blog.csdn.net/scutshuxue

2017-12-07 18:43:45 21319

原创 Hbase安装流程

HBase环境部署(伪分布)https://archive.apache.org/dist/hbase/hbase-0.98.6/注意:需要先把Hadoop和zookeeper启动-》底层存储依赖HDFS-》元数据信息依赖Zookeeper1、分布式主从架构-》主节点:Master -》负责管理型执行-》从节点:RegionServer -》负责具体的执行

2017-12-07 18:32:05 157

原创 大数据之Hbase

HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的

2017-12-07 18:21:40 232

原创 Hive的调优

hive的调优1、表和sql的优化-》大表拆分成小表、分区表、外部表、临时表都是属于优化的一块-》分区表:检索更快速-》外部表:数据安全性-》临时表&拆分子表:简化复杂的SQL以及需求2、SQL可以从join和过滤两方面深入3、MR优化-》map和reduce的个数-》一个分片就是一个块,一个块对应一个maptask-》Hadoop源码中有一个计算公式m

2017-12-04 15:59:38 222

原创 Hive日志分析案例

日志分析案例1、分析流程-》需求分析-》数据采集-》数据清洗-》数据分析-》结果展示2、【需求分析】-》日期-》按照日期进行分组,基于时间维度的分析-》可以考虑建分区表,分区给定日期-》登录人数,代表的就是会员,使用账号登录的人-》登录之后会产生一个会员ID-》处理的时候可以看会员ID有没有值-》PV-》count(url)-》UV

2017-12-04 15:53:41 993

原创 使用hive和sqoop来实现统计24小时每个时段的PV和UV

【案例】使用hive和sqoop来实现网站基本指标,PV和UV1、PV统计网页浏览总量2、UV去重-》【需求】统计24小时每个时段的PV和UV-》建分区表,按天一级,按小时一级,多级分区-》第一步分析需求-》第二步获取时间字段,天,小时-》对于时间格式进行数据清洗,比如:2015-08-28 18:10:00,从中获取日期和小时-》获取需要有用的字段:id、url、

2017-11-30 16:55:42 3094 1

原创 Hadoop之Sqoop

sqoop Sqoop(发音:skup)是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS及其相关系统(Hbase,Hive),也可以将HDFS的数据导进到关系型数据库中。Sqoo

2017-11-30 11:39:24 227

原创 CDH版 Hadoop Hive Sqoop 安装

快速搭建CDH版Hadoop1、先关闭已经启动的所有服务2、规划目录结构3、解压Hadoop到指定目录4、修改三个*-env.sh配置文件,Java路径  echo $JAVA_HOME 获取 Java路径     三个文件为: hadoop-env.sh yarn-env.sh mapred-env.sh 5、修改core-stie.xml        fs.d

2017-11-29 14:49:16 569

原创 Hadoop之Hive

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。Hive是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列

2017-11-27 17:15:01 353

原创 MapReduce之二次排序

总结二次排序的要点:1、组合key,自定义数据类型-》继承WritableComparable2、保证原来的分组规则不变,自定义分组规则-》继承RawComparator3、保证原来的分区规则不变,自定义分区规则-》继承partitioner代码实现如下:主类:package com.bigdata.mapreduce;import java.io.IO

2017-11-21 15:17:13 196

原创 Hadoop之HA高可用性

HA存在的背景:HA的工作原理图:HDFS HA高可用性1、active namenode对外提供服务和standby namenode时刻待机准备的2、保证两个namenode任何时候都是元数据同步的3、standby namenode同样需要去读取fsimage和edits文件-》edits变化后的数据文件同样也是需要实时

2017-11-17 09:50:20 7597

原创 Hadoop之Zookeeper

什么是Zookeeper ZooKeeper 顾名思义 动物园管理员,他是拿来管大象(Hadoop) 、蜜蜂(Hive) 、 小猪(Pig)  的管理员, Apache Hbase和 Apache Solr 以及LinkedIn sensei  等项目中都采用到了Zookeeper。ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它使用的是类似于文件系统那样的树形数据结

2017-11-16 16:00:04 192

原创 MapReduce之combine

Combine优化机制简介 MapReduce框架的运作基于键值对,即数据的输入是键值对,生成的结果也是存放在集合里的键值对,其中键值对的值也是一个集合,一个MapReduce任务的执行过程以及数据输入输出的类型如下所示,这里我们定义list表示集合:   map(K1, V1) -> list(K2, V2)   combine(K2, list(V2)) -> list(K2,

2017-11-16 10:44:07 2303

原创 MapReduce之shuffle

彻底理解MapReduce shuffle过程原理 MapReduce的Shuffle过程介绍Shuffle的本义是洗牌、混洗,把一组有一定规则的数据尽量转换成一组无规则的数据,越随机越好。MapReduce中的Shuffle更像是洗牌的逆过程,把一组无规则的数据尽量转换成一组具有一定规则的数据。为什么MapReduce计算模型需要Shuffle过程?我们都知道MapReduc

2017-11-16 09:11:06 224 1

原创 eclipse在window环境下配置hadoop插件

1、hadoop-2.5.0.tar.gz解压到windows本地2、windows下安装JDK和eclipse-》JAVA_HOME-》PATH3、解压maven到windows本地4、在windows本地新建一个m2命名的目录5、将repository仓库放到m2目录下6、到maven目录下的conf目录中找到settings.xml文件拷贝到m2目录下7、回到

2017-11-16 08:51:19 299

原创 Linux克隆虚拟机

1、注意克隆先关闭所有正在运行的服务,然后关机2、虚拟机-》管理-》克隆-》虚拟机当前状态-》创建完整克隆-》修改名称以及本地磁盘存放的位置-》等待克隆完成3、克隆完成之后进入新的虚拟机进行配置更改-》IP、主机名、、映射、mac地址等等信息都要修改,修改后建议重启下系统4、建议克隆两台即可,加上原来的那台组成三台模拟一个分布式环境就可以了-》不需要克隆太多

2017-11-15 17:03:28 280

原创 SSH免密码登陆配置

SSH免密码登录        rm -rf ./*   删除 .ssh目录下的这个文件  known_hosts1、$ ssh-keygen -t rsa-》-t代表指定加密类型-》rsa代表加密类型中的一种-》可以直接ssh-keygen-》因为系统默认的就是rsa类型2、发送$ ssh-copy-id bigdata-01.yushu.com3、一般不建议

2017-11-15 16:23:17 111

原创 Hadoop之历史服务器与日志聚合和文件权限

1、历史服务器是一个轻量级的2、 配置mapred-site.xml文件,指定两个参数mapreduce.jobhistory.addressbigdata-01.yushu.com:10020mapreduce.jobhistory.webapp.addressbigdata-01.yushu.com:198883、启动:$ sbin/mr-job

2017-11-15 16:09:52 598

原创 Hadoop之 NameNode---DataNode---SecondaryNameNode

1、格式化namenode之后会生成元数据文件,文件系统会有一个根目录2、元数据存放在namenode内存中(启动以后)3、namenode在启动之前,元数据同样会在本地的文件系统中4、fsimage元数据镜像文件-》存储元数据,namenode在启动的时候会读取fsimage文件5、用户对于HDFS文件系统的任何行为操作都会导致元数据发生变化-》内存肯定会知道6、对于HDFS

2017-11-15 16:04:42 259

原创 Hadoop环境部署

1、按照官方的文档进行配置http://hadoop.apache.org/docs/r2.5.2/hadoop-project-dist/hadoop-common/SingleCluster.html2、上传下载工具lrzsz使用yum进行在线的安装:yum install lrzsz命令:上传rz、下载sz3、在试验环境下为了方便起见,可以为普通用户设置比较大的管理权限

2017-11-15 15:53:04 207

原创 Linux中基本的常用命令

1、命令的格式:命令本身 【-可选项】【操作的对象】ls -l /opt由于单个命令表示一种功能,那么使用不同的选项用来区分不同的功能某些命令不需要加任何的选项就可以执行,也不需要操作对象命令之间以空格隔开2、命令:pwd-》作用:显示当前用户所在的路径,绝对路径显示3、命令:clear-》作用:清楚屏幕,刷新屏幕-》快捷键:ctrl+l 同样的清除屏幕的功

2017-11-15 15:35:58 295

原创 Linux基本环境设置

Linux基本环境设置    1、ifconfig-》系统管理型命令,查看系统的网络基本信息2、虚拟机的网络连接方式-》桥接-》自动获取IP地址,与本机物理网络有关联-》可以理解为虚拟机的网络和本机的物理网络使用的是一条网线-》NAT(建议使用NAT)-》在虚拟机中创建一个虚拟的网络空间,虚拟出一个网络来连接-》VMnet8-》可以去指定一个静态IP3、

2017-11-15 15:30:27 308

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除