NoSQLデータベース — リレーショナルDBとの違いと使いどころ
導入
SNSの投稿履歴やECサイトの閲覧ログなど、形や量がバラバラな大量データを管理するには、従来のデータベースでは対応しきれない場面が出てきます。そこで登場したのがNoSQLデータベースです。
くわしく知ろう
NoSQL(Not Only SQL)とは、リレーショナルデータベース(RDB)のように行と列のテーブル構造を使わず、より柔軟なデータ構造で大量データを扱えるデータベースの総称です。スケールアウト(サーバーを横に増やす拡張)に適しており、Webサービスの大規模データ処理で広く使われています。
NoSQLの代表的な種類のひとつがキー・バリュー型で、データをキーと値のペアで管理します。シンプルな構造のためアクセスが非常に高速で、セッション情報やキャッシュに向いています。
ドキュメント型は、JSONやXMLのような形式で一件ずつデータを格納する方式です。フィールドが柔軟に変えられるため、スキーマが固定されていないデータに適しています。SNSのプロフィールや商品カタログのようなデータに向いています。
一方、複雑な関係性を持つデータ同士のつながりを表現するのに適しているのがグラフ型です。ノード(点)とエッジ(線)でデータの関係を表し、友人関係や推薦システムの実装に利用されています。
RDBは一貫性と複雑な問い合わせ(JOIN等)が得意であり、財務・在庫管理など正確さが求められる業務に適しています。NoSQLとRDBは「使い分ける」という視点が重要です。
具体例
たとえばECサイトのショッピングカートのセッション管理にはキー・バリュー型、商品カタログの管理にはドキュメント型が使われることがあります。一方、銀行の取引記録のような正確さが最優先のデータにはRDBが適しています。
まとめ・試験ポイント
- NoSQL=テーブル構造に縛られない柔軟なデータベースの総称
- キー・バリュー型=キーと値のペアで管理。高速・シンプル。キャッシュ向き
- ドキュメント型=JSONなどで1件ずつ格納。スキーマ柔軟。カタログ向き
- グラフ型=ノードとエッジでデータの関係性を表現。推薦・SNS向き
- RDB=一貫性・複雑な問い合わせが得意。財務・在庫管理向き
- 試験では「NoSQLの種類とユースケースの対応」が頻出
学習した内容を試験形式で確認しよう。ITパスポート入門試験100問に挑戦できます。
入門試験100問に挑戦する