flink StreamingFileSink 写到hive 表中不能加载

创建cdp_src_tenant_1 库,创建text 分区表

create database cdp_src_tenant_1 ;
use cdp_src_tenant_1 ;
CREATE TABLE IF NOT EXISTS text(
event_code      string,
tenant_id      string,
msg_id  bigint,
to_user_name  string,
from_user_name  string,
create_time  bigint,
msg_type  string
)partitioned by (process_date string)
ROW FORMAT DELIMITED
  FIELDS TERMINATED BY '\t'
  LINES TERMINATED BY '\n'
STORED AS TEXTFILE;

使用flink StreamingFileSink 自定义BucketAssigner 写入 text表对应的路径
flink StreamingFileSink 写到hive 表中不能加载_第1张图片

在hdfs看到数据已经写入相应表对应的分区,使用select 查询的时候无数据。
这是因为hive对应的metastore中没有partition信息,可以用下面两种方式修复分区

  1. 添加分区
alter table text add partition(process_date='2020-04-21')
  1. 修复text表的所有分区metastore check
 msck repair table text;

你可能感兴趣的:(flink,hive)