0595-CDH6.2的新功能

前置文章参考《0585-Cloudera Enterprise 6.2.0发布》和《0589-Cloudera Manager6.2的新功能

1

Hadoop各版本说明

组件

组件描述

版本

Hadoop

可靠的,可扩展的,分布式的存储和计算平台

v3.0.0

HBase

实时读写访问的可扩展的记录和表的存储

v2.1.0

Hive

具备类SQL接口和ODBC/JDBC驱动的元数据知识库连接BI应用和Hadoop

v2.1.1

Hue

遵循Apache许可协议的基于浏览器的桌面Hadoop接口

v4.2.0

Impala

遵循Apache许可协议的、针对存放在HDFS和HBase数据的实时SQL查询引擎

v3.2.0

Kafka

高度可扩展的、容错的发布订阅制消息系统

V2.1.0

Yarn

Hadoop各组件资源协调

V3.0.0

Flume

收集和聚合日志和事件数据,实时流写入HDFS或HBase的分布式框架

v1.9.0

Pig

处理存放在Hadoop里的数据的高级数据流语言

v0.17.0

Solr

文本、模糊数学和分面搜索引擎

v7.4.0

Spark

支持循环数据流和内存计算的高速通用数据处理引擎

v2.4

Sqoop

为集成Hadoop和关系数据库的数据传输引擎

v1.4.7

Zookeeper

高可靠的分布式协同服务

v3.4.5

Kudu

一种新的列式存储

V1.9

2

Apache Flume

从CDH6.2开始,打包的Flume版本是1.9,包含了许多改进:

1.在尝试recoverLease之前,Flume HDFS Sink retries可以以一定的间隔时间关闭可配置的次数,这个间隔时间是可以配置的。

2.通过标准-D JSSE系统属性或环境变量可以指定全局SSL密钥库参数。组件级配置也是可能的。

3.更新到Kafka 2.0客户端。

4.添加了对syslog和多端口syslog源的SSL/TLS支持。

5.hdfs.callTimeout新的默认时间为30s。

6.添加了两个用于获取事务容量和批量字段的新接口,以防止source的批量大小大于channel的事务。

3

Apache Hadoop

3.1

HDFS

3.1.1

JournalNode Synchronization

CDH现在支持同步集群中JournalNodes的内容。此功能有助于保持集群中所有JournalNode内容的一致性。

3.1.2

Option for fixing misreplicated blocks

hdfs fsck命令现在包含-replicate选项,它可以触发错误复制的数据block的复制。

3.2

YARN

3.2.1

GPU Usage

CDH支持NVIDIA GPU作为YARN的资源。可以使用Cloudera Manager启用GPU。

3.2.2

Custom Resource Types

CDH支持自定义资源的定义和管理。这意味着YARN中的资源系统是可配置的。可以使用Cloudera Manager创建资源。

4

Apache HBase

4.1

HBase Pre-Upgrade Tools Checkbox

在将CDH5集群升级到CDH6时,有三种预升级工具可帮助您验证HBase兼容性:

  • hbase pre-upgrade validate-dbe和hbase pre-upgrade validate-hfile:这些工具验证您的表或快照都不使用PREFIX_TREE Data Block Encoding。
  • hbase pre-upgrade validate-cp:此工具验证您的co-processors是否与升级兼容。

当您尝试从CDH5集群升级到CDH6集群时,会出现复选框以确保您已执行所有与HBase相关的升级前迁移步骤。

4.2

HBase Serial Replication

Serial replication允许HBase Replication以有序的方式将更新发送到远程集群。例如,它可以按照源收到更改的顺序发送更新。有两种方法可以启用此功能:

  • 创建新peer时指定SERIAL => true标志:
hbase> add_peer 'serialpeer1', CLUSTER_KEY => "cluster.example.com:2181:/hbase", SERIAL => true
  • 修改一个已有的peer:
hbase> set_peer_serial ''serialpeer1', true

如果使用Lily HBase NRT Indexer服务,Cloudera建议不要使用HBase Serial Replication,因为要将更新传播到Solr从而会导致额外的延迟。

4.3

Additional IO Engine Support

支持两种新的桶缓存io引擎类型:

  • mmap:通过内存映射存储和访问缓存到指定路径下的文件。
  • pmem:使用持久性内存设备的直接访问功能。它只能配置为安装在DC PMEM设备上的路径。

这两个引擎只能在Cloudera Manager中使用safety valve进行配置。

5

Apache Hive

5.1

Compile Lock Removal

Hive现在支持删除查询编译锁。取消激活编译锁可以使受控数量的查询并行编译。默认的并行度(worker的数量)为3,用户可以根据需要在Cloudera Manager中进行配置。

5.2

Secured S3 Credentials for Hive

现在,Cloudera Manager可以安全地存储S3凭据,这使得多用户Hive-on-S3集群成为可能。

5.3

Secured ADLS Credentials for Hive

现在,Cloudera Manager可以安全地存储ADLS凭据,这使得多用户Hive-with-ADLS集群成为可能。

6

Hue

6.1

Apache Tez Integration Improvements

现在,当您使用Tez作为Hive的查询执行引擎时,作业将显示在Hue Job Browser中。 将打印查询ID并显示查询进度。

6.2

Enhanced Impala SQL Query Troubleshooting

Impala SQL查询profiles的图形显示在很多细节方面得到了增强。新添加的这些信息可帮助您了解查询瓶颈发生的位置和原因,以及如何优化查询以消除它们。例如,现在可以提供有关查询执行的每个节点的CPU处理时间和网络或磁盘I/O时间的详细信息:

此外,单击窗格的标题可以打开详细信息面板:

要访问这些特性:

1.在Hue Impala editor中运行一个查询。

2.从左边的菜单,启动Job Browser。

3.在Job Browser中,选择Queries选项卡。

4.在查询列表中,单击刚刚运行的查询以启动图形显示。

7

Apache Impala

7.1

Multi-cluster Support

  • Remote File Handle Cache

当--cache_remote_file_handles impalad标志设置为true时,Impala现在可以缓存远程HDFS文件句柄。此功能不适用于非HDFS表,例如Kudu或HBase表,并且不适用于将数据存储在云服务(如S3或ADLS)上的表。

7.2

Enhancements in Resource Management and Admission Control

Admission Debug页面位于Impala Daemon Web UI的/admission中,并提供有关Impala资源池的以下信息。

  • Pool configuration
  • Relevant pool stats
  • Queued queries in order of being queued (local to the coordinator)
  • Running queries (local to this coordinator)
  • Histogram of the distribution of peak memory usage by admitted queries

添加了一个新的查询选项NUM_ROWS_PRODUCED_LIMIT,以限制从查询返回的行数。

如果查询产生的行数超过此查询选项指定的限制,Impala将取消查询。该限制仅适用于将结果返回给客户端的情况,例如对于SELECT查询,但不是INSERT查询。此查询选项是针对用户意外提交返回大量行的查询的护栏(guardrail)。

7.3

Metadata Performance Improvements

  • Automatic Metadata Sync using Hive Metastore Notification Events

启用后,catalogd以可配置的间隔轮询Hive Metastore(HMS)通知事件并与HMS同步。您可以使用catalogd的新Web UI页面来检查自动invalidate event processor的状态。

注意:这是CDH6.2中的预览功能,如果没有Cloudera Support的指导,则不应使用该功能。如果您对使用该功能感兴趣,请提交支持服务ticket并通过Cloudera Support工作。

7.4

Compatibility and Usability Enhancements

  • Impala现在可以读取TIMESTAMP_MILLIS和TIMESTAMP_MICROS Parquet类型。
  • 支持LEVENSHTEIN字符串功能。

该函数返回两个输入字符串之间的Levenshtein距离,即将一个字符串转换为另一个字符串所需的最小单字符编辑数。

  • ALTER TABLE语句支持IF NOT EXISTS子句。
  • 新的DEFAULT_FILE_FORMAT查询选项允许您设置默认的表文件格式。这样你就不用设置STORED AS <format>子句。如果您更喜欢非TEXT的值,请设置此选项。 支持的格式包括:
    • TEXT
    • RC_FILE
    • SEQUENCE_FILE
    • AVRO
    • PARQUET
    • KUDU
    • ORC
  • Extended或verbose的EXPLAIN输出,包括以下用于查询的新信息:
  • 已重写的分析查询的文本包括各种优化和隐式强制转换。
  • 隐含的强制转换和文字与实际类型一起显示。
  • CPU资源利用率(user, system, iowait)指标已添加到Impala profile输出中。

7.5

Security Enhancement

已实现REFRESH AUTHORIZATION语句以刷新授权数据。

8

Apache Kafka

8.1

Rebase on Apache Kafka 2.1.0

CDH6.2.0中的Kafka基于Apache Kafka 2.1.0。

  • 用于存储consumer offset的内部schema已更改。

警告:由于此更改,升级后就无法降级。

  • 增加了对Zstandard压缩的支持。
  • 当使用按topic配置覆盖动态更新unclean.leader.election.enable时,controller会自动启用unclean领导者选举。
  • AdminClient中添加了一个新方法AdminClient#metrics()。这允许使用AdminClient的任何应用程序通过查看从AdminClient捕获的指标来获取更多信息和洞察力。

8.2

New Metrics

增加了以下Broker相关的指标:

  • Zookeeper Request Latency
  • Consumer Groups Completing Rebalance
  • Consumer Groups Dead
  • Consumer Groups Empty
  • Consumer Groups Preparing Rebalance
  • Consumer Groups Stable
  • Zookeeper Auth Failures
  • Zookeeper Disconnects
  • Zookeeper Expires
  • Zookeeper Read Only Connects
  • Zookeeper Sasl Authentications
  • Zookeeper Sync Connects
  • Incremental Fetch Session Evictions Rate
  • Number of Incremental Fetch Partitions Cached
  • Number of Incremental Fetch Sessions
  • Unclean Leader Election Enable Rate and Time

8.3

Support for Authentication with Delegation Tokens

从CDH6.2开始,Kafka集群支持基于委托令牌的身份验证。基于委托令牌的身份验证是一种轻量级身份验证方法,旨在补充现有的SASL身份验证。虽然Kafka委托令牌使用SCRAM身份验证模型,但不支持SCRAM。

8.4

Broker IDs are visible on the instance page in Cloudera Manager

现在可以在Cloudera Manager中轻松查看Broker ID。要查看Broker ID,请选择Kafka服务并转到Instances。可以在括号中的每个Kafka broker实例旁边找到Broker ID。

8.5

Default Behaviour Changes

  • 当使用按topic配置覆盖动态更新unclean.leader.election.enable时,controller会自动启用unclean领导者选举。
  • Cloudera Manager从现在开始收集的诊断包包括Kafka topic有关的信息。该诊断包包含以下两个命令暴露的信息:
    • kafka-topics --describe
    • kafka-topics --list

9

Apache Kudu

1.Kudu现在支持位置感知。Cloudera Manager中的机架分配将自动在Kudu中使用。kudu cluster rebalance工具已更新,可以根据位置感知Kudu的放置策略执行操作。升级后,如果分配了机架位置,则应运行kudu cluster rebalance工具,以确保现有表符合机架感知放置策略。

2.创建表时,master现在对副本总数而不是分区总数进行限制。如果手动覆盖--max_create_tablets_per_ts,则新表的最大大小实际上已被其复制因子的一个因子削减。请注意,创建表后仍可以添加分区。

3.更新了compaction策略,以减少行集(rowsets)的数量。这可以加快扫描和缩短启动时间,特别是对于“trickling inserts”工作负载,其中行按主键顺序缓慢插入。

4.新的tablet级别指标,average_diskrowset_height,显示了需要压缩副本的程度,如每单位keyspace的平均行集(rowsets)数所示。

5.读取多个表的多列导致繁重的UPDATE工作负载的扫描现在更加节省CPU。在某些情况下,升级到此版本后,此类表的扫描性能可能会快几倍。

6.Kudu-Spark用户现在可以为Spark提供简短的“kudu”格式别名。这样你可以使用.format(“kudu”),而不是全名如.format(“org.apache.kudu.spark.kudu"),或者导入org.apache.kudu.spark.kudu._,然后使用隐式的.kudu函数。

7.KuduSink类已经添加到Spark的StreamSinkProvider中,允许将structured streaming写入到Kudu。

8.对于Kudu的consensus实现和后台进程,服务器端日志记录的数量已大大减少。此日志记录被确定为无用且冗长。

9.Kudu Web UI现在可以清楚地指出哪些列是主键的一部分。

10.新的kudu table describe工具描述了表属性,包括schema,分区,复制因子,列编码,压缩和默认值。

11.新的kudu table scan工具扫描表中的行,支持comparison, in-list和is-null谓词。

12.新的kudu locate_row工具允许用户确定给定的主键属于哪个tablet,以及该主键是否存在行。

13.新的kudu diagnose dump_mem_trackers工具允许用户以CSV格式输出/mem-trackers Web UI页面的内容。

10

Apache Parquet

10.1

Support for New Logical Type Representation

parquet-mr引入一个新的,更灵活的逻辑类型API,在parquet-format基于Thrift field已经推出有一段时间了。新API允许存储和检索不同类型的属性,例如,时间戳语义和精度。

新逻辑类型由LogicalTypeAnnotation类表示,并且完全向前和向后兼容先前的逻辑类型。使用旧API编写的文件可以使用新API读取,只要不使用新类型,使用旧API编写的文件也可以使用旧API读取。

11

Apache Spark

11.1

Spark Driver Logs

当Spark应用程序以YARN-client模式或Spark Shell运行时,Spark服务会收集Spark driver的日志。此功能默认会启用,日志将持久保存到HDFS目录并包含在YARN诊断包中。

要禁用此功能,可以在Spark服务的Configuration页面取消勾选Persist Driver Logs to Dfs

11.2

Spark Structured Streaming reference application for CDH

Spark结构化流参考应用程序是一个项目,其中包含演示Apache Kafka - > Apache Spark Structured Streaming - > Apache Kudu管道以供摄取的示例应用程序。该项目的主要目标是帮助客户在CDH上构建结构化流应用程序。

12

Apache Sqoop

12.1

Support Decimal Type from Parquet Import and Export

无论是HDFS还是Hive,Sqoop现在都支持DECIMAL类型的import和export。CDH6.2中默认启用该新功能,如果是从旧的版本升级到6.2该功能默认会禁用。

12.2

Importing Data into Microsoft Azure Data Lake Store (Gen1 and Gen2) Using Sqoop

CDH6.2支持在两代ADLS中使用Apache Sqoop。您可以使用Sqoop在Apache Hadoop和结构化数据存储(如关系数据库)之间高效传输批量数据。也可以使用Sqoop将具有JDBC适配器(如SQL Server,MySQL等)的任何关系数据库中的数据导入ADLS文件系统。

本文分享自微信公众号 - Hadoop实操(gh_c4c535955d0f)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-04-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励