山下寛人オフィシャルブログ

オイシックス株式会社 執行役員 システム本部長 山下寛人の公式ブログです。

OracleからMariaDBにレプリケーションしたい

今度移行するIDCFのクラウドでは大きな誤算がありました。参照用のOracleのライセンスをそのままだと大量に追加購入しなければなりません。なぜならvmwareで動作している場合物理のCPU数分だけライセンスを購入しなければならないからだそうです。そんな馬鹿な。

ひとまず物理サーバーを追加してしのぎますがこれではせっかくクラウドなのにスケーラビリティのメリットがありません。APサーバーはリソースを増やしたりできるもののOracleは全然できないとなるとせっかくの良さがだいぶ限られてしまいます。

そこでかねがね脱Oracleしようと思っていたものを具体的に進めたいと思います。MySQLOracle傘下になったのでMariaDBがよいですね。参照用Oracleは大元のOracleからマテリアライズドビューでレプリケーションしています。それと同等のことをするようなツールは結構いろいろあります。

その際に方式としてトリガーで更新内容を記録してそれを反映させる方式と、REDOログ・アーカイブログからLogminerを使ってREDO SQLを取り出し反映させる方式があります。前者は手作りで同様のことをしていますがやっぱりパフォーマンスに影響があります。大量にinsert,deleteするようなときにかかる時間が飛躍的に長くなります。もともとOracleは大量deleteがすごく時間かかりますがさらに何倍にもなる感じです。なので後者の方式にしたいです。後者の方式は大元のOracleのパフォーマンスに影響がありません。

今のところDBMotoという製品があるようです。こちらはMySQLには対応していますがMariaDBには対応していないようです。動くかもしれませんが。以前見積もりを取ったときはOracleと同じくらいのお値段だったように思います。Windowsが必要なのもどうかというのがあります。他にもいろいろ探してみたいと思います。