RDB (リレーショナルデータベース)とは

 RDBとは、Relational Database(リレーショナルデータベース)略で、データを複数の表(テーブル)として管理し、表と表の関係(リレーショナル)を定義することで複雑な構造のデータも扱うことができる。また、データベースの操作は「SQL」というデータベース言語(クエリ言語)を用いて行う。RDB製品にはこのようなデータベース設計や運用管理のための仕組みも含まれているため、「RDBMS(リレーショナルデータベース管理システム)」と呼ばれることも多い。実績が豊富でノウハウが蓄積されているため、今なお企業の業務システムでは主流となっている。


RDBの導入効果


アプリケーション開発の生産性が向上

 RDBを利用すると、アプリケーションに必要なデータ操作を分離して開発することができる。データベースまで含めて開発するとなると、プログラムの内部でデータの追加や更新、削除、並べ替えなどのデータの取り扱い方や保管方法を定義しなければならない。こうしたデータ操作をRDBに任せることで、プログラムを作成する必要がなくなる。

データの効率的な管理を実現

 データベースでは1つの表(テーブル)に同じデータが重複して存在するケースが非常に多い。こうした重複したデータをそのまま保管するとデータベース容量が大きくなり、変更があった際の修正に時間がかかる。それに対し、RDBではデータの重複をなくし整合的にデータを取り扱えるようにする「正規化」が可能だ。正規化を行ってデータを整理すると、他システムとの連携や移行が行いやすくなるなどデータの汎用性が向上し、保存に必要なデータベースの容量が削減でき、変更の際の修正も素早く実行できるという効果が得られる。

標準化されたSQLでデータを扱える

 RDBでは、国際標準として規格化されたSQLを利用し、データを検索したり複数のデータベースを結合・集計したりといった複雑なデータベース操作を容易に行える。基本的なデータベース操作はRDB製品の種類によらず同じSQL文で記述できるので、SQLを習得すればデータベースエンジニアなどの専門家から助けを借りることなくデータを扱えるようになる。


RDBのおすすめユーザー


導入検討、利用ユーザー
 ・業務アプリケーションの開発・運用管理を担当する情報システム部門の責任者・担当者


RDBの機能


データベースおよびデータの操作

機能 解説
データベースの操作 SQLに準拠したデータベース言語(クエリ言語)をサポートする
データの格納 データベースを作成・格納するストレージを備えている
データベースの可用性・安定性 長期間の運用や大量の処理にも安定して対応する
スケーラビリティ システムの要求に応じてデータベースを柔軟に拡張できる
不正データの排除 不正なデータの登録や更新を防ぐ機能
パフォーマンス システムの生産性に影響しないパフォーマンス(高速処理性能)を備えている


データベースアプリの開発・実行

機能 解説
トランザクション処理 複数のユーザーが同時に同一のデータを参照・更新した場合でも、正常に処理を行う
リアルタイム処理 更新や変更などの要求に対してリアルタイムにトランザクション処理を行う
並列処理 複数のCPUまたはコアを使用し、ジョブを分割して高速に実行する
処理時間の短縮 ソースデータを複数のチャンク(かたまり)に分割して処理時間を改善する
他のシステムとの連携 他のシステムとの連携に使用できるAPIを提供する
多言語対応 複数の国の通貨と言語をサポートする


データベースの運用管理

機能 解説
レプリケーション データベースを別のデータベースに複製し同期することで、元のデータベースに障害が発生した場合に対応する
データ変換 ソースのデータ形式から送り先のデータ形式に変換するツールと関数を提供する
コネクターの提供 データベースに接続するためのコネクターを提供する
ビッグデータ処理 Hadoop、NoSQLなどのビッグデータソースとの統合機能を提供する
管理ファイル転送 ネットワークを介してある場所から別の場所にデータを安全に転送する
アクセス制御 利用者に権限を付与し、データベースへのアクセスを制御する


RDBを選ぶポイント


ツールごとの違い

 RDBには、オープンソースの「MySQL」「PostgreSQL」などや商用製品がある。どの製品もSQLを利用してRDBを扱うところは共通しているが、データベースを管理するメモリリソースの構造(インスタンス)のアーキテクチャに違いが見られる。基本的に1つのインスタンスに1つのデータベースが対応するものや1つのインスタンスに複数のデータベースを対応させることができるものもある。また、全てのデータをメモリ上に置いて高速に処理するインメモリデータベース製品もある。

導入形態

 RDBには、オンプレミス環境に導入するソフトウェアパッケージと、クラウドサービスとして提供されている製品がある。基幹業務システムをオンプレミス環境に構築する場合、それに合わせてソフトウェアパッケージを導入し、データベース専用サーバ(DBサーバ)を設置して運用する。クラウドサービスはPaaS(Platform as a Service)としてハードウェアなどのインフラとデータベース環境が提供される。

価格形態・契約形態

 RDBは用途に応じたライセンス形態を採用する製品が多い。例えば、サーバのCPU数(ソケット数、コア数、VM数)に応じて価格が決まるプロセッサライセンス、データベースの利用者数に応じて価格が決まるユーザーライセンスなどがある。また、サーバライセンスとは別にデータベースにアクセスするクライアントPC数に応じたCAL(クライアントアクセスライセンス)が必要になる場合もある。

オプション

 RDBでは、データベースの最大サイズやインスタンスあたりのメモリサイズ、利用可能なコア数などが異なるエディションが用意されている製品がある。また、高可用性を確保するための冗長化機能、データの暗号化などのセキュリティ機能、データ分析や可視化を可能にするビジネスインテリジェンス機能などがオプションとして提供されている場合がある。


RDBの導入要件、他のツールとの連携方法


一般的な導入方法・導入環境

 RDBは業務システム(会計・財務システム、販売管理システムなど)が扱うデータの格納場所として、他のパッケージ製品と同時、あるいはスクラッチ開発したアプリケーションとともに導入する。

導入時に必要なもの

 RDBの導入時には、データベースを使用するアプリケーションの仕様に合わせたデータベース設計が必要になる。独自構造でデータを管理していた既存システムからRDBを利用したアプリケーションに作り直す際には、あらかじめデータを整理して移行しておく必要がある。

導入後の運用方法・サポートの有無

 RDBを運用する際には、データベースのパフォーマンス(処理能力)が低下しないように常時監視をし、必要に応じてチューニングを施す必要がある。そのためデータベースの運用管理を担当する情報システム部門では、データベースを専門に扱うエンジニアを配置することが一般的。データベース管理が難しい企業では、導入作業を委託したSIerに運用を依頼するケースも多い。

他製品との連携効果

 RDBは、特に企業の基幹業務システムを支えるデータベースとして欠かすことのできない存在となっている。複数の業務システムのデータベースを1つのRDBMSに集約することで、データ管理にかかるコストや管理負荷を軽減できる。また、データベースを外部のデータ分析システムやBIシステムなどと連携させることで、情報を新たなビジネスに活用することも可能になる。

RDB (リレーショナルデータベース)の基礎知識

 RDBとは、Relational Database(リレーショナルデータベース)略で、データを複数の表(テーブル)として管理し、表と表の関係(リレーショナル)を定義することで複雑な構造のデータも扱うことができる。また、データベースの操作は「SQL」というデータベース言語(クエリ言語)を用いて行う。RDB製品にはこのようなデータベース設計や運用管理のための仕組みも含まれているため、「RDBMS(リレーショナルデータベース管理システム)」と呼ばれることも多い。実績が豊富でノウハウが蓄積されているため、今なお企業の業務システムでは主流となっている。


RDBの導入効果


アプリケーション開発の生産性が向上

 RDBを利用すると、アプリケーションに必要なデータ操作を分離して開発することができる。データベースまで含めて開発するとなると、プログラムの内部でデータの追加や更新、削除、並べ替えなどのデータの取り扱い方や保管方法を定義しなければならない。こうしたデータ操作をRDBに任せることで、プログラムを作成する必要がなくなる。

データの効率的な管理を実現

 データベースでは1つの表(テーブル)に同じデータが重複して存在するケースが非常に多い。こうした重複したデータをそのまま保管するとデータベース容量が大きくなり、変更があった際の修正に時間がかかる。それに対し、RDBではデータの重複をなくし整合的にデータを取り扱えるようにする「正規化」が可能だ。正規化を行ってデータを整理すると、他システムとの連携や移行が行いやすくなるなどデータの汎用性が向上し、保存に必要なデータベースの容量が削減でき、変更の際の修正も素早く実行できるという効果が得られる。

標準化されたSQLでデータを扱える

 RDBでは、国際標準として規格化されたSQLを利用し、データを検索したり複数のデータベースを結合・集計したりといった複雑なデータベース操作を容易に行える。基本的なデータベース操作はRDB製品の種類によらず同じSQL文で記述できるので、SQLを習得すればデータベースエンジニアなどの専門家から助けを借りることなくデータを扱えるようになる。


RDBのおすすめユーザー


導入検討、利用ユーザー
 ・業務アプリケーションの開発・運用管理を担当する情報システム部門の責任者・担当者


RDBの機能


データベースおよびデータの操作

機能 解説
データベースの操作 SQLに準拠したデータベース言語(クエリ言語)をサポートする
データの格納 データベースを作成・格納するストレージを備えている
データベースの可用性・安定性 長期間の運用や大量の処理にも安定して対応する
スケーラビリティ システムの要求に応じてデータベースを柔軟に拡張できる
不正データの排除 不正なデータの登録や更新を防ぐ機能
パフォーマンス システムの生産性に影響しないパフォーマンス(高速処理性能)を備えている


データベースアプリの開発・実行

機能 解説
トランザクション処理 複数のユーザーが同時に同一のデータを参照・更新した場合でも、正常に処理を行う
リアルタイム処理 更新や変更などの要求に対してリアルタイムにトランザクション処理を行う
並列処理 複数のCPUまたはコアを使用し、ジョブを分割して高速に実行する
処理時間の短縮 ソースデータを複数のチャンク(かたまり)に分割して処理時間を改善する
他のシステムとの連携 他のシステムとの連携に使用できるAPIを提供する
多言語対応 複数の国の通貨と言語をサポートする


データベースの運用管理

機能 解説
レプリケーション データベースを別のデータベースに複製し同期することで、元のデータベースに障害が発生した場合に対応する
データ変換 ソースのデータ形式から送り先のデータ形式に変換するツールと関数を提供する
コネクターの提供 データベースに接続するためのコネクターを提供する
ビッグデータ処理 Hadoop、NoSQLなどのビッグデータソースとの統合機能を提供する
管理ファイル転送 ネットワークを介してある場所から別の場所にデータを安全に転送する
アクセス制御 利用者に権限を付与し、データベースへのアクセスを制御する


RDBを選ぶポイント


ツールごとの違い

 RDBには、オープンソースの「MySQL」「PostgreSQL」などや商用製品がある。どの製品もSQLを利用してRDBを扱うところは共通しているが、データベースを管理するメモリリソースの構造(インスタンス)のアーキテクチャに違いが見られる。基本的に1つのインスタンスに1つのデータベースが対応するものや1つのインスタンスに複数のデータベースを対応させることができるものもある。また、全てのデータをメモリ上に置いて高速に処理するインメモリデータベース製品もある。

導入形態

 RDBには、オンプレミス環境に導入するソフトウェアパッケージと、クラウドサービスとして提供されている製品がある。基幹業務システムをオンプレミス環境に構築する場合、それに合わせてソフトウェアパッケージを導入し、データベース専用サーバ(DBサーバ)を設置して運用する。クラウドサービスはPaaS(Platform as a Service)としてハードウェアなどのインフラとデータベース環境が提供される。

価格形態・契約形態

 RDBは用途に応じたライセンス形態を採用する製品が多い。例えば、サーバのCPU数(ソケット数、コア数、VM数)に応じて価格が決まるプロセッサライセンス、データベースの利用者数に応じて価格が決まるユーザーライセンスなどがある。また、サーバライセンスとは別にデータベースにアクセスするクライアントPC数に応じたCAL(クライアントアクセスライセンス)が必要になる場合もある。

オプション

 RDBでは、データベースの最大サイズやインスタンスあたりのメモリサイズ、利用可能なコア数などが異なるエディションが用意されている製品がある。また、高可用性を確保するための冗長化機能、データの暗号化などのセキュリティ機能、データ分析や可視化を可能にするビジネスインテリジェンス機能などがオプションとして提供されている場合がある。


RDBの導入要件、他のツールとの連携方法


一般的な導入方法・導入環境

 RDBは業務システム(会計・財務システム、販売管理システムなど)が扱うデータの格納場所として、他のパッケージ製品と同時、あるいはスクラッチ開発したアプリケーションとともに導入する。

導入時に必要なもの

 RDBの導入時には、データベースを使用するアプリケーションの仕様に合わせたデータベース設計が必要になる。独自構造でデータを管理していた既存システムからRDBを利用したアプリケーションに作り直す際には、あらかじめデータを整理して移行しておく必要がある。

導入後の運用方法・サポートの有無

 RDBを運用する際には、データベースのパフォーマンス(処理能力)が低下しないように常時監視をし、必要に応じてチューニングを施す必要がある。そのためデータベースの運用管理を担当する情報システム部門では、データベースを専門に扱うエンジニアを配置することが一般的。データベース管理が難しい企業では、導入作業を委託したSIerに運用を依頼するケースも多い。

他製品との連携効果

 RDBは、特に企業の基幹業務システムを支えるデータベースとして欠かすことのできない存在となっている。複数の業務システムのデータベースを1つのRDBMSに集約することで、データ管理にかかるコストや管理負荷を軽減できる。また、データベースを外部のデータ分析システムやBIシステムなどと連携させることで、情報を新たなビジネスに活用することも可能になる。