まとめ 03_データベース
まとめ 03_データベース
1.データモデル
2.関係(リレーショナル)データベースの操作
関連の強いデータのみを1つのテーブルにまとめ、データの独立性を保つ
一つ一つの表に意味合いを持たせて管理すること
6.データベース言語
7.SQL
データを抽出する操作が重要!!(データ操作言語が必要)
8.データ分析
10.ログ管理
障害のきっかけが異なる
1.データモデル
データベースは関係モデル(行と列の表現)が基本
①階層モデル 1:n②ネットワークモデル n:n
関係モデルの操作にはSQL(プログラム言語)を使う
①射影 「列」のみを出力する
②選択 「行」のみを出力する
③結合 共通の「列」の内容によって結びつける。
3.DBMS(DataBase Management System)
1.データベース管理機能アクセス管理とトランザクション管理(分けることの出来ない処理の単位)
⇒中途半端に処理が終了し、データに矛盾が発生すると無かったように処理する
☆ACID特性(トランザクションが満たすべき4つの性質)
A(原子性)…処理を無かったことにする(不可分性)C(一貫性)…矛盾の無い状態にするI(独立性)…他のトランザクションによる影響を受けないD(持続性・耐久性)…実行結果が失われない
2.同時実行制御機能
デッドロック(硬直状態)は同時実行制御機能が備わっていると起こる
3.障害回復(リカバリ)機能
障害発生前の状態に復旧させる機能
4.セキュリティ機能
4.データベース設計の考え方(3層スキーマ)
関連の強いデータのみを1つのテーブルにまとめ、データの独立性を保つ
一つ一つの表に意味合いを持たせて管理すること
1.非正規形
一つのデータ項目の中に複数のデータが入っている状態繰り返し項目が含まれている表のことデータベースは一つの項目の中に一つのデータを入れたい⇒データを特定したいから
2.第1正規化
3.第2正規化一つの項目の中に一つのデータしか入っていない状態繰り返し項目の排除
主キーの一部だけから特定できる項目を別の表にすること一意に決まる列(主キーを見つけて
☆主キーは通常2つ出てくる
4.第3正規化
主キー以外の項目で特定できる項目を別の表にすること
(外部キー…他の表の主キーとなる項目のこと⇒整合性を保つために設定する)
6.データベース言語
7.SQL
データを抽出する操作が重要!!(データ操作言語が必要)
1.SELECT文(DML)
SELECT(列名) FROM(表名) WHERE(条件)SELECT * は全て選択すること(SELECTはFROMの表から抽出する条件)FROM 元の表名WHERE 年齢>=30であれば30歳以上BETWEEN 20 AND30 20以上30以下LIKE‘田%’ 田中,田口等田で始まるもの
2.グループ化
GROUP BY 似たもの同士を一つのグループにまとめる
HAVING グループ化したものに条件をつける
☆WHERE句が行を対象しているのに対して、HAVING句はグループを対象にしている
3.ORDER BY データの並び替え
ASCは昇順 DESCは降順)
8.データ分析
1.データウェアハウス(DWH)
企業が生じた生のデータ
2.データマート(DM)
DWHではデータが大きすぎるから、DMに保存する。利用目的を限定し、利用ユーザーを限定した使い方をするもの
3.オペレーションデータベース(ODS)
基幹系システムのデータを一時的に保存しデータの整合性を合わせる(DWHへデータをロードする際の中間データベース)
4.OODBMS
データとそれを操作する手続きが一体化したオブジェクトを谷としてデータを管理するデータベース
5.XMLデータベース
ネイティブ方式とハイブリット方式の2つの管理方法ハイブリットデータベースのみがリレーショナルデータベースの機能を持つ
6.データマイニング
効率的なデータの分析
発見型の分析方法
膨大なデータ野中に隠されている有用な相関関係を発見するための手法
7.OLAP
基本機能①ドリルダウン ②スライス ③ダイス
仮説検証型の分析方法
9.バックアップ
バックアップの取得にかかる時間
フルバックアップ>差分バックアップ>増分バックアップ
普及にかかる時間
増分バックアップ>差分バックアップ>フルバックアップ
10.ログ管理
障害のきっかけが異なる
1.ロールバック…プログラムの異常終了(トランザクションエラー等)
☆論理的障害 ログファイルの更新前情報を使って取り消す⇒無かったことにする
2.ロールフォワード…ハードウェアの障害
☆物理的障害 ログファイルの更新後情報を使う
*ログファイル=ジャーナルファイル