オープンソースのデータベースという選択

オープンソースのデータベースという選択

これまでOracleDBを使ってきた同社だが、海外景気の下振れ懸念やLCCの台頭など、会社を取り巻く状況が変わってきたため、構造改革の必要に迫られてきた。それに伴い、吉村氏の所属部署でもITコストの削減を検討することになった。

OSでは折しもLinuxが広く使われるようになってきており、オープンソースが注目されはじめたこともあって、同社でもOSSを活用できないかの検討を始めた。Linuxについては使用しているシステムが増えてきたため、次にデータベースでも採用できないかという話が進んだ。

インフラアーキテクチャを考える上で、ITコストを最適化しつつ、必要な品質を守るという観点で、OSS含めて採用する製品の検討を始めた。その際考慮したのがレベルに見合った製品を選択するという点だった。
これまでは品質を保つことのできる1製品を選択してきたが、すべてのシステムで同じレベルの要求をこなす必要があるのかといえばそうではなく、それぞれのレベルに合った品質を持った製品を選択するのが最適解であるとの結論に至った。

そこで、データベースに関しては、OracleDBとともにOSSのソフトを使うことができるか、どんなシステムで使えるのかということで名前が挙がったのが、PostgreSQLを検討した最初だった。最終的に、OracleDB、PostgresPlus Enterprise Edition、PostgreSQLの3製品を使い分けていくことにした。

なぜPostgreSQLを選択したか

なぜ数あるOSS製品の中からPostgreSQLを選択したのか。一番の理由は、既に使われていたOracleDBからの移行が容易なことが挙げられる。さらに技術者のスキルも移行が容易であることからもあって、SQL ServerやDB2など、他の商用製品も含めて検討したものの、OracleDBに近いアーキテクチャを持つPostgreSQLが選択されることになった。

コスト面でもOSS活用によるメリットは大きいが、もう一つの有名な製品であるMySQLを選ばなかったことについては、やはりOracleDBからの移行メリットという点でPostgreSQLが適しているとの結論に至ったからだった。
また、OracleDBと互換機能を持つPostgres Plus Enterprise Edition(以下、Postgres Plus)を使うことで移行のハードルが下がるということも理由の一つだった。

Postgres Plusは、PostgreSQLをベースにEnterpriseDB社が開発した企業向けのDB製品で、最近までPostgres Plus Advanced Serverと呼ばれていた。特長として、例えばOracleのPL/SQLが同じ構文で利用できるなど、OracleDBとの互換機能を持つことが挙げられる。Oracle用のアプリケーションをそのまま使うことができることや、データ移行ツールがあることも大きな特長である。

ガイドライン作成にあたって

ANAシステムズでは、Oracleのガイドラインが既に定着、浸透しており、こうしたガイドラインを使ってシステムを構築・運用するのが通例になっていた。そのため、PostgreSQLを活用するにあたって、ガイドラインがないと切り替えが進めづらいと吉村氏は感じていた。ただ、それまでPostgreSQLに関するノウハウがほとんどなかったため、ガイドラインの作成と同時にノウハウを習得しようと考えた。

OracleDBの時と異なり、体系だった資料が少なく、ガイドラインの作成を検討するのはかなり困難だった。Postgres Plusについては公開情報自体が少なかったため、コンサルティングの依頼が必要だと判断。株式会社アシストにコンサルティングを依頼することになった。
アシストを選択した理由は、社内で使用する3つのデータベース製品に対するサポートや教育、構築、コンサルティングを行っていることや、今後の移行や教育を行っていく上で、OracleとPostgreSQL両方のノウハウを持つことが決め手となった。

ガイドライン作成は2013年9月より開始し、半年後の2014年3月に完成。分析計画からSQLコーディングまで6種類のガイドラインを完成させた。

(クリックで拡大)

最初に検討したのが、どのシステムでPostgreSQL(Plus含む)を採用するかという、製品選択の基準だった。セミナー等で入手していた情報を参考に、同時実行性とデータベースの規模がある程度以上のレベルに関してはOracleDBを使うという切り分けを想定していた。

PostgreSQLのバージョンアップにつれて性能が上がり、OracleDBとの壁がなくなることも聞いていたが、ガイドラインは一定の品質を保つことも要求されることから、確実な線引きが必要だと考えた。
そこで、チームが出した結論として、同時実行数が256以上、必要なCPUのコア数が16以上という具体的な線を引くよう設定している。

また、もう一つの観点であるデータベースの規模については、おおむね1TBを超える場合はOraceDBを使用、それ以下の場合はPostgreSQLやPostgres Plusを使うようにしている。

特にデータベースの規模についてはPostgreSQLやPSEEと比べて、OracleDBのパーティション機能が優れていると考えているため、大規模なDBを使うにはその機能が性能向上や運用管理の面で必須になるということも考慮に入れて切り分けを行っている。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30