SlideShare a Scribd company logo
GIS Tools for Hadoopを用いた
ビッグデータ処理の検証

石崎 一隆

2013年11月2日
発表の経緯
• Esriジャパン社のGISコミュニティフォーラムの
「ビッグデータ活用ソリューションセッション」
に興味を持つ

• 紹介されたGIS Tools for Hadoopを試す
• 試したので紹介

2
発表の流れ
•
•
•
•

Hadoop
GIS Tools for Hadoop
GIS Tools for Hadoop と ArcGIS 比較
まとめ

3
Hadoop
について

4
ビッグデータとは

通話情報

自動車のGPS情報

SNS
株価情報

SNSにホストされる写真情報
5
ビッグデータの処理
• 注目されている技術は

6
Hadoop とは
• ビックデータを複数のサーバを利用して
分散処理するソフトウェア
• サーバ台数を増やしスケールアウト可能
• ライセンスはApache License, Version 2.0
• Open Source

7
Hadoopを利用するには 1
Apache Hadoopプロジェクトから利用
• Apache Hadoop
http://hadoop.apache.org/

8
Hadoopを利用するには 2
ディストリビューションから利用
• Cloudera CHD Clouders’s Distribution including Apache Hadoop
http://www.cloudera.com/hadoop/

• Hortonworks HDP

Hortonworks Data Platform

http://hortonworks.com
※ エディションにより有償
9
Hadoopを利用するには 3
クラウドサービス提供のHadoopから利用
• Amazon Elastic MapReduce
Amazon Elastic Compute Cloud(Amazon EC2)、
Amazon Simple Storage Service(Amazon S3)上で
Hadoopが稼動
※ サービスを利用するので有償

10
Hadoopに必要な環境
4台のサーバのクラスタ
例
各サーバに必要
・CentOS、RHEL等
・Oracle JDK
・SSHの設定

タスク管理

・DataNode
・
TaskTracker
・DataNode
・
TaskTracker

・NameNode
・SecandaryNameNode
・JobTracker

・DataNode
・TaskTracker
11
Hadoopの役割
HDFS

タスク実行

分散ファイルシステム

mapReduce

タスクの実
行

データ処理のプログ
ラミングモデル
タスク管理

・DataNode
・TaskTracker

タスク実
行
・DataNode
・TaskTracker

・NameNode
・SecandaryNameNode
・JobTracker

・DataNode
・TaskTracker
12
データフロー
mapが処理
mapが処理
入力データ

HDFSに配置

reduceが
処理
計算結果

mapが処理

Javaを利用して
map関数作成

Javaを利用して
reduce関数作成
13
GIS Tools for Hadoop
について

14
GIS Tools for Hadoop とは
• Esri社が開発したツール
※Esri社のサポート対象外です

•
•
•
•

Hadoopを利用して空間分析が可能
ArcGISとHadoopの連係が可能
ライセンスはApache License, Version 2.0
Open Source

15
GIS Tools for Hadoop の構成
• Esri Geometry API for Java
Hadoopを利用した空間解析API

• Spatial Framework for Hadoop
Esri Json等のAPI
Hiveから利用可能

• GeoProcessing Tools for Hadoop
ArcGIS DesktopとHadoop間の相互交換

16
GIS Tools for Hadoopドキュメント類
• Esri Geometry API for Java APIドキュメント
http://esri.github.io/geometry-api-java/javadoc/

• Spatial Framework for Hadoop APIドキュメント
http://esri.github.io/spatial-framework-for-hadoop/json/

• Spatial Framework for Hadoop UDFドキュメント
https://github.com/Esri/spatial-framework-for-hadoop/wiki/UDF-Documentation

17
Esri Geometry API for Java API
APIの例
• contains
フィーチャ1がフィーチャ2に含まれるか

• Crosses
フィーチャ1がフィーチャ2に交差しているか

• Buffer
フィーチャに指定距離のバッファ作成

18
Spatial Framework for Hadoop
UDFの例
• ST_Polygon
座標からポリゴン作成

• ST_Length
長さ計算

• ST_Intersects
重なる図形の重なりを計算

19
ダウンロード先
• Esri Geometry API for Java
https://github.com/esri/geometry-api-java

• Spatial Framework for Hadoop
https://github.com/Esri/spatial-framework-for-hadoop

• GeoProcessing Tools for Hadoop
https://github.com/Esri/geoprocessing-tools-for-hadoop
• サンプル
https://github.com/Esri/gis-tools-for-hadoop

20
必要なパッケージ
• Hadoop
• Hive
HDFSのデータをSQLライク構文で扱う

• Oozie
Hadoopのジョブの実行、スケジュール

21
ArcGISから実行

GeoProcessing Tools for Hadoop
ArcGISのToolBoxに追加

モデルを作成

Javaでプログラム作成
又は
HiveでSQL作成

Oozieのworkflow.xml作成

実行

22
Javaのプログラム構成
• MapReduceのジョブを実行するコード
Esri JSON、入力データのパス、MapReduce の処理結果の
パスの処理

• Mapクラス
入力データの処理を行う
GIS Tools for Hadoopは主にMapクラスに記述

• Reduceクラス
mapクラスの結果を処理し出力
23
GIS Tools for Hadoop
と ArcGIS 比較

について

24
GIS Tools for Hadoop、ArcGIS 比較
GIS Tools for Hadoop の構成
Windows7 Ultimate x64

Xeon 2.40GHz
メモリ 8GB

ArcGIS 10.1 for Desktop Basic

CentOS5.6 x64

CentOS5.6 x64

Xeon 2.40GHz
メモリ 16GB

Oracle JDK
Java Ver 1.7.0_25

Oracle JDK
Java Ver 1.7.0_25

ArcGISの構成
Windows7 Ultimate x64

Xeon 2.40GHz
メモリ 8GB
25

ArcGIS 10.1 for Desktop Basic
比較条件
6,779ポリゴンの市町村界
(島含む)

272,693 位置参照情報の街区
レベル情報

市町村界に含まれる街区ポイントの合計値を計算しポリゴンに付与

※前処理
・ ArcGISは位置参照情報をポイントフィーチャへ変換
・ Hadoopは位置参照情報の文字コードをEUCへ変換し、
HDFSへ移動

26
ArcGISの検証

6,779ポリゴンの市町村界
(島含む)

属性の結合とリレート
→ 結合
27
GIS Tools for Hadoopの検証
6,779ポリゴン →
ESRI JSON

ESRI JSON →
HDFS

HDFS →
ESRI JSON

6,779ポリゴンの市町村界に
272,693ポイントの位置参照情報の街区レベル情報
が含まれるか処理

ESRI JOSN →
GeoDatabase テーブル

6,779ポリゴンの市町村界
に合計値を付与
28
検証結果

ArcGIS

GIS Tools for Hadoop
変換時間

結果不一致数

GIS Tools for Hadoop

2分28秒

7 / 188市区町村

ArcGIS

7分41秒

※ ArcGISの処理は面積の大きい
ポリゴンに合計値を付与

29
まとめ

30
まとめ
GIS Tools for Hadoopを利用する事で
• ArcGISで作成していた処理を移行
• 今まで時間を要していたタスクを分散処理
• 変換時間の短縮

31
最後に

GIS Tools for Hadoopの各ツールは
Esri、Esri ジャパン社のサポート対象外です。

32
ご清聴ありがとうございます

33

More Related Content

PPTX
Hadoopによる空間ビッグデータ処理の試み
PPTX
気象予報データ(数値予報GPV)を用いた データビジュアライゼーション
PDF
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用
ODP
Python geohash 紹介
PDF
Hadoop - OSC2013 .Enterprise
PPTX
Hadoopことはじめ
PDF
Hadoop Conference Japan 2013 Winter オープニングスライド
PDF
What makes Apache Spark?
Hadoopによる空間ビッグデータ処理の試み
気象予報データ(数値予報GPV)を用いた データビジュアライゼーション
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用
Python geohash 紹介
Hadoop - OSC2013 .Enterprise
Hadoopことはじめ
Hadoop Conference Japan 2013 Winter オープニングスライド
What makes Apache Spark?

What's hot (10)

PDF
Hadoopの標準GUI HUEの最新情報
PPTX
MapReduceを使った並列化 20111212
PDF
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
PDF
[Azure Deep Dive] Spark と Azure HDInsight によるビッグ データ分析入門 (2017/03/27)
PDF
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」
PDF
Hadoop 基礎
PPT
Hadoop loves H2
PDF
Spark Summit 2015 参加報告
PDF
Hadoopデータプラットフォーム #cwt2013
PPTX
大規模分散システムの現在 -- GFS, MapReduce, BigTableはどう変化したか?
Hadoopの標準GUI HUEの最新情報
MapReduceを使った並列化 20111212
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
[Azure Deep Dive] Spark と Azure HDInsight によるビッグ データ分析入門 (2017/03/27)
QConTokyo2015「Sparkを用いたビッグデータ解析 〜後編〜」
Hadoop 基礎
Hadoop loves H2
Spark Summit 2015 参加報告
Hadoopデータプラットフォーム #cwt2013
大規模分散システムの現在 -- GFS, MapReduce, BigTableはどう変化したか?
Ad

Viewers also liked (6)

PPTX
サーバ構築・デプロイが簡単に!Elastic beanstalk
PPTX
Spark Streamingを使ってみた ~Twitterリアルタイムトレンドランキング~
PDF
最近のストリーム処理事情振り返り
PDF
Hive on Spark を活用した高速データ分析 - Hadoop / Spark Conference Japan 2016
PDF
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
PDF
ビッグデータ処理データベースの全体像と使い分け
サーバ構築・デプロイが簡単に!Elastic beanstalk
Spark Streamingを使ってみた ~Twitterリアルタイムトレンドランキング~
最近のストリーム処理事情振り返り
Hive on Spark を活用した高速データ分析 - Hadoop / Spark Conference Japan 2016
Apache Sparkに手を出してヤケドしないための基本 ~「Apache Spark入門より」~ (デブサミ 2016 講演資料)
ビッグデータ処理データベースの全体像と使い分け
Ad

Similar to Gis tools for hadoopを用いたビッグデータ処理の検証 (20)

PDF
OSC2014 Tokyo/Spring Hadoop
PDF
2014-07-26 Exploration into HDInsight Tuning Maniax 2014 Hadoopコース参戦記
PDF
[Japanese Content] Lance Riedel_The App Server, The Hive in Tokyo_Aug29
PDF
Apache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreading
PPTX
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
PPTX
ATN No.1 MapReduceだけでない!? Hadoopとその仲間たち
PDF
ビッグデータ活用とサーバー基盤
PDF
Datadog monitoring with HashiCorp stack
PDF
Datadog monitoring with HashiCorp
PDF
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
PDF
情報爆発シンポジウム infoplosion
PDF
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
PDF
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
PDF
第1回Hadoop関西勉強会参加レポート
PDF
【ウェブセミナー】マネージドな 100% OSS アナリティクス プラットフォーム HDInsight の最新事情
PDF
BIG DATA サービス と ツール
PDF
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
PDF
Databricks の始め方
PDF
Hadoopの概念と基本的知識
PDF
Data Scientist Workbench - dots0729
OSC2014 Tokyo/Spring Hadoop
2014-07-26 Exploration into HDInsight Tuning Maniax 2014 Hadoopコース参戦記
[Japanese Content] Lance Riedel_The App Server, The Hive in Tokyo_Aug29
Apache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreading
大規模データ処理の定番OSS Hadoop / Spark 最新動向 - 2021秋 -(db tech showcase 2021 / ONLINE 発...
ATN No.1 MapReduceだけでない!? Hadoopとその仲間たち
ビッグデータ活用とサーバー基盤
Datadog monitoring with HashiCorp stack
Datadog monitoring with HashiCorp
データ分析に必要なスキルをつけるためのツール~Jupyter notebook、r連携、機械学習からsparkまで~
情報爆発シンポジウム infoplosion
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
第1回Hadoop関西勉強会参加レポート
【ウェブセミナー】マネージドな 100% OSS アナリティクス プラットフォーム HDInsight の最新事情
BIG DATA サービス と ツール
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
Databricks の始め方
Hadoopの概念と基本的知識
Data Scientist Workbench - dots0729

More from Kazutaka ishizaki (14)

PDF
地理院タイルを利用した3次元による地図表示について
PDF
GISを使ってみよう 2019
PPTX
地理院タイルを利用した ハザードマップの紹介
PPTX
FOSS4Gを利用して 小学生の自由研究してみた件
PPTX
QGISの活用例を見てみよう
PDF
地理院地図を利用した観光情報の提供
PPTX
PythonとQGISで簡単処理
PPTX
オープンデータから消防水利図を作成してみた
PPTX
リアルタイム位置情報と地理院タイルの各ソフトウェアへの表示
PPTX
Cesiumを動かしてみよう FOSS4G 2016 Tokyo版
PPTX
FOSS4G と北海道地図
PPTX
Cesiumを動かしてみよう
PPTX
超初心者向けハンズオン講座 「ゼロから始めるQGIS」
PPTX
超初心者向けハンズオン講座 「ゼロから始めるQGIS」 準備手順書
地理院タイルを利用した3次元による地図表示について
GISを使ってみよう 2019
地理院タイルを利用した ハザードマップの紹介
FOSS4Gを利用して 小学生の自由研究してみた件
QGISの活用例を見てみよう
地理院地図を利用した観光情報の提供
PythonとQGISで簡単処理
オープンデータから消防水利図を作成してみた
リアルタイム位置情報と地理院タイルの各ソフトウェアへの表示
Cesiumを動かしてみよう FOSS4G 2016 Tokyo版
FOSS4G と北海道地図
Cesiumを動かしてみよう
超初心者向けハンズオン講座 「ゼロから始めるQGIS」
超初心者向けハンズオン講座 「ゼロから始めるQGIS」 準備手順書

Gis tools for hadoopを用いたビッグデータ処理の検証