第7章 データベース管理システム 7.1 データベース管理システムの概要 7.2 データベースの格納方式 7.3 問合せ処理.

Slides:



Advertisements
Similar presentations
ファイル管理(ファイルシス テム) オペレーティングシステム 第 11 回. ファイルとは データの集まりの入れ物 データの集まり自身 データセットと呼ぶ場合もある 両方を意味.
Advertisements

データベースの基礎知識 ACEESS の基本操作. データベースの基礎知識 データベース  特定のテーマや目的に毎のデータの集合体 データベースソフトウェア  データベースを作成、管理するソフトウェアの総 称 Oracle(Oracle) IBM(DB2) Microsoft(SQL Server)
【事例演習5】  字句解析     解 説  “ハッシュを用いた字句解析の方法”.
コンピュータ基礎(9) 10章 ファイルとデータベース.
区間グラフにおける区間表現からMPQ-treeを効率よく構成するアルゴリズム
基本情報技術概論 I 演習(第5回) 埼玉大学 理工学研究科 堀山 貴史
計算機工学III オペレーティングシステム #14 ファイル: より進んだファイルシステム 2006/07/21 津邑 公暁
Chapter11-4(前半) 加藤健.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
第6回 仮想記憶とページング ページング ページ取り出し方式 ページ置き換え方式 中間テスト(40分)
記 憶 管 理(1) オペレーティングシステム 第9回.
計算機工学III オペレーティングシステム #9 主記憶管理:ページング 2006/06/09 津邑 公暁
コンピュータ基礎(11) 10章 ファイルとデータベース.
入 出 力 管 理 オペレーティングシステム 6/26/09.
~補助記憶装置~  主記憶装置に記憶されるデータは,パソコンの電源を切ると記憶内容が消えてしまう。また,容量にも限界があるので,補助記憶装置にデータを記憶させる。補助記憶装置はパソコンの電源を切っても記憶内容は消えない。補助記憶装置の内容は主記憶装置上で利用することができる。 電源OFF 電源OFF.
データ構造とアルゴリズム論 第6章 探索のアルゴリズム
Microsoft Office 2010 クイックガイド ~Access編~
ACCESSによる データベースアプリケーション開発実習 日本工業大学 情報工学科 “データベースの実際” 教材
5.WEKOコンテンツ登録 準備 マニュアル Version 2.1
データ構造とプログラミング技法 (第8回) ーデータの探索ー.
地理情報システム論 第3回 コンピュータシステムおける データ表現(1)
第6章 トランザクション管理 6.1 トランザクションの概念 6.2 同時実行制御 6.3 障害回復.
ファイルシステムキャッシュを 考慮した仮想マシン監視機構
オペレーティングシステムJ/K 2004年11月4日
岩井 儀雄 コンピュータ基礎演習  ー探索、整列ー 岩井 儀雄
EBSCOhost 詳細検索 チュートリアル support.ebsco.com.
高山建志 五十嵐健夫 テクスチャ合成の新たな応用と展開 k 情報処理 vol.53 No.6 June 2012 pp
14.テーブル定義,一対多の関係,多対多の関係, 外部キー,索引(インデックス),データベース操作
マイクロソフト Access を使ってみよう 第1回
朝日大学大学院 経営学研究科 奥山 徹 データベース論 朝日大学大学院 経営学研究科 奥山 徹 2006/05/29 データベース論(7回目)
データ構造と アルゴリズム 第十一回 理工学部 情報システム工学科 新田直也.
二分探索木によるサーチ.
データベース設計 第2回 データベースモデル(1)
7-3.高度な木 (平衡木) AVL木 平衡2分木。回転操作に基づくバランス回復機構により平衡を保つ。 B木
型付きアセンブリ言語を用いた安全なカーネル拡張
高速剰余算アルゴリズムとそのハードウェア実装についての研究
ハッシュ表 データ構造とプログラミング(12)
第10回 ファイル管理 論理レコードと物理レコード アクセス方式 ユーザから見たファイルシステム 補助記憶装置の構成
決定木とランダムフォレスト 和田 俊和.
定兼邦彦 今井浩 東京大学理学系研究科 情報科学専攻
VM専用仮想メモリとの連携による VMマイグレーションの高速化
アルゴリズムとデータ構造1 2006年6月16日
アルゴリズムとデータ構造勉強会 B+tree.
仮想メモリを用いた VMマイグレーションの高速化
オペレーティングシステムJ/K (仮想記憶管理)
第7回 授業計画の修正 中間テストの解説・復習 前回の補足(クロックアルゴリズム・PFF) 仮想記憶方式のまとめ 特別課題について
コンピュータの基本構成について 1E16M001-1 秋田梨紗 1E16M010-2 梅山桃香 1E16M013-3 大津智紗子
第9回 優先度つき待ち行列,ヒープ,二分探索木
データ構造とアルゴリズム論 第9章 木構造 平成29年12月20日 森田 彦.
データ構造とアルゴリズム論 第9章 木構造 平成30年6月27日 森田 彦.
Data Clustering: A Review
3.リレーショナルデータベース,主キー, SQL
Peer-to-Peerシステムにおける動的な木構造の生成による検索の高速化
B+Treeのバケットサイズ.
第5回 メモリ管理(2) オーバレイ方式 論理アドレスとプログラムの再配置 静的再配置と動的再配置 仮想記憶とメモリ階層 セグメンテーション
データ構造とアルゴリズム (第5回) 静岡大学工学部 安藤和敏
地理情報システム論(総)/ 国民経済計算論(商)
第4回 メモリ管理 主記憶(メインメモリ)の管理 固定区画方式と可変区画方式 空き領域の管理 スワッピング.
第16章 動的計画法 アルゴリズムイントロダクション.
ISO23950による分散検索の課題と その解決案に関する検討
第9回 優先度つき待ち行列,ヒープ,二分探索木
アルゴリズムとデータ構造 2011年6月16日
オペレーティングシステムJ/K (管理のためのデータ構造)
Advanced Data Structure 第3回
第11回放送授業.
ネット時代のセキュリティ3(暗号化) 2SK 情報機器工学.
アルゴリズムとデータ構造 2013年6月20日
新人研修発表 平成13年5月14日(月) 探索アルゴリズム ハッシュ法について 株式会社 エーアイネット・テクノロジ          須田 哲生.
地理情報システム論 第6回 GISによる処理技法 GIS入門(2)
Ibaraki Univ. Dept of Electrical & Electronic Eng.
Presentation transcript:

第7章 データベース管理システム 7.1 データベース管理システムの概要 7.2 データベースの格納方式 7.3 問合せ処理

7.2 データベースの格納方式 1.記憶装置とデータの格納 (a) ディスクのアクセス単位 データベースは通常ディスクに格納される。 【ディスクのアクセス単位】 ①ディスクは,シリンダ,トラック,セクタなどの単位に分割される。 ②データは、セクタの整数倍の大きさのページ(またはブロック)と呼ばれる単位でアクセスされる。 【注意】 用語については、機種またはOS依存なので、 利用ハードウェア等のマニュアル等を参照。

表のタプルは、DBMS内部では通常レコードと呼ばれる。 ①レコード : フィールドの集まり ②フィールド : タプルの属性 ③同一形式のレコードの集まり : ファイル

(c) 固定長と可変長ということ 固定長レコードと可変長レコード ①可変長レコードの方が複雑な格納方法 ②画像や音声データなど、サイズの大きな属性の場合、工夫が必要 【例】 画像ファイルを別に格納し、属性ではファイル名を指定する。

(d) ファイル内レコードの基本操作 ① 読込(read) 追加(append) 変更(update) 削除(delete) ファイル全体では、 ⑤ オープン(Open) ⑥ クローズ(Close)

(e) 格納方式(アクセス法) 容量、検索や更新の効率に考慮して格納方式を決める。 ①ヒープ(heap: 積み重ねた山、堆積等の意味) ②索引編成(index access) ③B木(Balance Tree/Bush Tree:平衡木/潅木) 最も単純なものが2分B木 ④ハッシング(Hashing: ごちゃまぜの意味)

2.ヒープ(heap) ・・・最も単純 キー値とは無関係に発生順等によりファイル内に格納する。 ①ファイル内を順番に読んでいくので検索などの効率が悪い。 ②二次索引を付加して検索を効率化する工夫が行われる。 ③ 空き領域にレコード追加を行う。 ④ レコードの削除はページ内空き領域に戻すことで行う。

3.索引編成(index access) (a) 構成の概要 レコードは、キーの順序で整列して格納 (キーの最大値を索引に用いているが、最小値でも良い) 索引 データレコード 007 001 003 005 007 009 011 013 015 015 017 018 021 023 023 多量の索引を持つことができるよう、階層構造にする場合もある。

(b) 領域の管理 ① ある程度余裕を持った大きさにして、あらかじめ空き領域を設けておく。 ② オーバフロー領域と呼ばれる共通領域を設けておく。 ③ レコードの追加は、キー値により該当位置を決め、空き領域に書き込む。 ④ 該当位置に追加できなくなったら、オーバフロー領域に書き込む。 ⑤ キー以外のレコード変更は該当レコードを書き換える。 ⑥ キー値の変更は、一旦削除して追加する。 ⑦ 削除は、レコードを空き領域に戻す。 ⑧ レコード追加や削除が何回も続くと、ファイルアクセス効率が悪化するので、再編成を行う。

(c) 索引編成の特徴 ① 索引を用いるので高速になる。 ② キー値を一つ指定するだけでなく不等号で指定した検索も高速である。 ③ レコード追加や削除が頻繁に行われる場合、アクセス効率が悪化する。ただし、再編成で効率化できる。

4.B木(Balance Tree) (a) 構成の概要 ① 高さが揃った木構造。 ② データは一番下の階層(葉ノード)に格納。 ③ データ追加や削除では、必要に応じて木構造を変更して高さの変更を保つ(アルゴリズムについては他の文献参照)。 ④ 葉ノードから次の葉ノードへのリンクによって順次アクセスが可能。 32 80 12 22 48 74 89 95 5 8 12 14 18 22 24 28 32 ・・・ レコード ・・・

(b) アクセス方法 キー値を指定した読み出しは、木のルートから索引をたどることで行う。 不等号条件の場合、葉ノード間のリンクを用いて順次アクセスを行う。 レコード追加は、キー値で位置を決める。 葉ノードに空きがなければ、レコードを分割して木構造を変更する。 削除時は該当レコードの削除で行う。 該当葉ノードの空きが一定以上になると、ノードの統合を行う。

(c) B木の特徴 中間部は索引部専用なので、1ページに多くのリンクを入れることができる。 木の高さは通常3階層程度なので、高速な検索が可能。 木の構造を動的に変更することで、データ更新の頻度が多くても効率の良いアクセスができる。

5.ハッシング(Hashing) (a) 方法の概要 ハッシングと呼ばれる関数によってキー値をレコード位置に変換する。 ・・・直接編成法(Direct Access)のひとつ・・・ キー値 ハッシュ関数 レコード位置 格納レコード

アルゴリズム関係の書籍で確認しておこう。 (b) ハッシング法 さまざまな方法があるので、 アルゴリズム関係の書籍で確認しておこう。 (キー値によりランダムにかつバランスよく配置されるものがよい) ・除算法 ・重合せ法 ・基数変換法 ・数字分解法

(c) ハッシング法のバラエティ ① レコード位置を直接求めるのではなく、レコード位置を記録した変換表内の位置を求める方法。 ② 格納するレコード数をあらかじめ指定する必要があるが、レコード数の増減に柔軟に対応する拡張可能ハッシング。 キー値 ハッシュ関数 レコード位置 ファイル 変換表 アドレス レコード

(d) ハッシング法によるアクセス キー値をハッシングしてファイル内の位置を決めてレコードを読み込み、あるいは更新する。 レコード追加は、キー値をハッシングしてファイル内の位置を決めて行う。 キーが衝突したら、キー衝突のための処理を行う。 削除は、該当位置を空きとする。

(e) ハッシング法の特徴 ① キー値を指定したアクセス効率がよい。 ② 不等号等によるキー値の範囲指定アクセスの効率が悪い。 ③ 異なったハッシュ値が同じ値になる(衝突)ことがあるので対策が必要である(アルゴリズム関連の書籍参照)。