zoukankan      html  css  js  c++  java
  • CDH CM元数据梳理,包括HIVE

     

    一、Schema SCM 表结构梳理(对应生产BAOFOO_SCM

    AUDITS  

    登录信息、服务,角色重启、配置更改

    PROCESSES

    进程信息。这里面有很多信息。开放的web端口。

    HOSTS

    主机信息,包括IP地址,所在机架,内存,CPU等信息

    CLIENT_CONFIGS

    客户端配置,里面有下载客户端配置的路径。

    CONFIGS_AUD

    配置审计表。

    CLIENT_CONFIGS_TO_HOSTS

    客户端配置文件与节点的对应关系

    CLUSTERS

    群集信息,CM管理多少个群集,就会有多条记录。

    CM_VERSION

    CM版本,服务安装时间,服务所在主机。

    COMMANDS

    命令记录,其中包括系统内部执行的命令。

    COMMANDS_DETAIL

    命令的详细内容。关联COMMANDS表。

    COMMAND_SCHEDULES

    CM内部命令执行调度元信息。

    CONFIGS

    配置表,改的配置,改之后的值,服务ID等。

    CONFIGS_AUD

    配置更改记录。

    CREDENTIALS

    Kerberos认证授权表,包含keytab文件

    DIAGNOSTICS_EVENTS

    诊断事件,关于parcels的激活,分发,停用有记录。

    GLOBAL_SETTINGS

    全局配置,包括自定义仪表盘信息

    HOST_TEMPLATES

    主机模板,模板名,所在主机。线上有hbase node和hdfs-yarn的模板。

    HOST_TEMPLATE_TO_ROLE_CONF_GRP

    主机模板和角色配置组的对应信息。

    METRICS

    各服务的监控项

    PARCELS

    parcels信息,是否可用,远程地址等等。

    PARCEL_COMPONENTS

    parcels名称与组件之间的映射关系。

    REVISIONS

    版本信息,CM变更之后,会产生一个新的版本。

    ROLES

    群集中的角色信息

    ROLE_CONFIG_GROUPS

    角色对应的角色组信息

    SERVICES

    服务名,页面显示的一些信息。

    SNAPSHOT_POLICIES

    快照策略(用户备份以及灾难恢复方面)

    USERS

    CM群集中的用户信息(启用认证时)

    USER_AUTH_ROLES

    用户与认证角色对应关系

    该库记录了关于CM服务中的元数据、操作记录、用户登录、监控项采集、kerberos认证等等信息。

    REVISIONS 每一次通过CM产生的变更都会产生一条记录。包括重启服务、修改服务、角色配置、修改CM配置。

    AUDITS以及*_AUD为审计相关的信息记录。包括类如HOSTSROLES的元数据表。

    AUDITS (审计表,登陆日志,重启服务,群集,激活、停用parcels等操作)。

    1、监控有没有暴力登录

    示例:以下SQL查询五分钟内登录失败次数超过10次的用户名,以及登录IP。

    SELECT

    *

    FROM

    (

    SELECT

    SUBSTRING_INDEX(MESSAGE, ':' ,- 1) user_name,

    IP_ADDRESS ip_addr,

    count(1) AS login_counts

    FROM

    AUDITS

    WHERE

    AUDIT_TYPE = 'AUTHENTICATION'

    AND ALLOWED = 0

    AND TIMESTAMPDIFF(

    MINUTE,

    FROM_UNIXTIME(LEFT(CREATED_INSTANT, 10)),

    CURRENT_TIMESTAMP ()

    ) < 5

    GROUP BY

    user_name,

    ip_addr

    ) b

    WHERE

    b.login_counts > 10;

    2、监控配置修改

    SELECT

    t3.DISPLAY_NAME,

    t1.ATTR,

    t1.`VALUE`

    FROM

    CONFIGS_AUD t1

    LEFT JOIN REVISIONS t2 ON t1.REV = t2.REVISION_ID

    LEFT JOIN SERVICES t3 ON t1.SERVICE_ID = t3.SERVICE_ID

    WHERE

    TIMESTAMPDIFF(

    MINUTE,

    FROM_UNIXTIME(LEFT(t2.`TIMESTAMP`, 10)),

    CURRENT_TIMESTAMP ()

    ) < 5;

    HUEhttp端口属性被改成8898

    3、监控服务重启,重启impala服务。

    SELECT

    SUBSTRING_INDEX(t3.message, ':' ,- 1),

    t2.INFO,

    t2.IP_ADDRESS

    FROM

    (

    SELECT

    GROUP_CONCAT(

    MESSAGE

    ORDER BY

    CREATED_INSTANT SEPARATOR ' 结果:'

    ) INFO,

    GROUP_CONCAT(IP_ADDRESS) IP_ADDRESS

    FROM

    AUDITS t1

    WHERE

    CREATED_INSTANT > REPLACE (

    UNIX_TIMESTAMP(

    DATE_ADD(NOW(3), INTERVAL - 50 MINUTE)

    ),

    '.',

    ''

    )

    AND AUDIT_TYPE = 'COMMAND_SERVICE'

    ) t2

    LEFT JOIN (

    SELECT

    message,

    IP_ADDRESS,

    CREATED_INSTANT

    FROM

    AUDITS

    WHERE

    AUDIT_TYPE = 'AUTHENTICATION'

    ) t3 ON t3.IP_ADDRESS = t2.IP_ADDRESS

    ORDER BY

    t3.CREATED_INSTANT DESC

    LIMIT 1;

    二、HIVE元数据表(对应生产BAOFOO_HIVE

    与上述不同,这不属于Cloudera 公司Hadoop发行版独有的。

    DBS

    数据库信息,DB名,所在位置。

    COLUMNS_V2

    表的列信息,注释,列名,列的数据类型,列在表中的位置。通过CD_ID与CDS表关联

    TBL_PRIVS

    表的授权信息。

    TABLE_PARAMS

    表的基本信息,最后更改时间,总大小,原生数据大小,行数,文件数量

    SERDE_PARAMS

    字符分隔符,虚拟化格式信息。通过SERDE_ID与SERDES关联

    SDS

    表的属性信息,输入格式(表存储类型),是否压缩,所在位置,占桶的数量,等。通过SERDE_ID与SERDES关联

    SERDES

    虚拟化和反虚拟化的信息。

    CDS

    只有一列,表的唯一ID

    TBLS

    存储Hive表、视图、索引表的基本信息。创建时间,上次访问时间,所有者、表名,视图HQL语句

    PARTITION_KEYS

    表的分区信息,表名,分区键注释,分区键名,类型,联合分区所在位置

    PARTITION_KEY_VALS

    已有分区信息。

    PARTITION_PARAMS

    分区属性信息,某个分区的文件数量,总代小,最后访问时间等。

    PARTITIONS

    分区的基本信息,分区ID,分区创建时间,最后访问时间,分区名,分区存储ID,表ID

    VERSION

    存储Hive版本的元数据表,如果该表不存在,启动hive-cli的时候会报Table ‘hive.version’ doesn’t exist”

    1HIVE中库表数据量统计。

    SELECT d.`NAME` "",count(1) "表数量" from TBLS t RIGHT  JOIN DBS d ON t.DB_ID = d.DB_ID group BY d.DB_ID  ;

    2、表大小统计

    SELECT

    round(CAST(a.PARAM_VALUE AS SIGNED)/1024/1024/1024,0) v,

    b.TBL_NAME,

    c.`NAME`

    FROM

    TABLE_PARAMS a

    LEFT JOIN TBLS b ON a.TBL_ID = b.TBL_ID

    LEFT JOIN DBS c ON b.DB_ID = c.DB_ID

    WHERE

    a.PARAM_KEY = 'totalSize' -- AND c.`NAME` NOT like 'tmp%'

    ORDER BY

    v DESC;



  • 相关阅读:
    Photoshop 基础七 位图 矢量图 栅格化
    Photoshop 基础六 图层
    Warfare And Logistics UVALive
    Walk Through the Forest UVA
    Airport Express UVA
    Guess UVALive
    Play on Words UVA
    The Necklace UVA
    Food Delivery ZOJ
    Brackets Sequence POJ
  • 原文地址:https://www.cnblogs.com/xiangerfer/p/10530347.html
Copyright © 2011-2022 走看看