自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Hive基础知识(十六):Hive-SQL分区表使用与优化

分区表实际上就是对应一个 HDFS 文件系统上的独立的文件夹,该文件夹下是该分区所有的数据文件。,把一个大的数据集根据业务需要分割成小的数据集。在查询时通过 WHERE 子句中的表达式选择查询所需要的指定的分区,这样的。

2024-01-15 08:33:36 1374

原创 Hive基础知识(十五):Hive中SQL排序方式全解

Order By:全局排序,只有一个 Reducer1)使用 ORDER BY 子句排序ASC(ascend): 升序(默认)DESC(descend): 降序2)ORDER BY 子句在 SELECT 语句的结尾3)案例实操(1)查询员工信息按工资升序排列(2)查询员工信息按工资降序排列。

2024-01-15 08:25:14 904

原创 Hive基础知识(十四):Hive的八种Join使用方式与优缺点

Hive 支持通常的 SQL JOIN 语句。1)案例实操(1)根据员工表和部门表中的部门编号相等,查询员工编号、员工名称和部门名称;

2024-01-14 08:30:00 532

原创 Hive基础知识(十三):Hive的Group by语句与Having语句

GROUP BY 语句通常会和聚合函数一起使用,按照一个或者多个列队结果进行分组,然后对每个组执行聚合操作。1)案例实操:(1)计算 emp 表每个部门的平均工资(2)计算 emp 每个部门中平均薪资大于2000,及部门平均薪资。(3)计算 emp 每个部门中每个岗位的最高薪水。

2024-01-14 08:00:00 753

原创 Hive基础知识(十二):Hive的基本查询

0)数据准备原始数据(1)创建部门表(2)创建员工表(3)导入数据1)全表查询2)选择特定列查询注意:(1)SQL 语言大小写不敏感。(2)SQL 可以写在一行或者多行(3)关键字不能被缩写也不能分行(4)各子句一般要分行写。(5)使用缩进提高语句的可读性。

2024-01-13 08:15:00 932

原创 Hive基础知识(十一):Hive的数据导出方法示例

1)将查询的结果导出到本地2)将查询的结果格式化导出到本地(加上一个以“,”隔开数据的格式)3)将查询的结果导出到 HDFS 上(没有 local)

2024-01-13 08:00:00 525

原创 Hive基础知识(十):Hive导入数据的五种方式

1)语法(1)load data:表示加载数据(2)local:表示从本地加载数据到 hive 表;否则从 HDFS 加载数据到 hive 表(3)inpath:表示加载数据的路径(4)overwrite:表示覆盖表中已有数据,否则表示追加(5)into table:表示加载到哪张表(6)student:表示具体的表(7)partition:表示上传到指定分区2)实操案例(0)创建一张表(1)加载本地文件到 hive(2)加载 HDFS 文件到 hive 中上传文件到 HDFS。

2024-01-12 09:13:29 889

原创 Hive基础知识(九):Hive对数据库表的增删改查操作

在建表的时候,用户还需要为表指定列,用户在指定表的列的同时也会指定自定义的 SerDe,,有时也被称为内部表。(2)EXTERNAL 关键字可以让用户创建一个外部表,在建表的同时可以指定一个指向实际数据的路径(LOCATION),在删除表的时候,内部表的元数据和数据会被一起删除,而外部表只删除元数据,不删除数据。在外部表(原始日志表)的基础上做大量的统计分析,用到的中间表、结果表使用内部表存储,数据通过 SELECT+INSERT 进入内部表。(2)根据查询结果创建表(查询的结果会添加到新创建的表中)

2024-01-12 09:09:02 1403

原创 Hive基础知识(八):Hive对数据库的增删改查操作

1)创建一个数据库,数据库在 HDFS 上的默认存储路径是/user/hive/warehouse/*.db。2)避免要创建的数据库已经存在错误,增加 if not exists 判断。(标准写法)3)创建一个数据库,指定数据库在 HDFS 上存放的位置。

2024-01-11 08:15:00 514

原创 Hive基础知识(七):Hive 数据类型全解

对于 Hive 的 String 类型相当于数据库的 varchar 类型,该类型是一个可变的字符串,不过它不能声明其中最多能存储多少个字符,理论上它可以存储2GB 的字符数。

2024-01-11 08:00:00 591

原创 Hive基础知识(六):Hive 配置运行日志信息、打印当前库和表头、参数配置方式

另外,Hive 也会读入 Hadoop 的配置,因为。

2024-01-10 08:30:00 810

原创 Hive基础知识(五):Hive 配置 JDBC方式访问

一般会组合使用: nohup [xxx 命令操作]> file 2>&1 &,表示将 xxx 命令运行的结果输出到 file 中,并保持命令启动的进程在后台运行。1)在 hive-site.xml 文件中添加如下配置信息。内容如下:此脚本的编写不要求掌握。3)启动 beeline 客户端(需要多等待一会)2)启动 hiveserver2。如上命令不要求掌握。

2024-01-10 08:15:00 584

原创 Hive基础知识(四):Hive 元数据配置到 MySQL

将 MySQL 的 JDBC 驱动拷贝到 Hive 的 lib 目录下。

2024-01-09 09:30:00 497

原创 Hive基础知识(三):Linux系统下的MySQL安装

注意:按照顺序依次执行如果 Linux 是最小化安装的,在安装 mysql-community-server-5.7.28-1.el7.x86_64.rpm 时可能会出现如下错误。11)修改 mysql 库下的 user 表中的 root 用户允许任意 ip 连接。10)必须先修改 root 用户的密码,否则执行其他的操作会报错。1)检查当前系统是否安装过 MySQL。3)在安装目录下执行 rpm 安装。2)解压 MySQL 安装包。9)登录 MySQL 数据库。7)查看数据生成的临时密码。

2024-01-09 09:15:00 913

原创 Hive基础知识(二):Hive 安装部署教程

1)把 apache-hive-3.1.2-bin.tar.gz 上传到 linux 的/opt/software 目录下2)解压 apache-hive-3.1.2-bin.tar.gz 到/opt/module/目录下面3)解决日志 Jar 包冲突4)初始化元数据库。

2024-01-08 09:30:00 447

原创 Hive基础知识(一):Hive入门与Hive架构原理

1) hive 简介Hive:由 Facebook 开源用于解决的数据统计工具。Hive 是基于 Hadoop 的一个工具,可以将结构化的数据文件映射为一张表,并提供类 SQL 查询功能。2) Hive 本质:将 HQL 转化成 MapReduce 程序(1)Hive 处理的数据存储在 HDFS(2)Hive 分析数据底层的实现是 MapReduce(3)执行程序运行在 Yarn 上。

2024-01-08 09:15:00 1198

原创 Flume基础知识(十一):Flume自定义接口

在实际的开发中,一台服务器产生的日志类型可能有很多种,不同类型的日志可能需要 发送到不同的分析系统。此时会用到 Flume 拓扑结构中的 Multiplexing 结构,Multiplexing 的原理是,根据 event 中 Header 的某个 key 的值,将不同的 event 发送到不同的 Channel中,所以我们需要自定义一个 Interceptor,为不同类型的 event 的 Header 中的 key 赋予 不同的值。(6)观察 hadoop101 和 hadoop102 打印的日志。

2024-01-07 08:31:34 763

原创 Flume基础知识(十):Flume 聚合实战

分别开启对应配置文件:flume3-flume-logger.conf,flume2-netcat-flume.conf, flume1-logger-flume.conf。在 hadoop102、hadoop103 以及 hadoop104 的/opt/module/flume/job 目录下创建一个 group3 文件夹。Flume-1 与 Flume-2 将数据发送给 hadoop102 上的 Flume-3,Flume-3 将最终数据打印 到控制台。(8)检查 hadoop104 上数据。

2024-01-07 08:28:56 675

原创 Flume基础知识(九):Flume 企业开发案例之复制和多路复用

使用 Flume-1 监控文件变动,Flume-1 将变动内容传递给 Flume-2,Flume-2 负责存储 到 HDFS。配置 1 个接收日志文件的 source 和两个 channel、两个 sink,分别输送给 flume-flume-hdfs 和 flume-flume-dir。分别启动对应的 flume 进程:flume-flume-dir,flume-flume-hdfs,flume-file-flume。(3)创建 flume-flume-hdfs.conf。

2024-01-06 15:56:23 652

原创 Flume基础知识(八):Flume 拓扑结构全解

这种模式是将多个 flume 顺序连接起来了,从最初的 source 开始到最终 sink 传送的 目的存储系统。此模式不建议桥接过多的 flume 数量, flume 数量过多不仅会影响传输速 率,而且一旦传输过程中某个节点 flume 宕机,会影响整个传输系统。

2024-01-06 09:00:00 381

原创 Flume基础知识(六):Flume实战之实时监控目录下的多个追加文件

Exec source 适用于监控一个实时追加的文件,不能实现断点续传;Spooldir Source 适合用于同步新文件,但不适合对实时追加日志的文件进行监听并同步;当日的hive.log会在第二天更名为hive.log.xxxx,这样的结果就会导致在更名的时候,会让flume进行上传,就会造成二次上传的错误结果。Taildir 说明: Taildir Source 维护了一个 json 格式的 position File,进行源码的修改,让文件更名时不会产生新文件上传的效果。(2)启动监控文件夹命令。

2024-01-05 09:00:00 485

原创 Flume基础知识(七):Flume 事务与 Flume Agent 内部原理

DefaultSinkProcessor 对 应 的 是 单 个 的 Sink , LoadBalancingSinkProcessor 和 FailoverSinkProcessor 对应的是 Sink Group,LoadBalancingSinkProcessor 可以实现负 载均衡的功能,FailoverSinkProcessor 可以错误恢复的功能。其共有两种类型, 分别是。SinkProcessor 共 有 三 种 类 型 , 分 别 是。

2024-01-05 09:00:00 684

原创 Flume基础知识(五):Flume实战之实时监控目录下多个新文件

说明:在使用 Spooling Directory Source 时,不要在监控目录中创建并持续修改文件;被监控文件夹每 500 毫秒扫描一次文件变动。在/opt/module/flume 目录下创建 upload 文件夹。(1)创建配置文件 flume-dir-hdfs.conf。使用 Flume 监听整个目录的文件,并上传至 HDFS。(3)向 upload 文件夹中添加文件。向 upload 文件夹中添加文件。(4)查看 HDFS 上的数据。(2)启动监控文件夹命令。

2024-01-04 09:08:54 990

原创 Flume基础知识(四):Flume实战之实时监控单个追加文件

对于所有与时间相关的转义序列,Event Header 中必须存在以 “timestamp”的 key(除非 hdfs.useLocalTimeStamp 设置为 true,此方法会使用 TimestampInterceptor 自 动添加 timestamp)。注:要想读取 Linux 系统中的文件,就得按照 Linux 命令的规则执行命令。由于 Hive 日志在 Linux 系统中所以读取文件的类型选择:exec 即 execute 执行的意思。(5)在 HDFS 上查看文件。

2024-01-04 09:05:43 732

原创 Flume基础知识(三):Flume 实战监控端口数据官方案例

(5)在 job 文件夹下创建 Flume Agent 配置文件 flume-netcat-logger.conf。:flume 本次启动读取的配置文件是在 job 文件夹下的 flume-telnet.conf 文件。(3)创建 Flume Agent 配置文件 flume-netcat-logger.conf。(6)在 flume-netcat-logger.conf 文件中添加如下内容。(4)在 flume 目录下创建 job 文件夹并进入 job 文件夹。(1)安装 netcat 工具。

2024-01-03 10:31:32 828

原创 Flume基础知识(二):Flume安装部署

2.1.2 安装部署。

2024-01-03 10:26:42 954

原创 Flume基础知识(一):Flume组成原理与架构

Flume是Cloudera提供的一个高可用的,高可靠的,分布式的。Flume基于流式架构,灵活简单。Flume最主要的作用就是,实时读取服务器本地磁盘的数据,将数据写入到HDFS。

2024-01-02 11:32:26 734

原创 ClickHouse基础知识(七):ClickHouse的分片集群

副本虽然能够提高数据的可用性,降低丢失风险,但是每台服务器实际上必须容纳全量数据,对数据的没有解决。要解决数据水平切分的问题,需要引入分片的概念。通过分片把一份完整的数据进行切 分,不同的分片分布到不同的节点上,再通过 Distributed 表引擎把数据拼接起来一同使用。,有点类似于 MyCat 之于 MySql,成为一种中间 件,通过分布式逻辑表来写入、分发、路由来操作多台节点不同分片的分布式数据。

2024-01-02 11:28:52 1836

原创 ClickHouse基础知识(六):ClickHouse的副本配置

副本的目的主要是保障数据的高可用性,即使一台 ClickHouse 节点宕机,那么也可以 从其他服务器获得相同的数据。

2023-12-29 09:10:05 1034

原创 ClickHouse基础知识(五):ClickHouse的SQL 操作

基本上来说传统关系型数据库(以 MySQL 为例)的 SQL 语句,ClickHouse 基本都支持, 这里不会从头讲解 SQL 语法只介绍 ClickHouse 与标准 SQL(MySQL)不一致的地方。

2023-12-29 09:05:21 1199

原创 ClickHouse基础知识(四):ClickHouse 引擎详解

(2)向表中插入数据。

2023-12-28 08:36:49 1757

原创 ClickHouse基础知识(三):ClickHouse 数据类型全解

固定长度的整型,包括有符号整型或无符号整型。

2023-12-28 08:22:03 1960

原创 ClickHouse基础知识(二):ClickHouse 安装教程

(1)在 hadoop101 的 /etc/security/limits.conf 文件的末尾加入以下内容(2)在 hadoop101 的/etc/security/limits.d/20-nproc.conf 文件的末尾加入以下内容(3)执行同步操作。

2023-12-27 19:53:52 1105

原创 ClickHouse基础知识(一):ClickHouse 入门

ClickHouse 是俄罗斯的 Yandex 于 2016 年开源的(DBMS),使用 C++ 语言编写,主要用于,能够使用 SQL 查询实时生成分析数据报告。

2023-12-27 19:44:29 1652

原创 HBase基础知识(七):HBase 性能优化示例全解

在 HBase 中 HMaster 负责监控 HRegionServer 的生命周期,均衡 RegionServer 的负载, 如果 HMaster 挂掉了,那么整个 HBase 集群将陷入不健康的状态,并且此时的工作状态并不会维持太久。所以 HBase 支持对 HMaster 的高可用配置。1.关闭 HBase 集群(如果没有开启则跳过此步)2.在 conf 目录下创建 backup-masters 文件3.在 backup-masters 文件中配置高可用 HMaster 节点。

2023-12-26 18:58:12 1659

原创 HBase基础知识(六):HBase 对接 Hive

1.Hive(1) 数据仓库 Hive 的本质其实就相当于将 HDFS 中已经存储的文件在 Mysql 中做了一个双射关系,以 方便使用 HQL 去管理查询。(2) 用于数据分析、清洗 Hive 适用于离线的数据分析和清洗,延迟较高。(3) 基于 HDFS、MapReduce Hive 存储的数据依旧在 DataNode 上,编写的 HQL 语句终将是转换为 MapReduce 代码执 行。2.HBase(1) 数据库 是一种面向列族存储的非关系型数据库。

2023-12-26 18:51:43 842

原创 HBase基础知识(五):HBase 对接 Hadoop 的 MapReduce

目标:将 fruit 表中的一部分数据,通过 MR 迁入到 fruit_mr 表中。分步实现:1.构建 ReadFruitMapper 类,用于读取 fruit 表中的数据@Override2. 构建 WriteFruitMRReducer 类,用于将读取到的 fruit 表中的数据写入到 fruit_mr 表中​​​​//可以进行动态传参String cf1;​@Override​​​@Override​//1.遍历values。

2023-12-25 14:04:16 1574

原创 HBase基础知识(四):HBase API

【代码】HBase基础知识(四):HBase API。

2023-12-25 08:14:47 1083

原创 Python知识(4/20):Python条件判断

python中的条件判断基于以上三种判断方式,同时还包括三种方式的嵌套判断。

2023-12-24 17:43:23 413 1

原创 测试理论知识八:敏捷开发测试、极限编程测试

敏捷开发提倡迭代式和增量式的开发模式,并强调测试在其中的重要作用。动态系统开发方法:基于快速软件开发方法,依赖于客户的持续参与,使用迭代式和增量式的开发模式,目标是软件能够在预算之内及时交付。敏捷建模:不是一种建模方法,而是一组建模以及文档化软件系统的原则和惯例,用以支撑其他诸如极限编程和Scrum等敏捷方法。极限编程:另一种迭代式和增量式的开发模式,非常强调并依赖单元测试和验收测试,也许是最著名的敏捷方法。开放统一过程:这种敏捷方法实现了标准的统一过程,采纳该方法的软件组能够做到快速开发其产品。

2023-12-24 10:17:20 390

空空如也

空空如也

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

TA关注的人

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