teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

5

追加

2019/04/16 11:53

投稿

hiroysato
hiroysato

スコア415

answer CHANGED
@@ -70,4 +70,17 @@
70
70
  fields:
71
71
  - {name: key1, type: STRING}
72
72
  - {name: key2, type: STRING}
73
- ```
73
+ ```
74
+
75
+ ## 2019-4-16 20:52 追加
76
+
77
+ [Column Options](https://github.com/embulk/embulk-output-bigquery#column-options)
78
+
79
+ | Embulk type | BigQuery type | default |
80
+ |-------------|----------------------------------------------------|-----------|
81
+ | boolean: | BOOLEAN, STRING | BOOLEAN |
82
+ | long: | BOOLEAN, INTEGER, FLOAT, STRING, TIMESTAMP | INTEGER |
83
+ | double: | INTEGER, FLOAT, STRING, TIMESTAMP | FLOAT |
84
+ | string: | BOOLEAN, INTEGER, FLOAT, STRING, TIMESTAMP, RECORD | STRING |
85
+ | timestamp: | INTEGER, FLOAT, STRING, TIMESTAMP | TIMESTAMP |
86
+ | json: | STRING, RECORD | STRING |

4

追記

2019/04/16 11:53

投稿

hiroysato
hiroysato

スコア415

answer CHANGED
@@ -51,4 +51,23 @@
51
51
  time_partitioning:
52
52
  type: DAY
53
53
  field: update_time
54
+ ```
55
+
56
+ ## 2019-4-16 19:58 追加
57
+
58
+ 他の設定を真似したらいかがでしょうか?、YAMLの書き方が間違えています。YAMLの書き方を調べて習得してください。
59
+
60
+ [Column Options](https://github.com/embulk/embulk-output-bigquery#column-options)
61
+
62
+ ```yaml
63
+ out:
64
+ type: bigquery
65
+ auto_create_table: true
66
+ column_options:
67
+ - {name: date, type: STRING, timestamp_format: %Y-%m-%d, timezone: "Asia/Tokyo"}
68
+ - name: json_column
69
+ type: RECORD
70
+ fields:
71
+ - {name: key1, type: STRING}
72
+ - {name: key2, type: STRING}
54
73
  ```

3

追加

2019/04/16 10:59

投稿

hiroysato
hiroysato

スコア415

answer CHANGED
@@ -24,4 +24,31 @@
24
24
  NUMBER⇒double※embulkにより自動変換⇒float⇒NUMERIC【×】
25
25
  ```
26
26
 
27
- これはembulkのところは、全く一緒に見えますが、bigqueryのところが何かちがうのでしょうか?
27
+ これはembulkのところは、全く一緒に見えますが、bigqueryのところが何かちがうのでしょうか?
28
+
29
+
30
+ ## 2019-4-16 19:15 追加
31
+
32
+
33
+ [こちら](https://tech.griphone.co.jp/2018/12/04/advent-calendar-20181204/)はご覧になりましたか?
34
+
35
+ > schema_fileはBigQueryのテーブルのスキーマ定義のファイルを指定しています。これはauto_create_tableを使用する時に必要です。schema_file以外の指定の方法としてtemplate_tableやcolumn_optionsを使う方法があります。詳しくはembulk-output-bigqueryの[README.md](https://github.com/embulk/embulk-output-bigquery#configuration)を見てみてください。
36
+
37
+ ```yaml
38
+ out:
39
+ type: bigquery
40
+ auth_method: json_key
41
+ json_keyfile: '{{ env.bq_credential }}'
42
+ project: {{ env.bq_project }}
43
+ dataset: {{ env.bq_dataset }}
44
+ location: asia-northeast1
45
+ table: {{ env.bq_table }}
46
+ schema_file: {{ env.bq_table }}.json
47
+ default_timezone: Asia/Tokyo
48
+ auto_create_table: true
49
+ path_prefix: {{ env.bq_table }}
50
+ compression: GZIP
51
+ time_partitioning:
52
+ type: DAY
53
+ field: update_time
54
+ ```

2

追加

2019/04/16 10:16

投稿

hiroysato
hiroysato

スコア415

answer CHANGED
@@ -17,4 +17,11 @@
17
17
 
18
18
  また設定ファイルをご提供いただけないんですね。。
19
19
 
20
- ターゲットのテーブルを決して作り直すか、型を変える等が必要なのではないでしょうか?
20
+ ターゲットのテーブルを決して作り直すか、型を変える等が必要なのではないでしょうか?
21
+
22
+ ```
23
+ NUMBER⇒double※embulkにより自動変換⇒float⇒float【●】
24
+ NUMBER⇒double※embulkにより自動変換⇒float⇒NUMERIC【×】
25
+ ```
26
+
27
+ これはembulkのところは、全く一緒に見えますが、bigqueryのところが何かちがうのでしょうか?

1

追記

2019/04/16 07:58

投稿

hiroysato
hiroysato

スコア415

answer CHANGED
@@ -5,4 +5,16 @@
5
5
  https://github.com/embulk/embulk-output-bigquery#dynamic-table-creating
6
6
 
7
7
  `schema_file`のサンプルはこちらにあるようです。
8
- https://github.com/embulk/embulk-output-bigquery/blob/master/example/schema.json
8
+ https://github.com/embulk/embulk-output-bigquery/blob/master/example/schema.json
9
+
10
+ ## 2019-4-16 16:55 追加
11
+
12
+ `Provided Schema does not match Table yzk-gcp-project:srdcs_data.T_RS_TRAN_20190416. Field ORDER_NO has changed type from NUMERIC to STRING`
13
+ とあるように既存のテーブルと型が一致していないのではないでしょうか?
14
+
15
+ `schema_file`とか`template_table`は指定されているのでしょうか?
16
+ https://github.com/embulk/embulk-output-bigquery#dynamic-table-creating
17
+
18
+ また設定ファイルをご提供いただけないんですね。。
19
+
20
+ ターゲットのテーブルを決して作り直すか、型を変える等が必要なのではないでしょうか?