EMR Doctor支持分析OSS上的数据,开通OSS存储分析功能可以帮助您进一步了解OSS存储资源的使用情况和健康状态,让您更好地治理存储在OSS上的数据。

背景信息

OSS提供了存储清单功能,配置该功能后会定期为Bucket生成清单文件,清单文件中保存了OSS Bucket中Object的数量,大小等存储信息。EMR Doctor借助您Bucket中最新的清单文件,分析该Bucket的数据使用,健康状态以及与Hive存储分析关联。

使用EMR Doctor OSS存储分析需要您为Bucket预先开通存储清单功能。清单功能的详细介绍,具体请参见存储空间清单

注意事项

开通OSS存储清单功能会产生一定的费用,具体请参见存储空间清单

开通OSS清单功能

如果您的集群同时使用多个OSS Bucket并希望获取所有Bucket的存储分析,请按照以下开通流程在OSS控制台为所有Bucket开通存储清单功能。

  1. 登录OSS管理控制台
  2. 单击Bucket列表,然后单击目标Bucket名称。
  3. 在左侧导航栏,选择数据管理 > Bucket清单
  4. Bucket清单页面,单击创建清单
  5. 设置清单报告规则面板,设置相关参数,具体请参见存储空间清单
    重要
    • 确保存储清单Bucket与当前正在开通OSS存储清单功能的Bucket一致。
    • 如果您存储在OSS中的文件数量较多(大于100亿时),建议清单报告导出周期选择每周,其他情况下可以选择导出周期为每天。
    • 确保清单内容可选信息包含Object大小存储类型两项。
  6. 选中我知晓并同意授予阿里云OSS服务访问Bucket资源的权限后,单击确定
    生成清单文件需要一定的时间,生成后清单文件的完整目录如下。
    dest_bucket
        └──destination-prefix/
            └──src_bucket/
                └──inventory_id/
                    ├──YYYY-MM-DDTHH-MMZ/
                    │   ├──manifest.json
                    │   └──manifest.checksum
                    └──data/
                            └──745a29e3-bfaa-490d-9109-47086afcc****.csv.gz

    其中,dest_bucket是您存储清单文件的Bucket,即当前Bucket,destination-prefix是您上一步配置的清单报告存储路径,inventory_id是您上一步配置的清单名称。

    以上方展示的配置清单为例,最终生成的清单文件目录为path1/doctor-hive-oss-test1/oss-manifest

配置OSS存储分析

OSS存储分析依赖于您通过存储清单功能生成的清单文件,需要您配置以下参数,更多配置请参见配置说明
  • collect.oss.bucket:被分析的Bucket名称。
  • collect.oss.manifest.dir:清单文件的目录,参照开通OSS清单功能中介绍的清单文件目录结构,您只需要配置destination-prefix/src_bucket/inventory_id/这部分目录即可,即上述示例配置规则下的path1/doctor-hive-oss-test1/oss-manifest目录。
重要 如果您的集群同时使用了多个Bucket,并为每一个Bucket开通了存储清单功能,则可以按顺序将多个Bucket名称和其对应的清单文件目录配置到配置项中,并使用英文逗号(,)分隔。请确保Bucket填写顺序与清单文件的填写顺序对应。

单Bucket配置示例

Bucket以doctor-hive-oss-test1为例,最终存储分析配置如下所示。
collect.oss.bucket:   doctor-hive-oss-test1
collect.oss.manifest.dir:      path1/doctor-hive-oss-test1/oss-manifest

多Bucket配置示例

Bucket以doctor-hive-oss-test1doctor-hive-oss-test2为例,最终存储分析配置如下所示。
collect.oss.bucket:   doctor-hive-oss-test1,doctor-hive-oss-test2
collect.oss.manifest.dir:      path1/doctor-hive-oss-test1/oss-manifest,path2/doctor-hive-oss-test2/test