Hadoop 参数

下表介绍用于配置与 Apache Hadoop 集成的常规参数。有关详细信息,请参阅Apache Hadoop 集成

查询 CONFIGURATION_PARAMETERS 系统表以确定哪些级别(节点、会话、用户、数据库)对给定参数有效。
EnableHDFSBlockInfoCache
布尔值,是否将规划期间在启动程序上收集的块位置元数据分发到所有数据库节点以供执行。分发此元数据会减少名称节点访问,从而减少负载,但在名称节点不争用的部署中,可能会在一定程度上降低数据库性能。这种性能影响是因为必须序列化和分发此数据。如果保护名称节点比查询性能更重要,则启用分发;这通常适用于名称节点争用已造成影响的大型 HDFS 群集。

默认值: 0(禁用)

HadoopConfDir
包含从 Hadoop 复制的 XML 配置文件的目录路径。相同的路径必须在每个 Vertica 节点上都有效。您可以使用 VERIFY_HADOOP_CONF_DIR 元函数来测试该值是否设置正确。要从 HDFS 读取数据,需要设置此参数。

对于所有 Vertica 用户,文件由运行 Vertica 服务器进程的 Linux 用户访问。

设置此参数时,会刷新先前缓存的配置信息。

您可以在会话级别设置此参数。这样做会覆盖数据库值;数据库值不附加到它。例如:

  
=> ALTER SESSION SET HadoopConfDir='/test/conf:/hadoop/hcat/conf';

要附加,请获取当前值并将其包含在附加后的新路径中。在会话级别设置此参数不会更改文件的访问方式。

默认值: 从环境中获取(如果可能)

HadoopFSAuthentication
如何(或是否)将 Kerberos 身份验证与 HDFS 一起使用。默认情况下,如果设置了 KerberosKeytabFile,Vertica 会将该凭据用于 Vertica 和 HDFS。通常这是期望的行为。但是,如果您将 Kerberized Vertica 群集与非 Kerberized HDFS 群集一起使用,请将此参数设置为“none”以指示 Vertica 不应使用 Vertica Kerberos 凭据访问 HDFS。

默认值: 如果设置了 KerberosKeytabFile,则为“keytab”,否则为“none”

HadoopFSBlockSizeBytes
写入 HDFS 的块大小。较大的文件被拆分成这种大小的块。

默认值: 64MB

HadoopFSNNOperationRetryTimeout
元数据操作(例如列表目录)在失败前等待响应的秒数。接受毫秒精度的浮点值。

默认值: 6 秒

HadoopFSReadRetryTimeout
读取操作在失败前等待的秒数。接受毫秒精度的浮点值。如果确信您的文件系统失败速度更快,降低此值可提高性能。

默认值: 180 秒

HadoopFSReplication
HDFS 创建的副本数。这与 Vertica 为提供 K-safety 而进行的复制无关。除非 Vertica 支持人员另有指示,否则请勿更改此设置。

默认值: 3

HadoopFSRetryWaitInterval
在重试读取、写入和元数据操作之前等待的初始秒数。接受毫秒精度的浮点值。重试间隔随着每次重试呈指数增长。

默认值: 3 秒

HadoopFSTokenRefreshFrequency
刷新用于保存 Kerberos 票证的 Hadoop 令牌的频率(以秒为单位)(请参阅令牌过期)。

默认值: 0(令牌过期时刷新)

HadoopFSWriteRetryTimeout
写入操作在失败前等待的秒数。接受毫秒精度的浮点值。如果确信您的文件系统失败速度更快,降低此值可提高性能。

默认值: 180 秒

HadoopImpersonationConfig
会话参数,用于指定 HDFS 访问的委派令牌或 Hadoop 用户。请参阅 HadoopImpersonationConfig 格式了解有关此参数值的信息,请参阅代理用户和委托令牌了解有关更一般的上下文。
HDFSUseWebHDFS
布尔值,hdfs 方案中的 URL 是否使用 WebHDFS 而不是 LibHDFS++ 来访问数据。

默认值: 1(启用)

WebhdfsClientCertConf
用于访问一个或多个 WebHDFS 服务器的 mTLS 配置。该值是一个 JSON 字符串;每个成员具有以下属性:
  • nameservice:WebHDFS 名称服务

  • authorityhost:port

  • certName:由..定义的证书名称 CREATE CERTIFICATE

nameserviceauthority 互斥。

例如:

=> ALTER SESSION SET WebhdfsClientCertConf =
    '[{"authority" : "my.authority.com:50070", "certName" : "myCert"},
      {"nameservice" : "prod", "certName" : "prodCert"}]';

HCatalog 连接器参数

下表介绍用于配置 HCatalog 连接器的参数。有关详细信息,请参阅使用 HCatalog 连接器

EnableHCatImpersonation
布尔值,HCatalog 连接器在访问 Hive 时是否使用(模拟)当前 Vertica 用户。如果启用了模拟,HCatalog 连接器将使用已登录 Vertica 用户的 Kerberos 凭据来访问 Hive 数据。如果您使用授权服务来管理访问权限而不授予用户对基础文件的访问权限,请禁用模拟。有关详细信息,请参阅配置安全性

默认值: 1(启用)

HCatalogConnectorUseHiveServer2
布尔值,Vertica 内部是否使用 HiveServer2 而不是 WebHCat 从 Hive 获取元数据。

默认值: 1(启用)

HCatalogConnectorUseLibHDFSPP
布尔值,HCatalog 连接器是否应将 hdfs 方案而不是 webhdfs 与 HCatalog 连接器配合使用。

默认值: 1(启用)

HCatConnectionTimeout
HCatalog 连接器在返回超时错误之前成功连接到 HiveServer2(或 WebHCat)服务器所等待的秒数。

默认值: 0(无限期等待)

HCatSlowTransferLimit
HCatalog 连接器从 HiveServer2(或 WebHCat)服务器检索数据时所允许的最低传输速度(以每秒字节数为单位)。在某些情况下,从服务器到 Vertica 的数据传输率低于此阈值。这种情况下,经过 HCatSlowTransferTime 参数中的指定秒数之后,HCatalog 连接器会取消查询并关闭连接。

默认值: 65536

HCatSlowTransferTime
HCatalog 连接器在测试服务器的数据传输是否过慢之前所等待的秒数。请参阅 HCatSlowTransferLimit 参数。

默认值: 60