SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
Lost in the Clouds
An example of a schemaless database
      application in the cloud




      SlipstreamUSA :: March 25, 2009
The Project

    OpenStreetMap

    A free map of the planet

        Free geospatial data
    
        Licensed under CC-BY-SA
    
    Created from

        Crowd-sourced contributions
    
        90,000 registered users
    
        1,000+ contributors per day
    
    Used for:

        Wikipedia
    
        Flikr
    
        OpenCycleMap.org
    
        OpenPisteMap.org
    
        YourNavigation.org
    
        Mobile devices
    




                                      © Constantin Litvak
Coverage




           CC-BY-SA 2.0 © OpenStreetMap
The OpenStreetMap Database Server




    In the cloud

    MySQL

    Ways: 24,956,171

    Nodes: 305,956,583

    Tags: 3.6 billion

        highway=motorway
    
        name=Broadway
    
        foo=bar
    


                                    CC-BY-SA 2.0 Image © Ojw Data © OpenStreetMap
Interfaces


    API

        For updates
    
        (1,000 users per day)
        Queries of up to
    
         0.25² degrees
    Weekly Planet Dump

        100Gbyte XML file
    

    Changes

        Feed of changes
    
        Daily / Hourly / Minutely
    
        One file per minute
    
        (~30Kb compressed)
                                    CC-BY-SA 2.0 Image © Ojw Data © OpenStreetMap
Problem Statement


    Problem

    Want to be able to query
    the data in bigger chunks
    and to do it more
    selectively



    Solution

    Cloud based schemaless
    database with simple to
    use query interface and
    lots of indexes
                                CC-BY-SA 2.0 Image © Maning Sambale Data © OpenStreetMap
XAPI Service



    GT.M or Cache

    250Gbyte database

        Nodes: 30Gb
    
        Node tags: 115Gb
    
        Node indexes: 70Gb
    
        Ways: 21Gb
    
        Way tags: 10Gb
    
        Way indexes: 18Gb
    

    Apache + serverLink

    Licensed as AGPL

                             CC-BY-SA 2.0 Image © Maning Sambale Data © OpenStreetMap
XAPI Service
    In the cloud

    Queries of up to 100² degrees

    Query by tags and tag values

    Scaleable

    REST style interface


http://xapi.openstreetmap.org/api/0.6/*
[tourism=hotel]
[bbox=-75.7,40.0,-75.4,40.2]


    Import planet dump

    Import minute diff





                                          CC-BY-SA 2.0 Image © Ojw Data © OpenStreetMap
XAPI Service

        Geospatial Index – quadstrings
    




             adaabcdcabaadab
XAPI Service
                                              <way id='27016525'>
                                               <nd ref='296138118'/>
                                               <nd ref='296138119'/>
    ^way(27016525)=quot;adaabcdcabaadabquot;           <nd ref='296138120'/>
    ^way(27016525,1)=296138118                 <nd ref='296138121'/>
    ^way(27016525,2)=296138119                 <nd ref='296138118'/>
                                               <tag k='addr:housenumber' v='2'/>
    ^way(27016525,3)=296138120
                                               <tag k='building' v='yes'/>
    ^way(27016525,4)=296138121
                                              </way>
    ^way(27016525,5)=296138118

    ^waytag(27016525,quot;addr:housenumberquot;)=2
    ^waytag(27016525,quot;buildingquot;)=quot;yesquot;

    ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27016525)=quot;quot;
    ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27028298)=quot;quot;
    ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27028299)=quot;quot;
    ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27028326)=quot;quot;
    ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27028327)=quot;quot;
    ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27035972)=quot;quot;
    ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27035973)=quot;quot;
    ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27035974)=quot;quot;
    ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27035975)=quot;quot;
    ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27035984)=quot;“
Deployment



    Currently 5 instances:

        London
    
        Paris
    
        San Diego
    
        Zurich
    
        Amsterdam
    
        (Wikimedia-de)
    More servers needed:

        Internet connectivity
    
        300Gb disk storage
    




                                CC-BY-SA 2.0 Image © Nikolaj Data © OpenStreetMap
Wikipedia: Query to Map


         {{osm-query |way=name=Arizona Canal}}




                                                 CC-BY-SA 2.0 © OpenStreetMap
Internals


    Debian

    Apache web-server

    REST

        URI represents a
    
        resource
        Xpath flavoring
    

    serverLink

        WebLink emulator
    

    GT.M or Cache

        POM
    

    AGPL

XAPI Future

        Load Sharing / balancing
    
        More Xpath-like queries
    
        JSON output
    
        Generic indexing service
    
        More servers
    
Thank you




            Thank you
              Questions?




                           CC-BY-SA 2.0 Image © ITO! Data © OpenStreetMap

Weitere ähnliche Inhalte

Was ist angesagt?

Presentation July 22nd
Presentation July 22ndPresentation July 22nd
Presentation July 22nd
yujin tang
 

Was ist angesagt? (20)

Presentation July 22nd
Presentation July 22ndPresentation July 22nd
Presentation July 22nd
 
Incremental and parallel computation of structural graph summaries for evolvi...
Incremental and parallel computation of structural graph summaries for evolvi...Incremental and parallel computation of structural graph summaries for evolvi...
Incremental and parallel computation of structural graph summaries for evolvi...
 
OpenHistoricalMap tim waters - Topomancy / NYPL Lightning Talk
OpenHistoricalMap   tim waters - Topomancy / NYPL Lightning TalkOpenHistoricalMap   tim waters - Topomancy / NYPL Lightning Talk
OpenHistoricalMap tim waters - Topomancy / NYPL Lightning Talk
 
Building Location-Aware Apps using Open Source (AnDevCon SF 2014)
Building Location-Aware Apps using Open Source (AnDevCon SF 2014)Building Location-Aware Apps using Open Source (AnDevCon SF 2014)
Building Location-Aware Apps using Open Source (AnDevCon SF 2014)
 
Why is postgis awesome?
Why is postgis awesome?Why is postgis awesome?
Why is postgis awesome?
 
Gdal introduction
Gdal introductionGdal introduction
Gdal introduction
 
CCCA Data Centre - Dynamic Data Citation for NetCDF files
CCCA Data Centre - Dynamic Data Citation for NetCDF filesCCCA Data Centre - Dynamic Data Citation for NetCDF files
CCCA Data Centre - Dynamic Data Citation for NetCDF files
 
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
 
Open Source Databases And Gis
Open Source Databases And GisOpen Source Databases And Gis
Open Source Databases And Gis
 
Making data storage more efficient
Making data storage more efficientMaking data storage more efficient
Making data storage more efficient
 
MapServer #ProTips 2015
MapServer #ProTips 2015MapServer #ProTips 2015
MapServer #ProTips 2015
 
Phnom penh mapping meetup #15
Phnom penh mapping meetup #15Phnom penh mapping meetup #15
Phnom penh mapping meetup #15
 
Latency Performance of Encoding with Random Linear Network Coding
Latency Performance of Encoding with Random Linear Network CodingLatency Performance of Encoding with Random Linear Network Coding
Latency Performance of Encoding with Random Linear Network Coding
 
OpenHistoricMap: overview
OpenHistoricMap: overviewOpenHistoricMap: overview
OpenHistoricMap: overview
 
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
Crunching Data In GeoServer: Mastering Rendering Transformations, WPS Process...
 
Advanced R Graphics
Advanced R GraphicsAdvanced R Graphics
Advanced R Graphics
 
CLIWOC Attributes
CLIWOC AttributesCLIWOC Attributes
CLIWOC Attributes
 
Ronan Kerr: Exploring the Debris Disk Around Beta Pictoris
Ronan Kerr: Exploring the Debris Disk Around Beta PictorisRonan Kerr: Exploring the Debris Disk Around Beta Pictoris
Ronan Kerr: Exploring the Debris Disk Around Beta Pictoris
 
Analysing OpenStreetMap Data with QGIS
Analysing OpenStreetMap Data with QGISAnalysing OpenStreetMap Data with QGIS
Analysing OpenStreetMap Data with QGIS
 
GIS on Rails by Oleksandr Kychun
GIS on Rails by Oleksandr Kychun GIS on Rails by Oleksandr Kychun
GIS on Rails by Oleksandr Kychun
 

Ähnlich wie Lost In The Clouds

Wide Open Spaces Using My Sql As A Web Mapping Service Backend
Wide Open Spaces Using My Sql As A Web Mapping Service BackendWide Open Spaces Using My Sql As A Web Mapping Service Backend
Wide Open Spaces Using My Sql As A Web Mapping Service Backend
MySQLConference
 
Web enabling your survey business ppt version
Web enabling your survey business ppt versionWeb enabling your survey business ppt version
Web enabling your survey business ppt version
rudy_stricklan
 
Google G Data Reading And Writing Data On The Web
Google G Data Reading And Writing Data On The WebGoogle G Data Reading And Writing Data On The Web
Google G Data Reading And Writing Data On The Web
QConLondon2008
 
Google G Data Reading And Writing Data On The Web 1
Google G Data Reading And Writing Data On The Web 1Google G Data Reading And Writing Data On The Web 1
Google G Data Reading And Writing Data On The Web 1
QConLondon2008
 
Frank Mantek Google G Data
Frank Mantek Google G DataFrank Mantek Google G Data
Frank Mantek Google G Data
deimos
 
Yahoo Pipes Middleware In The Cloud
Yahoo Pipes Middleware In The CloudYahoo Pipes Middleware In The Cloud
Yahoo Pipes Middleware In The Cloud
ConSanFrancisco123
 

Ähnlich wie Lost In The Clouds (20)

Wide Open Spaces Using My Sql As A Web Mapping Service Backend
Wide Open Spaces Using My Sql As A Web Mapping Service BackendWide Open Spaces Using My Sql As A Web Mapping Service Backend
Wide Open Spaces Using My Sql As A Web Mapping Service Backend
 
Web enabling your survey business ppt version
Web enabling your survey business ppt versionWeb enabling your survey business ppt version
Web enabling your survey business ppt version
 
Google G Data Reading And Writing Data On The Web
Google G Data Reading And Writing Data On The WebGoogle G Data Reading And Writing Data On The Web
Google G Data Reading And Writing Data On The Web
 
Google G Data Reading And Writing Data On The Web 1
Google G Data Reading And Writing Data On The Web 1Google G Data Reading And Writing Data On The Web 1
Google G Data Reading And Writing Data On The Web 1
 
Frank Mantek Google G Data
Frank Mantek Google G DataFrank Mantek Google G Data
Frank Mantek Google G Data
 
Apache Kylin - Balance between space and time - Hadoop Summit 2015
Apache Kylin -  Balance between space and time - Hadoop Summit 2015Apache Kylin -  Balance between space and time - Hadoop Summit 2015
Apache Kylin - Balance between space and time - Hadoop Summit 2015
 
Saving Money by Optimizing Your Cloud Add-On Infrastructure
Saving Money by Optimizing Your Cloud Add-On InfrastructureSaving Money by Optimizing Your Cloud Add-On Infrastructure
Saving Money by Optimizing Your Cloud Add-On Infrastructure
 
The State of the GeoServer project
The State of the GeoServer projectThe State of the GeoServer project
The State of the GeoServer project
 
Blurring the lines - VGI in aid of Prof. GIS
Blurring the lines - VGI in aid of Prof. GISBlurring the lines - VGI in aid of Prof. GIS
Blurring the lines - VGI in aid of Prof. GIS
 
RESTful OGC Services
RESTful OGC ServicesRESTful OGC Services
RESTful OGC Services
 
Orbitz and Spring Webflow Case Study
Orbitz and Spring Webflow Case StudyOrbitz and Spring Webflow Case Study
Orbitz and Spring Webflow Case Study
 
Vidoop CouchDB Talk
Vidoop CouchDB TalkVidoop CouchDB Talk
Vidoop CouchDB Talk
 
State of GeoServer at FOSS4G-NA
State of GeoServer at FOSS4G-NAState of GeoServer at FOSS4G-NA
State of GeoServer at FOSS4G-NA
 
Apache Solr Changes the Way You Build Sites
Apache Solr Changes the Way You Build SitesApache Solr Changes the Way You Build Sites
Apache Solr Changes the Way You Build Sites
 
What's New in Web Development
What's New in Web DevelopmentWhat's New in Web Development
What's New in Web Development
 
The HTML5 WebSocket API
The HTML5 WebSocket APIThe HTML5 WebSocket API
The HTML5 WebSocket API
 
Cape Cod Web Technology Meetup - 2
Cape Cod Web Technology Meetup - 2Cape Cod Web Technology Meetup - 2
Cape Cod Web Technology Meetup - 2
 
How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...
How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...
How did we move one of the world’s largest SAP BW HANA landscape to Microsoft...
 
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...
 
Yahoo Pipes Middleware In The Cloud
Yahoo Pipes Middleware In The CloudYahoo Pipes Middleware In The Cloud
Yahoo Pipes Middleware In The Cloud
 

Mehr von george.james

On a cloudy day you can scale forever
On a cloudy day you can scale foreverOn a cloudy day you can scale forever
On a cloudy day you can scale forever
george.james
 
Bad Light Stops Play
Bad Light Stops PlayBad Light Stops Play
Bad Light Stops Play
george.james
 
Securing The Cloud
Securing The CloudSecuring The Cloud
Securing The Cloud
george.james
 
Out Of The Slipstream Proposal
Out Of The Slipstream ProposalOut Of The Slipstream Proposal
Out Of The Slipstream Proposal
george.james
 
Lightning In The Clouds
Lightning In The CloudsLightning In The Clouds
Lightning In The Clouds
george.james
 
Web Development Environments: Choose the best or go with the rest
Web Development Environments:  Choose the best or go with the restWeb Development Environments:  Choose the best or go with the rest
Web Development Environments: Choose the best or go with the rest
george.james
 
Web Servers: Architecture and Security
Web Servers: Architecture and SecurityWeb Servers: Architecture and Security
Web Servers: Architecture and Security
george.james
 
Report from DEVCON 2008
Report from DEVCON 2008Report from DEVCON 2008
Report from DEVCON 2008
george.james
 
Michelle's Wallpaper
Michelle's WallpaperMichelle's Wallpaper
Michelle's Wallpaper
george.james
 
The experiences of migrating a large scale, high performance healthcare network
The experiences of migrating a large scale, high performance healthcare networkThe experiences of migrating a large scale, high performance healthcare network
The experiences of migrating a large scale, high performance healthcare network
george.james
 
FIS-PIP™ – A high end database application development platform
FIS-PIP™ – A high end database application development platformFIS-PIP™ – A high end database application development platform
FIS-PIP™ – A high end database application development platform
george.james
 
Mission-critical Ajax: Making Test Ordering Easier and Faster at Quest Diagno...
Mission-critical Ajax:Making Test Ordering Easier and Faster at Quest Diagno...Mission-critical Ajax:Making Test Ordering Easier and Faster at Quest Diagno...
Mission-critical Ajax: Making Test Ordering Easier and Faster at Quest Diagno...
george.james
 
Scalable Web Architectures and Infrastructure
Scalable Web Architectures and InfrastructureScalable Web Architectures and Infrastructure
Scalable Web Architectures and Infrastructure
george.james
 

Mehr von george.james (20)

On a cloudy day you can scale forever
On a cloudy day you can scale foreverOn a cloudy day you can scale forever
On a cloudy day you can scale forever
 
Bad Light Stops Play
Bad Light Stops PlayBad Light Stops Play
Bad Light Stops Play
 
Securing The Cloud
Securing The CloudSecuring The Cloud
Securing The Cloud
 
Out Of The Slipstream Proposal
Out Of The Slipstream ProposalOut Of The Slipstream Proposal
Out Of The Slipstream Proposal
 
Lightning In The Clouds
Lightning In The CloudsLightning In The Clouds
Lightning In The Clouds
 
Mumps the Internet scale database
Mumps the Internet scale databaseMumps the Internet scale database
Mumps the Internet scale database
 
Web Development Environments: Choose the best or go with the rest
Web Development Environments:  Choose the best or go with the restWeb Development Environments:  Choose the best or go with the rest
Web Development Environments: Choose the best or go with the rest
 
Web Servers: Architecture and Security
Web Servers: Architecture and SecurityWeb Servers: Architecture and Security
Web Servers: Architecture and Security
 
Google's BigTable
Google's BigTableGoogle's BigTable
Google's BigTable
 
Report from DEVCON 2008
Report from DEVCON 2008Report from DEVCON 2008
Report from DEVCON 2008
 
Michelle's Wallpaper
Michelle's WallpaperMichelle's Wallpaper
Michelle's Wallpaper
 
The experiences of migrating a large scale, high performance healthcare network
The experiences of migrating a large scale, high performance healthcare networkThe experiences of migrating a large scale, high performance healthcare network
The experiences of migrating a large scale, high performance healthcare network
 
Beyond The MVC
Beyond The MVCBeyond The MVC
Beyond The MVC
 
Amazon S3 and EC2
Amazon S3 and EC2Amazon S3 and EC2
Amazon S3 and EC2
 
FIS-PIP™ – A high end database application development platform
FIS-PIP™ – A high end database application development platformFIS-PIP™ – A high end database application development platform
FIS-PIP™ – A high end database application development platform
 
Web Design and Programming
Web Design and ProgrammingWeb Design and Programming
Web Design and Programming
 
Querying the Web
Querying the WebQuerying the Web
Querying the Web
 
Mission-critical Ajax: Making Test Ordering Easier and Faster at Quest Diagno...
Mission-critical Ajax:Making Test Ordering Easier and Faster at Quest Diagno...Mission-critical Ajax:Making Test Ordering Easier and Faster at Quest Diagno...
Mission-critical Ajax: Making Test Ordering Easier and Faster at Quest Diagno...
 
Scalable Web Architectures and Infrastructure
Scalable Web Architectures and InfrastructureScalable Web Architectures and Infrastructure
Scalable Web Architectures and Infrastructure
 
The experiences of migrating a large scale, high performance healthcare network
The experiences of migrating a large scale, high performance healthcare networkThe experiences of migrating a large scale, high performance healthcare network
The experiences of migrating a large scale, high performance healthcare network
 

Kürzlich hochgeladen

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Kürzlich hochgeladen (20)

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

Lost In The Clouds

  • 1. Lost in the Clouds An example of a schemaless database application in the cloud SlipstreamUSA :: March 25, 2009
  • 2. The Project OpenStreetMap  A free map of the planet  Free geospatial data  Licensed under CC-BY-SA  Created from  Crowd-sourced contributions  90,000 registered users  1,000+ contributors per day  Used for:  Wikipedia  Flikr  OpenCycleMap.org  OpenPisteMap.org  YourNavigation.org  Mobile devices  © Constantin Litvak
  • 3. Coverage CC-BY-SA 2.0 © OpenStreetMap
  • 4. The OpenStreetMap Database Server In the cloud  MySQL  Ways: 24,956,171  Nodes: 305,956,583  Tags: 3.6 billion  highway=motorway  name=Broadway  foo=bar  CC-BY-SA 2.0 Image © Ojw Data © OpenStreetMap
  • 5. Interfaces API  For updates  (1,000 users per day) Queries of up to  0.25² degrees Weekly Planet Dump  100Gbyte XML file  Changes  Feed of changes  Daily / Hourly / Minutely  One file per minute  (~30Kb compressed) CC-BY-SA 2.0 Image © Ojw Data © OpenStreetMap
  • 6. Problem Statement Problem  Want to be able to query the data in bigger chunks and to do it more selectively Solution  Cloud based schemaless database with simple to use query interface and lots of indexes CC-BY-SA 2.0 Image © Maning Sambale Data © OpenStreetMap
  • 7. XAPI Service GT.M or Cache  250Gbyte database  Nodes: 30Gb  Node tags: 115Gb  Node indexes: 70Gb  Ways: 21Gb  Way tags: 10Gb  Way indexes: 18Gb  Apache + serverLink  Licensed as AGPL  CC-BY-SA 2.0 Image © Maning Sambale Data © OpenStreetMap
  • 8. XAPI Service In the cloud  Queries of up to 100² degrees  Query by tags and tag values  Scaleable  REST style interface  http://xapi.openstreetmap.org/api/0.6/* [tourism=hotel] [bbox=-75.7,40.0,-75.4,40.2] Import planet dump  Import minute diff  CC-BY-SA 2.0 Image © Ojw Data © OpenStreetMap
  • 9. XAPI Service Geospatial Index – quadstrings  adaabcdcabaadab
  • 10. XAPI Service <way id='27016525'> <nd ref='296138118'/> <nd ref='296138119'/> ^way(27016525)=quot;adaabcdcabaadabquot; <nd ref='296138120'/> ^way(27016525,1)=296138118 <nd ref='296138121'/> ^way(27016525,2)=296138119 <nd ref='296138118'/> <tag k='addr:housenumber' v='2'/> ^way(27016525,3)=296138120 <tag k='building' v='yes'/> ^way(27016525,4)=296138121 </way> ^way(27016525,5)=296138118 ^waytag(27016525,quot;addr:housenumberquot;)=2 ^waytag(27016525,quot;buildingquot;)=quot;yesquot; ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27016525)=quot;quot; ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27028298)=quot;quot; ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27028299)=quot;quot; ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27028326)=quot;quot; ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27028327)=quot;quot; ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27035972)=quot;quot; ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27035973)=quot;quot; ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27035974)=quot;quot; ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27035975)=quot;quot; ^wayx(quot;buildingquot;,quot;*quot;,quot;adaabcdcabaadabquot;,27035984)=quot;“
  • 11. Deployment Currently 5 instances:  London  Paris  San Diego  Zurich  Amsterdam  (Wikimedia-de) More servers needed:  Internet connectivity  300Gb disk storage  CC-BY-SA 2.0 Image © Nikolaj Data © OpenStreetMap
  • 12. Wikipedia: Query to Map {{osm-query |way=name=Arizona Canal}} CC-BY-SA 2.0 © OpenStreetMap
  • 13. Internals Debian  Apache web-server  REST  URI represents a  resource Xpath flavoring  serverLink  WebLink emulator  GT.M or Cache  POM  AGPL 
  • 14. XAPI Future Load Sharing / balancing  More Xpath-like queries  JSON output  Generic indexing service  More servers 
  • 15. Thank you Thank you Questions? CC-BY-SA 2.0 Image © ITO! Data © OpenStreetMap