7/18
・データベースシステム(DBS)
データベース(DB)とデータベース管理システム(DBMS)は別物
自分が普段DBと呼んでいたものはおそらく管理システムの方。
DB+DBMS=DBS
データベース本体とそれを管理するシステムを合わせてデータベースシステム
・従来のファイルシステム
ファイルへのアクセス手段は順次呼び出し。単純な読み書きの機能のみで、汎用性が低い。
大量のデータに対応するには、データの格納方法に工夫をする必要がある。
同じファイルを使い回すのが難しい。
商品データごとに細かい仕様変更などがあると、一括で対応できず、似たようなファイルが複製されていく。dbは設計に成功していれば使い回しが効く。一つのdb内で呼び出し方を変えるだけ。
二次記憶??
DBに記憶された部分を直接は書き換えない
メモリに呼び出して変更処理、その後二時記憶に描き戻し
トランザクションで不具合に対する対応
途中で変更が加わると危険な処理にはトランザクションを適応
bigin
sql文
commit orロールバック
従来のファイルシステムでも似たようなロック機能は存在したが、使用するかはユーザーに委ねられていたのでヒューマンエラーを防ぎきれない
・疑問点
32:00付近からの障害の例がよくわからない
ロールバックできるから元データに何も問題ないようにみえる。
ファイル処理の場合これだと問題あるのか?
7/22
・リレーショナルデータモデル(関係データモデル)
関係性のあるデータ表の集まり
効率の良いデータアクセス機構
・疑問点
ファイル編成
木構造、ハッシング? この辺詳しく調べる
・索引
様々な索引を用意することで、同じテーブルや同じリレーションでも高速で多様な引き方ができる
問い合わせ最適化
・整合性の維持
ドメイン制約
リレーションを定義する時にカラムにも入るデータの定義をする。そこから外れたデータが入るとエラーになる
→今ぶつかってる課題に応用可能?
プログラムのミスでデータベースが壊れるのを阻止する
・キー制約
リレーションを定義する時に、特定の属性をキーに指定する
idや顧客番号のようなダブりがありえない項目に適応する。
同じ値を入れようとするとキー制約に引っ掛かり、入れられなくなる。