Hive 连接器


Hive 连接器

上级文档:连接器

BitSail hive连接器支持对hive表进行读写。主要功能点如下:

  • 支持读取分区表和非分区表
  • 支持写入分区表
  • 支持读写多种格式 hive 表,比如parquet、orc、text

支持的hive版本

  • 1.2
    • 1.2.0
    • 1.2.1
    • 1.2.2
  • 2.0
    • 2.0.0
    • 2.1.0
    • 2.1.1
    • 2.3.0
    • 2.3.9
  • 3.0
    • 3.1.0
    • 3.1.2

依赖引入

<dependency>
   <groupId>com.bytedance.bitsail</groupId>
   <artifactId>bitsail-connector-hive</artifactId>
   <version>${revision}</version>
</dependency>

Hive读连接器

支持的数据类型

  • 支持的基础数据类型如下:
    • 整数类型:
      • tinyint
      • smallint
      • int
      • bigint
    • 浮点类型:
      • float
      • double
      • decimal
    • 时间类型:
      • timestamp
      • date
    • 字符类型:
      • string
      • varchar
      • char
    • 布尔类型:
      • boolean
    • 二进制类型:
      • binary
  • 支持的复杂数据类型包括:
    • map
    • array

主要参数

hive读连接器参数在job.reader中配置,实际使用时请注意路径前缀。示例:

{
  "job": {
    "reader": {
      "db_name": "test_database",
      "table_name": "test_table"
    }
  }
}

必需参数

参数名称参数是否必需参数枚举值参数含义
classHive读连接器类名,只能为com.bytedance.bitsail.connector.legacy.hive.source.HiveInputFormat
db_name读取的hive库名
table_name读取的hive表名
metastore_properties标准json格式的metastore属性字符串

可选参数

参数名称参数是否必需参数枚举值参数含义
partition要读取的hive分区。若不设置,则读取整张hive表
columns数据字段名称及类型。若不设置,则从metastore获取
reader_parallelism_num读并发数

Hive写连接器

支持的数据类型

  • 支持的基础数据类型如下:
    • 整数类型:
      • tinyint
      • smallint
      • int
      • bigint
    • 浮点类型:
      • float
      • double
      • decimal
    • 时间类型:
      • timestamp
      • date
    • 字符类型:
      • string
      • varchar
      • char
    • 布尔类型:
      • boolean
    • 二进制类型:
      • binary
  • 支持的复杂数据类型包括:
    • map
    • array

主要参数

hive写连接器参数在job.writer中配置,实际使用时请注意路径前缀。示例:

{
  "job": {
    "writer": {
      "db_name": "test_database",
      "table_name": "test_table"
    }
  }
}

必需参数

参数名称参数是否必需参数枚举值参数含义
db_name写入的hive库名
table_name写入的hive表名
partition写入的hive分区名
columns数据字段名称及类型,若不设置,则从metastore获取

可选参数

参数名称参数默认值参数枚举值参数含义
date_to_string_as_longfalse是否将日期数据转化为整数时间戳
null_string_as_nullfalse是否将null数据转化为null。若为false,则转化为空字符串 ""
date_precisionsecondsecond
millisecond
日期数据转化为整数时间戳时的精度
convert_error_column_as_nullfalse是否将转化出错的字段置为null。若为false,则在转化出错时抛出异常
hive_parquet_compressiongzip当hive文件为parquet格式时,指定文件的压缩方式

相关文档

配置示例文档:Hive 连接器示例