Ecto はデータベースを扱うとても便利なライブラリです。 ただ、自分達が使う上でいくつか使い勝手の悪い部分があったので、Yacto というライブラリを作りました。1 Yacto とは Yacto は、Ecto で使いにくかった部分をサポートするためのライブラリです。 大まかに以下の機能があります。 マイグレーションファイルの自動生成 別アプリケーションからのマイグレーションの利用 水平分割したデータベースへのマイグレーション 複数データベースを跨るトランザクション(XA トランザクション) それぞれ説明していきます。 マイグレーションファイルの自動生成 Yacto は、特にマイグレーション周りが Ecto と異なります。 Ecto はスキーマとマイグレーションを別で定義していましたが、Yacto は スキーマからマイグレーションファイルを自動的に出力します。 具体的には、以下の様にスキー