Hadoop Introduction

Similar documents
Hadoopの全て

Microsoft PowerPoint _Hadoop.pptx


スライド 1

PowerPoint Presentation

DEIM Forum 2012 C2-6 Hadoop Web Hadoop Distributed File System Hadoop I/O I/O Hadoo

無料セミナー資料:ビッグデータ管理基盤ソフトウェアHadoop入門

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文

(Microsoft PowerPoint - Hadoop\225\224\211\357.ppt)

yamamoto_hadoop.pptx

OSS 体験セミナー Hadoop の概要 高スケーラブルな分散管理基盤 2 つのコア機能 分散ファイルシステム (HDFS) 分散処理フレームワーク (Map/Reduce) BigData の管理基盤として注目 分散処理基盤 (Map/Reduce) Hadoop 分散ファイルシステム (HDF

Elastic MapReduce bootcamp

Java講座

デジタル表現論・第6回

データセンターの効率的な資源活用のためのデータ収集・照会システムの設計

Java プログラミング Ⅰ 3 回目変 数 今日の講義講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能 変数は 型 ( データ型 ) と識別子をもちます 2 型 ( データ型 ) 変数に記憶する値の種類変数の型は 記憶できる値の種類と範囲

PowerPoint Presentation

Microsoft Word - Android_SQLite講座_画面800×1280

Microsoft Word _VBAProg1.docx

96 8 PHPlot 1. ( 8.1) 4 1: // 2: // $_SERVER[ HTTP_REFERER ]... 3: // $_SERVER[ HTTP_USER_AGENT ]... 4: // $_SERVER[ REMOTE_ADDR ]... ( ) 5: // $_SERV

JavaプログラミングⅠ

Microsoft PowerPoint - ruby_instruction.ppt

OSS Mtg

JavaプログラミングⅠ

デジタル表現論・第4回

sinfI2005_VBA.doc

GMA024F0 GridDB Web API 説明書 Toshiba Digital Solutions Corporation 2017 All Rights Reserved.

Hadoop とは 大規模なデータを並列分散処理を行うフレームワークを提供 Google による MapReduce および Google File System(GFS) の論文をベースに開発された Apache プロジェクトの OSS MapReduce MapReduce 分散処理フレームワー

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の break; まで処理しますどれにも一致致しない場合 def

第 2 章インタフェース定義言語 (IDL) IDL とは 言語や OS に依存しないインタフェース定義を行うためのインタフェース定義言語です CORBA アプリケーションを作成する場合は インタフェースを定義した IDL ファイルを作成する必要があります ここでは IDL の文法や IDL ファイ

本チュートリアルについて 14 部構成 比較的簡単なトピックから 各回 プログラミング言語 任意 チュートリアルで 新しい内容 宿題 プログラミング演習 次の週 結果について発表 もしくは話し合いをする スライドは Python で Python, C++, Java, Perl についての質問い答

AWSSummitTokyo2018

ガイダンス

Python Perl JavaScript および PHP などの ランザクション ID を利用することで 重複する処理 な Tuple が流れるかはグルーピングより決定されま 多くの言語をサポートしています を判別することができます す 6 簡単なデプロイと運用 は簡単にデプロイし 動作させるこ

Title

JavaプログラミングⅠ

PowerPoint Presentation

目次 はじめに Introduction Analyzing Big Data Vectorwise and Hadoop Environments Vectorwise Hadoop Connector Perform

1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String

新・明解Javaで学ぶアルゴリズムとデータ構造

プログラミング実習I

K227 Java 2

intra-mart Accel Platform — TableMaintenance ユーザ操作ガイド   第8版  

PowerPoint プレゼンテーション

Microsoft PowerPoint - SWoPP2010_Shirahata


Prog1_2nd

Web XXX.XXX.XXX.XXX - - [02/May/2010:12:52: ] "GET /url/url2/page2.htm HTTP/1.1" " "(compatibl

2 JSON., 2. JSON,, JSON Jaql [9] Spark Streaming [8], Spark [7].,, 2, 3 4, JSON [3], Jaql [9], Spark [7] Spark Streaming [8] JSON JSON [

Łñ“’‘‚2004

プリント


Microsoft PowerPoint pptx

PowerPoint Presentation

Microsoft Word - 商業-3

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV

復習 (SQL 文 ) 3/6 復習 (SQL 文 ) 4/6 表の作成 CREATE TABLE...; 表の削除 DROP TABLE テーブル名 ; 表内のデータが全て消えてしまう. 表内のデータを得る SELECT 列名 FROM 表名...; 表にデータを挿入する. INSERT INTO

Spark と大規模データ処理 - NAISTビッグデータアナリティクス 第2回

Java Java Java Java Java 4 p * *** ***** *** * Unix p a,b,c,d 100,200,250,500 a*b = a*b+c = a*b+c*d = (a+b)*(c+d) = 225

Prog1_6th

スライド 1

2

新・明解Java入門

intra-mart Accel Platform — TableMaintenance ユーザ操作ガイド   第7版   None

Prog1_10th

Microsoft Word - java a.doc

char int float double の変数型はそれぞれ 文字あるいは小さな整数 整数 実数 より精度の高い ( 数値のより大きい より小さい ) 実数 を扱う時に用いる 備考 : 基本型の説明に示した 浮動小数点 とは数値を指数表現で表す方法である 例えば は指数表現で 3 書く

明解Javaによるアルゴリズムとデータ構造

Microsoft Word - keisankigairon.ch doc

3,, となって欲しいのだが 実際の出力結果を確認すると両方の配列とも 10, 2, 3,, となってしまっている この結果は代入後の配列 a と b は同じものになっていることを示している つまり 代入演算子 = によるの代入は全要素のコピーではなく 先をコピーする ため 代入後の a と b は

2016 年度 JAVA 講座第六週目 目次 パッケージ... 2 パッケージの作成... 2 パッケージの使用方法... 3 異なるパッケージ同名クラスの宣言... 4 パッケージの側面から見たアクセス修飾子... 4 ラッパークラス... 5 ラッパークラス利用法:キャスト... 5 ラッパーク


intra-mart Accel Platform — IM-BloomMaker プログラミングガイド   初版  

数値計算

MS-ExcelVBA 基礎 (Visual Basic for Application)

目次 更新履歴... 1 はじめに... 3 レコードセット?... 3 準備... 5 SQL でデータを取得する... 6 データのループ処理... 7 列の値を取得する... 7 対象行を変更する (MoveFirst, MoveNext, MovePrevious, MoveLast)...

Prog1_3rd

JAVA入門

break 文 switch ブロック内の実行中の処理を強制的に終了し ブロックから抜けます switch(i) 強制終了 ソースコード例ソースファイル名 :Sample7_1.java // 入力値の判定 import java.io.*; class Sample7_1 public stati

問題1 以下に示すプログラムは、次の処理をするプログラムである

untitled

*.....J.....S.q..2013B_....

IPSJ-HPC

PowerPoint プレゼンテーション

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問

Dolteng Scaffoldに対する機能追加とマスタ-ディテールScaffoldの紹介

アジェンダ No-NoSQLによるアプローチ Hadoop ビッグデータ活用の課題 PostgreSQL Inter-Analyticsとは なぜPostgreSQL + Hadoopか Webログ分析の例 まとめ 課題と次のステップ 2

class TestPrimitiveType{ public static

QConTokyo2013_DocDatabase_agile_atWare

プログラミング基礎I(再)

Joint Content Development Proposal Tech Docs and Curriculum

先進的計算基盤システムシンポジウム Shuffle KVP KVP MapReduce KVP 7) Jimmy PageRank MapReduce.69 Jimmy KVP Jimmy key KVP value KVP MapReduce 3 PageRank 4 Jimmy M

Program Design (プログラム設計)

ExcelVBA

Java知識テスト問題

講習No.8

fp.gby

tkk0408nari

JavaからRubyへ

Transcription:

Hadoop Introduction

はじめに

Agenda Hadoopおさらい 1 HadoopStreaming 2 Hive 3 Demo (Apacheログ解析) 4 5 まとめ

Hadoop の概要

Hadoop の特徴

Hadoop クラスタ構成 マスターサーバ バッチの進捗状況管理 Map/Reduce タスク割振り NameNode JobTracker HDFS 管理 DataNode 管理 Map/Reduce タスク起動 DataNode TaskTracker DataNode TaskTracker データ ブロック送受信 HDFS Map Reduce HDFS Map Reduce スレーブサーバ #1 スレーブサーバ #N

Hadoop 適用範囲

Hadoop RDBMS

MapReduce

MapReduce ProgrammingModel

MapReduce ProgrammingModel Mapper Reducer Output Data1 Input Data Mapper Shuffle &Sort Reducer Output Data2 Mapper Map Phase Shuffle Phase Reduce Phase

MapReduce の各フェーズ

Hadoop で MapReduce JobTracker Assign Map Task Assign Reduce Task HDFS Mapper HDFS Reducer Output Data1 Input Data Mapper Shuffle &Sort Reducer Output Data2 Mapper Map Phase Shuffle Phase Reduce Phase

MapReduce Example WordCount

MapReduce Example:WordCount

MapReduce Example:WordCount JobTracker HDFS Input file : doc1 foo foo foo bar bar buz

MapReduce Example:WordCount JobTracker HDFS doc1:foo doc1:foo Mapper Input file : doc1 foo foo foo bar bar buz doc1:foo doc1:bar Mapper doc1:bar doc1:buz Mapper Map Phase

MapReduce Example:WordCount JobTracker HDFS Mapper foo:1 foo:1 Input file : doc1 foo foo foo bar bar buz Mapper foo:1 bar:1 bar:1 buz:1 Mapper Map Phase

MapReduce Example:WordCount JobTracker HDFS Mapper foo:1 foo:1 foo:<1,1,1> Input file : doc1 foo:1 bar:1 Reducer foo foo foo bar bar buz Mapper Shuffle &Sort bar:<1,1> buz:<1> bar:1 buz:1 Reducer Mapper Shuffle Phase

MapReduce Example:WordCount JobTracker HDFS Mapper foo:3 Input file : doc1 Reducer foo foo foo bar bar buz Mapper bar2 buz:1 Reducer Mapper Reduce Phase

MapReduce Example:WordCount JobTracker HDFS Mapper foo:3 HDFS Input file : doc1 Reducer foo foo foo bar bar buz Mapper bar2 buz:1 foo:3 bar:2 buz:1 Reducer Mapper Reduce Phase

Hadoop で MapReduce

public static void main...

Java 以外の言語じゃ 利用できないの?

そんなことは ありません

Hadoop で MapReduce http://pig.apache.org/ http://hive.apache.org/

Agenda Hadoopおさらい 1 HadoopStreaming 2 Hive 3 Demo (Apacheログ解析) 4 5 まとめ

Hadoop Streaming Input Data STDIN Mapper Streaming Reducer STDOUT Output Data STDOUT Shuffle & Sort STDIN

Hadoop Streaming hadoop jar $HADOOP_HOME/contrib/streaming/hadoop-streaming.jar -input inputdata -output outputdata -mapper map_exec -reducer reduce_exec

Ruby で WordCount

mapper.rb

reducer.rb

InputData( 入力データの準備 )

実行

途中経過

途中経過

OutputData( 出力結果の取得 )

Hadoop Streaming まとめ

Agenda Hadoopおさらい 1 HadoopStreaming 2 Hive 3 Demo (Apacheログ解析) 4 5 まとめ

Hive # hive -e 'select count(distinct user_id) from logs; Hive history file =/tmp/root/hive_job_log_root_2xxxxxxx_xxx.txt Total MapReduce jobs = 1... Tracking URL = ********* map = 0%, reduce = 0% map = 5%, reduce = 0%...

メリット #!/usr/bin/ruby Map.rb Reducer.rb #!/usr/bin/ruby ARGF.each do line line.chomp! line.split.each do word puts "#{word} t1" end end data = Hash.new { h,k h[k] = 0} ARGF.each do line line.chomp! key, value = line.split(/ t/) data[key] += 1 end data.each do k,v puts "#{k} t#{v}" end select count(distinct user_id) from logs; MapReduce を意識することなく SQL ライクに記述可能

デメリット

HiveQL

HiveQL

テーブル作成

テーブル作成 型の種類 データ型名 内容 TINYINT 1Byteの整数 整数型 SMALLINT 2Byteの整数 INT 4Byteの整数 BIGINT 8Byteの整数プリミティブ型 FLOAT 単精度の浮動小数点浮動小数点型 DOUBLE 倍精度の浮動小数点 論理型 BOOLEAN TRUEとFALSE 文字列型 STRING 文字列 配列型 ARRAY < データ型 > データ型を配列として扱う マップ型 MAP < プリミティブ型, データ型 > Key, Value 形式でデータを扱う 構造型 STRUCT< カラム名 : データ型,,,> 複数のデータ型を構造化する

テーブル作成

テーブル作成 構文 FIELDS COLLECTION ITEMS MAP KEYS LINES SERDE 内容 フィールド ( 項目 ) の区切り文字を指定する デフォルトは 0x01 コレクション ( 配列 ) の区切り文字を指定する デフォルトは区切り文字無し マップのキーと値の区切り文字を指定する デフォルトは区切り文字無し 行の区切り文字を指定する デフォルトは n SerDe( シリアライズ デシリアライズ ) クラスを指定する

テーブル作成 CREATE TABLE logs(id INT, created_at STRING) ROW FORMAT DELIMITED FIELDS TERMINATED BY, LINES TERMINATED BY' n'; CREATE TABLE logs(id INT, created_at STRING) PARTITIONED BY(date STRING) ROW FORMAT DELIMITED FIELDS TERMINATED BY, LINES TERMINATED BY' n';

テーブル操作

テーブル情報表示

データの格納

データの格納 LOAD DATA LOCAL FILEⅩ INTO table_name FILEⅩ HIVE HDFS LOAD DATA FILEY INTO table_name FILEY

データの格納

データの抽出

データの絞込み

データの並び替え

データの集計処理

テーブルの結合

Hive

Agenda Hadoopおさらい 1 HadoopStreaming 2 Hive 3 Demo (Apacheログ解析) 4 5 まとめ

Apache ログ解析 googlebot.com - - [01/May/2012:00:07:57 +0900] "GET /robots.txt HTTP/1.1" 404 216 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" rate-limited-proxy-209-85-238-7.google.com - - [01/May/2012:00:07:59 +0900] "GET / HTTP/1.1" 200 21120 "-" "DoCoMo/2.0 N905i(c100;TB;W24H16) (compatible; Googlebot-Mobile/2.1; +http://www.google.com/bot.html)" rate-limited-proxy-209-85-238-7.google.com - - [01/May/2012:00:28:53 +0900] "GET /?feed=rss2 HTTP/1.1" 304 0 "-" "Feedfetcher-Google; (+http://www.google.com/feedfetcher.html; 2 subscribers; feed-id=16492007851965158684)" niederhausen.tm.informatik.uni-leipzig.de - - [01/May/2012:00:33:56 +0900] "GET /robots.txt HTTP/1.1" 404 216 "-" "findlinks/2.5 (+http://wortschatz.uni-leipzig.de/findlinks/)" 61-23-123-166.rev.home.ne.jp - - [01/May/2012:01:06:33 +0900] "GET /wp-content/themes/inove_labsot/style.css HTTP/1.1" 200 29755 "http://labs.opentone.co.jp/" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)" 61-23-123-166.rev.home.ne.jp - - [01/May/2012:01:06:33 +0900] "GET /wp-content/themes/inove_labsot/style.css HTTP/1.1" 200 29755 "http://labs.opentone.co.jp/" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)" 61-23-123-166.rev.home.ne.jp - - [01/May/2012:01:06:33 +0900] "GET /wp-content/themes/inove_labsot/pagenavi-css.css?ver=2.60 HTTP/1.1"

Apache ログ解析 : テーブル作成

Apache ログ解析 : データ格納

Apache ログ解析 : 集計

Apache ログ解析 : 結果

Agenda Hadoopおさらい 1 HadoopStreaming 2 Hive 3 Demo (Apacheログ解析) 4 5 まとめ

まとめ

まとめ

ご清聴ありがとうございました