kudu 导入/导出 数据

日萌社

人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新)


 

大数据组件使用 总文章 


  • Impala 操作/读写 Kudu,使用druid连接池
  • Kudu 原理、API使用、代码
  • Kudu Java API 条件查询
  • spark读取kudu表导出数据为parquet文件(spark kudu parquet)
  • kudu 导入/导出 数据
  • Kudu 分页查询的两种方式
  • Kudu 创建主键

impala命令刷新元数据
	1.impala-shell 命令进入交互界面 执行 invalidate metadata; 命令刷新元数据 
	2.Hue的wen页面中,在impala执行sql的窗口 执行 invalidate metadata; 命令刷新元数据 

1.impala中创建kudu表的话,可以在impala中看到kudu表,但是使用 kudu java api创建kudu表的话,impala看不到kudu表,只能kudu web ui看到,因此也只能使用 kudu java api删除该表。
2.因此此时需要进入impala-shell创建impala外部映射表映射Kudu表,创建impala外部映射表之后,就同时会在hdfs的/user/hive/warehouse路径下创建同名文件夹。
3.impala中创建kudu表和impala外部映射表的话,两者都会在hdfs的/user/hive/warehouse路径下创建同名文件夹,并且两者都能在impala-shell中查看到表。
4.如果使用 kudu java api创建kudu表的话,并不会在hdfs的/user/hive/warehouse路径下创建同名文件夹,并且impala-shell中查看不到该kudu表。

导出 kudu表数据 为csv文件
	impala-shell中 导出kudu表数据为csv文件,或者说是通过impala的外部映射表把kudu表数据导出为csv文件
	impala-shell -q "select * from rawdata.event_wos_p1 LIMIT 100" -B --output_delimiter=","  -o /home/gzp/event_wos_p1.csv
把csv文件 导入到 kudu表中
	1.首先impala中要创建带分隔符的临时表,即impala中创建的表带有row format delimited fields terminated by ',';
		create table event_wos_p1_temp(day int,...)row format delimited fields terminated by ',';
	2.使用 kudu java api 创建kudu表 或 impala中  创建kudu表
	3.impala中 创建映射kudu表 的impala外部 映射表
	4.INSERT INTO impala外部映射表/kudu表 SELECT * FROM 带分隔符的临时表;
		INSERT INTO event_wos_p1 SELECT * FROM event_wos_p1_temp;

 

你可能感兴趣的:(Kudu,大数据)