ネットワークコンピューティング

科目基礎情報

学校 仙台高等専門学校 開講年度 令和02年度 (2020年度)
授業科目 ネットワークコンピューティング
科目番号 0111 科目区分 専門 / 選択
授業形態 講義 単位の種別と単位数 学修単位: 2
開設学科 情報システム工学科 対象学年 5
開設期 後期 週時間数 2
教科書/教材 「パターンでわかるHadoop MapReduce」三木大知著(翔泳社)
担当教員 千葉 慎二

到達目標

情報通信ネットワークを利用したアプリケーションの作成方法を理解している。
データモデル,データベース設計法に関する基本的な概念を理解している。
処理形態の面でのコンピュータシステムの分類である集中処理システムと分散処理システムについて,それぞれの特徴と代表的な例を説明できる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
ビッグデータと分散処理の概要分散処理に必要な技術を理解し,HDFSやMapReduceの仕組みを概ね説明できている.Hadoopの関連技術について理解し,その役割を概ね説明できている.データモデル,データベース設計法に関する基本的な概念を理解できていない.
分散処理の仕組みの理解ある程度複雑な処理について,分散処理の流れを概ね説明できる.簡単な処理パターンについて処理記述のポイントを概ね説明できている.MapReduceの各フェーズの内容や処理の流れを理解できていない.
分散処理の応用プログラミングに関する理解分散処理の効率を考慮したPigプログラミンができ,課題解決への応用が概ねできている.Pigの記述と処理パターンとの対応を理解できている.Pigの記述について理解てきていない.

学科の到達目標項目との関係

教育方法等

概要:
本科目では分散コンピューティングの基礎を理解するため、Hadoopによる分散システムについて学習する。ネットショップの購入履歴,Twitterのつぶやきなど,近年膨大なデータ(ビッグデータ)を解析することで様々な有益な情報を見つけ出すデータマイニングが行われている。ビッグデータを高速処理するためのコンピューティング環境の一つであるHadoopは,様々な分散処理を単純な処理の組み合わせで実現できるオープンソースである。本科目ではHadoopによる分散処理の基礎技術を習得し,株価チャートやアクセスログの解析等の現実的な問題への適用について学習する。
授業の進め方・方法:
授業内で実施する演習・実習(100%)で評価する。
注意点:
本授業は座学での講義とそれに関連する演習・実習を適時併用しながら進めていく。Hadoopでの処理の記述方法を理解するだけではなく,現実のビッグデータに適用してデータマイニングできる応用力を身に着けることが大事であるので,演習・実習を積極的に行い,様々なデータを処理してみること。本科目で使用するHadoopの実習環境は無償で準備できるので,自宅等で実習環境を用意できる者は予習復習に活用することが望ましい。

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 ビッグデータとは何か
Hadoopのエコシステム
分散ファイルシステム
データモデル,データベース設計法に関する基本的な概念を理解している。
Hadoopの関連技術の概要が理解できる。
HDFS(Hadoop Distributed File System)について理解できる。
2週 MapReduceの基本概念
MapReduceの処理パターン
株価チャートの処理 Ⅰ
各フェーズの役割を理解できる。
処理形態の面でのコンピュータシステムの分類である集中処理システムと分散処理システムについて,それぞれの特徴と代表的な例を説明できる。
処理パターンごとの処理記述のポイントを理解できる。
Pigの使用方法を理解できる。
3週 株価チャートの処理 Ⅱ Pigのプログラムを適切な処理パターンで記述できる。
4週 テキスト解析 非構造化データ処理の記述について理解できる。
5週 アクセスログの分析 Ⅰ ユーザ定義関数を記述できる。
6週 アクセスログの分析 Ⅱ 正規表現によるパターンマッチングを使用できる。
7週 鉄道情報の分析 Ⅰ データの結合について理解できる。
8週 鉄道情報の分析 Ⅱ 情報通信ネットワークを利用したアプリケーションの作成方法を理解している。
4thQ
9週 応用課題
オープンデータについて
グループテーマ検討
オープンデータについて理解できる。
グループでオープンデータ解析に関するテーマを検討し、企画を立てることができる。
10週 応用課題
テーマシステム開発 1
グループで企画したテーマについて解析方法を検討し、メンバーへの役割分担ができる。
11週 応用課題
テーマシステム開発 2
担当項目処理についてPigプログラムで記述できる。
12週 応用課題
中間発表
今後の開発について検討
テーマ設定、各自の役割、これまでの成果について明確に示し、今後の課題、最終的な成果について考察できる。
中間発表で示された課題についてグループで検討し、成果発表に向けた計画を立案、担当分けを実施できる。
13週 応用課題
テーマシステム開発 3
Pigプログラミングによる課題解決を行うことができる。
14週 応用課題
テーマシステム開発 4
メンバーの成果をマージしてシステム全体を完成させ、データ解析結果を考察し、結果をまとめることができる。
15週 応用課題
成果発表
テーマの背景や目標、各自の役割と成果、データ解析で明らかとなったことについて明確に示すことができる。
16週 予備日

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。4後15
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。4後15
ソフトウェアアルゴリズムの概念を説明できる。3後6,後7,後8
与えられたアルゴリズムが問題を解決していく過程を説明できる。3後6,後7,後8
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。3後8,後9,後10,後12
整列、探索など、基本的なアルゴリズムについて説明できる。3後8,後9,後10,後12
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。4後3,後4,後11
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。3後4
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。4後3,後4,後11
ソフトウェアを中心としたシステム開発のプロセスを説明できる。3
コンピュータシステム集中処理システムについて、それぞれの特徴と代表的な例を説明できる。4後5
分散処理システムについて、特徴と代表的な例を説明できる。4後5
情報通信ネットワーク情報通信ネットワークを利用したアプリケーションの作成方法を説明できる。4後14
その他の学習内容データモデル、データベース設計法に関する基本的な概念を説明できる。4後1
分野別の工学実験・実習能力情報系分野【実験・実習能力】情報系【実験・実習】要求仕様にあったソフトウェア(アプリケーション)を構築するために必要なツールや開発環境を構築することができる。4後2,後3

評価割合

試験実習相互評価態度ポートフォリオその他合計
総合評価割合01000000100
基礎的能力050000050
専門的能力050000050
分野横断的能力0000000