自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Hive on Spark环境搭建(解决Hive3.1.2和Spark3.0.x版本冲突)

使用Hive做元数据存储和HQL解析,Spark做实际计算。(Hive on Spark)Hive 使用3.1.2版本,Spark 使用3.0.3版本 。由于Hive 3.1.2 和 Spark 3.0.3不兼容,需要修改Hive中关于Spark的源码和依赖引用。下载Hive 3.1.2源码 ,上传并解压apache-hive-3.1.2-src.tar.gz下载Linux版IDEA,安装到带有桌面的Linux上。(使用root操作IDEA,bin/idea.sh打开idea)用idea打开apach

2022-06-21 13:48:47 7931 15

原创 DataX--MysqlReader源码

init() 方法在其中获取配置参数信息 ,创建CommonRdbmsReader的Job对象 ,并初始化Jobpublic void init() { // 获取配置参数信息 this.originalConfig = super.getPluginJobConf(); Integer userConfigedFetchSize = this.originalConfig.getInt(Constant.FETCH_SIZE); if (userConfiged

2022-05-07 11:15:00 694

原创 DataX--源码浅读(作业的执行流程)

DataX的执行顺序init:Job对象初始化工作,获取与job有关的配置参数等prepare:全局准备工作,比如清空目标表,清空hdfs目标文件split:拆分Taskschedule:负责任务的调度分配。init:task对象的初始化,获取与task相关的配置参数prepare:局部的准备工作startRead:从数据源读数据,写到RecordSender中。RecordSender再将数据写入连接Reader和Writer的缓存队列。channel:Reader和Writer的缓存队

2022-05-06 16:00:12 1258

原创 Atlas--概述

简介Apache Atlas为大数据集群提供开放式元数据管理和治理功能,用以构建其数据资产目录,对这些资产进行分类和管理,形成数据字典。并且给数据分析师和数据治理团队,提供围绕这些数据资产的协作功能。数据字典表与表之间的血缘依赖字段与字段之间的血缘关系架构原理Metadata Source支持的原数据来源:HBase、Hive、Sqoop、Storm、KafkaAdmin UI该组件是一个基于Web的应用程序,允许数据管理员和数据科学家发现和注释元数据。这里最重要的是搜索界面和类似S

2022-04-19 13:29:00 2103

原创 Azkaban---基础

YAML 语言基础案例Hello World 案例作业依赖案例手动失败重试案例YAML 语言基本语法大小写敏感。使用缩进表示层级关系,但是只能使用空格来缩进。支持的数据结构对象:键值对的集合数组:一组按次序排列的值纯量:单个的、不可再分的值对象name: namename数组- name: zhangsan- name: wangwu age: 15# 有一个数组两个元素,[{name: zhangsan},{name: wangwu,age: 15}.

2022-04-16 13:16:58 606

原创 Docker---环境搭建

使用Docker repository安装Docker要安装 Docker Engine,需要 CentOS 7 或 8 的维护版本。安装yum-utils包sudo yum install -y yum-utils创建repositorysudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo可以选择启用nightly 或者 test

2022-04-14 12:20:47 1107

原创 Azkaban---环境搭建

安装Azkaban解压db、web、exec压缩包到指定目录。并修改适合的文件名。配置Mysql创建azkaban数据库 create database azkaban;创建Azkaban用户并赋权限# 创建用户CREATE USER 'azkaban'@'%' IDENTIFIED BY '123123';# 赋予用户增删改查权限GRANT SELECT,INSERT,UPDATE,DELETE ON azkaban.* to 'azkaban'@'%' WITH GRANT OP

2022-04-13 12:31:10 2232

原创 Azkaban---概述

概述为什么需要工作流程调度系统一个完整的数据分析系统通常都是由大量的任务单元组成:Shell脚本,Java程序,MapReduce程序、Hive脚本等各个任务单元之间存在时间的先后顺序及前后依赖关系如果这些关系由人来单独协调,需要时刻关注任务的执行,极大浪费了时间。所以工作流程调度系统恰好解决了需求还节省了不必要的时间。常见的工作流程调度系统简单的任务调度直接使用Linux自带的定时执行工具Crontab来定义。复杂的任务调度开发一个调度平台或者使用现成的开源调度.

2022-04-08 15:41:12 1665

原创 DokcerContainerCommand

Docker容器指令 attach Attach to a running container # 当前 shell 下 attach 连接指定运行镜像 build Build an image from a Dockerfile # 通过 Dockerfile 定制镜像 commit Create a new image from a container changes # ...

2022-04-03 22:05:30 136

原创 Hadoop--MapRecude入门

什么是MRMR是一个分布式运算程序的编程框架,核心功能是将用户编写的业务逻辑和自带默认组件整合为一个分布式运算程序,并发的运行在集群中。MR的优点易于编程 简单的实现一些接口,就可以完成一个分布式运算程序良好的扩展性 资源不足时可以增加集群中的机器来增强运算能力高容错性 当集群中的一台机器挂掉时,MR可以把上面的任务转移到其他机器上继续执行适合PB/TB级的海量数据处理MR的缺点不擅长实时的计算 毫秒/秒级的运算不擅长流式计算 动态的任务

2021-12-21 19:33:19 1013

原创 Oracle 删除--从简单到复杂

Oracle 删除–从简单到复杂删除整个表–dropdrop table tablename;可以一次删除多个表,逗号隔开删除表中所有数据–deletedelete from tablename;删除表中所有数据–truncatetruncate table tablename;删除某条数据–delete+wheredelete from tablename where col=‘data’;如果另一个表中存在某条数据,删除整个表数据–delete、exists、selectd

2021-12-18 23:02:04 2349

原创 Oracle--PLSQL基础

PL/SQL简介PL/SQL 块是在 SQL 语言之上发展起来的一种应用,可以集中的处理各种复杂的 SQL 操 作由过程语言与结构化查询语言构成语法基本组成declare: 声明部分begin执行部分exception 捕获异常end;plsql分为了声明部分、执行部分、异常处理部分可以使用如下命令:数据操纵命令事务控制命令游标控制SQL 函数和 SQL 运算符变量PLSQL中的变量类型:普通数据类型 char varchar2 date number特

2021-12-17 20:58:30 792

原创 数据采集--re(正则表达式)抽取网页数据

正则表达式简称Regex或re,正规表示法或常规表示法。用于检索、替换符合某个模式的文本正则表达式是一段字符串,可以表示一段有规律的信息。re语法正则表达式-语法python中的正则表达式所有正则表达式相关的都在re包中re.compile() re匹配模型 两个参数(正则表达式,更改字符匹配规则)re.search() re字符串查找 三个参数(查找的字符串,被查找的字符串,更改字符匹配规则)re.findall() re匹配方法,返回所有结果,listre.sub() r

2021-12-16 09:00:00 5427 3

原创 Hadoop--完全分布式

完全分布式Hadoop 运行模式包括:本地模式、伪分布式模式以及完全分布式模式。本地模式:单机运行,只是用来演示一下官方案例。生产环境不用。伪分布式模式:也是单机运行,但是具备 Hadoop 集群的所有功能,一台服务器模拟一个分布式的环境。个别缺钱的公司用来测试,生产环境不用。完全分布式模式:多台服务器组成分布式环境。生产环境使用。*完全分布式一般要扩展为HA完全分布式虚拟机网络配置配置虚拟机的NAT模式在vm的编辑中找到虚拟网络编辑器,确定vmnet8的网络模式为NAT模式;设置一个子网,

2021-12-15 13:30:25 1601

原创 Oracle 增加--从简单到复杂

Oracle 增加–从简单到复杂insert into–简单插入insert into tablename(col1,col2) values(value1,value2);tablename后可以不加字段名,默认按照原字段顺序添加值insert into、select–添加查询到的数据insert into tablename1(col1,col2) select a,b from tablename2merge into、using、on、when–实现有则更新,否则插入**merge i

2021-12-14 20:37:28 606

原创 Oracle 查询--从简单到复杂

Oracle 查询–从简单到复杂查询某表所有数据select * from tablename;查询某表的某些数据select colname1,col2…… from tablename;查询时使用like关键字like关键字是模糊查询_—下划线表示任意字符%—百分号表示任意位数的任意字符select * from tablename like ‘_A%’;查询第二字母是A的信息查询integer类型数据时加上一个固定值select colname+num [as newname]

2021-12-13 21:02:06 921

原创 Oracle--操作符

Oracle–操作符算数操作符加+、减-、乘*、除/sql语句中可以使用算数运算符进行计算比较操作符比较操作符包括=、!=、<、>、<=、>=、BETWEEN…AND、IN、LIKE 和IS NULL等逻辑操作符and、or、not 即与或非结果集操作符合并union、交集intersect、差集minusunion 合并两个select的结果select * from tablename1unionselect * from tablename2i

2021-12-12 23:24:59 771

原创 Oracle中sql语言种类

Oracle中sql语言种类DML-数据操作语言insert:用于增加数据到数据库update:用于修改数据库中现存的数据delete:用于删除数据库中的数据select:用于对数据库的数据进行查询DCL-数据控制语言grant:授权revoke:收回权限TCL-事务控制语言commit:提交,保存已完成的工作savepoint:保存点,设置一个稍后可以回滚的点rollback:回滚,相当于撤销操作,回到某个保存点set transaction:设置事务DDL-数据定义语言cr

2021-12-11 15:34:34 395

原创 Oracle中的常用数据类型

Oracle中的常用数据类型字符数据类型char长度1-2000字节;默认1字节,超过指定或未指定时超过默认1字节会返回错误报告;不足设定字节用空格代替。nchar使用上和char相同。区别在于nchar用来存储unicode编码字符,即双字节数据。char不能存储中文,nchar可以。varchar2可变长度的字符串,长度1-4000字节。需要指定长度,默认4000字节。未达到指定长度不会用空格填充,节省空间,但效率低于char。varchar与varchar2的区别,varchar对

2021-12-10 19:34:31 1106

原创 Oracle--数据库对象

Oracle–数据库对象什么是数据库对象在Oracle中所有具有特殊功能的组件,统称为数据库对象。或者说,Oracle 数据库对象又称模式对象,数据库对象是逻辑结构的集合。数据库对象常用create命令创建,alter命令修改,drop命令删除。常用的数据库对象触发器(Trigger)、表(Table)、视图(View)、存储过程(StoredProcedure)、索引(Index)、序列(Sequence)、同义词(Synonyms)什么是触发器当某个条件成立时,提前定义好的语句就会被自动

2021-12-08 22:16:43 808

原创 Oracle--完整性与约束

Oracle的完整性与约束完整性解释数据完整性是指数据的精确性和可靠性,它是防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的。分类实体完整性实体完整性要求每一个表中的字段都不能为空或者重复的值。通过主键约束,唯一约束实现实体完整性域完整性域完整性又称为列完整性,指定一个数据集对某一个列是否有效和确定是否允许空值。通过默认值约束、非空约束、check约束实现域完整性。参照完整性参照完整性是指通过定义一张表中外键与另一张表中主键之间的引用规

2021-12-07 20:55:54 696

原创 Oracle基本命令--最常用

Oracle基本命令登录sqlplus 用户名/密码 [as sysdbs];如果是超级管理员需要加as sysdba,普通用户不需要查看当前连接数据库的用户show user;用户切换conn 用户名/密码 [as sysdba];如果是超级管理员需要加as sysdba,普通用户不需要查看当前用户下的表select * from tab;查看表的结构信息desc dept;...

2021-12-06 13:20:13 343

原创 Oracle—基本概念

Oracle基本概念数据库oracle数据库是数据的物理存储。oracle数据库是一个操作系统、只有一个库。可以看作oracle就只有一个大数据库。关系型数据库采用了关系模型来组织数据的数据库。关系模型就是二维表格关系。那么一个关系型数据库就是由数量不等的二维表及其之间的联系所组成的一个数据组织。实例一个oracle实例有一系列的后台进程和内存结构组成。可以有多个实例。用户用户是在实例下创建的,不同实例可以创建相同名字的用户。表空间一个实例下面有多个表空间,表空间是一个逻辑概念,一个表

2021-12-04 20:06:38 984

原创 数据采集—XPath抽取网页数据

XPath抽取网页数据XML是什么可扩展标记语言用来传输和存储数据用途XHTML用于描述可用的web服务的WSDL作为手持设备的标记语言的WAP和WML用于新闻feed的RSS语言描述资本和本体的RDF和OWL用于描述针对web的多媒体的SMIL语法规则所有XML元素都必须有关闭标签XML标签对大小写敏感XML必须正确地嵌套XML文档必须有根元素XML的属性必须加引号实体引用(实体引用的分号和字母间没有空格)&lt ; &lt

2021-12-03 22:18:16 1807

原创 数据采集—数据库基础及采集

数据库基础及采集数据库概述简介在管理各项信息工作的过程中产生或需要大量数据,数据库系统更有效存储、和管理日益重要的信息。各种概念Data:数据,是数据库中存储的基本对象,是描述事物的符号记录。Database:数据库,是长期存储在计算机内、有组织的、可共享的大量数据的集合。DBMS:数据库管理系统,是用户与操作系统之间的一层数据管理软件,主要用于对数据的管理和维护。DBS:数据库系统,计算机系统引入数据库后的系统。数据模型:用来抽象、表示、和处理现实世界中的数据和信息的工具,是对现实世界的

2021-12-02 22:53:38 2800

原创 数据采集—业务系统日志数据采集

业务系统日志数据采集业务系统的定义业务系统是指在一个专业/行业方面,比如人事系统、财务系统、物资系统等,从某一个方面从上到下的组织架构及所有的业务工作。拿企业业务系统来说,此系统解决的是公司外部的问题,即将一个公司生产的产品卖给他人。业务系统解决的问题让业务流程变的更加规范数据实时展示,并给出领导层决策历史数据长久保留并随时可查业务系统—ERPERP是企业资源计划的简称,由不同的功能模块组成的软件系统,建立在信息技术基础上。是一个信息高度集成的管理系统。核心业务包括:财务统计,会计管理

2021-11-26 18:26:42 3051

原创 数据采集—数据采集技术

数据采集技术综述数据采集是大数据产业的基石。数据采集的重点不在于数据本身,而在于如何才能解决数据运营中的实际商业问题。通过对数据采集技术获取的高质量数据的分析和挖掘,得到的结果对决策行为具有较高的指导性作用数据采集的定义数据采集,又称数据获取,是利用一种程序或装置从系统外部采集数据,经过数据清洗,最终输入到存储系统中。数据采集的特点自动化:以高自动化的方式采集并存入全面化:涵盖了全量采集和增量采集,不对数据采样多样化:采集方式不单一丰富化:采集的数据丰富,不只有基本的数据数据的类型

2021-11-26 18:25:07 10632

原创 舍友的Hadoop环境搭建失败,为了让他能继续学习,我把他的虚拟机加入我的集群(跨电脑)bushi

k

2021-11-24 19:52:48 1899

原创 致那时那刻,所犯下的错——Hadoop错误集合

看日志(很重要)日志在hadoop根目录下logs目录下,根据出错时间找到时间相符的文件catDataNode未启动删除core-site.xml中hadoop.tmp.dir指定的目录,集群机器全都删除,使用hdfs namenode -format重新格式化,再启动集群。Namenode未启动非高可用删除core-site.xml中hadoop.tmp.dir指定的目录,集群机器全都删除,使用hdfs namenode -format重新格式化,再启动集群。高可用删除core-site.

2021-11-18 14:20:57 2766

原创 初识Maven

MavenMaven配置1.1maven下载1.2解压与环境配置解压至无中文目录并复制路径​配置环境变量MAVEN_HOME 粘贴路径;并在path中添加%MAVEN_HOME%/bin。​ win+r 在cmd中输入mvn -v,正确显示版本。​ 1.3本地仓库与镜像配置在磁盘根目录创建LocalRepository文件夹。在settings.xml中配置仓库地址。在 < mirrors >标签中配置aliyun镜像。Maven使用2.1 创建Mav

2021-11-13 13:52:40 146

原创 Linux常用命令-系统信息和功能查看

uname -a 查看内核/OS/CPU信息uname -r 查看内核版本uname -m 查看处理器架构arch 查看处理器架构hostname 查看计算机名who 显示当前系统登陆的用户who am i 显示登录时的用户名whoami 显示当前用户名cat /proc/version 查看Linux系统版本信息cat /proc/cpuinfo 查看cpu信息cat /proc/interrupts 查看中断信息cat /proc/load

2021-11-04 23:33:56 141

原创 zookeeper - curator

分布式锁的一个成熟框架创建case3.CuratorLockTest用来测试练习使用框架在pom.xml中添加依赖<dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-framework</artifactId> <version>4.3.0</version></dependency>&lt

2021-10-29 22:56:24 198

原创 ZooKeeper 案例-分布式锁

分布式锁当一个节点正在读写数据时,禁止其他节点读写数据,避免造成数据同步错误。创建case2包,创建DistributeLock类,实现对线程加锁解锁public class DistributeLock { private final String connectString = "Hadoop003:2181,Hadoop004:2181,Hadoop005:2181"; private final int sessionTimeout = 2000; private f

2021-10-29 22:55:10 223

原创 ZooKeeper 案例-服务器动态上下线

服务器动态上下线监听命令行客户端中删除所有测试时使用的节点,并创建servers节点创建net.loftiest.case1.DistributeServer类,即服务端public class DistributeServer { private ZooKeeper zK; public static void main(String[] args) throws IOException, InterruptedException, KeeperException {

2021-10-29 22:54:20 1296

原创 ZooKeeper 写数据原理

zk写数据原理客户端写入请求发送给leader​ ① 客户端client向leader发送写请求​ ② leader写数据同时会发送写请求给所有follower​ ③ 等待follower写入完成的ack,当完成数达到半数(包含自己)时​ ④ 发送数据写入完成的ack给客户端client客户端写入请求发送给某个follower​ ① 客户端client向follower发送写入数据的请求​ ② follower将客户端client的写请求转发给leader​ ③ leader 将写请

2021-10-29 22:53:12 448

原创 ZooKeeper API搭建及操作

搭建IDEA环境添加zookeeper依赖,以下内容加入pom.xml<dependencies><dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>RELEASE</version></dependency><dependency><group

2021-10-29 22:52:40 415

原创 ZooKeeper 基本命令

zk客户端–基本命令​ bin/zkCli.sh -server hostname:2181 启动带有主机名的客户端​ ls path:查看路径节点。-s 详细信息,-w简略信息,-R递归​ get path:查看路径节点的数据和信息。-s列出详细信息,-w仅显示数据。​ stat path:查看路径节点详细信息。-w详细信息。​ create path:创建节点。直接使用为创建一个永久节点,-e创建临时节点(超时或退出客户端节点消失),-s 创建顺序节点。-e -s 创建临时

2021-10-29 22:51:57 3487

原创 ZooKeeper 选举机制

zk选举机制—第一次启动第一台机器启动服务,发起选举,先投自己一票,查看当前集群中的其他zk服务,当前仅有一台;由于票数小于一半(不小于3),进入观察模式LOOKING,等待其他机器启动服务。第二台机器启动服务,发起选举,都先投自己一票,查看是否有其他启动服务的机器;可查询到第一台机器,经过比对myid大小,第一台服务器将票改投给第二台服务器。由于票数小于一半(不小于3),进入观察模式LOOKING,等待其他机器启动服务。第三台服务器启动,发起选举,交换信息后,三台机器都将票投给第三胎服务器,此时票数

2021-10-29 22:51:18 895

原创 ZooKeeper 特点

特点1)Zookeeper:一个领导者(Leader),多个跟随者(Follower)组成的集群。2)集群中只要有半数以上节点存活,Zookeeper集群就能正常服务。所 以Zookeeper适合安装奇数台服务器。3)全局数据一致:每个Server保存一份相同的数据副本,Client无论连接到哪个Server,数据都是一致的。4)更新请求顺序执行,来自同一个Client的更新请求按其发送顺序依次执行。5)数据更新原子性,一次数据更新要么成功,要么失败。6)实时性,在一定时间范围内,Client能

2021-10-29 22:50:44 790

原创 ZooKeeper 环境搭建

安装与配置上传apache-zookeeper-3.5.7-bin.tar.gz 到linux使用tar zxvf x.gz -C // 命令解压到//目录进入zookeeper目录修改conf目录下的zoo_sample.cfg 为zoo.cfg打开zoo.cfg,修改配置信息。将dataDir修改为/opt/module/zookeeper-3.5.7/zkData在zookeeper的根目录创建一个zkData目录启动zk服务端,在根目录使用指令 bin/zkServer.sh

2021-10-29 22:50:11 582

空空如也

空空如也

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

TA关注的人

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