Computer Weekly製品導入ガイド
試行錯誤する価値があるオープンソースデータベース
コストが高く魅力のないプロプライエタリデータベースの代替として、多くの企業がよりアジャイルなオープンソース製品に目を向けている。自社のニーズに最も合ったものを選ぶためには試行錯誤が必要だ。
10年前、企業向けのデータベースといえばほぼ「Oracle Database」「Microsoft SQL Server」、そして「IBM DB2」くらいしか選択肢がなかった。「MySQL」や「PostgreSQL」などのオープンソースデータベースも存在していたが、ほとんどの営利組織の目には入らなかった。
だがプロプライエタリ製品のライセンスが複雑化してコストがかさむようになると、企業のニーズが変化してきた。こうして、増大する需要に応える存在としてオープンソースソフトウェア(OSS)が浮上してきた。
リレーショナルデータベース(RDBMS)がすぐに姿を消すことはなさそうだが、非RDBMSも、特に「MongoDB」「Cassandra」「Couchbase Server」「Redis」といったオープンソースNoSQLデータベースを筆頭に目覚ましい復活を遂げている。
プロプライエタリサプライヤーの大手3社は貪欲になり過ぎたと指摘するのは、アドレス認証と電子商取引ツールを手掛けるPCA Predict(旧Postcode Anywhere)のジェイミー・ターナー最高技術責任者(CTO)。「われわれも昔からMicrosoft SQL Serverを使っていて、10年前はライセンス料も十分理にかなっていた。プロセッサ当たり3000ポンドだったと思う。それだけの価値はあった」と同氏は振り返る。
収益の流れを守る
ところがサプライヤーは安定したライセンス料を維持しようとして、プロセッサ当たりではなくコア当たり、あるいは自分たちの収益を守れる方法で課金するようになった。
ターナー氏は言う。「貪欲なライセンス祭りのような状態になった。Microsoft SQL Serverをそれなりのマシンに搭載すると、優に1万ドルの出費になる。エディションが違えば制約も異なる。例えば対応するメモリの量が制限されたりした。それでは経済的ではなかったため、別の製品を探す必要に迫られた。ライセンス料ゼロでほとんど同じことをやってくれるMySQLのようなものがあるのに、1台当たりに6万ドルも費やしたりはしない。MySQLはそれほど見栄えは良くないが、ツールは格段に進化していた」
451 Researchの調査ディレクターでデータプラットフォームと分析を専門とするアナリストのマット・アスレット氏は、同じ結論に行きつく企業が増えていると話す。「代替製品を探す企業が増えている一因は、間違いなくプロプライエタリRDBMSのコストの高さにある。ただし答えを出すのは簡単ではない」
アジャイル開発
新しいレコメンデーション層のためにCassandraを選んだブックメーカーのWilliam Hillの場合、動機はどちらかというと拡張性とアジャイル開発にあった。
「われわれは容易に拡張できる技術を必要としていた」。プラットフォームエンジニアリング責任者のパトリック・ディ・ロレト氏はそう語る。「そこで必然的にNoSQLを選択した。Cassandraは特に成熟度が高く、ビッグテーブルという性質は、タイムシリーズデータの分析に最適だった」
451 Researchのアスレット氏によると、もし単純にOracle DatabaseやMicrosoft SQL Serverよりコストが安いRDBMSを求めているのであれば、MySQL(現在はOracleにサポートされている)とともに、より従来型のオープンソースであるPostgreSQLが堅実な代替になる。これまでは規模の小さい非営利組織に導入されるのが一般的だったが、これらを使いこなしている企業も数多い。
「PostgreSQLは継続的に刷新され、革新が行われている。ただしもっと新しいオープンソースデータベースと違って、これを運営する商用組織が存在せず、真のコミュニティー開発によって開発されている」(アスレット氏)
PostgreSQLは20年以上前から存在していて、Skypeやフランスの児童福祉局、NHSといった大手が利用してきた。コミュニティーの中心となる商業組織は存在しないものの、同OSSのために多数の企業がエンタープライズ級のサポートを提供している。
そうした企業の1つであるEnterpriseDBのチーフアーキテクト、デイブ・ペイジ氏は、PostgreSQL運営委員会の中心メンバーでもある。「20年前、これは愛好家のプロジェクトだった。だが今では早くから関わってきた私のような人間がみな、PostgreSQL企業に勤務するようになり、エンタープライズ顧客が求める機能の構築に当たっている。中でもセキュリティと安定性を最優先する。時には新機能の提供で競合に先を越されることもあるが、われわれは安定性を確実に固めることに重きを置く。PostgreSQLはエンタープライズ対応が整い、機能セットはビッグスリーに匹敵する」。ペイジ氏はそう話す。
80%のコスト削減
EnterpriseDBの主張によれば、移行とサポートの経費を考慮しても、PostgreSQLの商用サポートバージョンに移行した企業は一般的に、3年間で80%のコストを削減できる。
ただしRDBMSが現代のニーズにかなった最高のソリューションとはいえないケースも増えている。JSONやXML文書といった、非構造化データの保存とクエリに対応する必要性、新しいアプリケーションを迅速に導入してスケールアップできる必要性(複数のデータセンターを網羅する可能性もある)という2つの課題が、NoSQLデータベースの成長につながってきた。
新たに浮上したその人気は、Google、Amazon、Facebookなど、拡張性の高いRDBMSの代替を必要とするネット大手が後押ししてきた。これらは大抵がオープンソースであり、自由にダウンロードでき、ITチームが複数の違うシステムで利用してどれが自分たちのニーズに最もかなうかを探ることもできるため、検討に値するかもしれない。
PCA Predictが最近開発した新しいカスタマーエクスペリエンスアプリ「Triggar」は、大量のデータを基に顧客の行動に関するモデルを作成する。ターナー氏はMongoDB、Cassandra、MySQL、PostgreSQL、「Elasticsearch」を含め、あらゆる形態のデータベース製品を試したという。
「全てにそれぞれの限界がある。例えばMongoDBはデータを安定的に保存できず、コーリングモデルはあまり良くなかった。Cassandraはデータを効率的に取得するためにスキーマを非常に慎重に組み立てる必要があり、その場だけのクエリはほとんどできない。Elasticsearchのクエリ環境は驚くほど豊かだが、データを入力すると、再び読める状態になるまで1~2秒の遅れがあり、デフォルトのクエリ言語は最低だ」
「PostgreSQLは非常にうまく機能していたが、書き込み負荷が非常に重い作業を行ったところ、既存の記録を更新するのではなく、その記録の新しいバージョンが作成されることが分かった。つまり、非常にアクティブなデータベースだと大量のゴミがたまってしまう。Cassandraも同じだった。MySQLはスケーリングモデルがあまり良くない。そしてドキュメントは『Oracle化』されているように思えた。それを回避する方法が見つけられなかったので諦めるしかなかった」
「他に興味深いと思えたのは、驚異的に速いインメモリデータベースの『VoltDB』と、『Aerospike』だった。いずれもより現代的なハードウェアを指向しており、SSDなど普通はデバイス層に食い込まなければ利用できない機能を活用している」(ターナー氏)
クエリ言語
最終的にターナー氏はElasticsearchを選んだが、デフォルトのエンジンよりもSQLライクなクエリ言語を使っている。「拡張性とノード障害からの復旧に優れていて、極めて簡単に導入できる。クエリは非常に豊かだ。ただしデータを書き込んだときに表示されるまで1秒かかるのは非常に問題がある。そこで今は別のものと組み合わせるかどうか検討中だ」とターナー氏。
要するに、こうしたシステムは全て妥協が必要だ。「エンジニアとしての立場から、理想として何を求めるかではなく、本当に達成したいのは何かを問い掛ける必要がある。私は海外旅行に行くときは大理石の内装とソファのある飛行機で行けたらとは思うが、A地点からB地点へ行くために本当に必要なのはエコノミークラスの便だ」。ターナー氏はそう言い添えた。
451 Researchのアスレット氏も、新しいオープンソースのNoSQLあるいはNewSQLデータベース(SQLが使えるNoSQLデータベース)が自分のアプリケーションやワークロードに対応できるかどうか見極めるには、自分の手を動かすしかないとの見方で一致する。「組織でこれらを使ってみる必要がある。大部分はオープンソースなので、ダウンロードして試行錯誤し、雰囲気をつかむといい」
選択肢は手に負えないほど多いように思えるかもしれないが、成熟度と現実性、サポートに関してエンタープライズ級とみなせるもののみに目を向けると、「候補はかなり絞られる」とアスレット氏は言う。
「NoSQLでは、ドキュメントストアの中ではMongoDBが際立っている。一方、キー・バリューストアに目を向けるのならDataStaxのサポートが付くCassandraまたはCouchbase Server、あるいはBashoの『Riak』だ。グラフデータベースなら『Neo4j』が抜きん出る。より分散型のSQLデータベースを求めるのなら『MemSQL』や『NuoDB』のようないわゆるNewSQLをチェックするといい。他にもあるが、評価できないほどの多さではない」
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
2
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
3
「Excel至上主義」の終わらせ方 丸2日の手作業地獄から情シスと現場を救うには
-
4
221人調査で分かった「情シス最大のストレス」は?
-
5
「データストレージの活用方法」に関するアンケート
-
6
「AI時代の統合基盤・エンタープライズAI管理」に関するアンケート
-
7
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
-
8
本当に安いPCで十分か? “すぐ重くなる”を防ぐノートPC選びの絶対条件
-
9
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
10
Claudeの不可視透かしに批判殺到 著作権消失や誤判定に潜む企業リスク
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー