E-MapReduce 各版本SDK 发布说明。

说明
  • emr-oss:支持Hadoop/Spark与OSS数据源的交互,默认已经存在集群的运行环境中,作业打包时不需要将emr-oss打进去。
  • emr-tablestore: 支持Hadoop/Hive/Spark与OTS数据源的交互,使用时需要打进作业Jar包。
  • emr-mns_2.11:支持Spark读MNS数据源,使用时需要打进作业Jar包。
  • emr-ons_2.11:支持Spark读ONS数据源,使用时需要打进作业Jar包。
  • emr-logservice_2.11:支持Spark读LogService数据源,使用时需要打进作业Jar包。
  • emr-maxcompute_2.11: 支持Spark读写MaxCompute数据源,使用时需要打进作业Jar包。
  • emr-datahub_2.11: 支持Spark读写Datahub数据源,使用时需要打进作业Jar包。
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-oss</artifactId>
        <version>1.9.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-tablestore</artifactId>
        <version>1.9.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-mns_2.11</artifactId>
        <version>1.9.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-logservice_2.11</artifactId>
        <version>1.9.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-maxcompute_2.11</artifactId>
        <version>1.9.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-ons_2.11</artifactId>
        <version>1.9.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-datahub_2.11</artifactId>
        <version>1.9.0</version>
    </dependency>
  • v1.9.0
    • 支持同时从不同region读取Datahub数据。
    • Tablestore数据源实现优化重构。
    • Spark Structured Streaming支持kudu数据源。
    • Loghub数据源支持部分参数动态调整。
  • v1.8.0
    • 新增Datahub DSv2实现。
    • Spark Structured Streaming支持Tablestore数据源。
    • Spark Streaming SQL适配Tablestore数据源。
    • 优化Loghub数据源服务异常重试时间不超过5分钟。
    • Loghub服务请求加上user agent信息。
    • 更新部分依赖到最新版本。
    • 修复Tablestore数据格式转换错误问题。
    • 修复Datahub数据源在作业failover时重试offset错误的问题。
  • v1.7.0
    • Spark Structured Streaming支持Datahub数据源。
    • Spark Structured Streaming支持JDBC数据源。
    • Spark Structured Streaming支持HBase数据源。
    • 支持数据写入Loghub数据源。
    • Spark Structured Streaming支持写入Druid数据源。
    • 优化Loghub数据的类型转换。
    • 对Loghub数据源出现的几种服务端错误进行重试。
    • Loghub数据源offset计算逻辑重构,减少额外计算和存储开销。
    • 修复读取Datahub无数据时出现NPE问题。
  • v1.6.0
    • 新增Spark Streaming SQL测试工具。
    • Spark Streaming SQL适配Loghub数据源。
    • 新增Datahub数据源direct api实现。
    • Loghub python接口支持direct api。
    • 修复Insert数据到tablestore失败的问题。
  • v1.5.0
    • Spark Structured Streaming 支持LogService数据源。
    • 修复loghub direct api中更新checkpoint比较耗时的问题。
    • 修复LoghubRDD中的分区Index错误问题。
    • 修复Direct Loghub DStream没有包含tag信息的问题。
    • 修复Direct Loghub DStream不支持从指定Offset消费的问题。
    • 修复MaxCompute String类型转换错误的问题。
    • 修复LoghubRDD中endtime错误的问题。
  • v1.4.1
    • MaxCompute: 修复datetime类型时间截断的问题。
    • MaxCompute: 修复SimpleDateFormat的线程安全问题。
  • v1.4.0
    • MaxCompute:新增datasource的实现方式 (只支持Spark2.x以上版本)。
    • LogService:新增Direct API的实现方式 (只支持Spark2.x以上版本)。
    • OTS:一些读写的优化。
    • 修复读取LogService数据源时,用户AK被替换成集群应用角色AK的BUG。
  • v1.3.2

    修复OTS的一些BUG。

  • v1.3.1
    • 修复Spark+LogService部分场景下抛空指针问题。
    • 从这个版本开始,SDK支持Spark2.x环境。
  • v1.3.0
    • Hadoop、MR、Spark、SparkSQL和Hive读取OTS数据。
    • MNS和LogService支持E-MapReduce的MetaServie功能,支持在E-MapReduce环境下免AK访问MNS和LogService数据。
    • 升级部分依赖包版本。
  • v1.1.3.1
    • 解决MNS与Spark/Hadoop包的依赖冲突问题。
    • 解决Spark Streaming + MNS某些场景下抛空指针问题。
    • 解决python sdk的部分BUG。
    • Spark Streaming + Loghub支持自定义时间位置的功能。
    • 解决Hadoop无法支持原生Snappy文件问题。目前E-MapReduce支持处理LogService以Snappy格式归档到OSS的文件。
    • 解决Spark无法支持Snappy压缩文件的问题。
    • 解决OSS不支持Hadoop2.7.2、OutputCommitter两种算法的问题。
    • 改善Hadoop/Spark读写OSS的性能。
    • 解决Spark作业打印的Log4j异常输出的问题。
  • v1.1.2
    • 解决作业慢读写OSS出现的ConnectionClosedException问题。
    • 解决添加OSS数据源时部分hadoop命令不可用问题。
    • 解决“java.text.ParseException: Unparseable date”问题。
    • 优化emr-core支持本地调试运行。
    • 兼容老版本的产生的“_$folder$”文件,解释成目录,不再当作普通文件处理。
    • Hadoop/Spark读写OSS增加失败重试机制。
  • v1.1.1
    • 解决本地写OSS临时文件时导致多磁盘使用不均衡的问题。
    • 去除作业执行过程中创建OSS目录时同时创建的$_folder$标记文件。
  • v1.1.0
    • 升级LogHub SDK到0.6.2,废弃Client DB模式,使用Server DB模式。
    • 升级OSS SDK到2.2.0,修复OSS SDK BUG导致的运行异常。
    • 新增对MNS的支持。
    • 兼容性(对于1.0.x系列SDK)
      • 接口:兼容。
      • 命名空间:不兼容,调整包结构,将包名称com.aliyun更换为com.aliyun.emr
    • 修改项目的groupId,从com.aliyun改为com.aliyun.emr。修改后的POM依赖为:
      <dependency>
            <groupId>com.aliyun.emr</groupId>
            <artifactId>emr-sdk_2.10</artifactId>
            <version>1.1.3.1</version>
        </dependency>
  • v1.0.5
    • 优化LoghubUtils接口,优化参数输入。
    • 优化LogStore数据的输出格式,增加topic source两个字段。
    • 增加LogStore数据拉取的时间间隔参数配置。参数spark.logservice.fetch.interval.millis,默认值200毫秒。
    • 更新依赖MaxCompute SDK版本到0.20.7-public。
  • v1.0.4
    • 将guava的依赖版本降为11.0.2,避免和Hadoop中的guava版本冲突。
    • 计算任务支持数据超过5GB的文件大小。
  • v1.0.3

    增加OSS Client相关的配置参数。

  • v1.0.2

    修复OSS URI解析出错的BUG。

  • v1.0.1
    • 优化OSS URI设置。
    • 增加对ONS的支持。
    • 增加LogService的支持。
    • 支持OSS的追加写特性。
    • 支持以multi part方式上传OSS数据。
    • 支持以upload part copy方式拷贝OSS数据。