マルチバリュー

マルチバリュー・データベース



マルチバリュー・データベースは、NoSQLの一種で、多次元的なデータ構造を特徴としているため、従来の関係データベースとは異なるデータ管理の仕組みを提供します。このデータベースは、元々Pick Operating Systemとして開発され、PICKと同義語で扱われることが多いです。

さまざまな企業が商用のマルチバリュー・データベース製品を提供しており、例としてロケット・ソフトウェアやZumasys、Revelationなどがあります。これらのデータベースは、属性に単一の値を持たせるのではなく、値のリストを管理できるため、関係データベース以上の柔軟性を提供します。このデータモデルは実際には関係モデルよりも古いものであり、Post-relational Databaseの一種としてMUMPSに分類されることもあります。SQLを使用しないか、あるいはSQLを用いてアクセスできるという点も特徴です。

歴史



マルチバリューデータモデルの設計は1960年代初頭にDon Nelsonによって始められ、1965年にはTRWの開発者であるDick Pickがアメリカ陸軍向けにこのモデルを初めて実装しました。この実装は、軍事用ソフトウェアとしての性格を持ち、最初に裁判所で議論された事例でもあります。

1970年代中頃、Ken SimmsによってS-BASIC(DataBASIC)という言語が開発され、これはDartmouth BASICを基にしながらデータ管理を進化させたものです。この頃までに、いくつかのマルチバリュー・データベース実装が誕生しましたが、PICKバージョンR77やMicrodata Reality 3.xなど、さまざまな類似点を持ちながらも標準化には至りませんでした。

関連する開発が続く中、一部の実装は合流しながらも異なる方向に分岐していき、それぞれ独自の言語や方言をサポートするようになりました。業界内では、マルチバリュー・データベースをレガシーと見なすことに反対し、プレ関係データベースといった枠組みで分類される傾向が続いています。最近のトレンドでは、これらのデータモデルはNoSQLのカテゴリに含まれるようになりました。

データモデルの特徴



マルチバリュー・データベースにおけるデータモデルにはいくつかの重要な要素があります。まず、データベース内の「アカウント」は、テーブルやコレクションとして扱われます。ここでは、属性に「フィールド」や「マルチバリュー属性」が設定されることが特徴です。具体的には、1つの属性に複数の値を持たせることができるため、データの取り扱いに対して非常に柔軟な構成を実現しています。

例えば、「PERSON」というファイル(テーブル)において、属性「eMailAddress」は複数のEメールアドレスを持つことが可能です。これにより、一つのレコードで例えば「[[email protected], [email protected], [email protected]]」のように複数の値を持つことができ、従来の関係データベースのように別のテーブルを作成する必要がありません。このようなデータモデルに対処するために、最近の関係データベースでもマルチバリューの形式がサポートされています。

マルチバリュー・クエリー言語



データベースへのクエリーもまたマルチバリューならではで、ENGLISH、ACCESS、AQL、UniQueryなど、いくつかの異なる言語が存在します。これらの言語はSQLとは異なる構造で、スキーマの特定のディクショナリーに対して命令を発します。例えば、以下のようなクエリーが考えられます。

```plaintext
LIST PERSON LAST_NAME FIRST_NAME EMAIL_ADDRESSES WITH LAST_NAME LIKE "Van..."
```

この命令により、姓が「Van」で始まる人々の情報をリスト化し、複数のEメールアドレスを一度に表示することができます。他のデータは繰り返すことなく、効率的に結果を取得することができるため、マルチバリュー・データベースの利点を強く感じられるでしょう。

まとめ



マルチバリュー・データベースは、その柔軟なデータ構造と豊富な履歴を持っており、現代のさまざまなアプリケーションにも適用されています。データモデルは進化し続け、NoSQLの一環として、多くの企業や開発者に利用される選択肢となっています。また、マルチバリューの特性を生かすことで、データの管理や取得がより効率的に行えるという利点もあります。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。