图书馆数据仓库

news2024/11/25 20:41:00

目录

1.数据仓库的数据来源为业务数据库(mysql)

       初始化脚本

   init_book_result.sql

2.通过sqoop将mysql中的业务数据导入到大数据平台(hive)

 导入mysql数据到hive中

3.通过hive进行数据计算和数据分析 形成数据报表

4.再通过sqoop将数据报表导出到mysql 

5.使用FineReport制作数据报表


1.数据仓库的数据来源为业务数据库(mysql)

        包含 图书表 t_book_info,

                借书表 t_borrow_info,  

                用户表 t_user_info  38条数据

                图书类别表 dim_books_type 5条

       初始化脚本

        init_mysql.sql

        

-- 设置sql_mode
set sql_mode = 'NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES';

-- 创建数据库library
create database library;

-- 切换数据库
use library;

-- 创建用户信息表
CREATE TABLE t_user_info(
	user_id        varchar(100) not null,
	user_name      varchar(100) not null,
	sex            varchar(10)  not null,
	age            int not null
)DEFAULT CHARSET='utf8';

-- 创建图书表
CREATE TABLE t_book_info(
	book_id        varchar(100) not null,
	book_name 	   varchar(100) not null,
	type_id        varchar(100) not null
)DEFAULT CHARSET='utf8';


-- 创建图书类别表
CREATE TABLE dim_books_type(
	type_id    varchar(100) not null,
	type_name  varchar(100) not null
)DEFAULT CHARSET='utf8';

-- 创建借书表
CREATE TABLE t_borrow_order(
	user_id        varchar(100) not null,
	book_id   varchar(100) not null,
	create_time    varchar(100) not null
)DEFAULT CHARSET='utf8';

-- 用户信息表插入数据
insert into t_user_info values ('114', '王小名', '男', 22);
insert into t_user_info values ('115', '张美丽', '女', 27);
insert into t_user_info values ('116', '李华', '男', 30);
insert into t_user_info values ('117', '陈晓红', '女', 35);
insert into t_user_info values ('118', '赵伟', '男', 24);
insert into t_user_info values ('119', '周小燕', '女', 29);
insert into t_user_info values ('120', '吴强', '男', 33);
insert into t_user_info values ('121', '郑丽', '女', 26);
insert into t_user_info values ('122', '王刚', '男', 28);
insert into t_user_info values ('123', '黄芳', '女', 31);
insert into t_user_info values ('124', '刘涛', '男', 36);
insert into t_user_info values ('125', '杨静', '女', 25);
insert into t_user_info values ('126', '张杰', '男', 32);
insert into t_user_info values ('127', '陈莉', '女', 23);
insert into t_user_info values ('128', '赵勇', '男', 38);
insert into t_user_info values ('129', '周敏', '女', 30);
insert into t_user_info values ('130', '吴浩', '男', 29);
insert into t_user_info values ('131', '郑薇', '女', 34);
insert into t_user_info values ('132', '王林', '男', 27);
insert into t_user_info values ('133', '黄梅', '女', 26);
insert into t_user_info values ('134', '刘军', '男', 37);
insert into t_user_info values ('135', '杨慧', '女', 25);
insert into t_user_info values ('136', '张明', '男', 33);
insert into t_user_info values ('137', '陈霞', '女', 31);
insert into t_user_info values ('138', '赵海', '男', 28);
insert into t_user_info values ('139', '周兰', '女', 36);
insert into t_user_info values ('140', '吴飞', '男', 24);
insert into t_user_info values ('141', '郑敏', '女', 27);
insert into t_user_info values ('142', '王磊', '男', 35);
insert into t_user_info values ('143', '黄蓉', '女', 30);
insert into t_user_info values ('144', '刘丽', '女', 26);
insert into t_user_info values ('145', '杨勇', '男', 32);
insert into t_user_info values ('146', '张华', '男', 29);
insert into t_user_info values ('147', '陈敏', '女', 34);
insert into t_user_info values ('148', '赵丽', '女', 31);
insert into t_user_info values ('149', '周刚', '男', 25);
insert into t_user_info values ('150', '吴丽', '女', 37);
insert into t_user_info values ('151', '郑强', '男', 28);
insert into t_user_info values ('152', '王芳', '女', 33);
insert into t_user_info values ('153', '黄伟', '男', 27);
insert into t_user_info values ('154', '刘静', '女', 36);
insert into t_user_info values ('155', '杨华', '男', 24);
insert into t_user_info values ('156', '张敏', '女', 31);
insert into t_user_info values ('157', '陈军', '男', 30);
insert into t_user_info values ('158', '赵敏', '女', 26);
insert into t_user_info values ('159', '周强', '男', 35);
insert into t_user_info values ('160', '吴红', '女', 32);
insert into t_user_info values ('161', '郑丽', '女', 29);
insert into t_user_info values ('162', '王伟', '男', 34);
insert into t_user_info values ('163', '黄静', '女', 31);
insert into t_user_info values ('164', '刘涛', '男', 25);
insert into t_user_info values ('165', '杨敏', '女', 37);
insert into t_user_info values ('166', '张勇', '男', 28);
insert into t_user_info values ('167', '陈芳', '女', 33);
insert into t_user_info values ('168', '赵军', '男', 27);
insert into t_user_info values ('169', '周丽', '女', 36);
insert into t_user_info values ('170', '吴华', '男', 24);

commit;


-- 图书表插入数据
-- Book Type: 散文随笔 (a)
insert into t_book_info values ('a001', '珠江潮汐美', 'a');
insert into t_book_info values ('a002', '晨曦的低语', 'a');
insert into t_book_info values ('a003', '山间小路', 'a');
insert into t_book_info values ('a004', '秋叶之歌', 'a');
insert into t_book_info values ('a005', '夜色中的琴声', 'a');
insert into t_book_info values ('a006', '城市边缘的诗人', 'a');
insert into t_book_info values ('a007', '冬日里的暖阳', 'a');
insert into t_book_info values ('a008', '海边的沉思', 'a');
-- book type: 世界名著 (b)
insert into t_book_info values ('b001', '悲惨世界', 'b');
insert into t_book_info values ('b002', '百年孤独', 'b');
insert into t_book_info values ('b003', '双城记', 'b');
insert into t_book_info values ('b004', '战争与和平', 'b');
insert into t_book_info values ('b005', '简爱', 'b');
insert into t_book_info values ('b006', '飘', 'b');
insert into t_book_info values ('b007', '堂吉诃德', 'b');
insert into t_book_info values ('b008', '呼啸山庄', 'b');
-- book type: 少儿童书 (c)
insert into t_book_info values ('c001', '小王子的星球', 'c');
insert into t_book_info values ('c002', '魔法森林的秘密', 'c');
insert into t_book_info values ('c003', '海底两万里', 'c');
insert into t_book_info values ('c004', '勇敢的小火车头', 'c');
insert into t_book_info values ('c005', '神奇的种子', 'c');
insert into t_book_info values ('c006', '月亮上的兔子', 'c');
insert into t_book_info values ('c007', '彩虹桥下的秘密', 'c');
insert into t_book_info values ('c008', '会说话的石头', 'c');
-- book type: 历史小说 (d)
insert into t_book_info values ('d001', '三国演义', 'd');
insert into t_book_info values ('d002', '水浒传', 'd');
insert into t_book_info values ('d003', '大明王朝', 'd');
insert into t_book_info values ('d004', '清朝末年', 'd');
insert into t_book_info values ('d005', '大唐盛世', 'd');
insert into t_book_info values ('d006', '宋朝风云', 'd');
insert into t_book_info values ('d007', '明朝那些事儿', 'd');
insert into t_book_info values ('d008', '清朝宫廷秘史', 'd');
-- book type: 国学入门 (e)
insert into t_book_info values ('e001', '论语解读', 'e');
insert into t_book_info values ('e002', '道德经注释', 'e');
insert into t_book_info values ('e003', '易经初探', 'e');
insert into t_book_info values ('e004', '诗经选读', 'e');
insert into t_book_info values ('e005', '孟子精讲', 'e');
insert into t_book_info values ('e006', '庄子心解', 'e');
insert into t_book_info values ('e007', '大学中庸', 'e');
insert into t_book_info values ('e008', '孝经新解', 'e');

commit;

-- 图书类别表插入数据
insert into dim_books_type values('a','散文随笔');
insert into dim_books_type values('b','世界名著');
insert into dim_books_type values('c','少儿童书');
insert into dim_books_type values('d','历史小说');
insert into dim_books_type values('e','国学入门');

commit;

-- 借书表插入数据
insert into t_borrow_order values('114','a002','2022-11-08 09:23:54');
insert into t_borrow_order values('115','e002','2022-11-08 09:23:54');
insert into t_borrow_order values('114','b003','2022-11-08 09:23:54');
insert into t_borrow_order values('116','d002','2022-11-08 09:23:54');
insert into t_borrow_order values('114','c001','2022-11-08 09:23:54');
insert into t_borrow_order values('115','a005','2022-11-08 09:23:54');
insert into t_borrow_order values('117','b004','2022-11-08 09:23:54');
insert into t_borrow_order values('118','a007','2022-11-08 09:23:54');
insert into t_borrow_order values('118','a004','2022-11-08 09:23:54');
insert into t_borrow_order values('119','e003','2022-11-08 09:23:54');
insert into t_borrow_order values('119','d001','2022-11-08 09:23:54');
insert into t_borrow_order values('120','a002','2022-11-08 09:23:54');
insert into t_borrow_order values('120','a004','2022-11-08 09:23:54');
insert into t_borrow_order values('121','d005','2022-11-08 09:23:54');
insert into t_borrow_order values('123','b006','2022-11-08 09:23:54');
insert into t_borrow_order values('124','a002','2022-11-08 09:23:54');
insert into t_borrow_order values('125','e004','2022-11-08 09:23:54');
insert into t_borrow_order values('126','b002','2022-11-08 09:23:54');
insert into t_borrow_order values('127','a003','2022-11-08 09:23:54');
insert into t_borrow_order values('124','d002','2022-11-08 09:23:54');
insert into t_borrow_order values('122','b001','2022-11-08 09:23:54');
insert into t_borrow_order values('128','a001','2022-11-08 09:23:54');
insert into t_borrow_order values('129','a006','2022-11-08 09:23:54');
insert into t_borrow_order values('125','d008','2022-11-08 09:23:54');
insert into t_borrow_order values('123','e008','2022-11-08 09:23:54');
insert into t_borrow_order values('120','a005','2022-11-08 09:23:54');
insert into t_borrow_order values('130','b007','2022-11-08 09:23:54');
insert into t_borrow_order values('131','a007','2022-11-08 09:23:54');
insert into t_borrow_order values('132','a008','2022-11-08 09:23:54');
insert into t_borrow_order values('133','e004','2022-11-08 09:23:54');
insert into t_borrow_order values('135','a004','2022-11-08 09:23:54');
insert into t_borrow_order values('133','d003','2022-11-08 09:23:54');
insert into t_borrow_order values('136','a003','2022-11-08 09:23:54');
insert into t_borrow_order values('138','a004','2022-11-08 09:23:54');
insert into t_borrow_order values('139','d001','2022-11-08 09:23:54');
insert into t_borrow_order values('133','e001','2022-11-08 09:23:54');
insert into t_borrow_order values('133','a002','2022-11-08 09:23:54');
insert into t_borrow_order values('132','e002','2022-11-08 09:23:54');
insert into t_borrow_order values('131','a003','2022-11-08 09:23:54');
insert into t_borrow_order values('141','b003','2022-11-08 09:23:54');
insert into t_borrow_order values('140','e003','2022-11-08 09:23:54');
insert into t_borrow_order values('142','a005','2022-11-08 09:23:54');
insert into t_borrow_order values('142','d005','2022-11-08 09:23:54');
insert into t_borrow_order values('146','b006','2022-11-08 09:23:54');
insert into t_borrow_order values('144','d006','2022-11-08 09:23:54');
insert into t_borrow_order values('148','d007','2022-11-08 09:23:54');
insert into t_borrow_order values('144','e003','2022-11-08 09:23:54');
insert into t_borrow_order values('142','a003','2022-11-08 09:23:54');
insert into t_borrow_order values('143','e003','2022-11-08 09:23:54');
insert into t_borrow_order values('149','d004','2022-11-08 09:23:54');
insert into t_borrow_order values('150','a005','2022-11-08 09:23:54');
insert into t_borrow_order values('151','a005','2022-11-08 09:23:54');
insert into t_borrow_order values('151','a002','2022-11-08 09:23:54');
insert into t_borrow_order values('154','d003','2022-11-08 09:23:54');
insert into t_borrow_order values('153','d002','2022-11-08 09:23:54');
insert into t_borrow_order values('156','a002','2022-11-08 09:23:54');
insert into t_borrow_order values('155','d003','2022-11-08 09:23:54');
insert into t_borrow_order values('157','a004','2022-11-08 09:23:54');
insert into t_borrow_order values('158','d005','2022-11-08 09:23:54');
insert into t_borrow_order values('159','a005','2022-11-08 09:23:54');
insert into t_borrow_order values('154','c006','2022-11-08 09:23:54');
insert into t_borrow_order values('153','d007','2022-11-08 09:23:54');
insert into t_borrow_order values('152','c004','2022-11-08 09:23:54');
insert into t_borrow_order values('154','a004','2022-11-08 09:23:54');
insert into t_borrow_order values('151','d003','2022-11-08 09:23:54');
insert into t_borrow_order values('152','a002','2022-11-08 09:23:54');
insert into t_borrow_order values('162','c003','2022-11-08 09:23:54');
insert into t_borrow_order values('161','a001','2022-11-08 09:23:54');
insert into t_borrow_order values('166','d002','2022-11-08 09:23:54');
insert into t_borrow_order values('163','a002','2022-11-08 09:23:54');
insert into t_borrow_order values('167','c003','2022-11-08 09:23:54');
insert into t_borrow_order values('169','a005','2022-11-08 09:23:54');
commit;

   init_book_result.sql

-- 设置sql_mode
set sql_mode = 'NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES';

-- 创建数据库result,并进行切换
create database book_result;

use book_result;


-- 创建图书类别浏览量表
CREATE TABLE t_books_type_borrow_count(
	type_name        varchar(100) not null,
	borrow_count        int not null
)DEFAULT CHARSET='utf8';

2.通过sqoop将mysql中的业务数据导入到大数据平台(hive)

在hive中建立映射的数据库

init_hive.sql

create database library;
use library;

-- 创建用户信息表

create table t_user_info (
    user_id STRING    comment "用户id",   
    user_name STRING  comment "用户姓名", 
    sex STRING        comment "用户姓名",       
    age INT           comment "用户性别"
) 
comment "用户信息表"
row format delimited fields terminated by ','
stored as textfile;

-- 创建图书表

create table t_book_info (
    book_id STRING    comment "图书id",   
    book_name STRING  comment "书名", 
    type_id STRING    comment "类别id"
) 
comment "图书表"
row format delimited fields terminated by ','
stored as textfile;

-- 创建图书类别表

create table dim_books_type (
    type_id STRING    comment "类别id",   
    type_name STRING  comment "类别名"
) 
comment "图书类别表"
row format delimited fields terminated by ','
stored as textfile;

-- 创建借书表

create table t_borrow_order (
    user_id STRING     comment "用户id",    
    book_id STRING     comment "图书id",    
    create_time STRING comment "创建时间"
) 
comment "借书表"
row format delimited fields terminated by ','
stored as textfile;

source /opt/sql/library/init_hive.sql;

 导入mysql数据到hive中

此次mysql与hive中的表名都相同

sqoop import \

                                     虚拟机      端口号 mysql中的数据库名

--connect jdbc:mysql://bigdata004:3306/mall \  

--username root \

--password root123 \

           mysql中的表名

--table t_user_info \

--num-mappers 1 \

--hive-import \

--fields-terminated-by "," \

--hive-overwrite \

导入dim_books_type


sqoop import \
--connect jdbc:mysql://bigdata004:3306/library \
--username root \
--password root123 \
--table dim_books_type \
--num-mappers 1 \
--hive-import \
--fields-terminated-by "," \
--hive-overwrite \
--hive-table library.dim_books_type

3.通过hive进行数据计算和数据分析 形成数据报表


--切换数据库
use library;
 
 
--创建图书类别借阅表
--从借书表中获取图书id 
--从图书表中获取图书id的类别id
--从类别表中获取类别名
--表中显示 类名 和 该类名的总数()

 
create table if not exists library.dws_borrow_books_type_count
as
	select t3.type_name,count(t2.type_id) as borrow_count from (select book_id from t_borrow_order) t1
	inner join t_book_info t2 on t1.book_id=t2.book_id
	inner join dim_books_type t3 on t2.type_id=t3.type_id
	group by t3.type_name;

4.再通过sqoop将数据报表导出到mysql 

-- sqoop导出数据到mysql

sqoop export \

                                   主机名                 数据库
--connect jdbc:mysql://bigdata004:3306/result \
--username root \
--password root123 \

                    mysql上的表名
--table  t_city_sale_total \
--num-mappers 1 \

                    hdfs上的数据库位置
--export-dir /user/hive/warehouse/mall_bigdata.db/dws_sale_order_city_total \
--input-fields-terminated-by  "\001"

-- sqoop导出数据到mysql

sqoop export \
--connect jdbc:mysql://bigdata004:3306/book_result \
--username root \
--password root123 \
--table t_books_type_borrow_count \
--num-mappers 1 \
--export-dir /user/hive/warehouse/library.db/dws_borrow_books_type_count \
--input-fields-terminated-by "\001"

5.使用FineReport制作数据报表

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1897980.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何取消闪迪Micro SD卡的写保护?这个技巧很有效!

由于受写保护影响,无法格式化闪迪Micro SD卡?别担心!通过本文你可以学习如何解除闪迪Micro SD卡的写保护。 我的闪迪SD卡有写保护怎么办? “我打算格式化我的闪迪SD卡。但当我进行格式化时,提示我磁盘被写保护。我想用…

Linux配置固定ip地址

虚拟机的Linux操作系统,其IP地址是通过DHCP服务获取的 DHCP:动态获取IP地址,即每次重启设备后都会获取一次,可能导致IP地址频繁变更。 一般系统默认的ip地址设置都是自动获取,故每次系统重启后ip地址都可能会不一样&a…

数字化产科管理平台全套源码,java产科电子病历系统源码

数字化产科管理平台全套成品源码,产科电子病历系统源码,多家大型妇幼专科医院应用案例。源码完全授权交付。 数字化产科管理平台(智慧产科系统)是为医院产科量身定制的信息管理系统。它管理了孕妇从怀孕开始到生产结束42天以内的一…

欢乐钓鱼大师攻略:西沙群岛攻略,内置自动辅助云手机!

《欢乐钓鱼大师》是一款以钓鱼为主题的休闲游戏,玩家可以在虚拟的钓鱼世界中体验真实的钓鱼乐趣,并通过捕捉各种珍稀鱼类来提升自己的钓鱼技能和成就。在这篇攻略中,我们将重点介绍如何在西沙群岛区域有效地捕捉各种典藏鱼类,并提…

数据结构之顺序表专题

在学习数据结构之前我们要先了解什么是数据结构? 1.数据结构相关概念 1.什么是数据结构? 数据结构是由“数据”和“结构”两词组合而来。 什么是数据?常见的数值1、2、3、4.、教务系统里保存的用户信息(姓名、性别、年龄、学历等等)、网页里肉眼可以…

Qt项目:基于Qt实现的网络聊天室---注册模块

文章目录 基本页面设计创建登录界面创建注册界面优化样式完善注册类界面 客户端逻辑完善客户端增加post逻辑客户端配置管理 邮箱注册服务认证服务读取配置邮箱验证服务联调设置验证码过期封装redis操作类封装redis连接池注册功能Server端接受注册请求封装mysql连接池封装DAO操作…

传统视觉Transformer的替代者:交叉注意力Transformer(CAT)

传统视觉Transformer的替代者:交叉注意力Transformer(CAT) 在深度学习的世界里,Transformer架构以其在自然语言处理(NLP)领域的卓越表现而闻名。然而,当它进入计算机视觉(CV)领域时,却面临着计算成本高昂和推理速度慢的双重挑战。现在,一项革命性的创新——交叉注意…

【Linux】—VMware安装Centos7步骤

文章目录 前言一、虚拟机准备二、CentOS7操作系统安装 前言 本文介绍VMware安装Centos7步骤。 软件准备 软件:VMware Workstation Pro,直接官网安装。镜像:CentOS7,镜像官网下载链接:https://vault.centos.org/&#x…

[SAP ABAP] 子例程

子例程 示例1 主程序(Z437_TEST_2024) INCLUDE文件(Z437_TEST_2024_F01) 输出结果如下所示 示例2 主程序(Z437_TEST_2024) INCLUDE文件(Z437_TEST_2024_F01) 输出结果如下所示 补充扩展练习 主程序(Z437_TEST_2024) INCLUDE文件(Z437_TEST_2024_F01) 输出结果如下所示 提示…

使用Rough.js库在画布上绘制一只毛毛虫

本文由ScriptEcho平台提供技术支持 项目地址:传送门 代码应用场景介绍 本代码使用Rough.js库在画布上绘制一只毛毛虫。 代码基本功能介绍 初始化画布: 使用Rough.js库创建画布,并设置画布尺寸。 绘制毛毛虫身体: 使用椭圆形和…

【C++】 解决 C++ 语言报错:未定义行为(Undefined Behavior)

文章目录 引言 未定义行为(Undefined Behavior, UB)是 C 编程中非常危险且难以调试的错误之一。未定义行为发生时,程序可能表现出不可预测的行为,导致程序崩溃、安全漏洞甚至硬件损坏。本文将深入探讨未定义行为的成因、检测方法…

上千套源码分享免费(师哥师姐毕设分享)

项目管理平台详解 项目管理平台是专为项目管理者设计的系统软件,旨在在有限的资源约束下,通过系统的观点、方法和理论,对项目涉及的全部工作进行有效管理。这种平台不仅有助于项目从投资决策到结束的全程计划、组织、指挥、协调、控制和评价…

html纯原生网页引入vue3版本的quill editor

效果图 版本 vueup/vue-quill v1.2.0vue3.3.8Element Plus v2.4.2 引入流程 找一个vue3的项目, 然后安装插件vue版本的quill: vue-quill npm install vueup/vue-quill --save官方地址:https://vueup.github.io/vue-quill/ 安装完成之后,把vue-quil插件下…

[单master节点k8s部署]18.监控系统构建(三)Grafana安装

Grafana是一个跨平台的开源的度量分析和可视化工具。支持多种数据源,比如OpenTSDB,Prometheus,ElasticResearch,Cloudwatch等。 Grafana安装 通过yaml配置grafana的pod和service,grafana工作在kube-system的命名空间…

小学英语语法

目录 a和an的用法名词的单复数be动词和人称代词(主格)指示代词形容词物主代词名词所有格双重所有格方位介词some,any和no的用法How many和How much的用法情态动词can的用法祈使句人称代词(宾格)常见实义动词的用法一般…

也说字母U:房子到底是什么?

​ 不记得是第几期了,湖南卫视有档很火的音乐节目叫《歌手》,那一期是最终是韩磊夺得了冠军,他有一杀手锏,叫《向天再借五百年》,他要不夺冠,好像大家也对不起对这首歌的印象,因为他是多少人的记…

【网址】Andorid Studio历史版本下载

Andorid Studio官网是最新版本的下载,历史版本的下载地址 :https://developer.android.google.cn/studio/archive 1.如果是空白页面的话,切换语言【中文切换成English】 2.滑倒最后点击同意 3.历史版本浏览 4.下载安装包 遇到问题1&#xf…

【HICE】基于用户认证的虚拟服务搭建

1.创建特定的内容 --账号与密码(需要认证访问)【里面】 2.编辑配置1.conf的内容,更新httpd 3.编辑hehe网页(外部公开) cd /www/ echo hehe > hehe/index.html 4.更改本地hosts和window下的解析 5.浏览器下验证内…

Linux搭建hive手册

一、将hive安装包上传到NameNode节点并解压 1、删除安装MySQL时的.rpm文件 cd /opt/install_packages/ rm -rf *.rpm 2、将安装包拖进/install_packages目录 3、解压安装包 tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /opt/softs/ 4、修改包名 cd /opt/softs mv apache-…

[单master节点k8s部署]19.监控系统构建(四)kube-state-metrics

kube-state-metrics 是一个Kubernetes的附加组件,它通过监听 Kubernetes API 服务器来收集和生成关于 Kubernetes 对象(如部署、节点和Pod等)的状态的指标。这些指标可供 Prometheus 进行抓取和存储,从而使你能够监控和分析Kubern…