到達目標
本科目では、データベースの実現および運用のための基礎的な手法について講義を行う。具体的には、現実のデータを計算機に格納する枠組を記述するためのデータのモデル化、大量データを計算機に効率よく格納し取り出すための方法、データを定義し質問を行うための言語および多くの利用者間でデータの同時使用を可能とするための制御についてである。データベースの概念を正確に理解し、データ管理のための設計、データベース言語SQLによるプログラミング、システム運用など、主専門分野の知識と技術を深く学び、システム思考ができるよう学習する。そして、データ管理に関する問題に柔軟に対処でき、専門分野の知識や技術を用いて、課題に適応する具体的なシステムを設計できることを目標とする。
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | データのモデル化、大量データを計算機に効率よく格納し取り出すための方法を理解し、システムを設計できる。 | データのモデル化、大量データを計算機に効率よく格納し取り出すための方法を理解できる。 | データのモデル化、大量データを計算機に効率よく格納し取り出すための方法を理解できない。 |
評価項目2 | データベース言語SQLによるプログラミング、システム運用できる。 | データベース言語SQLによるプログラミング、システムを理解できる | データベース言語SQLによるプログラミング、システムを理解できない |
評価項目3 | データ管理に関する問題に柔軟に対処できる。 | データ管理に関する問題を把握できる。 | データ管理に関する問題を把握できない。 |
学科の到達目標項目との関係
学習・教育到達度目標 (D)
説明
閉じる
学習・教育到達度目標 (F)
説明
閉じる
学習・教育到達度目標 (H)
説明
閉じる
教育方法等
概要:
プログラムとデータを分離して管理することは重要である。データを独立して管理する方法として広く利用されているデータベースシステムを理解することで、長期間にわたって安定的にデータを使用可能とする技術について学ぶ。本科目では、データとは何か、データベースでは何を管理していくのか、その実装方法はどのようになっているのかを俯瞰的に学習していく。
授業の進め方・方法:
授業と演習
注意点:
少なくとも1つ以上のプログラミング言語を習得しておくことを履修条件とする。 データ構造とアルゴリズム関連の知識を有していることが望ましい。
合格の対象としない欠席条件(割合) 1/3以上の欠課
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
後期 |
3rdQ |
1週 |
イントロダクション 情報社会におけるデータベースの役割について述べ、データモデル、データベース管理システム、本講義で中心となるリレーショナルデータベース管理システム(RDBMS)などの概念について解説する。 |
データベースの役割、データベースの学術利用、業務利用、その意義と用途を理解できる。
|
2週 |
データベースのための基礎理論 データベースの基礎と応用を理解するための基盤となる基礎理論を学ぶ。具体的には、集合とその演算、組(タプル)などを解説し、組の集合としてのリレーションを紹介する。 |
データベースのための基礎理論を理解できる。
|
3週 |
リレーショナルデータモデル RDBMSで利用されるデータモデルであるリレーショナルデータモデルについて学ぶ。リレーションの枠組み(リレーションスキーマ)、データに対する様々な制約、主キー、外部キーなどの概念について解説する。 |
リレーショナルデータモデル を理解できる。
|
4週 |
リレーショナル代数(1) RDBMSにおけるデータ操作の基礎理論となるリレーショナル代数について学ぶとともに、演習問題によって理解を深める。この週では主に集合演算、1つのリレーションに対する関係演算を取り上げる。 |
リレーショナル代数(1) を理解できる。
|
5週 |
リレーショナル代数(2) RDBMSにおけるデータ操作の基礎理論となるリレーショナル代数について学ぶとともに、演習問題によって理解を深める。この週では主に2つのリレーションに対する関係演算を取り上げる。 |
リレーショナル代数(2) を理解できる。
|
6週 |
SQL(1) RDBMSの利用全般に用いられる言語SQLについて学ぶとともに、演習問題によって理解を深める。この週では、リレーションへのデータ登録・削除・更新、簡単な問合せなど、基本的なSQLの使い方を取り上げる。 |
RDBMSの利用全般に用いられる言語SQLの気泡んを理解できる。
|
7週 |
SQL(2) RDBMSの利用全般に用いられる言語SQLについて学ぶとともに、演習問題によって理解を深める。この週では、SQLにおける問合せを行うselect文の詳細を取り上げる。
|
RDBMSの利用全般に用いられる言語SQLを作成できる。
|
8週 |
中間試験 |
中間試験
|
4thQ |
9週 |
プログラムからのRDBMSの利用 C言語やJava言語など、汎用プログラミング言語で書かれたプログラムからRDBMSを利用する方法について学ぶ。 |
プログラムからのRDBMSの利用ができる。
|
10週 |
正規化 リレーションの更新時に発生しうるデータの不整合、およびその解決策であるリレーションの正規化について学ぶ。 |
リレーションの正規化ができる。
|
11週 |
データモデリング 実社会の中でデータベース化したい範囲を決定し、データ項目を抽出・整理して適切なデータ構造を決定する作業であるデータモデリングの基礎について学ぶ。 |
データモデリングを理解できる。
|
12週 |
RDBMSの内部構成 RDBMSの内部構成、および大量のデータの中から目的とするデータに素早くアクセスする仕組みであるインデックスについて学ぶ。 |
RDBMSの内部構成を理解できる。
|
13週 |
トランザクションと同時実行制御 アプリケーションがデータベースにアクセスする単位であるトランザクションの概念、および複数のトランザクションを正常に実行するための基礎理論について学ぶ。 |
トランザクションと同時実行制御を理解できる。
|
14週 |
NoSQLデータベースとビッグデータ(1) ビッグデータを扱うために開発された新しいデータベースであるNoSQLの基礎について学ぶ。この週では、NoSQLを概観し、ビッグデータを扱うためのデータモデルや実行制御理論などについて解説する。 |
NoSQLの基礎を理解できる。
|
15週 |
NoSQLデータベースとビッグデータ(2) ビッグデータを扱うために開発された新しいデータベースであるNoSQLの基礎について学ぶ。この週では、大規模データの並列分散管理技術やNoSQL上での分散処理手法などについて解説する。 |
NoSQLデータベースとビッグデータを扱うことができる。
|
16週 |
期末試験
|
期末試験
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | その他の学習内容 | データモデル、データベース設計法に関する基本的な概念を説明できる。 | 4 | |
データベース言語を用いて基本的なデータ問合わせを記述できる。 | 4 | |
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 100 | 0 | 0 | 0 | 0 | 0 | 100 |
基礎的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
専門的能力 | 100 | 0 | 0 | 0 | 0 | 0 | 100 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |