ビッグデータ発展の背景 Hadoopの紹介

Slides:



Advertisements
Similar presentations
データベースの基礎知識 ACEESS の基本操作. データベースの基礎知識 データベース  特定のテーマや目的に毎のデータの集合体 データベースソフトウェア  データベースを作成、管理するソフトウェアの総 称 Oracle(Oracle) IBM(DB2) Microsoft(SQL Server)
Advertisements

2009年度 卒業論文 マーケットプレイス構築によるBtoBの流通改善の検証
最新ファイルの提供を保証する代理FTPサーバの開発
LZ圧縮回路の設計とハード・ソフト 最適分割の検討 電子情報デザイン学科 高性能計算研究室 4回生 中山 和也 2009/2/27.
  個人投資家向け株式分析   と予測システム A1グループ  劉 チュン.
CCC DATAset における マルウェアの変遷
データマイニングのための柔軟なデータ取得、操作を支援するAPIの設計
情報爆発A01支援班 マイサーチエンジン開発環境支援グループ 中村聡史, 大島裕明, 田中克己, 喜連川優
報告 (2006/9/6) 高橋 慧.
神奈川大学大学院工学研究科 電気電子情報工学専攻
ビジネスパターンに基づく クラウドシステムのサービスレベル設計
グループ研究1班 第一章 経営戦略とは何か 雨森 彩 大嶋 健夫 小沢 博之.
P,Q比が変更可能なScaLAPACKの コスト見積もり関数の開発
組込みシステムとは コンピュータ制御システム?
第7章 データベース管理システム 7.1 データベース管理システムの概要 7.2 データベースの格納方式 7.3 問合せ処理.
Webを利用した授業支援システムの開発 北海道工業大学 電気電子工学科 H 渋谷 俊彦.
~スマートフォン利用~ 店舗管理システムのご提案 サイボウズ中国.
「システム構成要素」 (C)Copyright,Toshiomi KOBAYASHI,
セマンティクスを利用した 図書検索システム
ビッグデータとオープンデータの違い オープンデータ ビッグデータ <イメージ> 民間 行政 ビッグデータ オープンデータ 活用の目的
高山建志 五十嵐健夫 テクスチャ合成の新たな応用と展開 k 情報処理 vol.53 No.6 June 2012 pp
ま と め メディアコミュニケーション論Ⅲ 第15回.
現金に替わる電子マネーの実装 200702894 大城 翔太 木下研究室.
1DS04169K 太田睦美 1DS04185K 高田将平 1DS04206E 森根光春
技術伝承 高技能者の手順、動作を わかりやすく動画で伝えるコンテンツを カンタンに作成できます。 ● 比較再生機能 ● 動画マニュアル
東京大学空間情報科学研究センターを 中心とした空間情報データベースの整備
拡張ボリューム 搭載NASのご紹介。 + の悩みを解決する データ管理 筐体台数の増加 全体の50% ディスク管理方法に見る
MPIによる行列積計算 情報論理工学研究室 渡邉伊織 情報論理工学研究室 渡邉伊織です。
A Brain-Friendly Guide
MPIによるwavからmp3圧縮の検証 情報論理工学研究室 04‐1‐47‐200 木村 惇一.
高速剰余算アルゴリズムとそのハードウェア実装についての研究
IoTとM2M.
リモートホストの異常を検知するための GPUとの直接通信機構
ソフトウェアを取り巻く環境の変化がメトリクスに及ぼす影響について
事務所における情報化の問題点 データが所内で共有されていない、各課ごとに個別に利用されている
実行時情報に基づく OSカーネルのコンフィグ最小化
仮想メモリを用いた VMマイグレーションの高速化
第11回 継続的監査.
複数ホストに分割されたメモリを用いる仮想マシンの監視機構
只見町 インターネット・エコミュージアムの「キーワード」検索の改善
情報検索(6) メディア検索の仕組み 教員 岩村 雅一
通信機構合わせた最適化をおこなう並列化ンパイラ
オープンソース開発支援のための ソースコード及びメールの履歴対応表示システム
予測に用いる数学 2004/05/07 ide.
オープンソース開発支援のための リビジョン情報と電子メールの検索システム
AIを用いたドローンの 新たな姿勢制御方法に関する研究
Webコミュニティ概念を用いた Webマイニングについての研究 A study on Web Mining Based on Web Communities 清水 洋志.
未使用メモリに着目した 複数ホストにまたがる 仮想マシンの高速化
中国の日系企業に最適のシステム 御社の業務に最適な3つの理由 初期投資なしで すぐに始められる ITに詳しい 担当者不要 何度でも 変更可能.
複数ホストにまたがって動作する仮想マシンの障害対策
競争の戦略 マイケル・E・ポーター 藤井 海太.
背景 課題 目的 手法 作業 期待 成果 有限体積法による汎用CFDにおける 流体構造連成解析ソルバーの計算効率の検証
PaaSの起源.
Peer-to-Peerシステムにおける動的な木構造の生成による検索の高速化
資料2-2 平成26年度 第2回技術委員会資料 次年度検討テーマ案
地方公共団体オープンデータ推進ガイドラインの概要
「モノ」を見失わずに回収できる! 温度・加速度管理付 追跡サービス
ISO23950による分散検索の課題と その解決案に関する検討
構造的類似性を持つ半構造化文書における頻度分析
メソッドの同時更新履歴を用いたクラスの機能別分類法
クラスタリングを用いた ベイズ学習モデルを動的に更新する ソフトウェア障害検知手法
IPmigrate:複数ホストに分割されたVMの マイグレーション手法
複数ホストにまたがるVMの 高速かつ柔軟な 部分マイグレーション
MPIを用いた 並列処理 情報論理工学研究室 06‐1‐037‐0246 杉所 拓也.
関数の変更履歴と呼び出し関係に 基づいた開発履歴理解支援システム
P2P & JXTA Memo For Beginners
ベイジアンネットワークと クラスタリング手法を用いたWeb障害検知システムの開発
グラフ-ベクトル変換を用いたグラフ構造表現による一般物体認識
アップデート.
Presentation transcript:

ビッグデータ発展の背景 Hadoopの紹介

絶対計算 絶対計算:大量のデータの解析に基づく分析 2つの要素の相関関係を計算することで意外な事実が見えてくる 次々に絶対計算が専門家に勝利を収めていく アッシェンフェルターによるワイン品質方程式 気温・降水量を元に計算 専門家の反発を招く → 比べ物にならないほど優秀な結果・予測を立てた MLB(メジャーリーグベースボール) 以前のスカウトの「目」に頼るものではなく選手の成績(データ)を元に獲得 これを導入したアスレチックスは21世紀最強とも言われる 映画化 「マネーボール」

他にも 無差別抽出 コンチネンタル航空 大幅な遅延やキャンセルを受けた顧客に対して無作為に2つのグループに分ける コンチネンタル航空  大幅な遅延やキャンセルを受けた顧客に対して無作為に2つのグループに分ける 1 何も受け取らなかった  → 顧客は激怒 2 御詫び状を送る → 翌年のコンチネンタル航空で費やすお金が8%増 キャピタル・ワン(カード会社) 顧客によって、引き止められる限界の金利の下げ幅を捻出 男性:DMの右上に女性の写真を貼る → 金利4.5%の値下げと同じ応答率 AMAZON 顧客ごとに商品の値段を設定(ランダム) 価格差は無作為の価格テストの結果

オープンデータ時代 LOD運動 公的機関などが保有している科学データをオープンにし(OpenData)、皆でつなげ て(Linked)、社会全体で大きな価値を生み出す為に共有しようとする取り組み オープン・ガバメント 「透明性」「国民参加」「政府間および官民の連携・協業」の3つを原則とした 三原則の中の「透明性(Transparency)を具現化したものが「Data.gov」 運輸省:出発予定時刻・実際の予定時刻・便名・飛行時間など 国防省:軍隊別の人員構成 ベンチャー企業 上記の運輸省のデータを元に航空便の出発時刻の遅刻予測サービス 総合天候保険 農家が収穫高を下回った際に備える保険 データマーケットプレイス   民間事業者がデータの円滑な流通を促すデータ取引市場 人口統計・環境・金融・小売・天気・スポーツなどのデータを売買する

ビッグデータ 「ビジネス・インテリジェンス」(BI)は存在した 膨大なデータを分析し、価値ある洞察や知見を得ようとする取り組み 代表的な会社としてGoogle, amazon, FACEBOOK等のIT業界がリード Google   :毎月900億回のweb検索の為に600ペタバイトのデータを処理 FACEBOOK:30ペタ以上のデータを保有 以前から大量のデータ分析で業績を向上させる企業は以前も存在した 売上や在庫データなどを分析し優位につながる知見を導き出す 「ビジネス・インテリジェンス」(BI)は存在した 例:ウォルマート

注意すべきこと 1 従来の売上高や在庫量など構造化された数値データの他に ウェブのクリックストリームデータやソーシャルデータ等、従来のリレーショナル・データ ベースに収まらない非構造化データを使用している 2 ウェブ企業やソーシャル企業に移る → 扱うデータの多様性・データの発生頻度が大きく違う 現在のビッグデータの蓄積・処理技術の大半は ウェブ企業・ソーシャルメディア企業が生み出してきた 例: Hadoop NoSQLなど 「DATA is the new oil」活用せずに破棄してきたデータの中にお宝が埋まっている 2012年 ビッグデータの利活用を目的にした研究開発に2億ドル ビッグデータの専門家を養成する大学院の設立

ビッグデータの定義 「ビッグデータとは、既存の一般的な技術では管理するのが困難な大量のデータ群である」 ビッグデータの特性 3V 1 Volume データ量 2 Variety 多様性 従来の構造化データ・テキストデータ・画像や動画等 3 Velocity 速度(データの発生頻度・更新頻度) 全国の道路に設置された渋滞検知センサー・路面状況センサー 日本だとSuicaやPASMOの電子マネーもビッグデータと呼んでも良い Volume BIG DATA Variety Velocity

広義のビッグデータ データサイエンティスト Hadoop NoSQL 人材・組織 機械学習 統計解析 データ処理・ 蓄積・分析技術 非構造化データ 構造化データ 狭義のビッグデータ 広義のビッグデータ データサイエンティスト Hadoop NoSQL 機械学習 統計解析

なぜ今ビッグデータなのか 我々の生活から密着した分野から生成されるようになった なぜ今ビッグデータなのか  元々ボリュームという概念に限って言えば「ビッグデータ」という考え方は存在した ・ボーイング(航空会社) ・NASA 我々の生活から密着した分野から生成されるようになった ハードウェア価格性能比の向上 ソフトウェア技術の進化 コンピュータの価格性能比の向上 (ムーアの法則) ディスク価格の下落 データ蓄積装置の価格の下落(クライダーの法則)  Hadoopの登場 処理環境を自前で用意する必要がなくなった(クラウドコンピュータ)

将来予測 現状分析から 将来予測へ 高 低 これから何が起こるのか? 貢献度 今、何が起こっているのか? なぜ起きたのか? 何が起きたのか? 予測分析 最適化 (データマイニング) なぜ起きたのか? モニタリング (ダッシュボード スコアカード) 多次元分析 (Excel) 何が起きたのか? 低 1980年代 1990年代 2000年代 2010年代

Hadoopとは 「大規模なデータを処理するための並列分散処理」 2003・2004年にGoogleが巨大な検索エンジンを支える技術を発表 主な利用用途: ログ解析・レコメンデーションエンジン・検索エンジン 企業 : 米Yahoo!・FaceBook・楽天・Amazon Hadoopのコンセプト 並列分散処理の技術を誰もが使える「汎用的な」形で提供すること (現に特殊なサーバーやストレージは必要なく、Javaでプログラム) 処理内容 Google Hadoop 分散ファイルシステム GFS: GoogleFileSystem HDFS: HadoopDistributedFS 分散処理フレームワーク MapReduce Hadoop MapReduce

Hadoop適用例 画像変換 巨大な動画データのフォーマットを変換する場合、大量のデータを小分けにし、変換 後のデータを結合することで一つのファイルに戻すことができる 統計的機械翻訳 ある自然言語を別の自然言語に変換する技術 統計的な手法を必要とし、その為に大量の計算が必要 機械学習 一定のデータを元に解析を行い、そのデータから有益なルールや傾向を見出す 音声認識や文字認識といったパターン認識・証券取引市場の動向分析 データマイニング 大量に蓄積されたデータを分析し、その中に隠れている項目間の相互関係やパ ターンを探し出す

適用領域 2. Hadoopでは一度にまとめて大量のデータを扱うため、一度だけ格納し参照することで集計処理を行う 項目 RDBMS Hadoop 1. 扱うデータサイズ ~数テラバイト ペタバイト 2. 想定するデータ操作  小さなデータの参照 大きなデータの挿入/参照 更新はない 3. レスポンスタイム 速い 遅い 4. サーバー台数と性能向上策 1桁台数でスケールアップ 数十台~数千台でスケールアウト 5. データ構造 構造化データ 準構造化データ 2. Hadoopでは一度にまとめて大量のデータを扱うため、一度だけ格納し参照することで集計処理を行う 4. スケールアップ: 一台のサーバーの能力を増強する    スケールアウト: サーバーを追加することで能力を増強する Hadoopの特徴 テラバイト以上のデータのバッチ処理に向く 拡張性に優れる 柔軟なデータ構造に対応可能

Hadoopの構成 「HDFS」: 分散ファイルシステム 「MapReduce」:並列分散処理フレームワーク それぞれ「マスターサーバー」と「スレーブサーバー」が存在 マスターサーバー:クラスタ全体を管理 スレーブサーバー:複数台ならんで実際の処理を行う HDFS :NameNode メタデータの管理 :DataNode データの読み書き MapReduce :JobTracker 一つのジョブをタスクに分割し、スレーブサーバーに対し   処理を割り振る :TaskTracker タスクを実行し応答 マスターサーバー スレーブサーバー HDFS NameNode DataNode MapReduce JobTracker TaskTracker

分散ファイル処理システム HDFS HDFS Hadoop Distribute FileSystem : Hadoop分散ファイルシステム DataNode内のデータは「ブロック」と呼ばれる 固定長に区切られた塊ごとに管理される デフォルトで64MB  大きなファイルを効率よく扱うため 各ブロックは1つのDataNodeのみに 配置されるのではなく 複数のDataNodeに配置 (レプリケーション デフォルトで3つ) HDFSクライアント NameNode(マスターサーバ) DataNode 各DataNodeが持つストレージをまとめてひとつのストレージを構成 HDFS

NameNode HDFSクラスタ全体を集中管理するサーバー 1 メタデータの管理 メタデータを元に、各DataNodeに分散している各ブロックからファイルを組み立てる 2 HDFSの使用状況の確認 各DataNodeの領域の使用状況を見ている 3 クライアントからのHDFSの操作の受付 4 DataNodeの死活管理 一定間隔でDataNodeからNameNodeに生存を伝えるパケットが送られる (ハートビート) 5 レプリカの数の制御

HDFSの利点 1 巨大なファイルを扱える 2 容量にスケーラビリティがある 1 巨大なファイルを扱える 2 容量にスケーラビリティがある 3 DataNodeの一部が故障しても、ファイルの損失を回避できる 4 シーケンシャルアクセスによる高いスループット 複数のディスクにファイルを分割して格納する scalablity : (寸法・割合などが)変更できること スレーブノードであるDataNodeを追加することで、HDFSの容量を自由に拡張できる レプリケーション : 複数のDataNodeがブロックのレプリカを持っている ラックアウェアネス: レプリカを持つDataNodeを上手く振り分ける機能 BuckupNode: NameNodeが故障した場合のサポート

HDFSの利点(2) 4 シーケンシャルアクセスによる高いスループット 大きなファイルにシーケンシャルアクセスすることに最適化されている (64MB) HDFSは一度格納されたファイルは読み出すだけのアクセスパターンを想定して いる為、更新ができない

MapReduceフレームワーク MapReduce: Google社によって提案された分散処理アルゴリズム 大規模なデータを分散処理するのに都合の良いように 「Map処理」と「Reduce処理」の2つのフェーズがある Map処理 データから処理の元にKeyとValueの組を抽出する処理 Reduce処理 抽出されたKeyとValueから目的の結果(Key,Value)を得るための処理 JobTracker :分散処理を指示 TaskTracke :実際にMap処理やReduce処理を行う マスターサーバー スレーブサーバー HDFS NameNode DataNode MapReduce JobTracker TaskTracker

MapReduceの例 例:「to be or not to be」 Map処理 入力データから何かを抽出する この場合出現した単語をKey,数字「1」をValue “to be or not to be” Map処理 be 1 to 1 be 1 or 1 not 1 to 1

中間処理(ソート) ある単語が何回登場したかをカウントしやすくするための前処理 として、同じ単語をまとめることでカウントしやすくする to 1 be 1 or 1 not 1 to 1 be 1 to be or not to 1 to 1 be 1 be 1 or 1 not 1

Reduce処理 be 1 be 1 to 1 to 1 or 1 not 1 to be or not 2 2 1 1

分散処理 “to be or not to be” Mapフェーズ “to be” “or not” “to be” to 1 be 1 Shuffle & Sort フェーズ Reduce フェーズ to 2 be 2 or 1 not 1

MapReduce フレームワークの構成 Jobクライアント 進捗状況報告 ジョブの依頼 完了通知 優先度変更 JobTracker (マスターノード) 処理割り当て 生存確認 TaskTracker TaskTracker TaskTracker

MapReduceの特徴 高いスケーラビリティを持つ Mapフェイズへの入力データは分割可能な入力データを使用 Reduceフェーズは集約したKeyごとに集約する 処理の継続性が高い JobTrackerがすべてのジョブと処理の進捗を管理している 1つに異常が発生した場合、他に再度同じ処理を割り当てる データの局所性を考慮した処理コストの低減 極力TaskTrackerと同じノードで起動しているHDFSのDataNodeのデータを利用

JobTrackerの役割 分散処理を制御するためのマスターサーバとして動作するJavaのプロセス 1 Jobの受付: JobClientから送られてきたMapReduceジョブの情報を元に Map処理で利用する入力データの分割方針を決定します 2 処理の割り当て 3 分割処理の情報把握 4 Map処理結果把握 5 処理割り当て 6 ブラックリスト化 7 処理の投機的実行 8 ジョブ履歴管理 9 ジョブ進捗通知 10 TaskTracker死活管理 11 TaskTracker追加

TaskTrackerの役割 JobTracker:司令塔とすると TaskTracker:駒 1 Childプロセスの生成と実行 2 Childプロセスの状況確認 3 処理停止の通知 4 ハートビート通信 5 Map処理数とReduce処理数の把握 実際にMap処理/Reduce処理を実行 処理割り当て 資材/設定 プロセス生成 Child JobTracker TaskTracker Heartbeat 処理状況

連携動作

国内のビッグデータ活用 コマツ 建設機械メーカー 「KOMTRAX」 初期バージョン:レンタル会社の重機にGPSを搭載し、位置情報と稼働時間を把握 →配車を効率的 盗難がなくなる 建設機械にGPSや各種センサーを取り付ける 機械の現在位置・稼働時間・稼働状況・消耗品の交換時期などを取得 燃料使用量を見る→顧客別の運転の仕方を分析 →多く燃料を使用している顧客に対しアドバイス GPS:地域別の機械の稼働時間を把握することで需要動向を予測

リクルート ネット領域の売り上げは全体の3分の1を占める ほぼ全社でHadoopを活用 下記のレコメンドツール・集客施策の効率化 Hadoopの開発・データ分析を行う全社横断組織が存在する 1週間 1年半分 マイニングツールでレコメンドを計算 Hadoop でレコメンドを計算 約8万人に配信 約20万人に配信

リクルートが考えるHadoopの真価 1 高速処理ができるゆえに、何度でもトライ&エラーを繰り返すことができる これまでの分析はデータ整備/集計の処理時間・方向転換に非常に時間が掛かる Hadoopの導入により 仮説→ローデータ作成→集計→分析 この一連のサイクルが短縮 2 サンプリングに頼らないロングテール部の解析が可能 仮説の検証にすべてのデータを用いることが可能となった 「Hadoopを使えば今までできなかったことができそう」