データベースシステム演習 -Database Systems Practical-
担当教員・研究室 | 単位数 | 種別 | 授業形態 | ナンバリングコード | ||
---|---|---|---|---|---|---|
|
2 単位 | 選択 | 講義 | GSD510 |
アクティブラーニング |
---|
いいえ |
授業概要 |
---|
(1) 内容
・リレーショナルデータベースの操作方法を学びます。 ・Java言語によるデータベースプログラミングの基礎を学びます。 ・NoSQL系のデータストアの基本操作を体験します。 (2) 方法 ・事前調査をもとに,DBMS等を利用したコンピュータによる演習に取り組み,レポートにまとめます。 (3) 授業形態 ・コンピュータを使った演習 |
授業における学修の到達目標 |
---|
・リレーショナルデータベースの基本的な操作を行えるようになることを目指します。
・リレーショナルデータベースを利用したアプリケーションを作成できるようになることを目指します。 ・NoSQL系データストアの特色を体験的に理解することを目指します。 |
授業計画
回数 | 授業、事前・事後学習 | 時間 | |
---|---|---|---|
1 | 事前学習 | OSSのRDBMSを調査します。 | 2 |
授業 | ガイダンス,DBMS(データベース管理システム)のインストールと実習環境の構築 | ||
事後学習 | 実習環境の構築を完了します。 | 2 | |
2 | 事前学習 | データベース定義言語やDBMSのメタコマンドを調査します。 | 2 |
授業 | SQLによる実習用データベースの構築 | ||
事後学習 | 実習用データベースの構築を完了します。 | 2 | |
3 | 事前学習 | データ操作言語を調査します。 | 2 |
授業 | 問合せ処理(単純質問,グループ化,結合質問,副問合せ) | ||
事後学習 | 課題(問合せ処理)に取り組みます。 | 2 | |
4 | 事前学習 | トランザクションの役割,仕組みを確認します。 | 2 |
授業 | 同時実行制御とトランザクション(データの挿入・更新・削除処理) | ||
事後学習 | 課題(トランザクション処理とデータの変更)に取り組みます。 | 2 | |
5 | 事前学習 | ストアドファンクション,ビューについて確認します。 | 2 |
授業 | ユーザ定義関数と機密保護機能(ビューテーブル,アクセス制御,ロギング) | ||
事後学習 | 課題(ストアドファンクション,ストアドプロシージャ,ビュー)に取り組みます。 | 2 | |
6 | 事前学習 | SQLによるデータ分析処理を調査します。 | 2 |
授業 | SQLによるデータ分析(グループ化の拡張,ウインドウ関数,CASE式) | ||
事後学習 | 課題(データ分析)に取り組みます。 | 2 | |
7 | 事前学習 | DBMSの提供している障害回復機能を調査します。 | 2 |
授業 | 障害回復機能(ダンプ機能,WALの活用)とコンフィギュレーションファイル | ||
事後学習 | 機能内容,利用方法を確認します。 | 2 | |
8 | 事前学習 | インデックスの役割,種類と仕組みについて調査します。 | 1 |
授業 | インデックスの活用とその評価 | ||
事後学習 | 性能評価実験の結果をまとめます。 | 3 | |
9 | 事前学習 | DBMSの管理ツール,ベンチマークツールを調査します。 | 1 |
授業 | 各種ツールの紹介 | ||
事後学習 | 課題(データベースアプリケーション開発用のデータベースを準備します。 | 3 | |
10 | 事前学習 | ライブラリ(API)を調査します。 | 1 |
授業 | データベースプログラミング(ライブラリの動作確認) | ||
事後学習 | テストプログラムによりライブラリの動作を確認します。 | 3 | |
11 | 事前学習 | アプリケーションプログラム(CRUD)を設計します。 | 2 |
授業 | データベースプログラミング(アプリケーション制作) | ||
事後学習 | アプリケーションの実装を完了します。 | 4 | |
12 | 事前学習 | DBMSが管理するメタデータを調査します。 | 1 |
授業 | メタデータを活用したデータベースプログラミングの制作体験 | ||
事後学習 | 課題(メタデータを活用したアプリケーション制作)に取り組みます。 | 2 | |
13 | 事前学習 | NoSQLデータストアを調査します。 | 1 |
授業 | NoSQLデータストア操作体験 | ||
事後学習 | 課題(NoSQLデータストア操作)に取り組みます。 | 1 | |
14 | 事前学習 | NoSQLデータストアAPIを調査します。 | 1 |
授業 | NoSQLデータストアプログラミング体験 | ||
事後学習 | 課題(NoSQLデータストアプログラミング)に取り組みます。 | 2 | |
15 | 事前学習 | アプリケーションの仕様を検討します。 | 2 |
授業 | NoSQLデータストアによるアプリケーション制作体験 | ||
事後学習 | 課題(NoSQLデータストアによるアプリケーション制作)に取り組みます。 | 4 |
成績評価の方法およびその基準 |
---|
演習の知見をまとめたレポートを5段階で評価しますが,演習に対する意欲や態度等(事前準備や演習における工夫,提出物の期限厳守)も加味します。
□試験:0% □小テスト:0% ■レポート:90% □演習課題:0% ■その他 [授業への参加意欲:10% ] |
課題(試験やレポート等)に対するフィードバック方法 |
---|
・フィードバックとして,レポートにコメントを返します。
・最終授業で受講者の自己評価,課題等をもとに,全体に対するフィードバックを行います。 |
教科書 |
---|
なし |
参考書・Webサイト |
---|
[1] 朝井淳;〔改訂第4版〕SQLポケットリファレンス,技術評論社(2017)
[2] 石井達夫監修;PostgreSQL徹底入門,翔泳社(2019) [3] 勝俣智成、佐伯昌樹、原田登志;内部構造から学ぶPostgreSQL設計・運用計画の鉄則,技術評論社(2018) [4] 高塚遥,桑村潤;これからはじめるPostgreSQL入門,技術評論社(2018) [5] 都司達夫、宝珍輝尚;データベース技術教科書、CQ出版社(2003) [6] 西潤史郎,山田祥寛;SQLデータ分析・活用入門,ソシム(2019) [7] 三石大、吉廣卓哉;データベース:ビッグデータ時代の基礎、共立出版(2014) その他,近年のトピックに関する参考文献は,別途紹介します。 |
単位習得が望ましい科目 |
---|
「データベースシステム」 |
備考 |
---|
なし |
担当教員の実務経験 |
---|
通算で約10年間,民間企業で通信制御系システム開発,及び民間企業の研究所でデータベースシステムに特化した研究・開発に携わった。データ分析の手法,データベースの仕組みが機能・性能に及ぼす影響など,実際にデータベースシステムを開発・運用する際に求められる基本的な知見を随所に取り入れた,授業を展開する。 |