データベース

【応用情報】NoSQLについて解説

この記事ではNoSQLについてIT初心者にも分かりやすく解説します。

NoSQL

  • NoSQLは、関係データベース以外のデータベースの総称
  • 表形式で管理できるデータは構造化データ、管理できないデータは非構造化データ
  • NoSQLは非構造化データも管理できる

NoSQLの種類

  • キーバリュー型は、キーに紐づけて様々な型の値(バリュー)を管理する
  • カラム指向型は、キーバリュー型に列(カラム)を追加したデータベース
  • ドキュメント型は、XML等のドキュメント形式のデータを管理する
  • グラフ型は、ノード、エッジ、プロパティの3要素でデータ同士の関係性を管理する

応用情報ではNoSQLに関する問題が出題されます。是非最後までご覧ください。

NoSQLとは

NoSQLとは、リレーショナルデータベース(RDB)以外のデータベースの総称です。

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

リレーショナルデータベースとは、表形式でデータを管理するデータベースで、関係性のある項目で表同士を結合したり、検索したり出来ます。
RDBはRelational DataBaseの略で、直訳すると「関係性のあるデータベース」になります。OracleやPostgreSQL等、一般的に広く使われています。

RDBは表同士が複雑に絡み合うことでデータを管理・運用します。
表同士が複雑に絡み合う分、データの整合性は厳密に保たなければいけません。そのため、データ量が膨大になればなるほど、整合性を保つための処理が多くなり、データベース全体の処理の負荷が大きくなるというデメリットがあります。

また、RDBでは表形式で管理出来るデータしか管理出来ないので、動画や音声のようなデータを管理することは出来ません。表に出来ないからですね。

表形式で管理出来るコードや名称等のデータを「構造化データ」、
表形式で管理出来ない動画や音声等のデータを「非構造化データ」と言います。
RDBでは構造化データしか管理出来ないということです。

NoSQLの登場

近年、データサイエンスの発達で、非構造化データを用いたデータの分析や、膨大な量のデータの分析が出来るデータベースが求められるようになりました。

しかし、前述した通り、RDBは膨大な量のデータ処理に時間が掛かり、構造化データしか管理出来ません。そこで登場したのがNoSQLです。

NoSQLは、RDBのようにデータの整合性を厳密に保つ処理は行わず、また、構造化データ以外のデータも管理できるようにしたものです。

NoSQLはその特徴から4つの型に分類されます。

①キーバリュー型

キーとバリューの組み合わせで作られるデータモデルです。

キーとバリューは1対1で管理されます。構造がシンプルなので高速で処理が可能です。

②カラム指向型

キーバリュー型に列(カラム)が追加されたデータモデルです。

RDBと異なり、列毎に処理をします。

③ドキュメント型

XML等のドキュメント形式でデータを管理するデータモデルです。

XML形式で保存されたデータをそのまま保存出来るのがメリットです。

④グラフ型

ノード、エッジ、プロパティの3要素でデータ同士の関係性を管理するデータモデルです。

  • ノード:点
  • エッジ:線
  • プロパティ:ノードとエッジの性質

データモデルの構造が表形式ではなく、ネットワーク状になっているため、検索処理が凄く速いらしいです。

応用情報技術者試験での出題例

令和6年度春期問29

応用情報技術者
午前試験 
令和6年度春期問29

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

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

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

ウ 様々な形式のデータを一つのキーに対応付けて管理するキーバリュー型データベース

エ データ項目の名称,形式など,データそのものの特性を表すメタ情報を管理するデータベース

正解と解説

正解は”ウ”

様々な形式のデータをキーと紐づけて管理するキーバリュー型データベースはNoSQLに分類されます。