Slide 1

Slide 1 text

知っててうれしい データベースについて 2024/12/07 貞元勝幸 1

Slide 2

Slide 2 text

目次 データベースとは データベースの種類 データベースの基本概念 データベースの選択例 まとめ 2

Slide 3

Slide 3 text

データベースとは データベースとは、データを効率的に保存・管理・検索する仕組みで す。 EC サイトの商品情報やユーザー情報、SNS の投稿データなど、様々 なデータの保存ができます。 データベースとは 3

Slide 4

Slide 4 text

データベースの種類 リレーショナルデータベース (RDB) NoSQL NewSQL など。 データベースの種類 4

Slide 5

Slide 5 text

リレーショナルデータベース (RDB) テーブルという表形式でデータを保存 SQL という言語でデータの操作 複数のテーブルを結合してデータを取得することが可能 トランザクション処理が可能 MySQL, PostgreSQL, Oracle Database, SQL Server など データベースの種類 - リレーショナルデータベース (RDB) 5

Slide 6

Slide 6 text

NoSQL テーブルではなく、ドキュメントやキー・バリュー形式でデータを 保存 SQL ではなく、専用のクエリ言語でデータの操作 データの構造が柔軟 スケーラビリティが高い MongoDB, Cassandra, Redis, DynamoDB など データベースの種類 - NoSQL 6

Slide 7

Slide 7 text

NewSQL RDB のトランザクション処理を高速化 分散データベースの機能を持つ シャーディングやレプリケーションをサポート Google Spanner, CockroachDB, TiDB など データベースの種類 - NewSQL 7

Slide 8

Slide 8 text

データベースの基本概念 ACID 特性 CAP 定理 BASE 特性 データベースの基本概念 8

Slide 9

Slide 9 text

ACID 特性 トランザクション処理における 4 つの特性。 Atomicity ( 原子性) すべての操作が完全に成功するか、失敗するかのどちらか Consistency ( 一貫性) トランザクション前後でデータの整合性が保たれる Isolation ( 独立性) 複数のトランザクションが、互いに影響を与えない Durability ( 永続性) トランザクションが完了すると、データは永続的に保存される データベースの基本概念 - ACID 特性 9

Slide 10

Slide 10 text

CAP 定理 分散システム間の情報複製に関する定理。 3 つの保証のうち、2 つまでしか達成できない。 Consistency ( 一貫性) すべてのノードが同じデータを見る Availability ( 可用性) すべてのリクエストに対して成功または失敗の応答を返す Partition tolerance ( 分断耐性) ネットワークの障害が発生してもシステム全体が動作する データベースの基本概念 - CAP 定理 10

Slide 11

Slide 11 text

BASE 特性 分散システム・データベースにおける 3 つの特性。 Basically Available ( 基本的に利用可能) 常に利用可能である Soft state ( 状態がソフト) 一貫性が破られることもある Eventually consistent ( 最終的に一貫性が保たれる) 最終的には一貫性が保たれる データベースの基本概念 - BASE 特性 11

Slide 12

Slide 12 text

ACID 特性, BASE 特性, CAP 定理の関係 ACID 特性と CAP 定理の関係 ACID 特性は、CAP 定理の C ( 一貫性), A ( 可用性) を重視 BASE 特性と CAP 定理の関係 BASE 特性は、CAP 定理の A ( 可用性), P ( 分断耐性) を重視 データベースの基本概念 - ACID 特性, BASE 特性, CAP 定理の関係 12

Slide 13

Slide 13 text

基本概念でのデータベース種類の比較 ACID 特性 BASE 特性 C 一貫性 A 可用性 P 分断耐性 RDB ◯ - ◯ ◯ - NoSQL - ◯ - ◯ ◯ NewSQL ◯ ◯ ◯ △ ◯ データベースの基本概念 - 基本概念でのデータベース種類の比較 13

Slide 14

Slide 14 text

データベースの選択例 リレーショナルデータベース (RDB) 一貫性が重要なシステム 在庫管理システム、会計システムなど NoSQL 可用性や分断耐性が重要なシステム SNS 、ブログ、キャッシュなど NewSQL トランザクションや地域をまたいだデータ処理が必要なシステム オンラインゲーム、オンライン決済など データベースの選択例 14

Slide 15

Slide 15 text

まとめ データベースは、データの保存・管理・検索を効率的に行うための 仕組み RDB 、NoSQL 、NewSQL などの種類がある ACID 特性、BASE 特性、CAP 定理を理解することで、データベー スの選択がしやすくなる まとめ 15

Slide 16

Slide 16 text

ご清聴ありがとうございました。 16