主要DBMSとその機能【前編】
いまさら聞けない「RDBMS」と「非RDBMS」の違いを歴史から学ぶ
DBMSにはRDBMS以外にもさまざまな種類が存在する。どのDBMSを使用するかを決める前に、それぞれの長所と短所を知っておくことが大切だ。RDBMSをはじめとする主要DBMSを解説する。
データベース管理システム(DBMS)は業務システムや分析システムの中核だ。データの処理、保存、管理、アプリケーションやエンドユーザーへのデータ提供といった、一連のデータ管理を担う。
現在広く使われているのが、データをテーブル形式で管理する「リレーショナルデータベース管理システム」(RDBMS)だ。RDBMSはクエリ(データベース操作)言語「SQL」を用い、データの一貫性と信頼性を重視したトランザクション(一連の処理をまとめて実行すること)を実現する。そのため、業務アプリケーションで扱う定型的なデータの処理に適している。
ただしRDBMSにもデータ構造の厳密性や維持コストといった課題がある。ビッグデータの処理が求められるようになってから、これらの課題はより顕著になった。そうした課題に対処するために、RDBMS以外のDBMSが次々と誕生している。
企業はRDBMSをどう活用してきたのか。RDBMS以外の選択肢には何があり、それぞれの強みは何か。以下で、RBDMSを含む主なDBMSの種類を見ていこう。
1.RDBMS
かつてDBMSといえば、RDBMSがほぼ唯一の選択肢だった。だがビッグデータやIoT(モノのインターネット)、データストリーミング(リアルタイムデータ処理)といった新しい技術の台頭によって、用途別に代替となるDBMSが登場した。とはいえ市場規模やシステム導入の規模から見ると、現在もRDBMSが主流だ。
RDBMSは1970年代後半に商用化された。業務処理や分析処理など、多岐にわたるアプリケーションにおいてデータの管理、操作、保護を実現している。
1990年代半ば以降、RDBMSは基幹システム向けDBMSの中心的存在となった。主要製品としては「Oracle Database」「Microsoft SQL Server」「IBM Db2」がある。クラウドサービスへのシステム移行が進む中、「Amazon Web Services」(AWS)や「Google Cloud」といったクラウドサービスが、「MySQL」「PostgreSQL」「MariaDB」などのオープンソースDBMSのクラウド版を提供しており、RDBMS市場で存在感を増している。
データ分析基盤となるデータウェアハウス(DWH)の普及後も、RDBMSは広く採用されている。Oracle、Microsoft、IBM、SAP、Teradataなどのベンダーが提供する従来のDWHに加え、クラウド版DWHとして列(カラム)指向ストレージを採用して分析処理を最適化した「Amazon Redshift」「BigQuery」「Snowflake」なども台頭してきた。
RDBMSは順応性、安定性、信頼性に優れる。大小さまざまな企業における使用実績が、その成熟度を裏付けている。特筆すべき特徴は「ACID特性」(原子性:Atomicity、一貫性:Consistency、独立性:Isolation、永続性:Durability)の保証だ。全てのトランザクションの完了を保証し、障害時には以前の状態に復旧(ロールバック)できる仕組みによって、データの一貫性を維持する。
このように優れた特徴を持つRDBMS以外のDBMSにも、企業は目を向けるようになったのはなぜか。それは大規模なWebアプリケーションでのデータ処理やビッグデータ活用、AI(人工知能)技術の普及によって、RDBMSの限界が見えてきたからだ。こうした変化の激しい状況では、融通が利くデータ構造、弱い一貫性、低い処理負荷を特徴とする他のDBMSが適する場合がある。RDBMSの安定性と信頼性を実現するためには、相応のコストが必要になる点も一因だ。
2.NoSQL
NoSQLは2000年代半ばに登場した。当初は「SQL不使用」を意味していたが、さまざまなベンダーがNoSQLでSQLクエリを実行できるようにしたことで、「Not Only SQL」(SQLに限定されない)という意味で定着した。RDBMSが厳密なスキーマ(データベースの定義情報)を必要とするのに対し、NoSQLはデータベース内の各要素(エンティティ)が同じ構造を持つ必要がない。あいまいな構造や、時間とともに変化する可能性のあるデータを扱う場合、RDBMSよりNoSQLの方が適する場合がある。
RDBMSとNoSQLの重要な違いの一つは、データの一貫性と整合性の確保方法だ。ほとんどのNoSQLは「結果整合性」を採用している。これは、分散型データベースのノード(サーバ)間でデータが常に一貫している必要はなく、更新が落ち着いた時点で整合性を確保するモデルだ。一部のベンダーは、NoSQLでもRDBMSのような完全なACID特性を実装している。ただし一般的に、NoSQLはRDBMSよりも緩やかな整合性モデルを採用することで、処理の高速化を図っている。
これらの特徴によって、NoSQLは非構造化データや半構造化データ、さまざまな形式のデータが入り交じったデータセット、スパース性が高いデータの大量処理など、RDBMSが苦手とする操作に対処できる。スパース性が高いデータとは、データベース内の要素の多くが空値のデータを指す。
特定のデータ処理に適したNoSQLだが、トランザクションの一貫性と整合性のデータの内容や特徴を整理して検索しやすくする「インデックス化」、クエリ実行の容易さではRDBMSに及ばない場合がある。NoSQLは単一の種類のDBMSを指すものではなく、主に以下の4種類に分類される点にも注意が必要だ。
- キーバリュー型
- キー(識別子)とバリュー(値)のペアでデータを格納する。
- 例としては、「Aerospike」「Amazon DynamoDB」「Redis」「Riak」がある。
- ドキュメント型
- 「JSON」「XML」などの形式で、ドキュメントとしてデータを格納する。
- 例としては、「Couchbase Server」「Apache CouchDB」「MarkLogic Server」「MongoDB」がある。
- ワイドカラム型
- 複数の列を持つ表形式でデータを格納する。
- 例としては、「Apache Accumulo」「Bigtable」「Apache Cassandra」「Apache HBase」「ScyllaDB」がある。
- グラフ型
- エンティティ間の関連性を表現する「グラフ」形式でデータを格納する。
- 例としては、「Amazon Neptune」「ArangoDB」「Memgraph」「Neo4j」「TigerGraph」がある。
これらの各タイプにはそれぞれ適した用途があり、それぞれ長所と短所を持つ。
3.インメモリDBMS
インメモリDBMSはメインメモリDBMSとも呼ばれ、ストレージではなく主にメモリにデータを保持するDBMSだ。これによって、データベース内の情報に素早くアクセスできるようになる。
主なインメモリデータベースの用途としては、高速なスループット(データ伝送速度)が必要なアプリケーションがある。データをメモリに保持することで、磁気ディスクの機械的な動作、シーク時間(目的のデータが格納されている位置に磁気ヘッドが移動する時間)、バッファー(一時的な記憶領域)へのデータ転送といった過程が不要となり、データ入出力レイテンシ(遅延)を削減できる。インメモリDBMSは一般的にストレージにデータを格納するDBMSよりも単純なアルゴリズムを使用し、CPU命令数が少なくなりやすい。そのため、オーバーヘッド(処理にかかる余分な負荷)の削減も可能だ。
インメモリデータベースは独立した製品カテゴリーではない。「SAP HANA」「Oracle TimesTen In-Memory Database」「Volt Active Data」「SingleStore」などはインメモリのRDBMSである一方、Aerospike、RedisはインメモリのNoSQL DBMSの例だ。Oracle、Microsoft、IBMといったベンダーは、それぞれの主力RDBMS製品にインメモリ機能を実装している。
4.マルチモデルDBMS
マルチモデルDBMSは、複数のデータモデルを扱えるDBMSだ。ドキュメント型とキーバリュー型を組み合わせたものなど、一部のNoSQL製品がマルチモデルDBMSに該当する。「Azure Cosmos DB」やMarkLogic Serverのように、当初からマルチモデルDBMSとして開発されたものもあれば、アップグレードの一環としてマルチモデルDBMSになったものもある。リレーショナルデータに加えてドキュメント型やグラフ型などのNoSQLデータを扱えるようになったRDBMSもある。
次回も引き続き、主要なDBMSの概要と、企業がDBMS製品を導入する際に検討すべき項目を紹介する。
TechTarget発 エンジニア虎の巻
米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
TechTarget発 エンジニア虎の巻
米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
市場調査・トレンド
[コパード株式会社] 約9割が負担を実感 Salesforceのテスト業務に関する実態調査で見えた課題とは -
市場調査・トレンド
[コパード株式会社] 「Salesforce」開発・運用におけるAI活用実態調査レポート -
事例
[テクバン株式会社] 1画面でITサービスデスク業務が完結 太陽ホールディングスに学ぶデバイス管理 -
製品資料
[デジタルサーカス株式会社] ライセンス無料 Drupalベースの「多言語ECサイト開発用パッケージ」の実力は? -
製品資料
[デジタルサーカス株式会社] 日本発グローバル企業用Drupal「Risley(リズリー)」の実力とは?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
半数がブルーカラー転向を視野に? ベテランエンジニアを追い込む“54歳の壁”
-
2
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
3
本当にそのIBM iに問題はない? ブラックボックス化と属人化を防ぐ第一歩
-
4
OpenAIやAnthropicでさえ制御不能 2026年夏「3大サイバー攻撃」の衝撃
-
5
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
6
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
7
「企業内サーバ環境の利用実態」に関するアンケート
-
8
「レガシーシステム・老朽化システムの運用課題と刷新」に関するアンケート
-
9
脱VMwareか、継続か? 仮想化ソフト主要6製品の運用管理と統制機能を徹底比較
-
10
セキュリティは「情シス任せ」が過半数 漏えい発生時やSCS評価制度の課題は?
ホワイトペーパーランキング PR
-
1
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
2
システムの保守がモダン化を阻む? 「変えない判断」から脱却する方法とは
-
3
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
4
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
5
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
6
プログラミング不要で誰でも実現できる、ネットワーク運用管理の自動化とは
-
7
東大教授と考える、AI時代の「データ主権」「信頼性」「ガバナンス」の在り方
-
8
Linux初心者でも知らないとまずい「RHEL」「SLES」の違いとは?
-
9
最速72分でデータが流出? 最新の脅威トレンドや侵入手法から分かった防衛策
-
10
生成AIの活用を阻む「5つの壁」とは? AIネイティブ組織へ変革を遂げる方法
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー