Database

Course Information

College Akashi College Year 2019
Course Title Database
Course Code 0056 Course Category Specialized / Elective
Class Format Lecture Credits School Credit: 1
Department Electrical and Computer Engineering Computer Engineering Course Student Grade 5th
Term Second Semester Classes per Week 2
Textbook and/or Teaching Materials (教科書)白鳥則郎監修、三石大・吉廣卓哉編著:「データベース−ビッグデータ時代の基礎−」、共立出版
Instructor

Course Objectives

本科目では、データベースの実現および運用のための基礎的な手法について講義を行う。具体的には、現実のデータを計算機に格納する枠組を記述するためのデータのモデル化、大量データを計算機に効率よく格納し取り出すための方法、データを定義し質問を行うための言語および多くの利用者間でデータの同時使用を可能とするための制御についてである。データベースの概念を正確に理解し、データ管理のための設計、データベース言語SQLによるプログラミング、システム運用など、主専門分野の知識と技術を深く学び、システム思考ができるよう学習する。そして、データ管理に関する問題に柔軟に対処でき、専門分野の知識や技術を用いて、課題に適応する具体的なシステムを設計できることを目標とする。

Rubric

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1データのモデル化、大量データを計算機に効率よく格納し取り出すための方法を理解し、システムを設計できる。データのモデル化、大量データを計算機に効率よく格納し取り出すための方法を理解できる。データのモデル化、大量データを計算機に効率よく格納し取り出すための方法を理解できない。
評価項目2データベース言語SQLによるプログラミング、システム運用できる。データベース言語SQLによるプログラミング、システムを理解できるデータベース言語SQLによるプログラミング、システムを理解できない
評価項目3データ管理に関する問題に柔軟に対処できる。データ管理に関する問題を把握できる。データ管理に関する問題を把握できない。

Assigned Department Objectives

学習・教育到達度目標 (D) See Hide
学習・教育到達度目標 (F) See Hide
学習・教育到達度目標 (H) See Hide

Teaching Method

Outline:
プログラムとデータを分離して管理することは重要である。データを独立して管理する方法として広く利用されているデータベースシステムを理解することで、長期間にわたって安定的にデータを使用可能とする技術について学ぶ。本科目では、データとは何か、データベースでは何を管理していくのか、その実装方法はどのようになっているのかを俯瞰的に学習していく。
Style:
授業と演習
Notice:
少なくとも1つ以上のプログラミング言語を習得しておくことを履修条件とする。 データ構造とアルゴリズム関連の知識を有していることが望ましい。
合格の対象としない欠席条件(割合) 1/3以上の欠課

Course Plan

Theme Goals
2nd Semester
3rd Quarter
1st イントロダクション
情報社会におけるデータベースの役割について述べ、データモデル、データベース管理システム、本講義で中心となるリレーショナルデータベース管理システム(RDBMS)などの概念について解説する。
データベースの役割、データベースの学術利用、業務利用、その意義と用途を理解できる。
2nd データベースのための基礎理論
データベースの基礎と応用を理解するための基盤となる基礎理論を学ぶ。具体的には、集合とその演算、組(タプル)などを解説し、組の集合としてのリレーションを紹介する。
データベースのための基礎理論を理解できる。
3rd リレーショナルデータモデル
RDBMSで利用されるデータモデルであるリレーショナルデータモデルについて学ぶ。リレーションの枠組み(リレーションスキーマ)、データに対する様々な制約、主キー、外部キーなどの概念について解説する。
リレーショナルデータモデル
を理解できる。
4th リレーショナル代数(1)
RDBMSにおけるデータ操作の基礎理論となるリレーショナル代数について学ぶとともに、演習問題によって理解を深める。この週では主に集合演算、1つのリレーションに対する関係演算を取り上げる。
リレーショナル代数(1)
を理解できる。
5th リレーショナル代数(2)
RDBMSにおけるデータ操作の基礎理論となるリレーショナル代数について学ぶとともに、演習問題によって理解を深める。この週では主に2つのリレーションに対する関係演算を取り上げる。
リレーショナル代数(2)
を理解できる。
6th SQL(1)
RDBMSの利用全般に用いられる言語SQLについて学ぶとともに、演習問題によって理解を深める。この週では、リレーションへのデータ登録・削除・更新、簡単な問合せなど、基本的なSQLの使い方を取り上げる。
RDBMSの利用全般に用いられる言語SQLの気泡んを理解できる。
7th SQL(2)
RDBMSの利用全般に用いられる言語SQLについて学ぶとともに、演習問題によって理解を深める。この週では、SQLにおける問合せを行うselect文の詳細を取り上げる。
RDBMSの利用全般に用いられる言語SQLを作成できる。
8th 中間試験 中間試験
4th Quarter
9th プログラムからのRDBMSの利用
C言語やJava言語など、汎用プログラミング言語で書かれたプログラムからRDBMSを利用する方法について学ぶ。
プログラムからのRDBMSの利用ができる。
10th 正規化
リレーションの更新時に発生しうるデータの不整合、およびその解決策であるリレーションの正規化について学ぶ。
リレーションの正規化ができる。
11th データモデリング
実社会の中でデータベース化したい範囲を決定し、データ項目を抽出・整理して適切なデータ構造を決定する作業であるデータモデリングの基礎について学ぶ。
データモデリングを理解できる。
12th RDBMSの内部構成
RDBMSの内部構成、および大量のデータの中から目的とするデータに素早くアクセスする仕組みであるインデックスについて学ぶ。
RDBMSの内部構成を理解できる。
13th トランザクションと同時実行制御
アプリケーションがデータベースにアクセスする単位であるトランザクションの概念、および複数のトランザクションを正常に実行するための基礎理論について学ぶ。
トランザクションと同時実行制御を理解できる。
14th NoSQLデータベースとビッグデータ(1)
ビッグデータを扱うために開発された新しいデータベースであるNoSQLの基礎について学ぶ。この週では、NoSQLを概観し、ビッグデータを扱うためのデータモデルや実行制御理論などについて解説する。
NoSQLの基礎を理解できる。
15th NoSQLデータベースとビッグデータ(2)
ビッグデータを扱うために開発された新しいデータベースであるNoSQLの基礎について学ぶ。この週では、大規模データの並列分散管理技術やNoSQL上での分散処理手法などについて解説する。
NoSQLデータベースとビッグデータを扱うことができる。
16th 期末試験
期末試験

Evaluation Method and Weight (%)

試験発表相互評価態度ポートフォリオその他Total
Subtotal10000000100
基礎的能力0000000
専門的能力10000000100
分野横断的能力0000000