ホーム » 2012 » 1月 » 26

日別アーカイブ: 2012年1月26日

2012年1月
« 12月   2月 »
1234567
891011121314
15161718192021
22232425262728
293031  

最近の投稿(電子情報)

アーカイブ

カテゴリー

情報構造論の総括

先週説明した、ヒープ領域管理のオマケとして、 OSの主記憶管理についても、簡単に説明を加える。 主記憶管理でも、プロセスの起動・停止と共にメモリ領域の確保と解放が行われる。 OSでは、メモリ空間の断片化をしたら、大きなプロセスのための領域が使えないようでは、ダメ。 断片化の対策が必要かもしれないけど、 OSでは、論理アドレス・物理アドレス変換のための、メモリマップユニット(MMU)などが あるため、断片化対策はあまり重要ではない。

この後は、配列から固定領域は使いづらい点を紹介する。 しかし、最近の新しいプログラミング言語では、ハッシュ法などを用いて、keyから値を検索 してくれる連想配列が一般的になってきた。こういう言語では、配列サイズなども あまり気にする必要もなく、プログラムが記述できる。

この後に、単純リスト・循環リスト・双方向リスト・2分探索木・B木などの、 リスト構造の応用データについて改めて総括を行った。

データベースの内部と最近のDBの動向

ほぼ、解説する内容も終盤ということで、 データベースの内部構造の話の後半と、最近のデータベースの動向を説明し、授業を終える。 来週は、データベース設計の課題を作成する演習とする。

DBの内部構造

データベースのインデックスファイルの作り方として、先週説明したB木、B+木の さらなる高速化ということで、ハッシュ法を説明する。

4年の情報構造論の授業で説明しているので、簡単にオープンハッシュ法と、 チェイニング法を説明する。

また、データベースシステムでは、Tableのファイルとインデックスファイルを どう保存するかといった手法を説明。(a)各テーブル各インデックス毎に1ファイル という方式もあれば、(b)全テーブル・全インデックスで1ファイルという方式もある。 (c)全テーブルで1ファイル、全インデックスで1ファイルというのもある。

最近のデータベースシステムの動向

教科書としている本に記載されている、オブジェクト指向データベースを紹介。 といっても基本となるオブジェクト指向プログラミングの話として、 (a)クラス=オブジェクト+メソッド、 (b)追加データを扱う派生と継承、 (c)派生を応用した仮想関数 といった概念を紹介に留める。

昨年度の斉藤研で試行したデータベースでもあり、XMLデータベースも紹介。XMLは、タグによって記載されるデータであるが、属性を自由に追加できる 自由度の高いデータで、これを自在に扱えるようにしたものがXMLデータベース。

ただ、自在にデータを拡張できるものの、システム側では拡張要素を取り扱う処理を、後で追加できるようにする必要もあり、まだ発展途上のデータベースシステム。

最後に、最も注目されているものとして、NO-SQLを紹介する。 データベースでは分散処理が重要だけれど、同期や排他処理は面倒な処理。 そこで、データをKey-Valueだけで取り扱うようにしたものが、Key-Value型データベース。 これらのシステムは、Googleを代表とするクラウドコンピューティングの世界の データベースとして採用されている。 データの検索はKey参照をベースに行い、SQLなどの検索言語が無いことから、 NO-SQLといった言い方をすることが多い。