この記事では、ビッグデータとNoSQLについて、初心者にも分かりやすく、図解付きで丁寧に解説しています!
ビッグデータ
- ビッグデータとは人間には把握できないくらい多種多様で巨大なデータ群
- ビッグデータの貯蔵場所をデータレイクと呼ぶ
- ビッグデータを分析して新たな知見を得ることをデータマイニングと呼ぶ
- 表形式で保管できないデータを非構造化データと呼ぶ
- キーバリュー型のデータベースは非構造化データを保管できるデータベースで、保管したいデータとそのデータを一意に識別できる値を組み合わせて管理する
BASE特性
- BASE特性はビッグデータを扱う際に満たす必要がある条件で、例えば、データを更新している最中は一貫性が保たれていなくても、最終的に一貫性が保たれていればOKという特性がある
ビッグデータとは
ビッグデータとは人間には把握できないくらい多種多様で巨大なデータ群です。ビッグデータで扱うデータは数字や文字列だけでなく、画像、動画、音声も扱います。ビッグデータの特徴を表す言葉に「3つのV」というものがあります。
| Volume(量) | 膨大な量のデータを扱う |
|---|---|
| Variety(種類) | 関係データベースのような行と列で管理されるデータだけでなく、コメント・画像・動画・音声なども扱う |
| Velocity(速度) | 速くデータを処理する |
ちなみに、行と列の二次元の表形式で管理するデータを構造化データ、データに規則性がなく、表形式で管理することが困難なデータを非構造化データと言います。ビッグデータは構造化データも非構造化データも扱います。ビッグデータを保管する場所をデータレイクと呼びます。レイクは日本語で湖を意味します。
今まで構造化データを分析して様々な知見を得ていましたが、SNSのコメントや自動車の走行データなど非構造化データを上手く使えば、より充実した知見を得られるのでは?と考えたのがビッグデータの始まりになります。例えば、SNSの投稿内容を分析することで人の行動パターンが分かるようになれば、より儲かるチャンスを得れそうですよね。このようにビッグデータを分析して役に立つ知見を抽出する技術をデータマイニングと呼びます。
ビッグデータは取得したデータをそのまま保管します。変に加工すると、隠されていた大切な情報が削れたりする可能性がありますからね。
NoSQLの登場
関係データベースでは非構造化データを扱えないので、代わりに非構造化データを扱えるデータベースが必要になります。それがNoSQLです。NoSQLにはいくつかの型があります。
キーバリュー型
キーバリュー型のNoSQLは保存したいデータとそのデータを一意に識別できるキーを組み合わせて管理します。バリューに規則性は必要なく、保存したいデータを保存できます。
ワイドカラム型
ワイドカラム型のNoSQLはデータを行と列で管理します。ただの関係データベースと異なり、それぞれの行で異なる列名を持つことができたり、キー以外の列が何も入っていない行を持つことも可能です。
BASE特性
関係データベースのトランザクション処理にACID特性と呼ばれるモノがあります。ACID特性は、データベースを更新するときの、①完璧に実行する、②データに不整合が無いようにする、③他のトランザクション処理の影響を受けない、④データベースに障害が発生してもデータを失くさない、といった満たすべき4つの条件を表したモノです。
BASE特性はACID特性より緩い、ビッグデータを扱う上で必要な条件です。
- 利用可能(Basically Available)
一部の障害が発生しても、システム全体としては動作し続けて、基本的にいつでも利用可能であること - ソフト状態(Soft state)
データの状態は移り変わるので、常に一貫性を保つ必要はない - 結果整合性(Eventual consistency)
データを更新している最中は一貫性が保たれていなくても、最終的に一貫性が保たれる
応用情報技術者試験での出題例
令和7年度秋期問26
応用情報技術者
午前試験 令和7年度秋期問26
BASE特性を満たし,次の特徴をもつNoSQLデータベースシステムに関する記述のうち,適切なものはどれか。
〔NoSQLデータベースシステムの特徴〕
・ネットワーク上に分散した複数のノードから構成される。
・一つのノードでデータを更新した後,他の全てのノードにその更新を反映する。
ア クライアントからの更新要求を2相コミットによって全てのノードに反映する。
イ データの更新結果は,システムに障害がなければ,いつかは全てのノードに反映される。
ウ 同一の主キーの値による同時の参照要求に対し,全てのノードは同じ結果を返す。
エ ノード間のネットワークが分断されると,クライアントからの処理要求を受け付けなくなる。
正解は”イ”
BASE特性には、結果整合性があります。
これは、データを更新している最中は一貫性が保たれていなくても、最終的に一貫性が保たれていればOKという特性です。イのことですね。よって、答えはイです。
令和7年度春期問24
応用情報技術者
午前試験 令和7年度春期問24
大量のIoTデバイスから送信される大量で,かつ様々な形式のデータを格納可能なデータモデルのうち,行ごとに任意の列数をもち,かつ列ごとに複数の値をもつことによって,柔軟なデータ格納を実現しているデータモデルはどれか。
ア グラフ
ウ リレーショナル
イ ドキュメント
エ ワイドカラム
正解は”エ”
ワイドカラム型は行ごとに列数を持ちますが、関係データベースと違い、柔軟に列を設定できます。
令和6年度春期問29
応用情報技術者
午前試験 令和6年度春期問29
ビッグデータの基盤技術として利用されるNoSQLに分類されるデータベースはどれか。
ア 関係データモデルをオブジェクト指向データモデルに拡張し,操作の定義や型の継承関係の定義を可能としたデータベース
イ 経営者の意思決定を支援するために,ある主題に基づくデータを現在の情報とともに過去の情報も蓄積したデータベース
ウ 様々な形式のデータを一つのキーに対応付けて管理するキーバリュー型データベース
エ データ項目の名称,形式など,データそのものの特性を表すメタ情報を管理するデータベース
正解は”ウ”
様々な形式のデータをキーと紐づけて管理するキーバリュー型データベースはNoSQLに分類されます。
令和4年度春期問30
応用情報技術者
午前試験 令和4年度春期問30
ビッグデータの利用におけるデータマイニングを説明したものはどれか。
ア 蓄積されたデータを分析し,単なる検索だけでは分からない隠れた規則や相関関係を見つけ出すこと
イ データウェアハウスに格納されたデータの一部を,特定の用途や部門用に切り出して,データベースに格納すること
ウ データ処理の対象となる情報を基に規定した,データの構造,意味及び操作の枠組みのこと
エ データを複数のサーバに複製し,性能と可用性を向上させること
正解は”ア”
データマイニングとは蓄積したデータを分析して、単なる検索からは見つけられなかった規則や相関関係を見つけることです。


