大数据集群硬盘资源监控

大数据平台性能监控 大数据监控是指通过大数据技术手段获取、收集、分析数据,并能够准确分析信息,有效预测信息发展动态趋势。大数据监控主要围绕着海量全网数据,大多数需要借助监测系统来协助分析数据。PrometheusPrometheus注重于数据存储及分析,存储采集到的监控数据并以metric的形式保存在其中,且能够将数据落到本地磁盘中,供使用人员二次查询数据。Prometheus同时附加了强大的计算与分析功能,能够利用各种labels与promql语句来完成多维度的监控数据查询,从而为故障排查与问题定位提供可靠的证据。 阅读详情

需求

  1. 统计集群服务器硬盘每日增量
  2. 统计HDFS每天数据增量
  3. 统计数仓每天数据增量
  4. 统计数仓ODS层和DWD层每天数据增量

硬盘资源监控命令

监控项命令默认单位
某服务器硬盘使用量dfKB
HDFS总使用量hadoop fs -dfB
HDFS上某个文件夹的大小hadoop fs -du -s /B

代码

Python用于获取和处理数据,MySQL用于存储数据
选择MySQL8原因:8版本支持WITH AS和窗口函数
选择Python2原因:CentOS7自带Python2,免安装

MySQL

安装MySQL8

https://blog.youkuaiyun.com/Yellow_python/article/details/104184171

建表

建库

CREATE DATABASE data_management;
USE data_management;

建表

CREATE TABLE item_info(
  item_id    INT           PRIMARY KEY   COMMENT '监控项ID',
  item_name  VARCHAR(255)  NOT NULL      COMMENT '监控项名称',
  item_unit  VARCHAR(63)   DEFAULT NULL  COMMENT '计量单位'
)COMMENT='监控项信息表';
CREATE TABLE item_records(
  item_id           INT       NOT NULL  COMMENT '监控项ID',
  monitoring_time   DATETIME  NOT NULL  COMMENT '监测时间',
  monitoring_value  BIGINT    NOT NULL  COMMENT '监测值',
  PRIMARY KEY(item_id,monitoring_time)
)COMMENT='监控项流水表';

插入数据

INSERT item_info VALUES
(1,'HDFS数据总使用量','B'),
(2,'数仓占用量(含副本)','B'),
(3,'数仓ODS层占用量(含副本)','B'),
(4,'数仓DWD层占用量(含副本)','B'),
(5,'hadoop105服务器硬盘使用','KB'),
(6,'hadoop106服务器硬盘使用','KB'),
(7,'hadoop107服务器硬盘使用','KB');

创建视图

视图 便于 查看每日环比增量 以及 提供数据接口

CREATE OR REPLACE VIEW hdfs_ymd AS
-- 最近30天,HDFS每天总硬盘使用(平均值)
WITH hdfs_used_ymd AS(
    SELECT
        DATE(monitoring_time) AS ymd,
        AVG(monitoring_value) AS b
    FROM item_records
    WHERE item_id=1 AND DATEDIFF(NOW(),monitoring_time)<31
    GROUP BY DATE(monitoring_time))
-- 计算每天变化量
SELECT
    t1.ymd AS ymd,
    t1.b/1024/1024/1024 AS gb,
    (t1.b-t2.b)/1024/1024/1024 AS increase
FROM hdfs_used_ymd t1
INNER JOIN hdfs_used_ymd t2
ON t1.ymd=DATE_ADD(t2.ymd,INTERVAL 1 DAY)
ORDER BY ymd;
-- 最近30天所有服务器硬盘总使用及变化
CREATE OR REPLACE VIEW df_ymd AS
WITH
-- 筛选监控项目:服务器硬盘使用
df_id AS(
    SELECT item_id FROM item_info
    WHERE item_name LIKE '%服务器硬盘使用'),
-- 筛选最近30天
r30 AS(
    SELECT
        item_id,
        DATE(monitoring_time) AS ymd,
        monitoring_value
    FROM item_records
    WHERE DATEDIFF(NOW(),monitoring_time)<31),
-- 最近30天各服务器硬盘使用(平均值)
df_used_hosts_ymd AS(
    SELECT
        r30.ymd AS ymd,
        AVG(r30.monitoring_value) AS kb
    FROM df_id LEFT JOIN r30 ON df_id.item_id=r30.item_id
    GROUP BY r30.ymd,df_id.item_id),
-- 最近30天所有服务器硬盘使用总和
df_used_ymd AS(
    SELECT ymd,SUM(kb) AS kb
    FROM df_used_hosts_ymd
    GROUP BY ymd)
-- 计算每日增量
SELECT
    ymd,
    kb/1048576 AS gb,
    (kb-LAG(kb,1,NULL)OVER(ORDER BY ymd))/1048576 AS increase
FROM df_used_ymd;

创建一个元数据表,存储视图信息

CREATE TABLE metadata_view(
  metadata_name  VARCHAR(255)  PRIMARY KEY  COMMENT '元数据名称',
  explanation    VARCHAR(255)  NOT NULL     COMMENT '元数据说明'
)COMMENT='视图的元数据信息';
-- 创建视图后,写入视图说明
INSERT metadata_view VALUES
('hdfs_ymd','最近30天,HDFS每天总使用量及每日增量'),
('hdfs_ymd.increase','每日增量'),
('df_ymd','最近30天,所有服务器硬盘使用及每日增量之和'),
('df_ymd.increase','每日增量');

Python2

注意:Python2脚本和MySQL8要在同一台服务器,便于执行mysql -e
执行用户:非root

#!/usr/bin/python2
# coding=utf-8
from os import system
from subprocess import check_output


def execute(cmd):
    """执行Linux命令"""
    print(cmd)
    system(cmd)


def evaluate(cmd):
    """执行Linux命令并获取返回值,Python2返回值类型为str"""
    print(cmd)
    return check_output(cmd, shell=True).strip()


class Mysql:
    def __init__(self, password, user='root', host=None, database=None):
        self.cmd = 'sudo mysql -u"{}" -p"{}" '.format(user, password)
        if host:
            self.cmd += '-h"{}" '.format(host)
        if database:
            self.cmd += '-D"{}" '.format(database)

    def e(self, sql):
        return self.cmd + '-e"{}"'.format(sql)

    def insert(self, dt, tb):
        ls = [(k, v) for k, v in dt.items() if v is not None]
        sql = 'INSERT %s (' % tb + ','.join(i[0] for i in ls) + \
              ') VALUES (' + ','.join('%r' % i[1] for i in ls) + ')'
        execute(self.e(sql))


if __name__ == '__main__':
    from re import split
    # 要监控的HDFS文件夹,Key对应MySQL表.item_info的item_id
    HDFS_PATH = {
        2: '/user/hive/warehouse/ec.db',
        3: '/user/hive/warehouse/ec.db/ods',
        4: '/user/hive/warehouse/ec.db/dwd',
    }
    # 要监控的节点硬盘,Key对应MySQL表.item_info的item_id
    HOSTNAMES = {
        5: 'hadoop105',
        6: 'hadoop106',
        7: 'hadoop107',
    }

    def _now():
        return evaluate('date +"%Y-%m-%d %H:%M:%S"')

    def _mysql_formatting(a, b, c):
        """数据写入MySQL的字段格式"""
        return {'item_id': a, 'monitoring_time': b, 'monitoring_value': c}

    def hadoop_fs_df():
        """查询HDFS数据量"""
        result = evaluate('hadoop fs -df')
        now = _now()
        print(result)
        dt = {k: v for k, v in zip(*(split(r'\s+', line) for line in result.split('\n')))}
        return _mysql_formatting(1, now, int(dt['Used']))

    def hadoop_fs_du(item_id=2):
        """查询HDFS文件夹大小"""
        result = evaluate('hadoop fs -du -s ' + HDFS_PATH[item_id])
        now = _now()
        print(result)
        value = split(r'\s+', result)[1]
        return _mysql_formatting(item_id, now, int(value))

    def hadoop_fs_du_ods():
        """查询ODS层文件夹大小"""
        return hadoop_fs_du(3)

    def hadoop_fs_du_dwd():
        """查询DWD层文件夹大小"""
        return hadoop_fs_du(4)

    def df(item_id):
        """查询指定服务器硬盘使用,执行用户具有sudo权限,集群之间root用户可免密登录"""
        hostname = HOSTNAMES[item_id]
        cmd = 'sudo ssh {} df /'.format(hostname)
        result = evaluate(cmd)
        print(result)
        now = _now()
        dt = {k: v for k, v in zip(*(split(r'\s+', line) for line in result.split('\n')))}
        return _mysql_formatting(item_id, now, int(dt['Used']))

    def df_hadoop105():
        """查询hadoop105服务器硬盘使用"""
        return df(5)

    def df_hadoop106():
        """查询hadoop106服务器硬盘使用"""
        return df(6)

    def df_hadoop107():
        """查询hadoop107服务器硬盘使用"""
        return df(7)

    db = Mysql(
        password='密码',
        database='data_management')
    TABLE = 'item_records'
    db.insert(hadoop_fs_df(), TABLE)
    db.insert(hadoop_fs_du(), TABLE)
    db.insert(hadoop_fs_du_ods(), TABLE)
    db.insert(hadoop_fs_du_dwd(), TABLE)
    db.insert(df_hadoop105(), TABLE)
    db.insert(df_hadoop106(), TABLE)
    db.insert(df_hadoop107(), TABLE)

定时任务

crontab -e
# 每天跑一次
0 0 * * * python2 脚本路径.py

或使用DolphinScheduler


补充

原本使用Python3,代码保留
3版本优势:代码阅读性和维护性更好,开发效率更高
2版本优势:移植性更好,复制可用,不需要装环境

from time import strftime
from subprocess import check_output
from re import split
from pymysql.connections import Connection  # conda install pymysql

# 要监控的HDFS文件夹,Key对应MySQL表item_info的item_id
HDFS_PATH = {
    2: '/user/hive/warehouse/ec.db',
    3: '/user/hive/warehouse/ec.db/ods',
    4: '/user/hive/warehouse/ec.db/dwd',
}
# 要监控的节点硬盘,Key对应MySQL表item_info的item_id
HOSTNAMES = {
    5: 'hadoop105',
    6: 'hadoop106',
    7: 'hadoop107',
}


def _cmd(command) -> str:
    """指定用户执行Shell命令,并返回结果"""
    return check_output('sudo -i -u yellow ' + command, shell=True).decode().strip()


def _mysql_formatting(a: int, b: str, c: int) -> dict:
    """数据写入MySQL的字段格式"""
    return {'item_id': a, 'monitoring_time': b, 'monitoring_value': c}


def _now() -> str:
    return strftime('%Y-%m-%d %H:%M:%S')


def hadoop_fs_df() -> dict:
    """查询HDFS数据量"""
    result = _cmd('hadoop fs -df')
    now = _now()
    dt = {k: v for k, v in zip(*(split(r'\s+', line) for line in result.split('\n')))}
    print(dt)
    return _mysql_formatting(1, now, int(dt['Used']))


def hadoop_fs_du(item_id=2) -> dict:
    """查询HDFS文件夹大小"""
    result = _cmd('hadoop fs -du -s ' + HDFS_PATH[item_id])
    now = _now()
    print(result)
    value = split(r'\s+', result)[1]
    return _mysql_formatting(item_id, now, int(value))


def hadoop_fs_du_ods() -> dict:
    """查询ODS层文件夹大小"""
    return hadoop_fs_du(3)


def hadoop_fs_du_dwd() -> dict:
    """查询DWD层文件夹大小"""
    return hadoop_fs_du(4)


def df(item_id) -> dict:
    """查询指定服务器硬盘使用,执行用户具有sudo权限,集群之间root用户可免密登录"""
    hostname = HOSTNAMES[item_id]
    cmd = 'sudo ssh {} df /'.format(hostname)
    print(cmd)
    result = _cmd(cmd)
    now = _now()
    dt = {k: v for k, v in zip(*(split(r'\s+', line) for line in result.split('\n')))}
    print(dt)
    return _mysql_formatting(item_id, now, int(dt['Used']))


def df_hadoop105() -> dict:
    """查询hadoop105服务器硬盘使用"""
    return df(5)


def df_hadoop106() -> dict:
    """查询hadoop106服务器硬盘使用"""
    return df(6)


def df_hadoop107() -> dict:
    """查询hadoop107服务器硬盘使用"""
    return df(7)


class Mysql:
    def __init__(self, host, database, password, user='root'):
        self.db = Connection(
            user=user,
            password=password,
            host=host,
            database=database,
            port=3306,
            charset='UTF8')
        self.cursor = self.db.cursor()

    def __del__(self):
        self.cursor.close()
        self.db.close()

    def commit(self, sql):
        print(sql)
        try:
            self.cursor.execute(sql)
            self.db.commit()
        except Exception as e:
            print(e)

    def insert(self, dt, tb):
        ls = [(k, v) for k, v in dt.items() if v is not None]
        sql = 'INSERT %s (' % tb + ','.join(i[0] for i in ls) + \
              ') VALUES (' + ','.join('%r' % i[1] for i in ls) + ')'
        self.commit(sql)


if __name__ == '__main__':
    db = Mysql(
        host='hadoop107',
        password='密码',
        database='data_management')
    TABLE = 'item_records'
    db.insert(hadoop_fs_df(), TABLE)
    db.insert(hadoop_fs_du(), TABLE)
    db.insert(hadoop_fs_du_ods(), TABLE)
    db.insert(hadoop_fs_du_dwd(), TABLE)
    db.insert(df_hadoop105(), TABLE)
    db.insert(df_hadoop106(), TABLE)
    db.insert(df_hadoop107(), TABLE)

B站一站式大数据集群管理平台(BMR)初窥 大数据服务是数据平台建设的基座,随着B站业务的快速发展,其大数据的规模和复杂度也突飞猛进,技术的追求也同样不会有止境。 阅读详情

相关推荐

CDH集群搭建详细步骤

CDH集群搭建笔记 企业: 第一个方面: 数据分析 第二个方面: 数据检索 基本组件: * Zookeeper 分布式协作框架 节点数目 测试集群:3 个 生产集群: >> 小型集群, 3 个或者 5个 >> 中型机群,5 个 或者 7个 >> 大型机群, 奇数个 * HDFS 存储...

wanghenghengheng的博客 7692

大数据集群资源监控Zabbix

zabbix 进程监控 内存监控 硬盘监控 CPU监控 zabbix部署 zabbix使用 仪表盘 大数据运维

ArYe 4990

存算分离架构下的大数据集群自动化监控

理解存算分离的架构逻辑;设计自动化监控的“神经中枢”;用数据和AI让集群“自我修复”。正如一位资深运维所说:“好的监控系统,应该让运维工程师‘失业’——因为集群自己会处理问题。而这,正是存算分离时代的“运维终极目标”。拓展任务搭建一个小型存算分离集群:用K8s部署2个Spark Executor(计算层),用MinIO部署1个存储桶(存储层),用Hive Metastore做元数据;配置Prometheus采集计算、存储、元数据的指标;

Java大师兄的博客 403

从0到1搭建大数据平台之监控

大数据平台之监控系统。

大数据指北 3672

CDH集群运维实战手册:大数据经典文档详解

数据导入导出是数据处理流程中的关键环节,CDH集群提供的多种工具如Flume、Sqoop、Hive和Spark SQL为数据导入导出提供了强大的支持。无论是从数据源导入数据到CDH集群,还是从集群导出数据到外部系统,以上提到的工具和方法都能够满足大多数大数据处理的场景需求。通过合理配置和使用这些工具,可以大幅度提高数据处理的效率和质量。

weixin_33812391的博客 954

EEGnet模型论文讲解(画图详解三种卷积层操作)

我录了一个讲解视频:https://www.bilibili.com/video/BV1si4y1s7g7/ 目录 一、整体介绍 二、梳理激活函数 三、图解三种卷积层 (核心内容) 四、总结 一、整体介绍 EEGnet是为专门一般的脑电图识别任务而设计的通用且紧凑的卷积神经网络。(设计思路借鉴了MobileNet) 下图是EEGnet的整体结构图,只有三个卷积模块,重点是depthwise conv 和separable conv这两个卷积模块。 表格表明了EEGnet的...

Amigo_1997的博客 2万+

大数据集群资源监控(一)—— IDC集群相关指标获取

背景: 公司自建IDC机房,基于IDC机房构建大数据集群;需要对集群资源进行监控,集群采用的是CDH集群,采集主要分两块进行: HDFS和YARN相关的指标进行采集 IDC机器自身的指标进行采集 注意: 也许有人会有疑惑,CM界面已经提供了监控的图表,为什么还需要自己进行展示。原因在于,这些信息需要集成到内部的数据平台上面去,做成对应的数据报表,可视化的方式展示在自己的数据平台上 [待更新… ...

呼呼的小窝 2447

量化回测框架三选一:Backtrader、Zipline、PyAlgoTrade,新手到底该跟谁学?

本文对比分析了三大量化回测框架Backtrader、Zipline和PyAlgoTrade,帮助新手选择最适合的入门工具。从安装配置、策略编写到文档查阅,详细解析各框架的特点和适用场景,为量化交易初学者提供实用指南。

weixin_28745309的博客 268

单机/集群/热备/磁盘阵列(RAID)的区别详解

根据业务需求和存储需求,可以在紧密耦合的体系结构中针对主存储部署数据存储,并且可以将数据分为节点之间的很小的块,或者在独立的松散耦合结构中不存储数据跨节点,并提供更大的灵活性。在这个基础上,以其中一个节点作为响应前端请求的节点(active node),另一个节点作为工程的备份节点(standby node),避免单机不可用导致系统停止造成的损失(业务中断、数据/模板丢失),并且在 active 节点出现问题时,代替其返回前端的请求,确保系统 7*24h 稳定运行的集群。用的比较多的存储方案。

创作不易,请多支持,将为本站提供更多「有价值的文章」。 4172

基于STM32的HC-SR04超声波模块测距(新手级)

本人是嵌入式新手,学习了STM32的部分内容,最近想找些项目做,然后顺便学习了一下HC-SR04超声波模块,学习过程中也参考了一些大佬的文章。本文记录了自己的学习方法和学习过程,同时也希望能和各位大佬交流讨论。

weixin_63758495的博客 2206

别再手动下单了!用Python+EasyTrader+同花顺,5分钟搞定你的第一个自动化交易机器人

本文详细介绍了如何使用Python和EasyTrader结合同花顺客户端快速构建自动化交易机器人。从环境配置到实战脚本编写,涵盖自动打新、条件单、跟单策略等核心功能,并分享性能优化与风险控制技巧,帮助投资者高效实现自动化交易。

weixin_30381317的博客 398

MongoDB硬件及开发标准规范

大数据平台部 运维研发组 MongoDB硬件及开发标准规范 说明: 无特殊情况,均以此文档为参考文件搭建,如有特殊情况,需与运维研发组和开发组商议后进行更改。 MongoDB 标 题硬件标准及研发规范 ...

anghiking20140716的博客 367

【WorkBuddy从入门到精通实战教程】实战案例 第 41 章 论文阅读与文献综述

本文系统讲解如何用WorkBuddy高效阅读论文并撰写文献综述。针对“读了一天没记住”的痛点,提出“三遍阅读法”:快速评估相关性、结构化提炼核心内容、批判性分析局限。结合提示词工程,实现单篇精读、多篇对比与综述框架搭建,显著提升效率。强调学术诚信,严防AI幻觉,要求所有引用与数据必须回源核对。最终目标是借助AI辅助理解与组织,但坚持自主思考与写作,真正掌握科研能力。

企鹅码农的专属播客,分享10多年的实战案例和经验解读,包含YOLO、RT-DETR、AI等各个工作领域。 144

大数据平台监控指南(附技术选型、监控指标)

“如果你是一个经验丰富的运维开发人员,那么你一定知道ganglia、nagios、zabbix、elasticsearch、grafana等组件。这些开源组件都有着深厚的发展背景及功能价...

a934079371的博客 1万+

系统架构设计(以飞控系统、航电系统、机电管理系统、电子电气架构为例)

系统架构涉及对系统的结构和行为进行高层次的描述。它包括系统的组成部分、这些部分之间的关系、与外部环境的交互方式,以及满足特定功能和非功能性需求的方法。系统架构定义了系统的总体设计蓝图,指导系统的开发、集成、部署和维护。系统架构设计的目的是通过合理的结构和设计原则,确保系统能够高效、稳定、安全地运行,满足当前和未来的需求,同时具备良好的维护性、扩展性和可持续性。良好的系统架构不仅能够提高系统的开发效率和运行性能,还能降低长期的维护和运营成本,支持系统的持续演进和技术更新。

qq_41854911的博客 3056

Sparse-ICP—(4) 加权稀疏迭代最近点算法(matlab版)

本文介绍了加权稀疏迭代最近点算法的实现。

点云侠的博客 645

建议收藏丨大数据集群常用监控命令(内存、磁盘、CPU、网络)

● STAT,进程状态,用(R–运行或准备运行;● %CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。① 学会查看linux各种状态,包括:网络IO、磁盘、CPU、内存等;● RSS,进程占用的物理内存的总数量,以K为单位。● VSZ,进程使用的虚拟内存大小,以K为单位。● PID,进程号,可以唯一标识该进程。● TIME,进程使用的总CPU时间。● %MEM,进程使用内存的百分比。● USER,进程所有者的用户名。● START,进程开始运行时间。● TTY,进程相关的终端名。

2401_84181524的博客 995

【雷达通信】雷达信号处理仿真【含Matlab源码 2509期】

雷达信号处理仿真 完整的代码,方可运行;可提供运行操作视频!适合小白!

订阅付费专栏Matlab(奶茶价版),可赠送奶茶价版付费专栏指定代码1份; 905

一种大数据物理机集群的自动化运维管理办法

大数据集群的物理机部署形态,相对于公有云/混合云的云主机部署形态,在自动化发放集群、弹性伸缩等云化场景方面处于劣势,但物理机部署形态的大数据集群能够更加充分高效的利用服务器资源,不存在云化/虚拟化的开销,同时服务器的异构能力更强。 早期交付的很多大数据集群均是物理机部署形态,如浙江移动大数据集群、广东移动大数据集群、工行大数据集群、招行大数据集群等。 针对这些存量大数据集群,以下介绍一种自动化运维管理办法,来提升运维效率、集群资源利用率,降低集群的资源消耗。 该自动化运维管理办法包含以下4个方面的功能: 1

HWCloudDeveloper的博客 601

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

大数据最全建议收藏丨大数据集群常用监控命令(内存、磁盘、CPU、网络)(1),2024年最新大数据开发进程保活黑科技实现原理解密及方法

df –h:条数、每条大小、内存是DDR4还是DDR3、内存频率是2666MT/S还是1600MT/sjps -l # 获取进程id​● USER,进程所有者的用户名。● PID,进程号,可以唯一标识该进程。● %CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。● %MEM,进程使用内存的百分比。● VSZ,进程使用的虚拟内存大小,以K为单位。● RSS,进程占用的物理内存的总数量,以K为单位。● TTY,进程相关的终端名。

2401_84616027的博客 803

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

如何使用datasophon部署和管理大数据集群?新手入门教程

datasophon是一款强大的大数据集群部署和管理工具,能够帮助新手轻松搭建和维护复杂的大数据环境。本文将为你提供一份详细的入门教程,让你快速掌握datasophon的核心功能和使用方法。 ## 一、datasophon简介:什么是大数据集群管理神器? datasophon是一个开源的大数据集群管理平台,它提供了一站式的解决方案,帮助用户快速部署、监控和管理各种大数据组件。无论是Hadoop

gitblog_00600的博客 1019

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

大数据平台监控(一):Ganglia在集群中快速安装方案

Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。Ganglia的核心包含gmond、gmetad以及一个Web前端。主要是用来监控系统性能,如:cpu、mem、硬盘利用率,I/O负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用。利用ganglia监控整个大数据平台,可以显著的提高平台的运维效率。

4973

大数据集群运维常见的一些问题以及处理方式

【代码】大数据集群运维常见的一些问题以及处理方式。

weixin_42795092的博客 976

prometheus job 重复_监控大规模Hadoop集群,Prometheus完胜Zabbix?

作者介绍洪迪,联通大数据高级运维开发工程师,主要负责大数据平台运维管理及核心监控平台开发工作。具有多年大数据集群规划建设、性能调优及监控体系建设经验,对Prometheus架构设计、运维开发等方面有深入理解和实践。背景随着公司业务发展,大数据集群规模正在不断扩大,一些大型集群物理机节点甚至已近上千。面对如此规模庞大的集群,一套优秀的监控系统是运维人员发现及处理故障的关键利器。经过多次选型...

weixin_39686048的博客 386

大数据数仓项目总结(一)需求、技术选型、框架版本、服务器、集群规模

文章目录一.需求描述二.架构设计三.数据采集模块搭建四. 一.需求描述 数据仓库( Data Waehouse ) 是为企业所有决策制定过程,提供所有系统数据支持的战略集合。通过对数据仓库中数据的分析,可以帮助企业,改进业务流程、控制成本、提高产品质量等。 数据仓库,并不是数据的最终目的地,而是为数据最终的目的地做好准备。这些准备包括对数据的:清洗,转义,分类,重组,合并,拆分,统计等等。 一、...

PassionZheng的博客 5574
上一篇: 大数据集群资源监控Zabbix
下一篇: 批量查询HIVE所有表的大小和行数
小基基o_O
博客等级 码龄9年 4414粉丝 467原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小基基o_O

您的鼓励是我创作的巨大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值