EMR-2.4.0之前版本,所有集群采用的是集群本地的MySQL数据库作为Hive元数据库;EMR-2.4.0及后续版本,E-MapReduce(简称EMR)支持统一的高可靠的Hive元数据库。
背景信息
因为元数据库需要使用公网IP来连接,所以集群必须要有公网IP,同时请不要随意的切换公网IP地址,防止对应的数据库白名单失效。
如果是本地的元数据库,您可以使用集群上的Hue工具来管理。
- 总容量:200MiB。
- 小时query数量限制:720000/h。
- 小时update数量限制:144000/h。
注意事项
EMR Hive统一元数据将逐步下线,不再进行维护升级,需要迁移到新版统一元数据DLF中,迁移详情请参见EMR元数据迁移公告。EMR新用户请选择数据湖构建(DLF)统一元数据。
介绍
- 持久化的元数据存储。
支持统一元数据之前,元数据都是在集群内部的MySQL数据库,元数据会随着集群的释放而丢失,特别是EMR提供了灵活按量模式,集群可以按需创建用完就释放。如果您需要保留现有的元数据信息,必须登录集群手动将元数据信息导出。
支持统一元数据之后,释放集群不会清理元数据信息。所以,在任何时候删除OSS上或者集群HDFS上数据(包括释放集群操作)的时候,需要先确认该数据对应的元数据已经删除(即要删掉数据对应的表和数据库),否则元数据库中可能出现一些脏数据。
- 计算存储分离。
EMR上可以支持将数据存放在阿里云OSS中,在大数据量的情况下将数据存储在OSS上会大大降低使用的成本,EMR集群主要用来作为计算资源,在计算完成之后可以随时释放,数据在OSS上,同时也不用再考虑元数据迁移的问题。
- 数据共享。
使用统一的元数据库,如果您的所有数据都存放在OSS之上,则不需要做任何元数据的迁移和重建,所有集群都是可以直接访问数据,这样每个EMR集群可以做不同的业务,但是可以很方便地实现数据的共享。
创建使用统一元数据的集群
- 页面方式。
创建集群时,在基础配置页面,选中统一meta数据库。
- API方式。
使用CreateClusterV2创建集群,详情请参见CreateClusterV2。说明 需指定参数:useLocalMetaDb=false。
表管理
详细请参见Hive元数据基本操作。