hadoop
文章平均质量分 94
逐风正在敲代码
这个作者很懒,什么都没留下…
展开
-
Airflow 1.10.4版本部署及整合企业微信告警
Airflow 1.10.4版本部署及整合企业微信告警本次部署的Airflow版本为1.10.4,依赖的Python版本为Python3.61.Airflow安装Python的安装就不多做赘述,网上教程太多了。如果是本地部署测试,可以新启一个python的测试环境virtualenv#1.安装virtualenvpip3 install virtualenv #2.创建目录mkdi...原创 2019-09-03 16:21:10 · 3638 阅读 · 4 评论 -
Scala扩展
Scala扩展1.伴生Object内部的方法,我们可以直接通过Object.method,需要使用哪个方法就用哪个,类似于java里的static。package scala object Timer { var count = 0 def increment():Long = { count += 1 count }}放到scala命令行执行会发现,...原创 2019-06-05 00:36:22 · 176 阅读 · 0 评论 -
ElasticSearch单机部署及其插件
##ElasticSearch单机部署及其插件1.介绍Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。作为 Elastic Stack 的核心,它集中存储您的数据,帮助您发现意料之中以及意料之外的情况。###2.安装1.下载地址:https://www.elastic.co/cn/downloads/past-relea...原创 2019-06-04 14:54:36 · 374 阅读 · 0 评论 -
Spark内存管理再探
Spark内存管理再探之前写过一篇Spark on yarn的内存管理分配,初探,这次再来深入了解它更加底层的一些东西,之前博客的连接 Spark on yarn 内存管理分配初探1. 静态内存管理1.1存储内存分配通过代码可以看出,存储空间可用内存 = 运行时最大内存 x 分配给存储空间的比例 x 安全系数// 默认最小内存为32M,单位为字节private val MIN_MEM...原创 2019-06-14 15:40:53 · 282 阅读 · 0 评论 -
MySQL离线部署
MySQL离线部署#安装的版本是MySQL5.7.11版本#1.解压及创建目录[root@hadoop001 local] tar -xzvf mysql-5.7.11-linux-glibc2.5-x86_64.tar.gz -C /usr/local[root@hadoop001 local] mv mysql-5.7.11-linux-glibc2.5-x86_64 mysql[...原创 2019-05-29 17:37:20 · 304 阅读 · 0 评论 -
Maxwell的使用初探
Maxwell的使用初探1.简介说到大数据的实时数据源同步中间件就不得不说Maxwell,同时还有Canal,Canal是阿里的中间件组件,Maxwell是国外开源的组件.Canal地址:https://github.com/alibaba/canalMaxwell地址:https://github.com/zendesk/maxwellMaxwell官网地址:http://maxwel...原创 2019-05-29 17:28:03 · 3012 阅读 · 0 评论 -
CDH安装phoenix
CDH安装phoenix1.背景 base 提供很方便的shell脚本以及java API等方式对Hbase进行操作,但是对于很对已经习惯了关系型数据库操作的开发来说,有一定的学习成本,如果可以像操作mysql等一样通过sql实现对Hbase的操作,那么很大程度降低了Hbase的使用成本。Apache Phoenix 组件就完成了这种需求,官方注解为 “Phoenix -we put t...原创 2019-05-29 11:33:28 · 1435 阅读 · 0 评论 -
Kafka数据可靠性及一致性的机制初探
Kafka数据可靠性及一致性的机制初探Apache Kafka是大数据项目中使用较多的一个消息中间件,是分布式消息订阅系统,有非常好的横向扩展性,可实时存储海量数据,并且Kafka的数据可靠新以及一致性做的非常好,本文是对Kafka的数据可靠性及一致性的机制做了一个初步的探究.1.数据可靠性1.1 Topic 分区副本kafka的早期版本并没有副本这个概念,所以只是用来存储不常用的数据,所...原创 2019-06-12 16:33:45 · 796 阅读 · 0 评论 -
Spark on yarn 内存管理分配初探
Spark on yarn 内存管理分配初探简介:按照Spark应用程序中的driver分布方式不同,Spark on YARN有两种模式: yarn-client模式、yarn-cluster模式。当在YARN上运行Spark作业,每个Spark executor作为一个YARN容器运行。Spark可以使得多个Tasks在同一个容器里面运行。Spark版本不同,计算值可能会存在差异1...原创 2019-05-23 14:31:19 · 555 阅读 · 0 评论 -
Spark 监控
Spark 监控###1.Spark官网的Monitor地址:http://spark.apache.org/docs/2.2.0/monitoring.html1.1 WEB UI应用程序停止之后没有办法通过ui界面查看,要在事后查看Web UI,请在启动应用程序之前将spark.eventLog.enabled设置为true。这会将Spark配置为记录Spark事件,该事件将UI中显示...原创 2019-06-05 00:36:44 · 299 阅读 · 0 评论 -
Spark on Yarn
Spark on Yarn1.Yarn的产生背景HadoopSpark StandaloneMPI…等分布式的框架集群的资源利用率不够,就需要统一的资源管理和调度。使用Yarn的话,多种计算框架可以共享集群资源,按需分配,这样可以提升集群资源的利用率。2.Yarn架构各自的职责以及重试的机制(挂了之后如何重新执行)RM:NM:AM:Container:3.Yarn的执行...原创 2019-06-05 00:37:06 · 308 阅读 · 0 评论 -
HBase数仓架构
HBase数仓架构1.整体架构选型主要有两个,第一个是实时,实时采集利用 Maxwell,直接采集公司数据库 MySQL,将数据直接以 json 格式发送到 Kafka 集群,数仓存储选型是 HBase。上图是实时数仓架构图,主要的存储层还是以 HBase 为主。第一层业务系统数据库在Mysql上。使用 Maxwell,其支持白名单和黑名单。业务平台的表可能有两三百个,大数据平台的计算可能...原创 2019-07-23 09:36:28 · 5060 阅读 · 1 评论 -
数仓初步构建
数仓初步构建数仓构建主要就是基于主题库的数据建立对应的专题库以供对应专题服务。速成策略:1.首先了解数仓相关知识2.了解事实表与维度表的建立与实施,3.找出业务需求然后寻找对应的解决方案。4.后期开发顺利推进。1.数仓1.1首先先讲一下数仓的概念,先上个图,由图看的更加直观。数据仓库的分层结构,有人说是基于ETL作为基础来分层的,(抽取,清洗,转换,加载)但是基于上图可能会更具...原创 2019-07-17 11:50:47 · 1882 阅读 · 0 评论 -
Kafka为什么速度快、吞吐量大
Kafka为什么速度快、吞吐量大Kafka是大数据领域无处不在的消息中间件,目前广泛使用在企业内部的实时数据管道,并帮助企业构建自己的流计算应用程序。Kafka虽然是基于磁盘做的数据存储,但却具有高性能、高吞吐、低延时的特点,其吞吐量动辄几万、几十上百万。但是很多使用过Kafka的人,经常会被问到这样一个问题,Kafka为什么速度快,吞吐量大;大部分被问的人都是一下子就懵了,或者是只知道一些简单...原创 2019-07-08 17:16:41 · 534 阅读 · 0 评论 -
HBase Rowkey设计规范
HBase Rowkey设计规范1.Rowkey是什么可以理解为关系型数据库MySQL Oracle的主键,用于标识唯一的行。完全是由用户指定的一串不重复的字符串。HBase中的数据永远是根据Rowkey的字典排序来排序的。2.Rowkey的作用读写数据时 通过 RowKey 找到 对应 的 Region,例如需要查找一条数据肯定需要知道他的RowKey ,写数据的时候也要根据R...原创 2019-06-24 18:06:25 · 1367 阅读 · 0 评论 -
Spark中Cache跟Persist的初探
Spark中Cache跟Persist的初探1.Cache的产生背景我们先做一个简单的测试读取一个本地文件做一次collect操作:val rdd=sc.textFile("file:///home/hadoop/data/input.txt")val rdd=sc.textFile("file:///home/hadoop/data/input.txt")上面我们进行了两次相同的操作,...原创 2019-06-17 09:47:21 · 260 阅读 · 0 评论 -
Spark-Core(MapPartitions内存优化)
Spark-Core(MapPartitions/内存优化)1.mapmap是对RDD中的每个一元素作用一个函数或者是算子,简单理解就是对每个元素进行一个f(x)的操作Return a new RDD by applying a function to all elements of this RDD.2.mapPartitionRDD:n Partition :N RecordR...原创 2019-06-05 00:39:53 · 629 阅读 · 0 评论 -
Spark-Core(共享变量)
Spark-Core(共享变量)1.Shared Variables 当在远程集群节点上执行传递给Spark操作(例如map或reduce)的函数时,它将在函数中使用的所有变量的单独副本上工作。这些变量将复制到每台计算机,并且远程计算机上的变量的更新不会传播回驱动程序。支持跨任务的通用,读写共享变量效率低下。但是,Spark确实为两种常见的使用模式提供了两种有限类型的共享变量:广播变量和...原创 2019-06-05 00:39:17 · 183 阅读 · 0 评论 -
IDEA本地Spark开发读取云主机Hive异常剖析
IDEA本地Spark操作云主机Hive异常剖析1.问题背景1.Hive是搭建在云主机上的伪分布式 公网 IP:47.101.xxx.xxx 内网 IP:172.19.35.154 主机名:hadoop0012.Spark开发在本地的IDEA开发 本地的的hive-site.xml配置如下:<?xml version="1.0"?><?xml-style...原创 2019-05-27 17:35:49 · 475 阅读 · 0 评论 -
Spark-Core深入理解
Spark-Core深入理解1.Spark Stage理解Each job gets divided into smaller sets of tasks called stages that depend on each other (similar to the map and reduce stages in MapReduce); you’ll see this term used ...原创 2019-05-13 16:24:27 · 355 阅读 · 0 评论 -
CDH5.16.1的离线部署
CDH5.16.1的离线部署CDH部署的机器是三台阿里云机器,配置都是2cpu,8G内存,40G硬盘安装需要的软件包:1.CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel(CDH软件包)2.CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha13.cloudera-manager-centos7-cm5.16.1_x86_64...原创 2019-05-22 15:29:46 · 1262 阅读 · 0 评论 -
hue-3.9-cdh-5.7.0安装
hue-3.9-cdh-5.7.0安装 本次安装踩了一个大坑,由于之前先rpm方式安装了mysql,把centos7自带的mariadb删除了,用yum方式安装mysql-devel失败了,所以使用了rpm的方式安装hue。1.下载安装包下载地址:http://archive.cloudera.com/cdh5/redhat/5/x86_64/cdh/5.7.0/RPMS/x86_64/...原创 2019-04-18 00:37:22 · 636 阅读 · 1 评论 -
hadoop编译支持LZO压缩格式
hadoop编译支持LZO压缩格式1.lzo安装1.1 lzo格式文件压缩解压需要用到服务器的lzop工具,hadoop 的native库(hadoop checknative是没有的lzo,zip相关信息)并不支持#检查是否有lzop命令[hadoop@hadoop001 software]$ which lzop/bin/lzop#若没有执行如下安装命令[root@hadoop0...原创 2019-04-17 12:00:17 · 847 阅读 · 2 评论 -
scala操作MySQL插件ScalikeJDBC的使用
Scala操作MySQL插件ScalikeJDBC的使用1.什么是ScalikeJDBC ScalikeJDBC是一款给Scala开发者使用的简洁DB访问类库,它是基于SQL的,使用者只需要关注SQL逻辑的编写,所有的数据库操作都交给ScalikeJDBC。这个类库内置包含了JDBC API,并且给用户提供了简单易用并且非常灵活的API。并且,QueryDSL(通用查询查询框架)使你的代码...原创 2019-04-21 22:58:31 · 392 阅读 · 0 评论 -
hive源码编译支持UDF函数
hive源码编译支持UDF函数1.源码下载 下载的hive源码最好跟自己hadoop环境的版本一致,我使用的hadoop-2.6.0-cdh5.7.0,所以以下过程都是基于这个版本操作的。源码下载地址:http://archive.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.7.0.tar.gz2.编译支持UDF使用的是maven进行编译的,ma...原创 2019-04-21 19:10:09 · 202 阅读 · 0 评论 -
hive自定义UDF函数
hive自定义UDF函数1.什么是udf UDF(User-Defined Functions)即是用户自定义的hive函数。hive自带的函数并不能完全满足业务的需求,这时就需要我们自定义函数了。官网参考地址:LanguageManual UDF2.UDF分类1.UDF:one to one ,进来一个出去一个,row mapping。 是row级别操作,如:upper、subs...原创 2019-04-21 19:07:36 · 2894 阅读 · 0 评论 -
shell之发送邮件(附件及html格式)
shell之发送qq邮件并附带附件1.生成qq登录授权码 以QQ邮箱为例,发送邮件的时候需要打开smtp功能,在QQ邮箱的设置–>账户,下面可以找到。2.服务器配置2.1关闭sendmail的服务#这台机器没有安装所以不显示[root@hadoop001 scripts]# service sendmail statusRedirecting to /bin/systemc...原创 2019-04-16 01:45:34 · 2878 阅读 · 0 评论 -
shell之常用编程语法
shell之常用编程语法1.shell编程规范shell文件行业规范默认后缀为.shshell首行为#!/bin/bash,注意/bin/bash为当前脚本解释器,可以不写但不能写错了。#表示注释shell对大小写敏感,变量尽量全大写,小写会被鄙视2.变量2.1环境变量全局生效,通过set命令查看,用户环境变量,当前用户生效,系统环境变量,所有用户生效,通过export声...原创 2019-04-16 01:45:08 · 309 阅读 · 0 评论 -
Hadoop离线项目之数据清洗
Hadoop离线项目之数据清洗1.背景1.1 企业级大数据项目开发流程项目调研:技术?业务? 以业务为导向的项目调研,根据不同的行业对项目进行调研,主要以 产品经理、非常熟悉业务的、项目经理等人员进行项目调研.需求分析:明确做什么 做成什么样子的(做东西不要局限于某个技术) 首先需求是由用户提出,是可见的,明确规定了需要什么,其次是隐式的需求,隐式的需求需要开发...原创 2019-04-15 17:34:10 · 939 阅读 · 0 评论 -
Spark2.4.2编译集成cdh5.7.0
Spark2.4.2编译集成cdh5.7.0 在生产环境中经常会对spark源码进行改造或者是编译源码支持不同的版本的hadoop,下面是我在编译spark2.4.2版本源码的详细步骤,其中编译依赖的hadoop为2.6.0-cdh5.7.0版本。1.版本环境JDK最低要求是1.8,maven最低要求是3.5.4,scala最低要求是2.11.122.编译依赖软件安装2.1 JDK...原创 2019-05-04 20:58:41 · 559 阅读 · 0 评论 -
Spark1_简介
Spark11.MapReduce局限性1.1开发繁杂:本身只提供了map/reduce两个算子,并没有groupby跟join这类的聚合操作的算子,如果要实现groupby跟join操作,则是借助于map跟reduce来实现,同时在mapreduce中可能会出现没有reduce仅仅只有map的场景,比如说mapjoin;同时mapreduce的测试环节也很繁杂1.2效率:mapr...原创 2019-05-06 17:40:22 · 372 阅读 · 0 评论 -
Spark2_RDD定义
Spark2什么是RDD1.RDD1.1RDD定义让开发者大大降低开发分布式应用程序的门槛以及提高执行效率Resilient Distributed Dataset(RDD) 也就是弹性分布数据集弹性体现在计算之上,代表的是spark可以做到在做分布式计算的时候可以容错,比如说某个节点挂了,或者是某个节点数据丢失了,可以用RDD的机制进行数据修复,这是计算层面得.分布式也就是数据可以...原创 2019-05-06 17:40:39 · 292 阅读 · 0 评论 -
Spark闭包初探
Spark闭包初探1.什么是闭包闭包的大致作用就是:函数可以访问函数外面的变量,但是函数内对变量的修改,在函数外是不可见的.2.Spark官网对闭包的描述One of the harder things about Spark is understanding the scope and life cycle of variables and methods when executi...原创 2019-05-16 16:01:16 · 431 阅读 · 0 评论 -
CDH5.16.1安装kafka
CDH5.16.1安装kafka1.简介:CDH的parcel包中是没有kafka的,需要从新下载parcel包安装。或者在线安装,但是在线安装都很慢,这里使用下载parcel包离线安装的方式。kafka有很多版本,CDH也有很多版本,所以需要确定自己所需要的对应版本,下面的链接可以查看自己cdh的对应kafka版本:https://www.cloudera.com/documentati...原创 2019-05-21 15:00:59 · 3086 阅读 · 2 评论 -
Spark-Core_Shuffle详解
Spark-Core_Shuffle详解1.Shuffle operationsCertain operations within Spark trigger an event known as the shuffle. The shuffle is Spark’s mechanism for re-distributing data so that it’s grouped differe...原创 2019-05-15 18:51:12 · 297 阅读 · 0 评论 -
hadoop和hive单机部署
hadoop和hive单机部署本文hadoop安装的是Hadoop-2.6.0-cdh5.7.0版本,hive是hive-1.1.0-cdh5.7.0版本1.hadoop安装1.1jdk安装jdk的安装包在oracle官网都能下载,可选择自己需要的版本#解压jdk到/usr/local目录下[root@hadoop001 ~] tar -xzvf jdk-8u181-linux-x...原创 2019-05-20 18:47:53 · 1214 阅读 · 0 评论 -
Azkaban安装和使用
Azkaban安装和使用1.简介Open-source Workflow Manager(开源的工作流管理器)Azkaban is a batch workflow job scheduler created at LinkedIn to run Hadoop jobs. Azkaban resolves the ordering through job dependencies and ...原创 2019-05-15 10:34:36 · 603 阅读 · 0 评论 -
IDEA开发Spark应用程序
IDEA开发Spark应用程序1.maven构建项目使用maven构建项目就不多赘述了,网上教程超多,构建的时候选择简单的scala项目,后边的gav就不用多说了2.pom文件的依赖添加scala Spark-core hadoop-client的依赖以及cdh的repository,这点尤其重要. <!--Spark跟Scala版本指定,便于后续版本升级--> <...原创 2019-05-07 18:23:49 · 236 阅读 · 0 评论 -
Spark5-RDD操作
RDD Operations(操作)1.定义1.1 transformations主要做转换操作,可以从一个已经存在的数据集,创建一个新的数据集(RDD是不可变的),例如从RDDA => RDDBtransformation是lazy形式的,比如rdd.map().filter().map().filter(),map()跟filter()都是lazy操作,并不会产生计算,仅仅是记录...原创 2019-05-07 16:33:51 · 296 阅读 · 0 评论 -
Spark4-RDD使用
如何创建RDD1.创建方式1.parallelizing an existing collection in your driver program通过并行化存在的一个集合,将集合转换成RDD2.referencing a dataset in an external storage system, such as a shared filesystem, HDFS, HBase, ...原创 2019-05-06 17:41:14 · 282 阅读 · 0 评论