データベース の変更点


#author("2022-09-19T20:40:37+09:00","default:k1rou","k1rou")
#author("2022-09-19T20:42:43+09:00","default:k1rou","k1rou")
*データベースとは [#j2759423]
-DBMS
-データを管理するツール。

*データベースの種類 [#icb0db5b]
**データの構造別 [#q6fc9a46]
-階層型データベース
-網型データベース
--ネットワーク型データベース
-関係データベース
--リレーショナルデータベース
--「[[RDB]]」参照

**上記以外の視点 [#mf138385]
-[[XMLDB]]
-[[NoSQL]]
-[[インメモリデータベース]]

*データベースの設計 [#s5731f64]
-概念設計
--[[E-R図]]や[[クラス図]]を使って概念データモデルを作成する
-論理設計
--概念データモデルを元に論理データモデルを作成する
--3種類のモデル(関係/階層/網)から選択して作成する
-物理設計
--採用したモデルに対応した特定のDBMSを使った物理的構造を決める
--データ量(初期状態・増加量)、利用頻度、性能、運用を考慮して決める

**スキーマの設計 [#v55b6f15]
***ANSI/SPARC 3層スキーマ [#d85d57fb]
-論理データと物理データのそれぞれの独立性を確立するためのモデル
-3層
--外部スキーマ
---ユーザやアプリケーション視点のデータ定義。View定義
--概念スキーマ
---データの論理的構造。Table定義
--内部スキーマ
---データの物理的構造

*データベース管理システム [#r1b843b5]
**RDBMS [#bdf06ff5]
-「[[RDB]]」参照

**XMLデータベース [#d8ee4ae5]
-NeoCore XMS - Software AG社
-Shunsaku - 富士通
-Tamino - NeoCore社

**NoSQL [#c74b03a1]
-「[[NoSQL]]」参照

*インメモリデータベース [#x4503e48]
-[[Apache Spark]]

*データベースの機能 [#z0a3d307]
**チェックポイント [#q0f9d968]
-メモリ上にバッファリングしたデータとログをファイル(データファイルとログファイル)に保存した時点のこと
-チェックポイントが発生するタイミング
--メモリ上のバッファの空きが無くなった時
--ログファイルの切替え時(バックアップファイルが作成される時)
--※トランザクションのCOMMIT時には発生しない

**インデックス [#j7fb0b2d]
***インデックスの方式 [#se868270]
-B+木インデックス
-ビットマップインデックス
-ハッシュインデックス

**オプティマイザ [#p1682d91]
***オプティマイザの種類 [#t677ebd3]
-コストベース
-ルールベース

*データベースの障害対応 [#la734bdd]
-媒体障害の対応
--バックアップファイルと更新後ログファイルを使って復旧(ロールフォワード)
-トランザクション障害の対応
--更新前ログファイルを使って復旧(ロールバック)

*データベースの運用管理 [#b00a1b6d]
-DBA
--データベース管理者
-DA
--データ管理者

*関連用語 [#m70fc9f9]
-[[分散型DBMS]]
-[[DNS]]
-[[KVS]](Key-Value-Store)
-[[MMPデータベース]]
-[[Realm]] -モバイル端末向けDBMS
-[[TSDB]](Time-Series DataBase)
-[[シャーディング]]
-[[データウェアハウス]]
-[[トランザクション]]
-[[分散型DBMS]]