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

说明
  • emr-oss:支持Hadoop、Spark与OSS数据源的交互,默认已经存在集群的运行环境中,作业打包时不需要将emr-oss打进去。
  • emr-tablestore:支持Hadoop、Hive、Spark与TableStore数据源的交互,使用时需要打进作业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>2.0.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-tablestore</artifactId>
        <version>2.0.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-mns_2.11</artifactId>
        <version>2.0.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-logservice_2.11</artifactId>
        <version>2.0.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-maxcompute_2.11</artifactId>
        <version>2.0.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-ons_2.11</artifactId>
        <version>2.0.0</version>
    </dependency>
    <dependency>
        <groupId>com.aliyun.emr</groupId>
        <artifactId>emr-datahub_2.11</artifactId>
        <version>2.0.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的实现方式(只支持Spark 2.x以上版本)。
  • LogService:新增Direct API的实现方式 (只支持Spark 2.x以上版本)。
  • OTS:一些读写的优化。
  • 修复读取LogService数据源时,用户AK被替换成集群应用角色AK的BUG。
v1.3.2 修复OTS的一些BUG。
v1.3.1
  • 修复Spark+LogService部分场景下抛空指针问题。
  • 从这个版本开始,SDK支持Spark 2.x环境。
v1.3.0
  • Hadoop、MR、Spark、SparkSQL和Hive读取OTS数据。
  • MNS和LogService支持E-MapReduce的MetaServie功能,支持在E-MapReduce环境下免AccessKey访问MNS和LogService数据。
  • 升级部分依赖包版本。
v1.1.3.1
  • 解决MNS与Spar或Hadoop包的依赖冲突问题。
  • 解决Spark Streaming + MNS某些场景下抛空指针问题。
  • 解决python sdk的部分BUG。
  • Spark Streaming + Loghub支持自定义时间位置的功能。
  • 解决Hadoop无法支持原生Snappy文件问题。目前E-MapReduce支持处理LogService以Snappy格式归档到OSS的文件。
  • 解决Spark无法支持Snappy压缩文件的问题。
  • 解决OSS不支持Hadoop 2.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数据的输出格式,增加topicsource两个字段。
  • 增加LogStore数据拉取的时间间隔参数配置。参数spark.logservice.fetch.interval.millis,默认值200毫秒。
  • 更新依赖MaxCompute SDK版本到0.20.7-public。
v1.0.4
  • 将guava的依赖版本降为11.0.2,避免和Hadoop中的guava版本冲突。
  • 计算任务支持数据超过5 GB的文件大小。
v1.0.3 增加OSS Client相关的配置参数。
v1.0.2 修复OSS URI解析的缺陷。
v1.0.1
  • 优化OSS URI设置。
  • 增加对ONS的支持。
  • 增加LogService的支持。
  • 支持OSS的追加写特性。
  • 支持以multi part方式上传OSS数据。
  • 支持以upload part copy方式拷贝OSS数据。