@twitterこの広告は、90日以上更新していないブログに表示しています。ロードしたいというようなユースケースに対応する機能。書いた設定をマージしたものを実際の設定ファイルとして実行していく方法で良さそう。マージするか、あまり良い案がない。常に後ろに追加すれば良いわけでは無いと思うので。いうmapにすれば、うまくマージできる。${table_name}複数のジョブを実行するときに、全部を1つのトランザクションとして扱うか、1つ1つのジョブを別々のトランザクションと考えて逐次実行するかは、決まっていない。全部を1つのトランザクションにする場合、全ジョブが完了するまでcommitできないので、実装は比較的複雑になる。fileのパスをどういうコマンドラインで指定してもらうか、どのタイミングで消すかが良く分かっていない。フィールドにoutputプラグインを書く方法で良いと思う。みたいなbuilt-inプラグインが指定されていることにして、警告を出して無視する。指定してファイルに保存できるようになる。やって実装するかが悩ましい。classとして切り出す方針が良さそうだと思っている。GitHubarrayやmap型などの型付きの複合型を入れるのも良いのだけども、どうせスキーマレスな型は必要になるはずだから、とりあえずJSON型を追加し、arrayやmapなどもそこに突っ込む方針で良いと思う。GitHub)も考えたけども、それは要らない気がしている。メソッドが実装されていなかったらstringに変換してしまう)、後方互換性を維持したままJSON型は追加できる。json型はPostgreSQLと同様に、arrayやmap以外に文字列などのスカラ型も保存できて良いと思う。fluentdと同様に、内部エンコーディングはmsgpackにすればいい。GitHubDecoderとEncoderは、Rubyで書けなくても特に問題ない気がしているけども、FileInputとFileOutputは書けた方が良さそう。GitHubfluentdで言うところのmixinのような仕組みが、今のところないので、こういう便利系APIをどうやって足したら良いのかの指針がない。そこを少し考えた方がいい。filterfilterプラグインは結構書くのが大変で、もっと便利なAPIを追加しないといけない。他方で、大体のユースケースはSQLが書ければ解決できる。そこで、embulkのfilterプラグインとして、SQLの処理系であるPrestoを使うプラグインがあれば、filterプラグインを書かなくても色々な処理ができるようになる。stdoutのようになる(なって欲しい)。GitHubCSVパーサなど、parserプラグインにデータを渡す前に、行を加工したりスキップしたいことが、たまにある。JSONになっている場合に、日付部分を削除してからJSONパーサプラグインに渡したい、というケース。parserプラグインに渡す前のデータは、decoderプラグインで加工できる。いう加工をするプラグインを一つ作ればいい。並列化に対応していないプラグインを使っていると、outputプラグインの動作までシングルスレッドで動くことになってしまう。あるoutputの処理が遅いケースでは、inputは1スレッドでもoutputをマルチスレッドで動かしたいことが良くある。実はtaskCountは、executorプラグインのレイヤーで変更することができる。executorプラグインは、inputプラグインから受け取ったデータをoutputプラグインに渡す部分をカスタマイズできるのだけども、そこでデータを複数スレッドに分散させればいい。LocalExecutorPluginを改造すればできる。設定ファイルに対して決定性のあるアルゴリズムで行わなければならないところだけ。GitHub処理したレコード数、バイト数、CPU使用率、メモリ使用量などの統計情報の収集。Dropwizardのmetricsを組み込めば良さそう。http://metrics.dropwizard.io/組み込み方に関する具体的な設計は、まだ何も無い。GitHubissueに貼ってある参考実装みたいにしたい。現在のLineDecoderは、厳密にはデータの末端にある1行の扱いがおかしい。リリース!こんにちは。古くなってし...2010-04-04コンパイル済みのgemパッケージを作るRubyGemsプラグイン拡張ライブラリを含んだgemパッケージから、コンパイル済みのバ...2009-09-09PFIインターンに行ってきました。リトライはいつ成功するかリトライと冪等性のデザインパターン月別アーカイブ検索はてなブログをはじめよう!viverさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。