47
ビッグデータ利活用の要素技術 ICT力

ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

ビッグデータ利活用の要素技術

ICT力

Page 2: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

目的

分析目的やデータ特性に応じたビッグデータの処理技術に関するICT知識を身につける

クラウドコンピューティングをふまえたデータ分析環境の整備をするためのICT 知識を身につける

クラウド環境をつなぐネットワークと、それに伴うセキュリティについて理解できるようになる

Page 3: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

目標

分析目的・データ特性に応じたデータ分析環境を整備することができる

クラウド環境をつなぐネットワークで発生する課題を理解し、正しい対策が実施できる

ビッグデータが配置される環境を認識し、必要なセキュリティ対策を選択できる

Page 4: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

前提

自社環境、自社システムについての知識があること

ICT技術に携わっていること

Page 5: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

目次(ビッグデータ利活用の要素技術)

1. ビッグデータの利活用環境

2. データベース・アプリケーションの選定

3. クラウド環境をつなぐネットワークとセキュリティ

4. まとめ

5. 発展学習への誘い

6. その他、参考

Page 6: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

目標

1. ビッグデータの利活用環境

ビッグデータの種類について説明できる

構造化データ、準構造化データ、非構造化データに該当するデータの例を挙げることができる

Page 7: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

1. ビッグデータの利活用環境

1.1. ビッグデータの種類

1.2. ビッグデータの処理技術の概要

1.3. ビッグデータの通信時の懸念事項

Page 8: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

1.1. ビッグデータの種類

データベース

センサーデータSNSなどに

書き込まれたデータ

構造化データ

準構造化データ

非構造化データ

音声 画像文書 動画

ログデータ

Page 9: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

1.1.1. 構造化データ

コンピュータが処理しやすいようにあらかじめ構造が定義され、整理されたデータ

リレーショナルデータベースで扱うことに向く

ID 氏名 住所 電話番号

100 古川宏子 大阪市 090-XXX-XXXX

101 佐伯康子 名古屋市 090-XXX-XXXX

102 佐野怜 横浜市 090-XXX-XXXX

顧客データ

氏名

住所

申込み日: 2014/10/10

電話番号

佐伯 康子

名古屋市

090-XXX-XXXX

項目があらかじめ決められている RDB

Page 10: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

1.1.2. 非構造化データ

あらかじめ定義された構造を持たないデータ

意味を持たせるためには分析が必要

ソーシャルメディアの書き込み

入力テキスト

マイニングツール

データサイエンティスト

出力

分析モデルの定義とデータ分析

分析レポート

非構造化データ (ソーシャルメディアデータ) のビッグデータ利用イメージ

池袋のラーメンが美味しかった!

いいね!コメント・・・

Page 11: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

1.1.3. 準構造化データ

非構造化データのうち、データの一部に構造があるデータ

2014,09.06.,20:53:25,start main( __argc, __argv );2014,09.06.,20:53:25,enter main function.2014,09.06.,20:53:25,Now start services dispatch2014,09.06.,20:42:46,XXX flag has not been set at ../XXX/XXX/XXX/XXX.config2014,09.06.,20:44:20, ---service_ctrl:SERVICE CONTROL SHUTDOWN------------2014,09.06.,20:44:20,CheckTimeOut_shutdown:Update <0> Reg files

①ログデータ (CSV形式)OS起動時のログファイルのイメージ

<?xml version=“1.0” encoding=“UTF-8” standalone=“yes”?><title>今日のランチ</title><posted date>2014/10/10</posted date><key word>ランチ</key word><body>ラーメン美味しかった!</body>

②ブログデータ (XML形式)準構造化データのサンプル

Page 12: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

1.2. ビッグデータの処理技術の概要

データを把握・収集

データを蓄積・加工

データを集計・分析

活用(例)

統計データ

遠隔監視

需要管理

運行管理

決済管理

情報生成

クラウド環境(IaaSなど)

分析のためのDWH

データマート

分散コンピューティング

ストリームコンピューティング CEP

データマイニング

大量データの蓄積

NoSQL

GIS(Geographic Information System)

機械学習

自然言語処理

協調フィルタリング

パターン認識人手による入力データ

SNSなどの情報発信

閲覧・購買・通信の動態

事業者保有データ

センサーデータ

ETL

オンライン分析処理

統計分析

IoT(M2M)

Page 13: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

• パターン認識

• 協調フィルタリング

• 自然言語処理

機械学習のイメージ

コンピューターが、データから特徴やルールを見出す(学習する)こと

1.2.1. 機械学習の概要(1/2)

ビッグデータを使いこなすための技術として注目されている

機械学習の応用分野の例

データ

数理モデルをもとに未知のデータを処理

データ

アウトプット

• 汎化能力未知のデータを正しく予測できる能力

• 過学習未知のデータを正しく予測できない状態

押さえておきたい用語

特徴抽出・数理モデルを作成、保存

Page 14: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

「教師あり学習」のイメージ 「教師なし学習」のイメージ

入力データに対応する出力を予測 入力データの特徴を学習して発見

1.2.1. 機械学習の概要(2/2)

x y

yx

訓練データ

① 訓練データ(入出力データ、xとy)を与え、入出力関係を学習させる

② 未知のデータxを与えた際、

出力を正しく判断できるようにする

① 入力データのみを与えて、そのデータ特徴を学習させ、分類をする

→ 迷惑メール判定、株価予測などに使われている

→ クラスタリング、不正アクセス検出などに使われている

入力データ

f(x) = y

Page 15: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

GISのイメージ

基盤地図情報と、統計データ等を、統合的に扱うシステムのこと

1.2.2. GISの概要

地図データ上で、様々な情報の関連性が一目で分かる

地理空間情報をデータ毎に管理

地図上で重ね合わせ

位置関係の把握データ検索、

表示、関連分析

GISのながれ

統計、台帳データ等

• 多くの情報の関連性を一目で把握することができる

• 図面上で情報の集約、整理をすることができる

GISの特徴

基盤地図情報• 災害時などに、正確、迅速、効果的

な意思決定を行うことができる

GISの可能性

参考:総務省, 「G空間×ICT推進会議」報告書の公表-空間情報と通信技術を融合させ、暮らしに新たな革新をもたらす-

Page 16: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

通信帯域の占有

正確性 機密性

可用性

1.3. ビッグデータの通信時の懸念事項

BigData

解決するツール24時間

365日 HULFT

OracleData Integrator

OracleGoldenGate

OracleActive DataGuard

懸念事項

Page 17: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

1.4. 確認テスト

ビッグデータの種類 以下の表の空欄を埋めてください

ビッグデータの種類 データの例

構造化データ

準構造化データ

非構造化データ

Page 18: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

目標

2. データベース・アプリケーションの選定

分析目的に応じたデータ分析環境を整備することができる

データ特性に応じたデータ分析環境を整備することができる

Page 19: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

2. データベース・アプリケーションの選定

2.1. NoSQLの概要

2.2. NoSQLの代表的な種類

2.3. ストリームコンピューティングの概要

2.4. 分散コンピューティングの概要

2.5. Hadoop

Page 20: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

2.1. NoSQLの概要(1/2)

NoSQLとRDBMSとの比較

NoSQL RDBMS

保存に適するデータ

非構造化データ 構造化データ

スキーマ定義 事前定義不要データ構造を変更しやすい

事前定義が必要固定的で変更しにくい

データの一貫性 比較的緩い大容量データの高速処理を優先、結果的な一貫性

同時実行制御があるデータの一貫性を重視

データ操作命令 多様なデータアクセス言語 SQL言語(SELECT、INSERT、UPDATE、DELETE)

拡張方式 スケールアウト スケールアップ

Page 21: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

2.1. NoSQLの概要(2/2)

データベースの拡張方式の比較

RDBMS スケールアップ より大容量の

ストレージ

NoSQL スケールアウト

Page 22: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

2.1. NoSQLの概要(2/2)

スケールアップ スケールアウト

適するDBMS RDBMS NoSQL

コストライセンス 1台分 拡張した数

サーバ 高性能なもの(高) 汎用性なもの(低)

運用面 1台の管理 複数の管理

処理性能の限界 限界がある 限界はない

耐障害性 低い、高コスト 高い、低コスト

拡張方式の比較

1. 一貫性維持が緩い2. 個々の処理が比較的簡単3. 多数の処理を同時並列

サーバに合った拡張を!!

Page 23: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

(参考) DBMSの種類

RDBMS

NoSQL

• 行指向型

• キー・バリュー型• 列指向型• ドキュメント型• グラフ型

高 データの一貫性 低データ操作

可用性

処理速度

Page 24: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

2.2. NoSQLの代表的な種類 (1/2)

キー・バリュー型

キー 値

追加

列指向型

行キー 増減可能な複数のカラム

追加

Page 25: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

ドキュメント型 グラフ型

2.2. NoSQLの代表的な種類 (2/2)

リレーションシップ

ノードID ID ID ID

フラットに管理されたドキュメント

{ “title” : “今日のランチ”“userName” : “Morimoto”“postedDateTime” : “2014/10/10 13:00”“content” : “ラーメン美味しかった!”}

Page 26: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

従来の処理方式 ストリームコンピューティング

流れるデータを一旦保管して分析→過去の事実を発見

流れるデータをリアルタイムに分析→直近の事実を発見

アクションまでの時間が短く、速く予測することが可能

2.3. ストリームコンピューティングの概要

データ

データ

②クエリーをかける

①保管

アクションまでの時間

ビッグデータをリアルタイムに高速処理できる

テーブル

データ処理

Page 27: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

処理結果を統合

分散コンピューティングのイメージ

2.4. 分散コンピューティングの概要(1/2)

膨大なデータ

処理

処理結果

処理

処理結果

処理

処理結果

Page 28: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

2.5. Hadoop

分散処理フレームワーク Hadoop Distributed File System(HDFS)

・・・

Hadoop MapReduce

・・・

説明

用途 大量テキストデータなどの非構造化データの解析業務システムの大量バッチ処理

動作環境 LinuxJVM (開発言語はJava)

プログラミング APIを利用したJavaによるプログラミング

バッチ処理向けに高いデータ転送を実現する分散ファイルシステム

複数のサーバーを用いて、大量データを並列分散処理するプログラムのためのソフトウェア

Page 29: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

2.5.1. HDFS (Hadoop Distributed File System)

データノード群

HDFS

HDFS

仮想的なひとつのファイルシステム

スレーブ(従属)ノードの管理

HDFS

HDFS

マスターノードの命令を実行

Page 30: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

2.5.2. Hadoop MapReduce

分解・抽出 集約・処理

分解されたデータ

キー 値

集約・処理済データ

①Map処理 ②Reduce処理

a ×××

a ×××

c ×××

b ×××

b ×××

a ×××

b ×××

c ×××

HDFS HDFS

データノード

データノード

データノード

データノード

データノード

データノード

Page 31: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

2.6. 確認テスト

NoSQLとRDBMSとの比較 以下の表の空欄を埋めてください

NoSQL RDBMS

保存に適するデータ

スキーマの事前定義(要 / 不要)

データの整合性

拡張方式(スケールアウト /スケールアップ)

Page 32: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

目標

3. クラウド環境をつなぐネットワークとセキュリティ

クラウド環境をつなぐネットワークで発生する課題に対する対策を理解する

ビッグデータが配置される環境を理解して、必要なセキュリティ対策を選択できる

Page 33: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

3. クラウド環境をつなぐネットワークとセキュリティ

3.1. クラウド環境におけるデータの配置場所

3.2. クラウド環境をつなぐネットワークの課題

3.3. 仮想化技術

Page 34: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

3.1. クラウド環境におけるデータの配置場所

ハイブリッドクラウド

クラウド事業者

A社

オンプレミス

データが配置されている場所

③②

Page 35: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

3.2. クラウド環境をつなぐネットワークの課題

A社 B社

クラウド事業者X

クラウド事業者Y

ビッグデータ

Page 36: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

3.2.1. (参考)データの重複排除

De-duplication技術のイメージ

ストレージ

ファイル1

A B C D E

ファイル2

B X D Y

重複

A B

C

D

E

XY重複

Page 37: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

3.3. 仮想化技術

App.

OS

App.

OS

サーバ仮想化のイメージ

App.

OS

ユーザ ユーザ ユーザ

Page 38: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

3.3.1. (参考)サーバ仮想化の手法

仮想化ソフトウェア

ハイパーバイザ型

VM

ゲストOS

VM

ゲストOS

VM

ゲストOS

仮想化ソフトウェア(ハイパーバイザ)

物理マシン

ホストOS型

仮想化ソフトウェア

ホストOS

物理マシン

VM

ゲストOS

VM

ゲストOS

VM

ゲストOS

Page 39: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

3.3.2. サーバ仮想化固有の攻撃 (1/2)

ハイパーバイザ

VM VM VM

①ハイパーバイザの奪取

ハイパーバイザ

VM VM VM

②VMエスケープ

ハイパーバイザにコードを挿入して実行

攻撃対象

攻撃者攻撃者

別のハイパーバイザに置き換え、仮想マシンの制御を奪う

Page 40: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

3.3.2.サーバ仮想化固有の攻撃(2/2)

③ホッピング ④VM盗難

ハイパーバイザ

VM VM VMハイパーバイザ

VM VM VM ディスク

イメージファイル

コピー入手

攻撃者 攻撃者

攻撃対象

別の仮想マシン上でコードを実行

Page 41: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

3.3.3. サーバ仮想化におけるセキュリティ

仮想環境対応ファイアウォール

ハイパーバイザで動作するアンチウィルスソフト

課題

対策

仮想マシン間通信の監視の難しさ

個々の仮想マシンごとにアンチウィルスソフトやファイアウォールを導入する必要性

Page 42: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

4. まとめ

ビッグデータの利活用環境

データベース・アプリケーションの選定

クラウド環境をつなぐネットワークとセキュリティ

Page 43: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

5. 発展学習への誘い

参考文献 総務省,情報通信審議会ICT基本戦略ボード「ビッグデータの

活用に関するアドホックグループ」資料http://www.soumu.go.jp/main_content/000160715.pdf

総務省,「情報セキュリティ対策に関連する既存の基準・ガイドライン」資料http://www.soumu.go.jp/main_sosiki/joho_tsusin/policyreports/chousa/asp_saas/pdf/hosoku_si1-3.pdf

クラウドコンピューティング 情報セキュリティに関わる利点、リスクおよび推奨事項(ENISA 翻訳監修 IPA 2012)

NOSQLの基礎知識 (ビッグデータを活かすデータベース技術)

著者:本橋信也、河野達也、鶴見利章、太田 洋(監修)

出版社:リックテレコム

すべてわかる仮想化大全2013 (日経BPムック)

Page 44: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

6. その他、参考

用語用語 解説

クラウド ソフトウェアやデータなどをインターネットを通じて利用するコンピュータの利用形態

オンプレミス 自社・自組織で所有する従来型のシステム

SaaS インターネット経由でアプリケーションがサービスとして提供されるクラウドの提供形態

PaaS アプリケーションのプラットフォーム(基盤)を提供するクラウドの提供形態

IaaS インフラ(ハードウェア)を提供するクラウドの提供形態

パブリッククラウド インターネット経由で不特定多数のユーザに共有されるクラウド

プライベートクラウド 特定の企業や組織が利用するクラウド

ハイブリッドクラウド パブリッククラウドとプライベートクラウドを組み合わせて構築したクラウド

Page 45: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

1.4. 確認テスト

ビッグデータの種類 以下の表の空欄を埋めてください

ビッグデータの種類 データの例

構造化データデータベースに格納されたデータ など(顧客テーブルデータ、受注テーブルデータ など)

準構造化データログデータ、センサーデータ、SNSに書き込まれたデータ など

非構造化データ 文書、音声、動画、画像 など

Page 46: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

2.7. 確認テスト

NoSQLとRDBMSとの比較 以下の表の空欄を埋めてください

NoSQL RDBMS

保存に適するデータ 非構造化データ 構造化データ

スキーマの事前定義(要 / 不要)

不要 必要

データの整合性 比較的緩い 同時実行制御がある

拡張方式(スケールアウト /スケールアップ)

スケールアウト スケールアップ

Page 47: ビッグデータ利活用の要素技術 - BODIK · 1.1.1. 構造化データ コンピュータが処理しやすいようにあらかじめ 構造が定義され、整理されたデータ

参考文献

Copyright (c) 2014 Ministry of Internal Affairs and Communications All Rights Reserved

このテキスト(又はカリキュラム)は、総務省の『高度ICT利活用テキスト(実践編ビッグデータ利活用の要素技術)』に改変を加えたものです。

参考:総務省, 「G空間×ICT推進会議」報告書の公表-空間情報と通信技術を融合させ、暮らしに新たな革新をもたらす-