SmartData组件是EMR Jindo引擎的存储部分,为EMR各个计算引擎提供统一的存储、缓存、计算优化以及功能扩展。SmartData组件主要包括JindoFS,JindoTable和相关工具集。本文介绍SmartData(3.0.x)版本的更新内容。

JindoFS存储优化

  • 改进Jindo Namespace服务单机配置,单机情况下也可以更新并异步写入元数据至Tablestore。
  • 移除Jindo Namespace服务的Tablestore作为元数据后端的配置,不再支持基于Tablestore的HA方案。
  • 支持归档存储,允许文件数据按照OSS归档类型进行存储,以节省成本。
  • 提供JindoFS分层存储的Archive、Unarchive和Status命令,允许归档至指定目录,查看归档操作进度和相关状态。
  • 提供JindoFS ls2命令,允许查看文件信息。
  • 支持JindoFS存储系统fsimage的离线导出和分析查询。
  • 支持跨集群访问JindoFS存储系统。

JindoFS分层存储命令详情请参见分层存储命令使用说明

JindoFS缓存优化

  • 改进缓存数据磁盘组织,解除对系统盘的依赖,实现数据盘之间完全独立,增强磁盘下线操作。
  • 改进缓存服务,增强节点容错处理和节点下线操作。
  • 改进缓存块写入磁盘的选择策略,默认支持轮询(Round Robin)。
  • 改进读写流程,增强容错处理。
  • 提供JindoFS分层存储的Cache、Uncache和Status命令,允许缓存至指定目录,支持数据预加载,查看缓存进度和相关状态。
  • 优化小文件占用缓存空间的问题,准确地统计相关指标。

JindoTable计算优化

  • 提供JindoTable Optimize命令,支持优化Hive表操作,例如分区小文件合并。
  • 提供JindoTable Archive、Unarchive和Status命令,允许归档至指定表和分区,查看归档操作进度和相关状态。
  • 支持JindoTable Cache、Uncache和Status命令,允许缓存至指定表和分区,支持数据预加载,查看缓存进度和相关状态。
  • 支持导出MaxCompute表至JindoFS缓存系统上,以实现机器学习训练前结构化数据的预加载机制。

JindoTable详情请参见JindoTable使用说明

JindoFS OSS扩展和支持

  • 支持在客户端进行Ranger权限集成,获取OSS各种操作,通过JindoFS服务记录进行Ranger权限检查。
  • 支持在客户端进行操作审计,获取OSS各种操作,通过JindoFS服务记录操作记录,作为审计用途。
  • 支持Hadoop Credentials Provider框架,允许按照Hadoop常用方式指定OSS的AccessKey配置。
  • 支持Flink Connector,允许Flink引擎将OSS作为source、sink和checkpoint存储。
  • 提供JindoFS OSS SDK(Hadoop Connector)轻量版本(lite),主要适用于非标准环境,例如用户的IDC(Internet Data Center)集群环境。

JindoManager系统管理

支持通过UI来查看JindoFS存储系统上的系统状态、文件统计和缓存系统上的缓存指标统计。

JindoTools工具集

改进Jindo DistCp工具的分发机制,针对EMR集群内使用场景和非EMR集群环境使用场景,分别使用不同的发行包。

Jindo DistCp提供轻量版本(lite),主要适用于非标准环境,例如用户的IDC集群环境。