Wranglerを触ってみたので、その感想などを書きます。WranglerはAWSの各サービス上にあるデータを操作するためのPythonライブラリです(つまりサービスではない)。Redshiftなど)へとアップロードすること、またその逆の作業が行えます。このような操作は各チームでライブラリを用意するか、個々のデベロッパーが都度開発することで実現されることが多かったでしょう。Wranglerが提供されたことにより、そのような手間を省くのに加え、データのやり取りを行う際のベストプラクティスに沿った実装を利用できる様になることが期待できます。基本的な使い方はリポジトリの利用例に十分に紹介されているので、S3とDataFrameをやり取りする際の細かい挙動について気になる点を1つだけ紹介します。pandaspandasとS3のやり取りとして、実験の途中や、バッチの実行結果として生じたDataFrameをS3に保存する(したい)というケースは多いかと思います。Wranglerはこれをサポートしています。この結果は少々直感とは異なり、以下のようになります。WranglerはデフォルトでS3へのアップロードを実行環境のCPUのコア数分だけ並列で行います。返り値として得ることができますが、別の文脈(別のプログラムやNotebook)からアクセスし直すのはやや煩雑でしょう。テーブル化し、即座にAthenaでクエリをすることが可能です。Wranglerに任せることができます。データカタログに所望のテーブルが自動で作成されます。次のようにしてAthenaにクエリを発行することができます。Athenaで扱うデータにとってはほぼ必須となるパーティションの制御もお手の物です。DataFrameをアップロードする際に、パーティションのキーとしたい列をDataFrameに予め用意してやることで、Hive式の配置でデータを格納することができます。month=9/うーん素晴らしい。Wranglerを使って即クラウド、再利用する際は同じ名前(パス、database、table)で呼び出して使う。Wranglerが提案するプラクティスはこのようなものではないでしょうか。WranglerはAWS環境を前提とすることでより強力な機能を提供できたとも捉えられるでしょう。最後にこれは余談ですが、クックパッドにいたころに作った、各種データソース(Redshift、MySQL、PostgreSQL、S3など)からデータを読み出す作業をライブラリ化したものがあります。Wranglerの登場によって、ほぼ完全に「しょぼい版」になってしまいましたね。»プロフィールid:ayemos株式会社ポインティのCTOとフリーランスをやってます。Wranglerを触ってみた今からRailsでSNSログインを実装したい人へはてなブログをはじめよう!ayemosさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。