私の究極の目標は、Greenplumデータベースの内部ロードテーブルにngramデータセットを挿入することです。Greenplum ngramデータセット:列のデータがありません
私はgpfdist
を実行しているサーバーを持っています。
CREATE EXTERNAL TABLE ng_schema.fre2(
id bigserial,
ngram text,
year int4,
match_count int4,
page_count int4,
volume_count int4)
LOCATION ('gpfdist://10.1.8.4:8081/ngram_2009h1/fre-all/2/*.csv')
FORMAT 'TEXT' (HEADER)
LOG ERRORS INTO ng_schema.load_e_fre2 SEGMENT REJECT LIMIT 500 rows;
データセットはすべて、 "CSV" と言うが、彼らはカンマを含まない:
私は(Greenplumは上)外部表を作成しました。それらはタブを含んでいます。
#head -n20 *92.csv
! 144 1836 2 2 2
....
次に、私は外部表をテスト:
SELECT * FROM fre2;
ERROR: Segment reject limit reached. Aborting operation. Last error was
missing data for column "volume_count"...
私は私のログのエラーテーブルに行くと、この参照してください。私はFORMAT 'TEXT' (HEADER)
で遊んでみました
2016-07-21 20:51:49.05593+00 | fre2 | gpfdist://10.1.8.4:8081/ngram_2009h1/fre-all/2/*.csv [/mnt2/ngram_2009h1/fre-all/2/googlebooks-fre-all-2gram-20090715-0.csv] | | | missing data for column "volume_count" | ! Giscard 1979 2 2
2 |
を。私はDELIMITER ' '
を追加しました。私はCSV
に変更しましたが、別の列のデータが失われてしまいます。
2つの列に対して「!Giscard」がカウントされていると思います。 ngramにはスペースがあります。
また、エラーがid bigserial
である可能性がありますか?
変更するアイデアはありますか?
ありがとうございます!この修正は、外部テーブルに 'big big'をリストアップすることではありませんでした。私は間違いがない!私は '(HEAD DELIMITER '\ t')'、 'E '\ t''は私のために働いていませんでした。ヘッダー行があるので、 'HEAD'を追加しました。 – syuja
待って、 'E '\ t''が必要になった!再度、感謝します! – syuja