执行数据导入
直接查询外表查看MRS数据源的数据
如果数据量较少,可直接使用SELECT查询外表,即可查看到MRS数据源的数据。
- 执行以下命令,则可以从外表查询数据:
1
SELECT * FROM foreign_product_info;
查询结果显示如数据文件中所示的数据,表示导入成功。查询结果的结尾将显示以下信息:
(20 rows)
通过外表查询到数据后,用户可以将数据插入数据库的普通表。
导入数据后查询数据
也可以将MRS数据导入GaussDB(DWS)后,再查询数据。
- 在GaussDB(DWS)数据库中,创建导入数据的目标表,用于存储导入的数据。
该表的表结构必须与创建外表中创建的外表的表结构保持一致,即字段个数、字段类型要完全一致。
例如,创建一个名为product_info的表,示例如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
DROP TABLE IF EXISTS product_info; CREATE TABLE product_info ( product_price integer , product_id char(30) , product_time date , product_level char(10) , product_name varchar(200) , product_type1 varchar(20) , product_type2 char(10) , product_monthly_sales_cnt integer , product_comment_time date , product_comment_num integer , product_comment_content varchar(200) ) with ( orientation = column, compression=middle ) DISTRIBUTE BY HASH (product_id);
- 执行“INSERT INTO .. SELECT ..”命令从外表导入数据到目标表。
示例:
1
INSERT INTO product_info SELECT * FROM foreign_product_info;
若出现以下类似信息,说明数据导入成功。INSERT 0 20
- 执行SELECT命令,查看从MRS导入到GaussDB(DWS)中的数据。
1
SELECT * FROM product_info;
查询结果显示如数据文件中所示的数据,表示导入成功。查询结果的结尾将显示以下信息:
(20 rows)
错误处理
数据导入过程中,对于如下错误信息,表示GaussDB(DWS)期望读取ORC数据文件,但实际却是*.txt类型的数据文件。请先参见在MRS集群上创建Hive ORC表创建Hive ORC类型的表,并将数据存储到该Hive ORC表中。
ERROR: dn_6009_6010: Error occurs while creating an orc reader for file /user/hive/warehouse/products_info.txt, detail can be found in dn log of dn_6009_6010.