●NoSQLとは
リレーショナルデータベース(RDB)以外のデータベースの総称。
→RDBとは表形式でデータを管理するデータベース。OracleやPostgreSQL。
●出題された回(平成29年度春期以降)
令和3年度春期/平成30年度春期
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要素でデータ同士の関係性を管理するデータモデルです。
- ノード:点
- エッジ:線
- プロパティ:ノードとエッジの性質
データモデルの構造が表形式ではなく、ネットワーク状になっているため、検索処理が凄く速いらしいです。
過去問
応用情報技術者 午前試験
令和3年度春期問28
NoSQLの一種である、グラフ指向DBの特徴として、適切なものはどれか。
ア データ項目の値として階層構造のデータをドキュメントとしてもつことができる。また、ドキュメントに対しインデックスを作成することもできる。
イ ノード、リレーション、プロパティで構成され、ノード間をリレーションでつないで構造化する。ノード及びリレーションはプロパティをもつことができる。
ウ 一つのキーに対して一つの値をとる形をしている。値の型は定義されていないので、様々な型の値を格納することができる。
エ 一つのキーに対して複数の列をとる形をしている。関係データベースとは異なり、列の型は固定されていない。
正解は”イ”
応用情報技術者 午前試験
平成30年度春期問30
ビッグデータの基盤技術として利用されるNoSQLに分類されるデータベースはどれか。
ア 関係データモデルをオブジェクト指向データモデルに拡張し、操作の定義や型の継承関係の定義を可能としたデータベース
イ 経営者の意思決定を支援するために、ある主題に基づくデータを現在の情報とともに過去の情報も蓄積したデータベース
ウ 様々な形式のデータを一つのキーに対応付けて管理するキーバリュー型データベース
エ データ項目の名称や形式など、データそのものの特性を表すメタ情報を管理するデータベース
正解は”ウ”