SlideShare a Scribd company logo
Experiences on Processing Spatial
      Data with MapReduce

   Ariel Cary, Zhengguo Sun, Vagelis Hristidis, Naphtali Rishe
                  Florida International University
          School of Computing and Information Sciences
                11200 SW 8th St, Miami, FL 33199
           {acary001,sunz,vagelis,rishen}@cis.fiu.edu

         Sponsored by: NSF Cluster Exploratory (CluE)
Agenda
    1. Introduction
    2. Solving Spatial Problems in MapReduce
          •      R-Tree Index Construction
          •      Aerial Image Processing
    3. Experimental Results
    4. Related Work
    5. Conclusion




2   Florida International University
Introduction
     Spatial databases mainly store:
         Raster data (satellite/aerial digital images), and
         Vector data (points, lines, polygons).
     Traditional sequential computing models may
      take excessive time to process large and complex
      spatial repositories.
     Emerging parallel computing models, such as
      MapReduce, provide a potential for scaling data
      processing in spatial applications.



3   Florida International University
Introduction (cont.)
     MapReduce is an emerging massively parallel
       computing model (Google) composed of two
       functions:
         Map: takes a key/value pair, executes some
          computation, and emits a set of intermediate
          key/value pairs as output.
         Reduce: merges its intermediate values, executes
          some computation on them, and emits the final
          output.
     In this work, we present our experiences in
       applying the MapReduce model to:
         Bulk-construct R-Trees (vector) and
4   Florida International University
         Compute aerial image quality (raster)
Introduction (cont.)
     Apache's Hadoop
                                                                                                    Proxy
     Linux operating                                       Cloud

        system
       XEN hypervisor
       Hadoop Distributed                          1
                                                                          Internet
        File System (HDFS)             bin/hadoop dfs put




       SOCKS proxy
        server                                                              2

                                                                    bin/hadoop jar

       480 computers                                                                         3

                                                                                     bin/hadoop dfs get
        (nodes), each half
        terabytes storage
5   Florida International University
2. Solving Spatial Problems in
          MapReduce
  •   R-Tree Index Construction
  •   Aerial Image Processing
MapReduce (MR) R-Tree
    Construction
     R-Tree Bulk-Construction
         Every object o in database D has two attributes:
           o.id - the object’s unique identifier.
           o.P - the object’s location in some spatial domain.
         The goal is to build an R-Tree index on D.
     MapReduce Algorithm
          1. Database partitioning function computation
             (MR).
          2. A small R-Tree is created for each partition (MR).
          3. The small R-Trees are merged into the final R-
             Tree.

7   Florida International University
Phase 1 – Partitioning Function

    – Goal: compute f to assign objects of D into one of
       RMap and Reduce inputs/outputss.t.:
           possible partitions in computing partitioning function f.
         –Function Input: (Key, Value) Output: (Key,are
             R (ideally) equally-sized partitions Value)
             generated (minimal variance(C, U(o.P))
              Map                   (o.id, o.P)       is acceptable).
             Reduce         (C, list(ui, i=1, .., L))    S´
         – Objects close in the spatial domain are placed
    Where:   within the same partition.
          • o is an solution:
    – Proposed spatial object in the database.
          • C which is a constant that helps in sending Mappers'
         – Use Z-order space-filling curve to map spatial
              outputs to a single Reducer.
          • coordinate samples (3%) into an value.
              U is a space-filling curve, e.g. Z-order sorted
          • sequence. containing R-1 splitting points.
              S' is an array

8
         – Collect splitting points that partition the
    Florida International University
             sequence in R ranges.
Phase 2 - R-Tree Construction in MR
     Mappers compute f() values for objects.
     Reducers compute an R-Tree for each group of
       objects with identical f() value
                         MapReduce functions in constructing R-Trees.
            Function        Input: (Key, Value)              Output: (Key, Value)
              Map                 (o.id, o.P)                     (f(o.P), o)
             Reduce         (f(o.P), list(oi, i=1, .., A))         tree.root


    Where:
      • o is an spatial object in the database.
      • f is the partitioning function computed in phase
        1.
      • Tree.root is the R-Tree root node.
9   Florida International University
Phase 3 - R-Tree Consolidation
      sequential process




10   Florida International University
Image Processing in MapReduce
      Aerial Image Quality Computation
          Let d be a orthorectified aerial photography (DOQQ)
           file and t be a tile inside d, d.name is d’s file name
           and t.q is the quality information of tile t.
          The goal is to compute a quality bitmap for d.
      MapReduce Algorithm
          A customized InputFormatter partitions each DOQQ
           file d into several splits containing multiple tiles.
          The Mappers compute the quality bitmap for each
           tile inside a split.
          The Reducers merge all the bitmaps that belongs to
           a file d and write them to an output file.

11   Florida International University
Image Processing in MapReduce
      MapReduce Algorithm

                           Input and output of map and reduce functions
       Function          Input: (Key, Value)           Output: (Key, Value)
         Map                (d.name+t.id, t)            (d.name, (t.id,t.q))
        Reduce           (d.name, list(t.id,t.q))       Quality-bitmap of d


     Where:
       • d is a DOQQ file.
       • t is a tile in d.
       • t.q is the quality bitmap of t.

12   Florida International University
3. Experimental Results
Experimental Results: Setting
      Data Set                                   Table 4. Spatial data sets used in experiments*.

           Problem      Data                    Data size
                                   Objects                                        Description
                         set                     (GB)
            R-Tree      FLD         11.4 M           5       Points of properties in the state of Florida.
                                                             Yellow pages directory of points of businesses mostly
                         YPD         37 M           5.3
                                                             in the United States but also in other countries.
            Image      Miami-                                Aerial imagery of Miami-Dade county, FL (3-inch
                                    482 files       52
            Quality    Dade                                  resolution)

            * Data sets supplied by the High Performance Database Research Center at Florida International University

      Environment
        The cluster was provided by the Google and IBM
         Academic Cluster Computing Initiative.
        The cluster contains around 480 computers running
         Hadoop - open source MapReduce.
14     Florida International University
Experimental Results: R-Tree
      R-Tree Construction Performance Metrics

                         30.00                                                  60.00

                         25.00                                                  50.00
                                                           MR2                                                    MR2
                         20.00                                                  40.00




                                                                   Time (min)
            Time (min)




                                                           MR1                                                    MR1
                         15.00                                                  30.00

                         10.00                                                  20.00

                          5.00                                                  10.00

                          0.00                                                   0.00
                                 2    4     8   16    32    64                          4     8      16      32    64
                                          Reducers                                                Reducers
                                  (a) FLD data set                                          (b) YPD data set
                          MapReduce job completion times for various number of reducers in phase-2 (MR2).




15   Florida International University
Experimental Results: R-Tree
      MapReduce R-Trees vs. Single Process (SP)
                                        Objects per Reducer       Consolidated R-Tree

                Data set       R        Average       Stdev        Nodes       Height
                   FLD         2          5,690,419    12,183        172,776     4
                               4          2,845,210     6,347        172,624     4
                               8          1,422,605     2,235        173,141     4
                              16            711,379     2,533        162,518     4
                              32            355,651     2,379        173,273     3
                              64            177,826     1,816        173,445     3
                              SP         11,382,185           0      172,681     4
                   YPD         4          9,257,188    22,137        568,854     4
                               8          4,628,594     9,413        568,716     4
                              16          2,314,297     7,634        568,232     4
                              32          1,157,149     6,043        567,550     4
                              64            578,574     2,982        566,199     4
                              SP         37,034,126           0      587,353     5

16   Florida International University
Experimental Results: Imagery
      Tile Quality Computation


                       25                                                         4
                                                    Reduce                       3.5
                                                                                       Reduce
                       20                                                              Map
                                                    Map                           3
         Time (min)




                                                                    Time (min)
                       15                                                        2.5
                                                                                  2
                       10
                                                                                 1.5

                        5                                                         1
                                                                                 0.5
                        0                                                         0
                             4   8   16 32 64 128 256 512                              2       4      8        16
                                       Reducers                                            Size of data (GB)

                      (a) Fixed data size, variable Reducers  (b) Variable data size, fixed Reducers
                               Fig. 9. MapReduce job completion time for tile quality computation


17   Florida International University
4. Related Work
Related Work
      Previous works on R-Tree parallel construction faced
        intrinsic distributed computing problems: load
        balancing, process scheduling, fault tolerance, etc.
      Schnitzer and Leutenegger [16] proposed a Master-
        Client R-Tree, where the data set is first partitioned
        using Hilbert packing sort algorithm, then the
        partitions are declustered into a number of
        processors, where individual trees are built. At the
        end, a master process combines the individual trees
        into the final R-Tree.
      Papadopoulos and Manolopoulos [17] proposed a
        methodology for sampling-based space partitionining,
        load balancing, and partition assignment into a set of
     Florida International University
19
        processors in parallely building R-Trees.
5. Conclusion
Conclusion
      We used the MapReduce model to solve two
        spatial problems on a Google&IBM cluster:
          (a) Bulk-construction of R-Trees and
          (b) Aerial image quality computation
      MapReduce can dramatically improve task
       completion times. Our experiments show close to
       linear scalability.
      Our experience in this work shows MapReduce
       has the potential to be applicable to more
       complex spatial problems.

21   Florida International University
References
     [1] Antonin Guttman: R-Trees: A Dynamic Index Structure for Spatial Searching.
         SIGMOD 1984:47-57.
     [2] NSF Cluster Exploratory Program:
         http://www.nsf.gov/pubs/2008/nsf08560/nsf08560.htm
     [3] Google&IBM Academic Cluster Computing Initiative:
     http://www.google.com/intl/en/press/pressrel/20071008_ibm_univ.html
     [4] Apache Hadoop project: http://hadoop.apache.org
     [6] Jeffrey Dean, Sanjay Ghemawat: MapReduce: Simplified data processing on
         large clusters. In Proceedings of the 6th Conference on Symposium on
         Opearting Systems Design & Implementation, USENIX Association, Volume 6,
         pp. 10-10, December 2004.
     [12]        High Performance Database Research Center (HPDRC), Research
         Division of the Florida International University, School of Computing and
         Information Sciences, University Park, Telephone: (305) 348-1706, FIU ECS-243,
         Miami, FL 33199.
     [16]        Schnitzer B., Leutenegger S.T.: Master-client R-trees: a new parallel R-
         tree architecture, In Proceedings of the 11th International Conference on
         Scientific and Statistical Database Management, pp. 68-77, August 1999.
     [17]        Apostolos Papadopoulos, Yannis Manolopoulos: Parallel bulk-loading of
         spatial data, Parallel Computing, Volume 29, Issue 10, pp. 1419 - 1444, October
         2003.
22   Florida International University

More Related Content

What's hot

Hadoop with Lustre WhitePaper
Hadoop with Lustre WhitePaperHadoop with Lustre WhitePaper
Hadoop with Lustre WhitePaper
David Luan
 
Integrate Hive and R
Integrate Hive and RIntegrate Hive and R
Integrate Hive and R
JunHo Cho
 
Algorithms on Hadoop at Last.fm
Algorithms on Hadoop at Last.fmAlgorithms on Hadoop at Last.fm
Algorithms on Hadoop at Last.fm
Mark Levy
 
Simulation Informatics
Simulation InformaticsSimulation Informatics
Simulation Informatics
David Gleich
 
Cerba ppt gi2011-harmonization-of-spatial-planning-data_final
Cerba ppt gi2011-harmonization-of-spatial-planning-data_finalCerba ppt gi2011-harmonization-of-spatial-planning-data_final
Cerba ppt gi2011-harmonization-of-spatial-planning-data_final
IGN Vorstand
 
Enabling R on Hadoop
Enabling R on HadoopEnabling R on Hadoop
Enabling R on Hadoop
DataWorks Summit
 
Implementação do Hash Coalha/Coalesced
Implementação do Hash Coalha/CoalescedImplementação do Hash Coalha/Coalesced
Implementação do Hash Coalha/Coalesced
CriatividadeZeroDocs
 
Ads
AdsAds
Big Data Analysis With RHadoop
Big Data Analysis With RHadoopBig Data Analysis With RHadoop
Big Data Analysis With RHadoop
David Chiu
 
Hadoop World 2011: The Powerful Marriage of R and Hadoop - David Champagne, R...
Hadoop World 2011: The Powerful Marriage of R and Hadoop - David Champagne, R...Hadoop World 2011: The Powerful Marriage of R and Hadoop - David Champagne, R...
Hadoop World 2011: The Powerful Marriage of R and Hadoop - David Champagne, R...
Cloudera, Inc.
 
Hadoop exercise
Hadoop exerciseHadoop exercise
Hadoop exercise
Subhas Kumar Ghosh
 
Hw09 Production Deep Dive With High Availability
Hw09   Production Deep Dive With High AvailabilityHw09   Production Deep Dive With High Availability
Hw09 Production Deep Dive With High Availability
Cloudera, Inc.
 
Mapreduce by examples
Mapreduce by examplesMapreduce by examples
Mapreduce by examples
Andrea Iacono
 
D49996 gc11 intro
D49996 gc11 introD49996 gc11 intro
D49996 gc11 intro
Hkn Crk
 
Map reduce and Hadoop on windows
Map reduce and Hadoop on windowsMap reduce and Hadoop on windows
Map reduce and Hadoop on windows
Muhammad Shahid
 

What's hot (15)

Hadoop with Lustre WhitePaper
Hadoop with Lustre WhitePaperHadoop with Lustre WhitePaper
Hadoop with Lustre WhitePaper
 
Integrate Hive and R
Integrate Hive and RIntegrate Hive and R
Integrate Hive and R
 
Algorithms on Hadoop at Last.fm
Algorithms on Hadoop at Last.fmAlgorithms on Hadoop at Last.fm
Algorithms on Hadoop at Last.fm
 
Simulation Informatics
Simulation InformaticsSimulation Informatics
Simulation Informatics
 
Cerba ppt gi2011-harmonization-of-spatial-planning-data_final
Cerba ppt gi2011-harmonization-of-spatial-planning-data_finalCerba ppt gi2011-harmonization-of-spatial-planning-data_final
Cerba ppt gi2011-harmonization-of-spatial-planning-data_final
 
Enabling R on Hadoop
Enabling R on HadoopEnabling R on Hadoop
Enabling R on Hadoop
 
Implementação do Hash Coalha/Coalesced
Implementação do Hash Coalha/CoalescedImplementação do Hash Coalha/Coalesced
Implementação do Hash Coalha/Coalesced
 
Ads
AdsAds
Ads
 
Big Data Analysis With RHadoop
Big Data Analysis With RHadoopBig Data Analysis With RHadoop
Big Data Analysis With RHadoop
 
Hadoop World 2011: The Powerful Marriage of R and Hadoop - David Champagne, R...
Hadoop World 2011: The Powerful Marriage of R and Hadoop - David Champagne, R...Hadoop World 2011: The Powerful Marriage of R and Hadoop - David Champagne, R...
Hadoop World 2011: The Powerful Marriage of R and Hadoop - David Champagne, R...
 
Hadoop exercise
Hadoop exerciseHadoop exercise
Hadoop exercise
 
Hw09 Production Deep Dive With High Availability
Hw09   Production Deep Dive With High AvailabilityHw09   Production Deep Dive With High Availability
Hw09 Production Deep Dive With High Availability
 
Mapreduce by examples
Mapreduce by examplesMapreduce by examples
Mapreduce by examples
 
D49996 gc11 intro
D49996 gc11 introD49996 gc11 intro
D49996 gc11 intro
 
Map reduce and Hadoop on windows
Map reduce and Hadoop on windowsMap reduce and Hadoop on windows
Map reduce and Hadoop on windows
 

Similar to Experiences on Processing Spatial Data with MapReduce ssdbm09

MAP REDUCE IN DATA SCIENCE.pptx
MAP REDUCE IN DATA SCIENCE.pptxMAP REDUCE IN DATA SCIENCE.pptx
MAP REDUCE IN DATA SCIENCE.pptx
HARIKRISHNANU13
 
Map Reduce
Map ReduceMap Reduce
Map Reduce
Prashant Gupta
 
Mapreduce advanced
Mapreduce advancedMapreduce advanced
Mapreduce advanced
Chirag Ahuja
 
Brief introduction on Hadoop,Dremel, Pig, FlumeJava and Cassandra
Brief introduction on Hadoop,Dremel, Pig, FlumeJava and CassandraBrief introduction on Hadoop,Dremel, Pig, FlumeJava and Cassandra
Brief introduction on Hadoop,Dremel, Pig, FlumeJava and Cassandra
Somnath Mazumdar
 
Democratizing Big Semantic Data management
Democratizing Big Semantic Data managementDemocratizing Big Semantic Data management
Democratizing Big Semantic Data management
WU (Vienna University of Economics and Business)
 
Hadoop pig
Hadoop pigHadoop pig
Hadoop pig
Sean Murphy
 
Hadoop
HadoopHadoop
Yarn spark next_gen_hadoop_8_jan_2014
Yarn spark next_gen_hadoop_8_jan_2014Yarn spark next_gen_hadoop_8_jan_2014
Yarn spark next_gen_hadoop_8_jan_2014
Vijay Srinivas Agneeswaran, Ph.D
 
Hadoop 101 for bioinformaticians
Hadoop 101 for bioinformaticiansHadoop 101 for bioinformaticians
Hadoop 101 for bioinformaticians
attilacsordas
 
HDFS-HC: A Data Placement Module for Heterogeneous Hadoop Clusters
HDFS-HC: A Data Placement Module for Heterogeneous Hadoop ClustersHDFS-HC: A Data Placement Module for Heterogeneous Hadoop Clusters
HDFS-HC: A Data Placement Module for Heterogeneous Hadoop Clusters
Xiao Qin
 
Introduction to Hadoop
Introduction to HadoopIntroduction to Hadoop
Introduction to Hadoop
Apache Apex
 
Hadoop-Introduction
Hadoop-IntroductionHadoop-Introduction
Hadoop-Introduction
Sandeep Deshmukh
 
Hadoop trainting in hyderabad@kelly technologies
Hadoop trainting in hyderabad@kelly technologiesHadoop trainting in hyderabad@kelly technologies
Hadoop trainting in hyderabad@kelly technologies
Kelly Technologies
 
Hadoop, MapReduce and R = RHadoop
Hadoop, MapReduce and R = RHadoopHadoop, MapReduce and R = RHadoop
Hadoop, MapReduce and R = RHadoop
Victoria López
 
Hadoop trainting-in-hyderabad@kelly technologies
Hadoop trainting-in-hyderabad@kelly technologiesHadoop trainting-in-hyderabad@kelly technologies
Hadoop trainting-in-hyderabad@kelly technologies
Kelly Technologies
 
Apache Spark with Scala
Apache Spark with ScalaApache Spark with Scala
Apache Spark with Scala
Fernando Rodriguez
 
Zaharia spark-scala-days-2012
Zaharia spark-scala-days-2012Zaharia spark-scala-days-2012
Zaharia spark-scala-days-2012
Skills Matter Talks
 
Sector CloudSlam 09
Sector CloudSlam 09Sector CloudSlam 09
Sector CloudSlam 09
Robert Grossman
 
Knowledg graphs yosi mass
Knowledg graphs yosi massKnowledg graphs yosi mass
Knowledg graphs yosi mass
diannepatricia
 
Hadoop & MapReduce
Hadoop & MapReduceHadoop & MapReduce
Hadoop & MapReduce
Newvewm
 

Similar to Experiences on Processing Spatial Data with MapReduce ssdbm09 (20)

MAP REDUCE IN DATA SCIENCE.pptx
MAP REDUCE IN DATA SCIENCE.pptxMAP REDUCE IN DATA SCIENCE.pptx
MAP REDUCE IN DATA SCIENCE.pptx
 
Map Reduce
Map ReduceMap Reduce
Map Reduce
 
Mapreduce advanced
Mapreduce advancedMapreduce advanced
Mapreduce advanced
 
Brief introduction on Hadoop,Dremel, Pig, FlumeJava and Cassandra
Brief introduction on Hadoop,Dremel, Pig, FlumeJava and CassandraBrief introduction on Hadoop,Dremel, Pig, FlumeJava and Cassandra
Brief introduction on Hadoop,Dremel, Pig, FlumeJava and Cassandra
 
Democratizing Big Semantic Data management
Democratizing Big Semantic Data managementDemocratizing Big Semantic Data management
Democratizing Big Semantic Data management
 
Hadoop pig
Hadoop pigHadoop pig
Hadoop pig
 
Hadoop
HadoopHadoop
Hadoop
 
Yarn spark next_gen_hadoop_8_jan_2014
Yarn spark next_gen_hadoop_8_jan_2014Yarn spark next_gen_hadoop_8_jan_2014
Yarn spark next_gen_hadoop_8_jan_2014
 
Hadoop 101 for bioinformaticians
Hadoop 101 for bioinformaticiansHadoop 101 for bioinformaticians
Hadoop 101 for bioinformaticians
 
HDFS-HC: A Data Placement Module for Heterogeneous Hadoop Clusters
HDFS-HC: A Data Placement Module for Heterogeneous Hadoop ClustersHDFS-HC: A Data Placement Module for Heterogeneous Hadoop Clusters
HDFS-HC: A Data Placement Module for Heterogeneous Hadoop Clusters
 
Introduction to Hadoop
Introduction to HadoopIntroduction to Hadoop
Introduction to Hadoop
 
Hadoop-Introduction
Hadoop-IntroductionHadoop-Introduction
Hadoop-Introduction
 
Hadoop trainting in hyderabad@kelly technologies
Hadoop trainting in hyderabad@kelly technologiesHadoop trainting in hyderabad@kelly technologies
Hadoop trainting in hyderabad@kelly technologies
 
Hadoop, MapReduce and R = RHadoop
Hadoop, MapReduce and R = RHadoopHadoop, MapReduce and R = RHadoop
Hadoop, MapReduce and R = RHadoop
 
Hadoop trainting-in-hyderabad@kelly technologies
Hadoop trainting-in-hyderabad@kelly technologiesHadoop trainting-in-hyderabad@kelly technologies
Hadoop trainting-in-hyderabad@kelly technologies
 
Apache Spark with Scala
Apache Spark with ScalaApache Spark with Scala
Apache Spark with Scala
 
Zaharia spark-scala-days-2012
Zaharia spark-scala-days-2012Zaharia spark-scala-days-2012
Zaharia spark-scala-days-2012
 
Sector CloudSlam 09
Sector CloudSlam 09Sector CloudSlam 09
Sector CloudSlam 09
 
Knowledg graphs yosi mass
Knowledg graphs yosi massKnowledg graphs yosi mass
Knowledg graphs yosi mass
 
Hadoop & MapReduce
Hadoop & MapReduceHadoop & MapReduce
Hadoop & MapReduce
 

Recently uploaded

The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
Safe Software
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin..."$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
Fwdays
 
High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024
Vadym Kazulkin
 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
Enterprise Knowledge
 
A Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's ArchitectureA Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's Architecture
ScyllaDB
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
DianaGray10
 
Christine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptxChristine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptx
christinelarrosa
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
Javier Junquera
 
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
DanBrown980551
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptxPRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
christinelarrosa
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
Alex Pruden
 

Recently uploaded (20)

The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin..."$10 thousand per minute of downtime: architecture, queues, streaming and fin...
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...
 
High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024
 
Demystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through StorytellingDemystifying Knowledge Management through Storytelling
Demystifying Knowledge Management through Storytelling
 
A Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's ArchitectureA Deep Dive into ScyllaDB's Architecture
A Deep Dive into ScyllaDB's Architecture
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
 
Christine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptxChristine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptx
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
 
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptxPRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
 

Experiences on Processing Spatial Data with MapReduce ssdbm09

  • 1. Experiences on Processing Spatial Data with MapReduce Ariel Cary, Zhengguo Sun, Vagelis Hristidis, Naphtali Rishe Florida International University School of Computing and Information Sciences 11200 SW 8th St, Miami, FL 33199 {acary001,sunz,vagelis,rishen}@cis.fiu.edu Sponsored by: NSF Cluster Exploratory (CluE)
  • 2. Agenda 1. Introduction 2. Solving Spatial Problems in MapReduce • R-Tree Index Construction • Aerial Image Processing 3. Experimental Results 4. Related Work 5. Conclusion 2 Florida International University
  • 3. Introduction  Spatial databases mainly store:  Raster data (satellite/aerial digital images), and  Vector data (points, lines, polygons).  Traditional sequential computing models may take excessive time to process large and complex spatial repositories.  Emerging parallel computing models, such as MapReduce, provide a potential for scaling data processing in spatial applications. 3 Florida International University
  • 4. Introduction (cont.)  MapReduce is an emerging massively parallel computing model (Google) composed of two functions:  Map: takes a key/value pair, executes some computation, and emits a set of intermediate key/value pairs as output.  Reduce: merges its intermediate values, executes some computation on them, and emits the final output.  In this work, we present our experiences in applying the MapReduce model to:  Bulk-construct R-Trees (vector) and 4 Florida International University  Compute aerial image quality (raster)
  • 5. Introduction (cont.)  Apache's Hadoop Proxy  Linux operating Cloud system  XEN hypervisor  Hadoop Distributed 1 Internet File System (HDFS) bin/hadoop dfs put  SOCKS proxy server 2 bin/hadoop jar  480 computers 3 bin/hadoop dfs get (nodes), each half terabytes storage 5 Florida International University
  • 6. 2. Solving Spatial Problems in MapReduce • R-Tree Index Construction • Aerial Image Processing
  • 7. MapReduce (MR) R-Tree Construction  R-Tree Bulk-Construction  Every object o in database D has two attributes:  o.id - the object’s unique identifier.  o.P - the object’s location in some spatial domain.  The goal is to build an R-Tree index on D.  MapReduce Algorithm 1. Database partitioning function computation (MR). 2. A small R-Tree is created for each partition (MR). 3. The small R-Trees are merged into the final R- Tree. 7 Florida International University
  • 8. Phase 1 – Partitioning Function – Goal: compute f to assign objects of D into one of RMap and Reduce inputs/outputss.t.: possible partitions in computing partitioning function f. –Function Input: (Key, Value) Output: (Key,are R (ideally) equally-sized partitions Value) generated (minimal variance(C, U(o.P)) Map (o.id, o.P) is acceptable). Reduce (C, list(ui, i=1, .., L)) S´ – Objects close in the spatial domain are placed Where: within the same partition. • o is an solution: – Proposed spatial object in the database. • C which is a constant that helps in sending Mappers' – Use Z-order space-filling curve to map spatial outputs to a single Reducer. • coordinate samples (3%) into an value. U is a space-filling curve, e.g. Z-order sorted • sequence. containing R-1 splitting points. S' is an array 8 – Collect splitting points that partition the Florida International University sequence in R ranges.
  • 9. Phase 2 - R-Tree Construction in MR  Mappers compute f() values for objects.  Reducers compute an R-Tree for each group of objects with identical f() value MapReduce functions in constructing R-Trees. Function Input: (Key, Value) Output: (Key, Value) Map (o.id, o.P) (f(o.P), o) Reduce (f(o.P), list(oi, i=1, .., A)) tree.root Where: • o is an spatial object in the database. • f is the partitioning function computed in phase 1. • Tree.root is the R-Tree root node. 9 Florida International University
  • 10. Phase 3 - R-Tree Consolidation  sequential process 10 Florida International University
  • 11. Image Processing in MapReduce  Aerial Image Quality Computation  Let d be a orthorectified aerial photography (DOQQ) file and t be a tile inside d, d.name is d’s file name and t.q is the quality information of tile t.  The goal is to compute a quality bitmap for d.  MapReduce Algorithm  A customized InputFormatter partitions each DOQQ file d into several splits containing multiple tiles.  The Mappers compute the quality bitmap for each tile inside a split.  The Reducers merge all the bitmaps that belongs to a file d and write them to an output file. 11 Florida International University
  • 12. Image Processing in MapReduce  MapReduce Algorithm Input and output of map and reduce functions Function Input: (Key, Value) Output: (Key, Value) Map (d.name+t.id, t) (d.name, (t.id,t.q)) Reduce (d.name, list(t.id,t.q)) Quality-bitmap of d Where: • d is a DOQQ file. • t is a tile in d. • t.q is the quality bitmap of t. 12 Florida International University
  • 14. Experimental Results: Setting  Data Set Table 4. Spatial data sets used in experiments*. Problem Data Data size Objects Description set (GB) R-Tree FLD 11.4 M 5 Points of properties in the state of Florida. Yellow pages directory of points of businesses mostly YPD 37 M 5.3 in the United States but also in other countries. Image Miami- Aerial imagery of Miami-Dade county, FL (3-inch 482 files 52 Quality Dade resolution) * Data sets supplied by the High Performance Database Research Center at Florida International University  Environment  The cluster was provided by the Google and IBM Academic Cluster Computing Initiative.  The cluster contains around 480 computers running Hadoop - open source MapReduce. 14 Florida International University
  • 15. Experimental Results: R-Tree  R-Tree Construction Performance Metrics 30.00 60.00 25.00 50.00 MR2 MR2 20.00 40.00 Time (min) Time (min) MR1 MR1 15.00 30.00 10.00 20.00 5.00 10.00 0.00 0.00 2 4 8 16 32 64 4 8 16 32 64 Reducers Reducers (a) FLD data set (b) YPD data set MapReduce job completion times for various number of reducers in phase-2 (MR2). 15 Florida International University
  • 16. Experimental Results: R-Tree  MapReduce R-Trees vs. Single Process (SP) Objects per Reducer Consolidated R-Tree Data set R Average Stdev Nodes Height FLD 2 5,690,419 12,183 172,776 4 4 2,845,210 6,347 172,624 4 8 1,422,605 2,235 173,141 4 16 711,379 2,533 162,518 4 32 355,651 2,379 173,273 3 64 177,826 1,816 173,445 3 SP 11,382,185 0 172,681 4 YPD 4 9,257,188 22,137 568,854 4 8 4,628,594 9,413 568,716 4 16 2,314,297 7,634 568,232 4 32 1,157,149 6,043 567,550 4 64 578,574 2,982 566,199 4 SP 37,034,126 0 587,353 5 16 Florida International University
  • 17. Experimental Results: Imagery  Tile Quality Computation 25 4 Reduce 3.5 Reduce 20 Map Map 3 Time (min) Time (min) 15 2.5 2 10 1.5 5 1 0.5 0 0 4 8 16 32 64 128 256 512 2 4 8 16 Reducers Size of data (GB) (a) Fixed data size, variable Reducers (b) Variable data size, fixed Reducers Fig. 9. MapReduce job completion time for tile quality computation 17 Florida International University
  • 19. Related Work  Previous works on R-Tree parallel construction faced intrinsic distributed computing problems: load balancing, process scheduling, fault tolerance, etc.  Schnitzer and Leutenegger [16] proposed a Master- Client R-Tree, where the data set is first partitioned using Hilbert packing sort algorithm, then the partitions are declustered into a number of processors, where individual trees are built. At the end, a master process combines the individual trees into the final R-Tree.  Papadopoulos and Manolopoulos [17] proposed a methodology for sampling-based space partitionining, load balancing, and partition assignment into a set of Florida International University 19 processors in parallely building R-Trees.
  • 21. Conclusion  We used the MapReduce model to solve two spatial problems on a Google&IBM cluster:  (a) Bulk-construction of R-Trees and  (b) Aerial image quality computation  MapReduce can dramatically improve task completion times. Our experiments show close to linear scalability.  Our experience in this work shows MapReduce has the potential to be applicable to more complex spatial problems. 21 Florida International University
  • 22. References [1] Antonin Guttman: R-Trees: A Dynamic Index Structure for Spatial Searching. SIGMOD 1984:47-57. [2] NSF Cluster Exploratory Program: http://www.nsf.gov/pubs/2008/nsf08560/nsf08560.htm [3] Google&IBM Academic Cluster Computing Initiative: http://www.google.com/intl/en/press/pressrel/20071008_ibm_univ.html [4] Apache Hadoop project: http://hadoop.apache.org [6] Jeffrey Dean, Sanjay Ghemawat: MapReduce: Simplified data processing on large clusters. In Proceedings of the 6th Conference on Symposium on Opearting Systems Design & Implementation, USENIX Association, Volume 6, pp. 10-10, December 2004. [12] High Performance Database Research Center (HPDRC), Research Division of the Florida International University, School of Computing and Information Sciences, University Park, Telephone: (305) 348-1706, FIU ECS-243, Miami, FL 33199. [16] Schnitzer B., Leutenegger S.T.: Master-client R-trees: a new parallel R- tree architecture, In Proceedings of the 11th International Conference on Scientific and Statistical Database Management, pp. 68-77, August 1999. [17] Apostolos Papadopoulos, Yannis Manolopoulos: Parallel bulk-loading of spatial data, Parallel Computing, Volume 29, Issue 10, pp. 1419 - 1444, October 2003. 22 Florida International University