導入
DBMSとは、データベースを管理し、外部のソフトウェアからの要求に応えてデータベースの操作を行う専門のソフトウェア。
データベース管理システム(データベースかんりシステム、DBMS; 英: database management system)は、コンピュータのデータベースを構築するために必要なデータベース運用、管理のためのシステム、およびそのソフトウェアのことである。データベースマネジメントシステムとも呼ばれる。
データベースを便利に使うためのソフトウェアだよ
データベースのことだと思っていいよ
「DBMS」と表現された場合は「database management system」の略だよ
データベースを効率的に利用するためには、データベースを統合的に管理するシステムが必要です。このシステムは、扱う情報の規模や環境にかかわらず非常に重要なものです。それでは、その役割と機能について詳しくみていきましょう。
データの集合体であるデータベースですが、大量の情報を整理するのは大変でしょう。そんなときに役立つのがデータベース管理システム(DBMS)です。データベース管理システムはデータの整理はもちろん、検索や共有をコンピューターが行うので作業効率が上がります。
また、データベースには種類がありますが、現在主流となっているリレーショナルデータベースを管理するシステムもよく使われています。
この記事ではデータベース管理システムの役割や機能を紹介し、リレーショナルデータベース管理システム(RDBMS)についてもわかりやすく解説します。
《database management system》データベースの管理を専門的に行うソフトウエア。データベース管理システム。
とは
ハードディスクなどのストレージ装置(外部記憶装置)内に専用の管理領域を設け、データを記録するための構造体の作成や消去、構造の修正、データの書き込み、上書き、削除などを行う。条件を指定してデータを検索したり、特定のデータの集合を抽出したりする機能を持つものも多い。
管理者などの利用者が直接操作してこれらの操作を行うほかに、外部のソフトウェアからの接続を受け付け、指示を受けてこれらの操作を行う機能もDBMSの重要な要素である。データベースの管理にDBMSを利用することで個別のアプリケーションソフトがデータの記録・管理機能を自前で実装する必要がなくなり、自らの役割に専念することができる。
基本的な機能の他にも、誤ったデータの記録を拒否して整合性を維持する機能や、権限のない利用者による不正な利用や改竄を防ぐ機能、関連する複数の操作を一体的に矛盾なく実行するトランザクション処理機能、障害に備えてデータを複製(バックアップ)したり過去のある時点の状態を復元する機能を備えたものもある。
DBMSにはデータの記録形式(データモデル)によっていくつかの種類があり、最も広く普及しているのはリレーショナル型と呼ばれるデータベースを管理するリレーショナルデータベース管理システム(RDBMS:Relational Database Management System)で、単にDBMSと言えばRDBMSを指すことが多い。近年ではKVS型(Key-Value Store:キーバリューストア)に代表される非リレーショナル型(俗に「NoSQL」と総称される)のDBMSが使われる場面も増えている。
かつては、CODASYLが提唱したネットワーク型データモデルのDBMSや、階層型データモデルのDBMS、あるいは初期の非力なパーソナルコンピュータなどではカード型データモデルのDBMS(いわゆる簡易データベースソフト)などが幅広く利用されていたが、近年では関係モデル(関係データモデル)を扱う関係データベース管理システム (RDBMS) が主流である。
また、関係データベース管理システムに、利用者が独自のデータ型や関数を拡張可能なオブジェクト関係データベース (ORDBMS) や、オブジェクト指向プログラミング言語との親和性が高いオブジェクトデータベース (ODBMS)、データモデルにXMLを採用したXMLデータベース (XML DB) などが開発され、利用が広まっている。
ネットワーク型データモデルのDBMSや、階層型データモデルのDBMSは実装の軽量性の利から早くから広まっていたが、アプリケーションソフトウェア、データの論理的構造、データの物理的構造の三者が密接に結びつき、柔軟性に欠けるという欠点があった。また、最適化の方法論がクエリ(検索質問)を作るプログラマの力量に依存することもアプリケーションの開発効率を低下させる一因となった。
関係モデルの最大の功績は、アプリケーション、データの論理的構造、データの物理的構造を三階層に分け(三階層アーキテクチャ)、論理データ独立性と物理データ独立性を実現した点にある。
データベースマネジメントシステム (DBMS)(英:database management system)とは
データベースとゆかいな仲間たちのこと。
もう少し具体的に書くと
データベースを便利に使うためのあれやこれやな機能が付いているソフトウェアのことだけど、単にデータベースのことだと思っていいですよ、のこと
です。
データを統一的に管理するといった概念がまだなかった頃は、プログラムから直接、ファイルに対してデータの保存や読み込みを行うのが一般的でした。これでは、一貫した管理方法がないため、安全性や利便性に欠けています。そこに、『データベース管理システム(Data Base Management System、DBMS)』が登場しました。
データベースはファイル構造の事ですが、DBMSはそのファイル構造の設計から管理・運用を含めたシステムを指します。DBMSは、データの共有化やデータ保護、データ検索、更新などの処理を実現するための手段を提供します。
DBMSの役割と機能には、次のようなものがあります。
- データベースを操作するための言語を提供する
- データの整合性を保障した管理手段を提供する
- データ利用の標準化を行い、各種プログラムへのインターフェイスを提供する
- データへのアクセス制限を管理する
- 複数ユーザの同時処理に対応する
DBMSで最も良く使われる機能が、要求に応じたデータの受け渡しです。たとえば、利用者が必要な情報を取り出す際、DBMSはその要求に応じて必要な情報を取り出し、それを整形して返します。このとき、利用者はデータファイルの構造を気にする必要がなく、複雑なことはすべてDBMSが処理します。
DBMSは、エンド・ユーザの要求とデータファイルの橋渡し的な存在といえます。これは同時に、複数のユーザがデータファイルを共有することを可能にしたり、データファイルの内容を保護する役目もあります。
データベース管理システムとは、コンピューター上のデータベースの整理やデータの検索、更新、共有などを行うソフトウェアのことです。data base management systemを略してDBMSと表記されます。
データベースに格納しているデータを適切に扱うためには、データベース管理システムが必須といっても過言ではありません。システムを使わずにデータベースを管理する場合、手動でデータの整理や検索をしなければならず情報量が多いほど大変です。しかし、データベース管理システムはユーザーに代わってデータベースの操作を行うという役割があるので、これを使えばデータ管理の手間が大幅に削減できるでしょう。
データベース管理システムは商用のほか、オープンソースでも提供されており、知名度の高いものでいうとMySQLやPostgreSQLなどがあります。
DBMSとは、データベースの構築、管理を行うシステムのことである。
DBMSは、データベースのデータをアプリケーションを経由してユーザに出力したり、データの追加、更新、削除などを効率的に行えるような管理を行う。
データベースを読み書きするプログラムはDBMSを利用することが普通である。そのための専用言語であるデータベース言語が用意されている。
DBMSが備えるべき機能はいろいろある。例えば、データベースを格納する位置を意識させないデータの物理的独立性や、同じデータを同時に更新、参照した場合にも整合性を取れるトランザクション処理などである。
なお、DBMSのうち特にリレーショナルデータベース(RDB)を管理するためのシステムを「RDBMS」(Relational Database Management System)と呼ぶ。
データベースを構築、管理するためのソフトウェア。データベース・マネジメント・システム(DBMS)ともいう。代表的なものに、フリーソフトの MySQL や PostgreSQL、市販の製品には、オラクルの Oracle Database、マイクロソフトの Access、SQL Server などがある。これらのデータベース管理システムは、サーバー上で動作し、ネットワークでデータベースを共有して複数ユーザーが同時に利用できる。データベースの作成やデータの抽出といった操作には、SQL などのデータベース言語を使用する。
データベース管理システム(DBMS)とは、データの格納、編成および取得を制御するソフトウェアです。通常、DBMSの要素は次のとおりです。
- カーネル・コードこのコードでは、DBMS用のメモリーと記憶域を管理します。
- メタデータのリポジトリこのリポジトリは、通常、データ・ディクショナリと呼ばれます。
- 問合せ言語この言語を使用してデータにアクセスできます。
データベース・アプリケーションとは、データにアクセスして操作するためにデータベースと対話するソフトウェア・プログラムです。
第一世代のデータベース管理システムには次のタイプがありました。
- 階層階層データベースは、データをツリー構造に編成したものです。ファイルシステムの構造と同様に、各親レコードが1つ以上の子レコードを持ちます。
- ネットワークネットワーク・データベースは、レコードが1対多の関係ではなく多対多の関係を持つ点を除いて、階層データベースと同じです。
第一世代のデータベース管理システムでは、事前に定義された厳密な関係に基づいてデータが格納されていました。データ定義言語がなかったため、データ構造の変更は困難でした。また、これらのシステムには簡単な問合せ言語がなく、このことがアプリケーション開発の妨げになっていました。
H2候補
- データベースとは?
- DBMSの機能
- データベースモデル
- リレーショナル・データベース
- 代表的なRDBMS製品
- SQLによってデータ操作が効率化
- データベース管理システムの基本機能
- リレーショナルデータベース管理システム(RDBMS)とは
- データベース管理システムを効果的に活用しましょう
- リレーショナル・データベースの概要
- リレーショナル・モデル
- リレーショナル・データベース管理システム(RDBMS)
- Oracle Databaseの歴史の概要
- スキーマ・オブジェクト
- データ・アクセス
- Structured Query Language(SQL)
- PL/SQLとJava
- トランザクションの管理
- トランザクション
- データ同時実行性
- データ整合性
- Oracle Databaseアーキテクチャ
- データベースおよびインスタンス
- データベース記憶域構造
- 物理記憶域構造
- 論理記憶域構造
- データベース・インスタンス構造
- Oracle Databaseプロセス
- インスタンスのメモリー構造
- アプリケーションおよびネットワークのアーキテクチャ
- アプリケーション・アーキテクチャ
- ネットワーク・アーキテクチャ
- Oracle Databaseドキュメントのロードマップ
まとめ
※ このページは現在準備中です。記述内容は、以下の参考リンクより抜粋したものです。
参考
- https://e-words.jp/w/DBMS.html#:~:text=DBMS%E3%81%A8%E3%81%AF%E3%80%81%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E3%82%92,%E3%82%92%E8%A1%8C%E3%81%86%E5%B0%82%E9%96%80%E3%81%AE%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E3%80%82
- https://ja.wikipedia.org/wiki/%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E7%AE%A1%E7%90%86%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0
- https://wa3.i-3-i.info/word11771.html
- https://rfs.jp/sb/sql/s01/01-19.html#DBMS-2
- https://it-trend.jp/database/article/89-0070
- https://www.weblio.jp/content/DBMS
- https://pyteyon.hatenablog.com/entry/2019/09/05/193000
- https://buildersbox.corp-sansan.com/entry/2019/10/24/110000
- https://docs.oracle.com/cd/E16338_01/server.112/b56306/intro.htm