Upgrade to Pro — share decks privately, control downloads, hide ads and more …

データベースと応用システム:概論

 データベースと応用システム:概論

More Decks by 自然言語処理研究室

Other Decks in Education

Transcript

  1. (c)長岡技術科学大学 電気系 2 データと情報 いろんな人がいろんな使い方をしている。 • データは「客観的な事実を表現したもの」 – 客観的な事実:計測、観測等の結果得られるもの –

    表現方法:数値、文字、画像、音声など • 情報は「役立つデータ」 – 誰かが何かの目的で整理、取捨選択、加工したデー タ と考えておいてください。
  2. (c)長岡技術科学大学 電気系 3 データベースとは • たくさんのデータを集めたもの – いや、少なくても構わない。量の問題ではない。 – 定義上は計算機上である必要もないが、事実上計算

    機を使うことを想定 • しかし、集めただけでは不十分 – 「整理」されている – 「便利」に利用できる(ための仕組みがある) – 「保守」されている
  3. (c)長岡技術科学大学 電気系 4 データベースとは(続き) データベース(database, DB)とは • 共有できるように – 複数人が利用できる(1人でも構わない)

    • 統合化された – 整合性が取れている • 永続的な – うっかり消えたりしない データの集まりのこと。
  4. (c)長岡技術科学大学 電気系 8 データベースの要件 (3)データとプログラムの独立 • データとプログラムが独立している – ある特定のプログラムのみに依存したデータ構造になっ ていない

    – 複数(任意)のプログラムからアクセス可能 – プログラム中にデータが記述されていない • 保守・変更作業を容易にする
  5. (c)長岡技術科学大学 電気系 11 データベースの要件 (5)データの永続性 • データの保護 – ハードウェアやソフトウェアに障害が起こった場合にデー タが保護される。

    • データの回復 – 万が一データが紛失した場合でも、バックアップや履 歴(ログ)によって迅速に回復させることが可能である。
  6. (c)長岡技術科学大学 電気系 13 データベースの歴史 (1)黎明期 • 最初は軍事目的、米国が軍事データを収集し、そ れを「データ基地」に蓄積した。 • 1959年 MaGee

    “source file” – データベースの概念を示した最初の論文 • 1963年 IDS(Integrated Data Store)(GE) – 最初の商用データベース。ネットワーク型。 • 1968年 IMS(Information Management System)(IBM) 階層型。広く普及。
  7. (c)長岡技術科学大学 電気系 14 データベースの歴史 (2)RDB/SQLの登場 • 1970年 Edger.F.Codd(IBM) “A Relational

    Model of Data for Large Shared Banks” – 集合論に立脚したRDBの概念を提唱 – リレーショナルデータベース(Relational database, RDB)として大きな影響を与える • 1974年 IBMがSEQUEL言語を開発 – 後にSQLと改名。 – 非常に優れた言語であったため、当時は標準化されて いないのにほとんどのRDB製品に使われる。
  8. (c)長岡技術科学大学 電気系 15 データベースの歴史(3)製品 • 1979年 Oracle RDBMS – 世界初の商用RDBMS •

    1982年 富士通 AIM/RDB – 初の汎用コンピュータ用RDB。 – 日立(84年)、NEC(88年)もRDBを発表。 • 1983年 IBM DB2 – やっと IBMがRDBを発表。DB2は汎用コンピュータの業 界標準になる。
  9. (c)長岡技術科学大学 電気系 16 データベースの歴史(4)SQL • 構造化問い合わせ言語(structured query language, SQL) •

    1987年:ISOがSQL規格第一版を制定(SQL87) • 1987年:JISも同様に制定 • 1989年、1992年、...:何度も改定され、現在に至 る
  10. (c)長岡技術科学大学 電気系 17 データベースの歴史(5)Web時代 • RDBMSも限界 – 超大規模データ(=Web関連データ)に不向き – 分散するのが大変

    • 2006年 Bigtable(Google) 2007年 Dynamo(Amazon) – 一貫性と可用性をどちらか犠牲にする – 分割耐性を備える – NoSQL(Not Only SQL)時代へ
  11. (c)長岡技術科学大学 電気系 18 データベース管理システム(DBMS) • データベースを管理するソフトウェアシステム • 物理的データ独立性 – 記憶装置に依存しないこと

    • 論理的データ独立性 – データ形式と閲覧形式が同一である必要はない • データベース言語 – データ定義言語(DDL)、データ操作言語(DML)、データ 制御言語(DCL) – 通常SQLを使う
  12. (c)長岡技術科学大学 電気系 19 データベース管理システム(続き) • データ完全性 – データの不正な登録や更新を防ぐ • トランザクション処理

    – 複数の利用者が同時に同一のデータを参照・更新して も大丈夫なように対応できる • その他 – セキュリティ、障害復旧、最適化、分散化など
  13. (c)長岡技術科学大学 電気系 20 データベース関連業務 • DA (data administrator) – 上流工程

    – データベースの要件定義、論理設計など • DBA (database administrator) – 中流以降 – データベースの実装、テスト、保守など