【问题标题】:cloudera impala PARQUET_FALLBACK_SCHEMA_RESOLUTIONcloudera impala PARQUET_FALLBACK_SCHEMA_RESOLUTION
【发布时间】:2018-05-12 13:51:05
【问题描述】:

是否可以将 Cloudera Impala (5.12) 配置为默认为 name 而不是 position for PARQUET_FALLBACK_SCHEMA_RESOLUTION

我的 Parquet 文件并不总是具有相同的列集,因此我们需要 Impala 按名称而不是位置来查找它们,并且在每次会话中在 Hue 中执行此操作有点痛苦:

set PARQUET_FALLBACK_SCHEMA_RESOLUTION=name;

【问题讨论】:

    标签: cloudera parquet impala


    【解决方案1】:

    恐怕这在 Impala 端无法配置。

      case TImpalaQueryOptions::PARQUET_FALLBACK_SCHEMA_RESOLUTION: {
        if (iequals(value, "position") ||
            iequals(value, to_string(TParquetFallbackSchemaResolution::POSITION))) {
          query_options->__set_parquet_fallback_schema_resolution(
              TParquetFallbackSchemaResolution::POSITION);
        } else if (iequals(value, "name") ||
                   iequals(value, to_string(TParquetFallbackSchemaResolution::NAME))) {
          query_options->__set_parquet_fallback_schema_resolution(
              TParquetFallbackSchemaResolution::NAME);
        } else {
          return Status(Substitute("Invalid PARQUET_FALLBACK_SCHEMA_RESOLUTION option: "
              "'$0'. Valid options are 'POSITION' and 'NAME'.", value));
        }
        break;
      }
    

    Impala 服务器不设置默认查询选项。所有选项都在客户端会话设置的地方设置。因此,您需要配置您使用的任何客户端。例如,请参阅shell/impala_shell_config_defaults.py

    但是,您仍然可以修改代码并重新编译:)

    common/thrift/ImpalaInternalService.thrift

    struct TQueryOptions {
        ....
        // Determines how to resolve Parquet files' schemas in the absence of field IDs (which
        // is always, since fields IDs are NYI). Valid values are "position" (default) and
        // "name".
        43: optional TParquetFallbackSchemaResolution parquet_fallback_schema_resolution = 0  <--- change it to 1
        ....
    }
    

    【讨论】:

      【解决方案2】:

      感谢阿莫斯提供的信息,

      我在 Cloudera 论坛上发布了相同的问题,他们为我指出了一种通过 Cloudera Manager 配置此问题的方法。

      http://community.cloudera.com/t5/Interactive-Short-cycle-SQL/PARQUET-FALLBACK-SCHEMA-RESOLUTION/m-p/62318#M3883

      【讨论】:

      • 太棒了。我不知道-default_query_options 标志:)
      猜你喜欢
      • 2017-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多