0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

NoSQLに分類されるデータベース

Last updated at Posted at 2020-09-01

応用情報技術者平成30年春期 午前問30

ビッグデータの基盤技術として利用されるNoSQLに分類されるデータベースはどれか。

image.png

1、NoSQL(Not only SQL)は、
データへのアクセス方法をSQLに限定しないデータベース管理システムの総称で、長い間決まったように使用されてきた関係データベース管理システム以外のDBMSという意味で用いられます。

image.png

RDBMSはデータを扱う際のコストも高くなり、ビッグデータなどの高頻度で膨大なデータを扱う場面ではパフォーマンス面での劣化が現れてきました。
NoSQLは、スキーマレスで軽量なのでデータの参照や追加を低コストで実行できます。さらにスケーラビリティ(=拡張性)にも優れるため大量に蓄積されていくデータを扱うのに適しています。

NoSQLには大まかに分けて4つのタイプがあります。
 ・キー・バリュー型
  1つのキーに1つの値を結びつけてデータを格納する
 ・カラム指向
  行キーに対してカラム(名前と値の組み合わせ)を結びつけて格納する
 ・ドキュメント指向
  XMLやJSONなどの構造でデータを格納する
 ・グラフ指向
  グラフ理論に基づいてデータ間の関係性を表現する

NoSQLはトランザクションをサポートせず「結果整合性」という考え方に基づいてデータ処理を行います。結果整合性とは、即座にデータが反映されることを前提とせず、結果的に(実際に読み込まれる時までに)一貫性が保証されていればよいという考え方です。NoSQLは、このアプローチに基づき一貫性の保証を弱めることでスケールアウトを容易にしています。

・スケールアウトとは、コンピュータシステムの性能を増強する手法の一つで、コンピュータの台数を増やすことでシステム全体の性能を向上させること。 処理を並列化、分散化できるシステムで適用される。

2、各種類NoSQLデータベースの詳細:
  1)、 キー・バリュー型
RDBのようなテーブルや関係性を定義せず、キーとバリューという組み合わせからなるシンプルなデータモデルです。
データが増えるにつれて表が縦の方向に伸びていくイメージです。
データモデルが単純であることからデータを容易に分割可能なことから、スケールアウトに最適なのが特徴です。

image.png

  2)、カラム指向型
上記のキーバリュー型にカラムの概念を持たせたデータモデルです。
行に付与されたキーが複数のカラムを持つことができます。
カラム数はRDBのように固定ではなく、動的に追加していくことができます。
RDBを利用していると異質に思えるかもしれませんが、ほかの行には存在しないカラムを持つ行を作ることができます。

image.png

  3)、ドキュメント指向型
JSONやXML形式で記述されたドキュメントの形でデータを管理することができます
各ドキュメントは階層構造を持たず、相互の関係を横並びに管理します。
RDBのように固定されたデータ設計が不要なことから「スキーマレスである」と言われます。

例は、ブログの投稿履歴とメールの送信履歴をドキュメント指向型データベースに記録したとします。
これらは全く異なる性質のデータですが「投稿日と送信日が2018/9/18のデータ」と指定することで、関係するデータが取得できます。

image.png

  4)、グラフ型
データとデータ感のつながりを管理できるデータモデルです。
グラフ型のデータベースには以下の構成で表現されます。
 ・ノード
 ・リレーションシップ
 ・プロパティ

例えば、FaceBookの友達関係をグラフ型で表現すると以下のようになります。
・Aさんというアカウントが存在します(ノード)
・AさんはBさんと関係があります(リレーションシップ)
・AさんとBさんは友達同士です(プロパティ)
・この基本構造を拡張していくと「Aさんの友達であるBさんの友達」や「Aさんと友達になってから
・3年以上経過したアカウント」といった検索も可能になります。

image.png

3、オブジェクト指向データベースの説明
関係データモデルをオブジェクト指向データモデルに拡張し,操作の定義や型の継承関係の定義を可能としたデータベース

4、データウェアハウスの説明
経営者の意思決定を支援するために,ある主題に基づくデータを現在の情報とともに過去の情報も蓄積したデータベース

5、データディクショナリやリポジトリの説明
データ項目の名称や形式など,データそのものの特性を表すメタ情報を管理するデータベース

参照:

【超入門】RDBとNoSQLの違いに着目!NoSQLに求めるものとは?
https://tech-blog.rakus.co.jp/entry/20180919/nosql/bigdata

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?