Hive 最佳实践

最近更新时间:2019-07-30 11:49:09

  1. 执行引擎设置
    腾讯云 EMR 中的 Hive 目前支持三种执行引擎:

    • MR
    • TEZ
    • Spark

    如果需要 TEZ 那么在初始购买集群的时候需要勾选 TEZ,在普通情况下建议执行引擎为 TEZ,这样您会获得更好的计算效率。

  2. 存储选择
    腾讯云存储介质目前支持本地数据盘、普通云硬盘、SSD 云硬盘以及 COS 对象存储,如果您对成本敏感,那么基于 COS 的数据仓库方式是一个不错的选择。

  3. 数据格式
    腾讯云压缩支持 snappy、lzo 等压缩算法,如果使用 Hive 建议您的数据文件格式使用 ORC 或者 parquet 的格式,这样您会更节省空间以及会获得更好的计算效率。

  4. 查询引擎如何选择
    腾讯云 EMR 目前支持的查询引擎有 Presto、SparkSQL、Hive,如果您想实现多种数据源耦合查询建议您使用 Presto,如果普通数据仓库建议您使用 Hive+TEZ 的模式,如果您对时延比较敏感可以考虑 SparkSQL。

  5. 数据安全
    如果您是使用 COS 作为底层存储,建议您使用外部表的方式以免误删数据;如果是存储在 HDFS 那么建议您开启 HDFS 回收站来避免数据误删除。