GLOSSA

NoSQL

のーえすきゅーえる

NoSQL

一言でいうと

表形式に縛られない、柔軟なデータ構造を扱えるDBの総称のこと。

詳しい意味

NoSQL は「Not Only SQL」の略で、表(行と列)に縛られないデータ構造を扱うデータベースの総称です。代表的な種類に「ドキュメント型(MongoDB / Firestore)」「キーバリュー型(Redis / DynamoDB)」「カラム指向(Cassandra)」「グラフ型(Neo4j)」があります。スキーマレスで柔軟にデータを格納でき、巨大データの分散処理に強い反面、複雑なJOINや厳密なトランザクション管理は不得意です。SQLデータベース(PostgreSQL / MySQL)と用途で使い分けるのが現代的なアプローチです。

何に使うか

事前にカラム構造を固められないログデータやイベントデータを大量に扱うとき。大量のキャッシュ・セッションを高速にやりとりしたいとき。SNS のフォロー関係などグラフ構造を扱うとき。

どんな時に出るか

「これはNoSQLでいこう」「FirestoreはNoSQLのドキュメント型」「NoSQLとSQLの使い分け」といった場面で登場します。

具体例

  • アクセスログを Firestore(NoSQL)に流して、後段で BigQuery に集約している。
  • セッションデータをRedisに置いて高速化した。

別名・略称

nosql(のーえすきゅーえる)MongoDB(もんごでぃーびー)Firestore(ふぁいあすとあ)Redis(れでぃす)

関連語

データベースSQL

間違えやすい語

SQL

初心者向けメモ

SQLデータベースが「Excelの整然とした表」だとすれば、NoSQL は「自由な形のメモ帳」「タグ付きの付箋」のようなものです。形が柔軟な分、検索や集計はSQLほど強力ではありません。

この説明に改善点はありますか?

この説明を修正提案する新しい用語を提案する

提案は管理者が確認した後に反映されます