embulk-input-mysql の incremental_columns の設定でハマった

embulk-input-mysql

ご存知、Embulk 用の MySQL の input プラグインです。

incremental と incremental_columns

設定項目の一つにincrementalという項目があり、ここをtrueにするとこの項目で指定されたカラムを基準として最終取得したレコードの情報を保存してくれます。

次回以降に Embulk するときは最初からまた総なめするのではなく、続きから取得してくれるという大変便利なプラグイン(設定内容)です。incrementalに用いるカラムは自前で設定することができ、その際はincremental_columnsでカラム名を指定します。

incremental_columns の設定記述方法

コレではだめです……。

incremental: true
incremental_column: column_name

ドキュメントのIncremental loadingの箇所を読むと分かるのですが、以下のような記述があります。

For example, if incremental_columns: [updated_at, id] option is set, query will be as following:

これはすなわち、カラム名を [] でくくってあげなければいけないということです。だからさっきの場合の正解は以下のとおりです。ちなみにカラム名はカンマ区切りで複数指定が可能です。

incremental: true
incremental_column: [column_name]

思いっきりはまり込んでしまいました……

Powered by はてなブログ