- 博客(46)
- 收藏
- 关注
原创 kudu报错:Got out-of-order key column : name:“ACCOUNT“ type:STRING is_key: true is_nullable: false
kudu报错:Got out-of-order key column : name:"ACCOUNT" type:STRING is_key: true is_nullable: false
2022-08-24 15:58:34
343
1
原创 Flink Interval Join,Temporal Join,Lookup Join区别
Flink Interval Join,Temporal Join,Lookup Join区别
2022-08-11 10:17:53
2666
原创 Flume的安装及使用
Flume的安装及使用文章目录Flume的安装及使用Flume的安装1、上传至虚拟机,并解压2、重命名目录,并配置环境变量3、查看flume版本4、测试flume5、flume的使用Flume的安装1、上传至虚拟机,并解压tar -zxvf apache-flume-1.9.0-bin.tar.gz -C /usr/local/soft/在环境变量中增加如下命令,可以使用 soft 快速切换到 /usr/local/softalias soft=‘cd /usr/local/soft/’2、
2021-07-11 17:36:07
2208
1
原创 DataX的安装及使用
DataX的安装及使用文章目录DataX的安装及使用Hive通过外部表与HBase表关联hive建表语句:hbase表直接执行查询语句:DataX的安装DataX的使用stream2stream编写配置文件stream2stream.json执行同步任务执行结果mysql2mysql编写配置文件mysql2mysql.json执行同步任务mysql2hdfs编写配置文件mysql2hdfs.jsonhbase2mysqlmysql2hbaseDataX-web的安装1、使用idea同步源代码2、在mysq
2021-07-11 17:29:32
819
原创 SQOOP安装及使用
SQOOP安装及使用文章目录SQOOP安装及使用SQOOP安装1、上传并解压2、修改文件夹名字3、修改配置文件4、修改环境变量5、添加MySQL连接驱动6、测试准备MySQL数据登录MySQL数据库创建student数据库切换数据库并导入数据另外一种导入数据的方式使用Navicat运行SQL文件导出MySQL数据库importMySQLToHDFS编写脚本,保存为MySQLToHDFS.conf执行脚本注意事项:MySQLToHive编写脚本,并保存为MySQLToHIVE.conf文件执行脚本--dir
2021-07-11 17:20:53
826
1
原创 HBase详解
文章目录HBase简介HBase特点HBase架构MasterRegionServerRegionMemstore&StorefileHLogHBase数据模型RowKey(行键)ColumnFamily&Qualifier(列簇和列)TimeStamp(时间戳)Cell(存储单元)HBase读写流程HBase ShellHBaseAPI常用java类示例代码HBase过滤器作用比较过滤器比较运算符常见的六大比较过滤器BinaryComparatorBinaryPrefixComparato
2021-07-04 16:21:12
1363
4
原创 HBase搭建
HBase搭建1、启动hadoopstart-all.sh验证http://master:500702、启动zookeeper需要在在三台中分别启动zkServer.sh startzkServer.sh status搭建hbase1、上传解压配置环境变量 tar -xvf hbase-1.4.6-bin.tar.gz 2、修改hbase-env.sh文件增加java配置export JAVA_HOME=/usr/local/soft/jdk1.8.0_171关闭
2021-07-04 14:34:48
227
原创 HQL作业
员工信息表emp:字段:员工id,员工名字,工作岗位,部门经理,受雇日期,薪水,奖金,部门编号英文名:EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,BONUS,DEPTNOcreate table emp( EMPNO int ,ENAME string ,JOB string ,MGR int ,HIREDATE string ,SAL int ,BONUS int ,DEPTNO int) row form.
2021-06-27 16:16:44
153
原创 Hive参数优化和数据倾斜
文章目录Hive数据倾斜原因:表现:解决方案:Hive调优Hive数据倾斜原因:key分布不均匀,数据重复表现:任务进度长时间维持在99%(或100%),查看任务监控页面,发现只有少量(1个或几个)reduce子任务未完成。因为其处理的数据量和其他reduce差异过大。单一reduce的记录数与平均记录数差异过大,通常可能达到3倍甚至更多。 最长时长远大于平均时长。解决方案:1、从数据源头,业务层面进行优化2、找到key重复的具体值,进行拆分,hash。异步求和。(随机前缀)crea
2021-06-27 16:12:43
279
原创 初识Hive
Hive 是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL ),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 HQL ,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作。数据仓库,英文名称为Data
2021-06-27 15:46:00
134
原创 Hive函数
文章目录Hive 常用函数关系运算数值计算条件函数日期函数字符串函数Hive 中的wordCountHive 开窗函数测试数据建表语句row_number:无并列排名dense_rank:有并列排名,并且依次递增rank:有并列排名,不依次递增PERCENT_RANK:(rank的结果-1)/(分区内数据的个数-1)LAG(col,n):往前第n行数据LEAD(col,n):往后第n行数据FIRST_VALUE:取分组内排序后,截止到当前行,第一个值LAST_VALUE:取分组内排序后,截止到当前行,最后一
2021-06-27 15:34:35
364
1
原创 HIve语法
文章目录Hive建表建表1:全部使用默认建表方式建表2:指定location (这种方式也比较常用)建表3:指定存储格式建表4:create table xxxx as select_statement(SQL语句) (这种方式比较常用)建表5:create table xxxx like table_name 只想建表,不需要加载数据Hive加载数据1、使用```hdfs dfs -put '本地数据' 'hive表对应的HDFS目录下'```2、使用 load data inpath3、create
2021-06-27 15:32:13
760
原创 Hive搭建
安装前提:mysql和hadoop必须已经成功安装并启动登录mysql mysql -uroot -p123456 在MySQL中创建hive元数据库 create database hive character set "latin1";1、解压hive的安装包: tar -zxvf apache-hive-1.2.1-bin.tar.gz 修改目录名称:mv apache-hive-1.2.1-bin hive-1.2.12、进入hive-1.2.1/conf
2021-06-27 14:14:53
247
原创 Zookeeper搭建
1、上传安装包到master并解压 tar -xvf zookeeper-3.4.6.tar.gz2、配置环境变量 vim /etc/profile export ZOOKEEPER_HOME=/usr/local/soft/zookeeper-3.4.6 export PATH=$PATH:$ZOOKEEPER_HOME/bin source /etc/profile3、修改配置文件 cd conf cp zoo_sample.cfg zoo.cfg 修改 dataD
2021-06-23 16:03:05
164
原创 Hadoop及其HA搭建
1、关闭防火墙 所有节点service iptables stopchkconfig iptables off2、设置免密钥在master中生成密钥文件ssh-keygen -t rsa一直回车将密钥文件同步到所有节点ssh-copy-id masterssh-copy-id node1ssh-copy-id node23、上传hadoop安装包 上传到msater的/usr/local/soft/hadoop-2.7.6.tar.gz4、解压tar -xvf h
2021-06-23 16:01:02
350
2
原创 Redis单节点安装、主从复制、java连接redis和Redis集群安装
Redis单节点安装配置阿里云yum源 下载配置文件 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 生成缓存 yum makecache安装redis1、安装依赖 yum install -y gcc-c++ gcc tcl2、上传压缩包并解压 tar -xvf redis-3.0.0.tar.gz3、编译 cd redis-3.0.0 make
2021-06-15 21:33:59
1500
原创 mysql练习题
练习题一DROP TABLE IF EXISTS `emp`;CREATE TABLE `emp` ( `EMPNO` int(4) NOT NULL, `ENAME` varchar(10) DEFAULT NULL, `JOB` varchar(9) DEFAULT NULL, `MGR` varchar(10) DEFAULT NULL, `HIREDATE` date DEFAULT NULL, `SAL` int(7) DEFAULT NULL, `COMM` i
2021-06-09 17:15:01
83
原创 Linux搭建mysql
1、关闭防火墙systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启动查看防火墙状态firewall-cmd --state启动防火墙systemctl start firewalld.service2、修改主机名第一种hostnamectl set-hostname base第二种vim /etc/hostname查看主机名hostnamec
2021-06-09 17:04:47
171
原创 Mysql详解
数据库分类关系型:以行作为记录,列数相同非关系型:以列作为记录,行数随便数据库层级服务器->数据库->表(行列组成的二维表格)->行数据类型1、整数类型,包括TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,分别表示1字节、2字节、3字节、4字节、8字节整数2、实数类型,包括FLOAT、DOUBLE、DECIMAL。3、字符串类型,包括VARCHAR、CHAR、TEXT、BLOB。字符串使用单引号。4、枚举类型(ENUM),把不重复的数
2021-06-09 17:03:46
249
原创 Linux之shell编程
shell:操作linux的桥梁创建: vim 文件名.sh编写: 头部注释为#!/bin/sh或者#!/bin/bash(注释可写可不写,建议写上) 运行:1.通过sh命令执行 例如:sh helloworld.sh2.通过bash命令执行 例如:bash helloworld.sh3.通过把文件修改为可执行的文件然后通过./文件命令.sh来执行 例如:./helloworld.sh(必须在当前目录下)变量(动态数据类型,没有数据类型的限制,并且必须初始化
2021-06-09 15:50:00
298
3
原创 Linux网络配置和常用命令
安装VmWare注意事项1.是否启动虚拟化服务: 任务管理器——性能——虚拟化——启动2.安装之后是否出现虚拟网卡:DOS命令——ipconfig——VM1,VM8虚拟化服务禁用如何开启win10系统->更新和安全->恢复->高级启动->疑难解答->高级选项->UEFI固件启动->(有的电脑直接进入BOIS命令,有的电脑需要手动选择BOIS)->虚拟化服务->开启->保存退出安装之后没有出现虚拟网卡1.卸载重装2.下载CC
2021-06-09 11:05:35
1664
5
原创 days24--正则表达式
正则表达式格式1:1.定义一个表达式 2:String对象.matcher(String reg)格式2:1.定义一个表达式2.使用 Pattern compile = Pattern.compile(reg);//表明reg是一个正则表达式3.Matcher matcher = compile.matcher(email);//匹配一个字符串4.System.out.println(matcher.matches());//调用匹配结果常用符号/…/ 代表一个模式的开始
2021-05-22 21:29:14
82
原创 days23--反射
类加载当程序要使用某个类时,如果该类还没有加载到内存中,系统会通过类的加载,类的连接,类的初始化三个步骤来对类进行初始化1.类的加载: 将class文件(源文件)读取内存,并创建对应的Class对象 任何类被使用时,系统都会创建一个java.lang.Class对象2.类的连接 验证阶段:检验被加载的类和相关类(父类/接口)内部结构是否合法 准备阶段:负责为类中的变量分配内存,并设置默认值 解析阶段:将类的二进制数据中字符(方法)引用改为直接引用3.类的初始化: 对类
2021-05-22 21:21:29
62
原创 days22--网络编程
网络编程:不同设备之间实现资源共享或数据传输网络编程三要素IP:设备在网络中唯一标识 注意:访问一个域名,先走hosts文件(本地域名服务器),再走DNS服务器端口:应用或程序在设备中唯一标识网络通信协议:资源共享或数据传输的规则,用于保证数据安全问题UDP:无连接通信协议发送数据时,不管有没有接收端存在.同样,接收端接收到数据时,也不会反馈接收到数据UDP发送步骤:1.创建端点Scoket对象 new DatagarmSocket(int port); port表示当
2021-05-22 20:59:31
60
原创 days21--多线程
进程和线程的区别进程:正在执行的程序 是系统进行资源分配和管理的独立单位每一个进程都有他自己的内存空间和系统资源线程:进程中某一个执行流程,可叫做流程控制单元 线程是进程中最小的执行单位 单线程:一个执行路近多线程:多个执行路近(同时去执行)注意:main方法也是一个线程创建线程的三种方式多线程详解方式1:通过Thread(实体类)类步骤:1.创建类继承Thread2.重写run3.创建对象4.调用start多线程的实现方式二:实现Runnable接口
2021-05-22 20:37:42
51
原创 days20--IO流之字符流
字符输出流:字节流操作中文可能会出现乱码的情况(按照一个一个字节,中文存储的是多个字节) 按照字符一起进行操作Wrtier:是字符输出流所有类的抽象父类构造: OutputStreamWriter(OutputStream out)注意: 字符流构造中的参数不是具体的文件路径 而是字节流对象说明了字符流操作具体的文件内容时,本质上还是通过字节流操作方法:void write(int c) 写一个字符 void write(char[] cbuf) 写一个字符数组
2021-05-17 09:03:34
90
原创 days19--IO流之字节流
IO流:IO:输入/输出(input/output) 流:抽象的概念,数据传输的总称 IO流:用来处理设备之间数据传输问题input:读数据(硬盘->内存) output:写数据(内存->硬盘)IO流分类:按数据流的方向:输入流、输出流输入与输出是相对于应用程序而言的,比如文件读写,读取文件是输入流,写文件是输出流按处理数据单位:字节流、字符流字节流和字符流的用法几乎完成全一样,区别在于字节流和字符流所操作的数据单元不同,字节流操作的单元是数据单元是8位的
2021-05-17 09:03:16
117
原创 days18--IO流之File
File:java用于操作文件或目录文件或目录的抽象 文件和目录可以通过File封装成对象对于File,其封装的并不是一个真正的文件,只是文件的路径,可存在可不存在,之后通过具体的操作把这个路径转化为具体的存在构造:File(String pathname) 通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。File(String parent, String child) 从父路径名字符串和子路径名字符串创建新的 File实例。File(File parent, Str
2021-05-17 09:02:53
122
原创 days16--集合之Set
Set:不重复 无序(没下标),存储和取出的顺序不能保证相同HashSet:底层结构是元素为链表的数组通过hashCode()返回值取模16得到存储位置,再通过equals()判断与同一位置链表的不同元素是否相同,相同覆盖,不同插入哈希值:一种运算方式,或一种结构,一种信息压缩的方式概述: 根据对象的地址值或者字符串或者数字计算得到的int类型的数值 Obeject中可以通过hasCode()方法来获取哈希值重写equals()时,也必须重写hashCode()方法,因为相等的对
2021-05-17 09:02:08
62
原创 days15--集合之List
集合体系:接口:Collection Map List Set实体类:ArrayList LinkedList HashMap HashSet TreeSetCollection:是单列集合的顶层接口,表示一组对象,这些对象也称为了Collection的元素JDK不提供此接口的直接实现类,提供了更具体的子接口(List和Set)实现使用:通过多态的方式 集合的实现类ArrayList和LinkedListCollection常用方法:bo
2021-05-17 09:01:43
81
原创 days14--泛型
泛型:表示所有类型提供了编译时类型安全检测机制,允许在编译时期检测到非法数据类型本质就是参数类型化,没有调用/使用之前可以表示所有的数据类型(形参),调用/使用时给上具体的数据类型(实参);格式: <标识>:标识可以随便给,常用E,T,K,V <标识1,标识2…标识n>:标识可以有多个,以逗号分割注意: 在具体调用时给定的类型可以看成实参,实参只能是引用数据类型(类)泛型方法:格式: public static 泛型 返回值类型(参数){}
2021-05-17 09:01:00
62
原创 days12--异常
异常:程序出现的错误Throwable: error:程序无法处理的错误,系统错误(电脑关机了,内存不够,蓝屏,系统崩溃)Exception:程序能捕捉并处理的异常RunTimeException:运行异常非RunTimeException:编译异常(代码不符合java语法合适)异常处理:java中默认机制,程序出现错误,立即停止,影响其他代码的执行,但是某一块代码出现问题,不应该影响其他代码的执行,所以需要异常处理异常处理格式:try-catchtry{ 可能出现异常的
2021-05-17 09:00:16
70
原创 days11--抽象类和接口
为什么要使用抽象类直接实例化父类没有任何意义父类中方法体没有任何意义(子类重写父类方法,把父类方法体覆盖)避免子类忘记重写父类方法抽象:概述:Java中,一个类所创建的对象没有具体的实体,这个类定义为抽象类。Java中,一个没有方法体的方法应该定义为抽象方法,而类中如果有抽象方法,该类必须定义为抽象类。作用:避免父类直接实例化,和子类继承父类时没有重写父类中的方法 定义格式:抽象方法:访问修饰符 abstract 返回值 方法名(); 范例:public abstra
2021-05-16 16:39:17
81
原创 days09--面向对象之多态
多态:同一个类再不同时刻表现出不同形态前提:继承 方法重写 父类的引用指向子类的对象好处和弊端好处:提高了扩展性 弊端:子类独有的内容不能直接使用多态中的成员访问成员变量:只能使用父类中的内容成员方法:只能使用父类中的内容(子类重写父类中的方法,调用时就是子类的重写的结果)多态中的转型:向上转型子类到父类 父类的引用指向子类的对象 范例:Aniaml aniaml=new Cat();向下转型:多态中子类独有的内容不能直接使用,需要向下转型
2021-05-16 16:12:05
59
原创 days08--包
包 :本质就是类的文件夹作用: 分类方便管理 格式: package 包的全路径(src下开始);导包概述: 使用别的包下的类,需要给上全路径,多次使用路径需要写多次,繁琐,Java的导包的功能(导入的就是包下的类);格式: import 类的全路径(src下开始,多级包以逗号进行分割);同一包中,子类继承父类中非private的成员变量和成员方法,不同包中,子类继承父类中非private和default的成员变量和成员方法注意: Java中java.l
2021-05-16 15:59:37
63
原创 days06--面向对象之继承
继承:面向对象三大特征之一可以使的子类具有父类的属性和方法,还可以在子类中重新定义,追加属性和方法特点:1.提起公共的属性和方法2.继承好处和弊端好处:1.复用性2.维护性 弊端: 增加耦合性,降低了子类的独立性格式:public class 子类(派生类) extends 父类(基类/超类){}变量访问特点(就近原则)1.局部2.子类3.父类4.报错(不考虑父类还有父类) 注意:private修改的不能继承super:当前类父类的对象th
2021-05-16 15:22:08
65
原创 days10--String
String:java中所有的字符串都是String类的实例创建对象public String() 创建一个空白的字符串对象,不含有任何内容public String(char[] c) 根据字符数组的内容,创建字符串对象 public String(byte[] b) 根据字节数组的内容,创建字符串对象String(byte[] bytes, int offset, int length)根据字节数组的内容,从偏移量(下标)offset开始,获length个字符,创建字符串对象 Str
2021-05-16 14:54:23
82
空空如也
1.14版本的flink sql 写入2.1版本的hbase 报错
2023-04-26
flink sql 写入impala中创建的kudu表
2022-12-02
TA创建的收藏夹 TA关注的收藏夹
TA关注的人