Bestand wählen
Merken

Running Your Own Rendering Infrastructure

Zitierlink des Filmsegments
Embed Code

Automatisierte Medienanalyse

Beta
Erkannte Entitäten
Sprachtranskript
the goal so all kinds of observance of our down over to scare at stake in design will actually is a work from my house and sell it to step aside in Seattle but of course of some we do rendering of maps of among other things and in search of summary and so on the
topic of Mike boss that's possible biases and scanned stating them up front inidentifying them on was the disconnect cover mind real quick and so on that statement posting maps is only part of what we do our data visualization business we say we make maps some of which are geographic in nature and others can be more Charlie want so it's a small part of it and we only have about 12 people so anything we do needs to scale with minimal attention and we use of history that data we use natural earth and we use domain-specific data that's provided by clients or that we get from public domain sources on and finally this is how we do it given our unique constraints so it may sound like I'm giving you guys a prescription it's prescription we that we take ourselves so on the please state of the result and conditions change constantly our started talking about this and we're doing things quite differently than there now so that so that up front but I was going to talk a
bit about a project that we did last fall on his for the Golden Gate National Parks Conservancy which is the nonprofit partner for the national parks in that area are we working with them on taking data from internal content management systems and their local GIS department in producing not only in a base map that they could use to highly trails and other amenities on but also something related to events and incorporated into the their strategies all so the parts of this that I was most involved in and I think are most interesting here on our how we actually did the but the map rendering infrastructure there so and as I go through and walk through the different components that that serve this thing up and also serve a couple of other things up and outran refer back so you can say 0 that's where that comes from and so we learned 3 lessons in the presence of and it's important to be easily deployable so we can constantly show clients what's changing and for us to be able to try new experiments and given as public as possible on depending on the engagement and end that kind of in the in the vein of wanting to limit our exposure to things we wanna a shield anything that's dynamic as much as possible and we want people to do it over and over and over again because the more these things we do the more fun is the battery get out the more we can tell other people how we do it and help everybody level of and there's just the there's there's a need for more variety out the
so we also did toner a couple weeks ago version I'm summers are bit about that and how it fits into you everything else that's been going on here so we refresh the data and we also refreshed the infrastructure at the same time so that on the left is uh OpenStreetMap data prior to the license change from I think about 2012 and this is in the Philippines so this is also on an advertisement for the military OpenStreetMap team so that the 1 on the right is data from think about 2 months ago or so so it shows all of the mapping efforts and there were involved after Typhoon and so the
lessons that we learned in this whole process is 1st of all it your map is an act on the there's been a lot of work in the last 10 15 years in public were people been figuring out how to do a better job of deploying APS at scale web apps at scale are API scale and maps really don't have to be that different how we can we've traditionally treated them as a set of styles that are combined with those a single piece of software and we say OK were focused on the style somebody else's is pay attention softer some deals with the and the lesson we really learned is that those 2 go hand in hand on if you're as you become comfortable with the capabilities of the software you learned how to push it to its limits had a stresses how to figure out where the problems are How work around them and then often involves actually getting your hands dirty in the rendering infrastructure itself rather than just the styling so you treated styles has version I'm sorry maybe make changes once a month once a week or you add new features that we can have on the equivalent to major version change from on any also include the dependencies required to actually render the map which is the map Tyler and often the data and the caching where some of it comes along with the silence solve some of the cosets elsewhere the 2nd lesson we learned is that your data is an API we've done more and more projects where were taking image data that's been rendered by map Tyler bringing in a new browser and then using something like canvas to read pixels from it into something totally different so on the surface it's an image or actually treating is data and with the move towards using topical buffers for encoding vector and raster features those on those can be used either as the source for rendering new Rasta tiles according to whatever style or you can pull them into an application and for example map OX GL to bring up on your phone and you could have it style and different way so splitting out the data from the style who do has a bunch of benefits but the fundamental learning there was to treat your data is that it's an API and the 3rd thing is to show fragile bone having to get having to wake up in the middle the nite when something breaks can sex there there people were the very people who do this full-time who are on call for large companies who work in our shifts and use them whenever possible you're paying for you're paying for their time through using their services and keep repeating this stuff because the more you do it the more you learn about it the more we figure out what works what doesn't for individual circumstances and what doesn't and the the other piece of repeating is that in order to see more variations quickly you need to be able to treat it like an app of we've gone we've seen Apple or web applications go from having monthly release cycles much like packaged software to being deployed multiple times per day and there's no reason we can't treat perhaps the same way are we done this on like knighted and projects of ourselves in we've got a system that works pretty well for us that minutes it's evolving particularly is related to what the other B so it's sort right is the
difference between being a services business like statements and actually being a service like map OX Carter DB where in our case we're trying to use whatever we can in in the most cost-effective way we way possible to produce the most value for clients and for the products they're trying to provide the most usefulness to encourage people to pay the money to support them so that it also means that we have a well In some ways we have a wider variety of constraints and desires projected to us because we're working with all of these different clients and because we're not providing a service a capitalist service and there is not a we have a predefined or or Pre imagine set of constraints that you have to work with and so we need to constantly figure out what's impossible on animal to most of and my notes here but would yes so each project as different needs of and we also trying you aware tools as much as possible so when somebody hires us we do design work for them we do some software development work for them and we also give them the ability to run it on their own so we need to start doing things there so with this kind of stuff in my mind and we've we've
got a set of goals do we start thinking about when we're thinking about the infrastructure for a particular client project Turnitin burn internal projects on so that we can account for the rapid design iteration as well as long-term distinct so we want to mean minimal administrative overhead we wanted to be straightforward update didn't styles so that that could happen regularly we wanted to be cost effective because we often work with nonprofits literary cost-sensitive we wanted to be performance because the top performance so performance and we wanted to be flexible because we like pushing the limits of what's possible in a water column maps are a good example of that that's not something you can do without back software it's barely something you can do with the customs of but and we wanted to be handed him the ball over to clients who have minimal technical capacity so we want to be able to use either individual services or collections of services that are intended to work well with 1 another so that we say here adding your billing information if something breaks talk to support here there's nothing special about it it's just adapt them we want to be horizontally scalable if we do have some project that goes viral and we have billions of users we wanna be able to make sure that there's nothing that prevents us from supporting that group right off the bat the mean so we've developed a
fuel rule of thumb as we've gone through this effects can be accomplished without shared-state don't shared state I shared state when it comes to maps are manifests itself in a couple different ways on the cover the prototypical example of shared-state here would be data in a prosperous database server database generally where all of your under nodes have to talk to a single shared as instance and that's particularly acute if you've got something where the data is changing constantly so say in response to user needs are if it's read-only you can scale out and have multiple read replicas because everything's the same the diversion your data effectively and make sure that you're our cycling the the instances that you're reading from and there's also show some shared data which is data that is common and across individual so it will word there's data like naturalist for example which is going to be pretty static over time and it could come from a database but there's also the reason that it could be that it could come from a ship off so you can ship the shape file out and treated as a as a sham so my shared resource and then on shared resources are things that Our and often the result of calculating things locally so that the node the interdependencies between them so you can have 15 thousand observers and nothing terrorists as long as you got something in front of it to the can handle and use other products ops teams to sleep better so this is where if you using the Amazon would if you don't have to actually worry if your hardware guys that's the problem you can call up to take care of if you're using MAP box in the map stop rendering in call them up and say hey how map stop rendering the fixed free so the more the more you can limit yourself near the better you'll sleep and the fewer people you can be and then lean other people and other software to focus your efforts on what makes things truly distinct for you but we found a lot of this where I over the years standing has found itself in the position of developing a lot of custom software as we discover emerging techniques for things and we've often publish that software out there what is happening is a community doesn't form around the things that we produce but around other tools that have gotten momentum so the 1 example of this is modest maps versus leaflet leaflet has when we were meant will enter you 100 modest maps that's fine we don't use must Seymour more either on it served its purpose it should it should what was possible in somebody else can around with it and now we can use we can say OK most of this is a solved problem we can now focus on the specifics of the specific details and integrate them with leaflets so that we can provide something that it that it has more impact for dramatically less effort and the same goes for things like the map rendering we use neck power we used to use the Python bindings for that and then map and then map box so adopted no jazz for tile no and for all the rendering infrastructure and they have a fantastic job is a fantastic approached open-source everything that they do is essentially open source so we've been able to switch over to using JS and were effectively slipstreaming behind what they do so any of the benefits that they make for their tools and their infrastructure we can benefit from it we can focus on only the things that impact us directly
so when go back to the point about your mapping out and this is kind of the the most obvious piece of this is the styles the you actually use for rendering and their dependencies there's data its infrastructure an infrastructure was we've used her recruit quite effectively where it just the has a git push model so we've got our styles or styles along with some of the dependencies that site that says this is how you start the map so that all the things get installed a new push and that's really up and I can have 5 of those in about 15 seconds they can have 1 of those about 15 seconds doesn't really matter and at the could get expensive fast but for client iteration it doesn't matter we can actually get away with 1 most of them are we also been using which is kind of the new hotness when it comes to our container virtualization at which allows us to better integrate with things like Elastic Beanstalk and Google Compute Engine and it also gives us the opportunity to use what are called darker data volumes to handle the sum should state so we've got natural if lives in 1 container and then assume that changes very infrequently and then we've got our map styles and the software that runs that in another container so it's a lot smaller because the natural and being locally but over again with indexes and stuff and the on the other 1 of data couple hundred mega and rather than having to rebuild the entire thing with the data in the rendering infrastructure we can treat them as 2 separate things inversion independently and here we also gives us the opportunity to produce maps and apply them on Cora koro as server at something else that allows us to essentially oversubscribed for doing things for clients where things lie fallow for a long time there's no reason the spin-up of all instance where we wanna build a share it with other infrastructure so the the
most recent of all of this is on our updates the toner so on not only did we update the data update infrastructural also did all the styles of these courtesy CSS rather than cascade Nick another example of 1 of these things that we produced and then jumped on the bandwagon as something else got Mormon momentum behind it and if you look American actually looks like a node up on there's a server digest that embeds a 0 about In New JSB styles were much like you hear about next or are called Tessa and tells it had a start so that that describes all the dependencies there and can if you didn't have lots of ship files and it could be deployed to broker easily are the darker files for creating the data volume in there the are profiles for creating the style and rendering infrastructure also there is a 2nd piece you
did is an API and means you can a version your data independently of your styles of OpenStreetMap maybe you're updating once a week media obtaining once a month this is the this is not further updates that happened on a more continuous basis that things where there's some sort of release cycle behind it and if you do that which you can use you can invalidate the rendering not have to deal with any of the renders and it's point it's the new data and you start getting needed and if the data is not gonna change you can catch it as intermediate layers so the other piece that and the other talks you could have gone to on learning about of vector tiles are using Protocol Buffers or what it does is it effectively serializes the geometries to aid binary format on a per-call basis and you could then consumed those in a browser by not part She'ol or by not there can do the rendering and but the best part about it is that you can take that data API and you can stick it a catch somewhere so you're rendering does after such a database and this is particularly important when you when you're derivatives are not one-to-one with your data so in the case of toner we've got fiercely 5 or 6 variants but not all of them are public there's a buildings will example of seeking combined things together differently but they all use the same data fundamentally so there's no reason that we should have to make 4 5 identical database queries we can just query the same data tile and then render from that so render once Polish Mikosch etc. and yeah and then you can repurpose you can put into a browser you can convert to JJ is it it works really well for anything you wanted to treat has held that on some
good breakdown of the the concerns the can inherent in the the rendering infrastructure and there are 3 things the to me absolutely important of the bottom up that data you have data can would you showing an interview showing something that generative but were almost certainly producing data in reported maps here and then there's the rendering post-processing services converting the data into something visual and then may be doing something a little bit extra points image filters on top of it and then the 3rd thing that I view is absolutely crucial is ephemeral caching that getting any sort of traffic you don't wanna render everything again and again and this goes back to your data as an API your tiles Artiles for reason RDBMS doesn't scale especially well because if everybody requesting a different bounding box you have to render each of those individually rather than by composing things together as necessary but the other 2 pieces are persisting caching and the seating of that cash which for us becomes really important for our styles like water color because water politics really long time to render the some of the tiles take probably over 2nd so we don't wanna do that very often and even a for using an ephemeral cash that will hold on the things for a month did in watercolors case the data hasn't changed a couple years we wanna render things once and not I think about it again I'm so that seems like it's kind of an ideal
use case for the cloud but we we started out building this on a phrase so the 2 you in a basement stuff like 12 cost the thing is actually know all of these things and they shouldn't have to carry on there's 1 of them and if we solve sudden get all of our well I gotta order another server that can take a few years I've gotta get activated physical access to the building I can make sure that there's enough power enough space enough network capacity that got configure the thing drop in and make sure that everything else is concluded that such what's not do that what he's the Cloudlets would say 0 I want 5 it is in heaven 15 seconds later so i'm can
go back to this again also top so for ephemeral caching and that's something that I guess that map cash for something like that of action is that poem I'm focused more on using the pieces of Internet infrastructure that are used by web apps generally I'm so that there's no none of those us are unique special flower kind of thing and so for edge caching on really good and and then pretty much any CDN will do but I and have a particular affinity for fastly are in part because these varnish on and also added some additional features on top of that are delighted to have some really tight control over all what backends correspond to which parts of give you the ability to use as 3 as a primary back and of the Tauzin there'll actually requested from another back and actually the rendering on fly by and you can do redirects in it and it's it's it's way configurable it's really to me hosted varnish not actually accounted delivery network that happens to be linear 2nd at so for cash sitting on in axons SQS service is really good for those you almost thing after at some custom code according to where you want to seed means is kind of a salt problem but as long as you can make HTTP requests through to your edge caching where and it'll stick things in a persistent cache of persistent cash for that we use as 3 just because that way we don't have to worry about ideas and the server in the basement and runs on a minor periodically it claims that it's got a few hundred gig left but it doesn't actually have any I nodes which sucks again like it's still going on and deleting things jet pain on and only giving you deal with these things with us 3 I don't have to worry about it I just have to pay a lot of money it can set an expiration policy the year there's doesn't it doesn't mean that offer the rendering of post-processing part from has said we use not but I'm focusing on in the architectural pieces are so for that are for simpler projects and with smaller demands some we use for a pure heavily otherwise we use AWS or have thought about but haven't actually used Google Büdingen but there's no reason not to use the following example on and for the data you can host you can run your own Cosgrove service you want and you can pay Amazon a little bit extra and use their relational database service I can be a little bit more than that and you can pay her a cue for their hosted posting service which is actually quite good and it's been so much data you have how much you're willing to trade off costs versus time are versus flexibility and in the case of the Parks Conservancy map on that was SQS for CAS 3 for persistent storage are we got faster the compliment because they're nonprofit are we tried to do the same thing with her but they're part of a large company called sales force and that was kind of chaos but in the end it costs them 50 bucks a month the database and that's it it's kind of also that's it allows them to be cost sensitive and for us to still produce something that we really like some of the other option for data is since I am talking about the data is an API and encouraging you to produce your own vector tiles to render from is to use MAP boxes are hosted vector files so where they've already curated OpenStreetMap and bit natural thing so the special sauce for the world on many just render off of that mean you can have them do the rendering or you can do the rendering if you have some are specific needs around and so this is the same slide repeating what I said before um and ephemeral
catching so this is were stocking vastly varnish I know a couple things that I wanna highlight about vastly on the Big Red creams reminded me of that otherwise on are the surrogate control and surrogate key headers surrogate controls a lot like a Cache-Control header except it's intended for its intended for cache server so you can see a cache server hang onto this for 30 days but when you tell browsers about it only stored energy last for an hour so browsers will OK what kind of phenolic and I'm happy and all had vastly investors are guy out for another day another month this is great it's the ultimate rental on surrogate keys are also really great great is they light a purge selectively on a case of toner we made some corrections for some spelling mistakes that impacted labels on zooms 4 3 6 I yesterday and we include keys Lake toner slashes E for toner slashes E 5 which allowed me just purging individuals in levels and then just get on with my life and vastly continued to hang on to all the other stuff that we have the and cash seeding
and bring 1 time here but this is you can either push that directly S 3 or whatever your caches or you can have a pulled as part of a normal request cycle and in this case we proceeded things are
persisting caching this is sticking stuff up on us 3 so if using an edge catch even if you shielding units above tiles will fall out of cash and this allows you to protect your antidotes rendering of we have
a note here that flickr has a lot of common packet Commons-licensed pictures of people's tile floors that are not nearly this interesting so if you're into that great on its ticket source those on to do right
so data and metadata tiles I think a kind of the way to go but we were not using them entirely we are in a range of stuff directly out of the status of by there's not really any good reason to do that except for places at 1 1 because the workflow has gotten to the point where are when you request data tiles that it will also are in bold render new data for you and then you can render often needed and so those 2 layers in there but effectively transparent and so you have to be your own it is the parched Conservancy mapping even that was going directly from posters obviate data from the partitions are interior data from US chess data from the park service with data from a sample and so to
summarize this is too long didn't pay attention on your map is an app it doesn't need to be unique snowflake if your data is an API it's got many many users are she looks fragile on take yourself out a picture are to the extent where anything you manage rendering data whatever can be pulled out of the critical path and things can that you've got a grace period of 12 hours that means that that that's 12 hours you can sleep that's 12 hours you can drive back from the mountains and always be iterating keep experimenting with this process you'll find newer and better ways to do it since the 1st time I did this we learned a lot of stuff and I'm really doing much better about the split between rendering and the i-vector tiles are vastly is fantastic after looking for a and if you're looking for hosted varnish even bound in the US is greater group makes life super easy and this Tessa is the name of the integers based on TAO server that we've been using it stand in in some form for last year 7 and and it's it's been working quite well uses all the time of modules that are not box is produced that incorporates into a tunnel and approach to you 1 so I
think user left Merrill time for questions but I would still like questions and if you have questions microphone please fj no questions call rate 0 there's 1 and then where's the microphone it's coming from right here the I did you elaborate a little bit on the relationship between Vapnik and you were vector titles did are the pre Vapnik and that if you just submit a colors levels were loath and not make will produce vector house on Protocol buffer format you can also produce another is that there are any real and that's really the only production way to create vector doesn't know of a nematic will also consume vector tiles and style so you're basically taking the design and style pieces and splitting them up millions of their work for you so what's up hand but the advantage of producing intermediate once you've got multiple derivatives or if you got a browser render sort of goal that yes
Resultante
Einfach zusammenhängender Raum
Zentrische Streckung
Nebenbedingung
Befehl <Informatik>
Extremwert
Natürliche Zahl
Quellcode
Rendering
Computeranimation
Überlagerung <Mathematik>
Mapping <Computergraphik>
Benutzerschnittstellenverwaltungssystem
Reelle Zahl
Konditionszahl
Mereologie
Visualisierung
Luenberger-Beobachter
Public-domain-Software
Aggregatzustand
Mathematisierung
Versionsverwaltung
Stellenring
Content Management
Ereignishorizont
Computeranimation
Übergang
Mapping <Computergraphik>
Client
Flächeninhalt
Rechter Winkel
Mereologie
Strategisches Spiel
Projektive Ebene
Zusammenhängender Graph
Hilfesystem
Varietät <Mathematik>
Nebenbedingung
TVD-Verfahren
Subtraktion
Prozess <Physik>
Browser
Web-Applikation
Mathematisierung
Versionsverwaltung
Kartesische Koordinaten
Dienst <Informatik>
Computeranimation
Puffer <Netzplantechnik>
Client
Multiplikation
Benutzerbeteiligung
Web Services
Flächentheorie
Software
Prozess <Informatik>
Kontrollstruktur
Inverser Limes
Softwareentwickler
Bildgebendes Verfahren
Web Services
Zentrische Streckung
Befehl <Informatik>
Pixel
Systemaufruf
Einfache Genauigkeit
Quellcode
Vektorraum
Physikalisches System
Biprodukt
Bitmap-Graphik
American Physical Society
Quick-Sort
Mapping <Computergraphik>
Dienst <Informatik>
Menge
Parkettierung
Rechter Winkel
Caching
Dreiecksfreier Graph
Projektive Ebene
Ordnung <Mathematik>
Varietät <Mathematik>
Resultante
Impuls
Gruppenkeim
Iteration
Computeranimation
Client
Prozess <Informatik>
Kontrollstruktur
Umwandlungsenthalpie
Schnelltaste
Shape <Informatik>
Hardware
Datenhaltung
Systemaufruf
Biprodukt
Arithmetisches Mittel
Dienst <Informatik>
Menge
Rechter Winkel
Server
Projektive Ebene
Information
Overhead <Kommunikationstechnik>
Instantiierung
Aggregatzustand
Lesen <Datenverarbeitung>
Subtraktion
Ortsoperator
Thumbnail
Quader
Überlagerung <Mathematik>
Bildschirmmaske
Knotenmenge
Multiplikation
Software
Endogene Variable
Inverser Limes
Luenberger-Beobachter
Leistung <Physik>
Soundverarbeitung
Individualsoftware
Open Source
Thumbnail
Kanalkapazität
Schlussregel
Elektronische Publikation
Schlussregel
Mapping <Computergraphik>
Parkettierung
Wort <Informatik>
Trennungsaxiom
Impuls
Web Site
Gewichtete Summe
Punkt
Virtualisierung
Gemeinsamer Speicher
Zwei
Mathematisierung
Profil <Aerodynamik>
Iteration
Störungstheorie
Elektronische Publikation
Computeranimation
Mapping <Computergraphik>
Knotenmenge
Client
Informationsmodellierung
Software
Automatische Indexierung
Server
Umkehrung <Mathematik>
Spezifisches Volumen
Serviceorientierte Architektur
Instantiierung
Bit
Punkt
Quader
Browser
Wasserdampftafel
Mathematisierung
Versionsverwaltung
Derivation <Algebra>
Räumliche Anordnung
Computeranimation
Rendering
Binärdaten
Minimum
Visualisierung
Bildgebendes Verfahren
Caching
Zentrische Streckung
Filter <Stochastik>
Prozess <Informatik>
Datenhaltung
Gebäude <Mathematik>
Ideal <Mathematik>
Vektorraum
Rendering
Quick-Sort
Mapping <Computergraphik>
Dienst <Informatik>
Generator <Informatik>
Parkettierung
Caching
Dreiecksfreier Graph
Basisvektor
Mereologie
Hypermedia
Kantenfärbung
Bit
Quader
Natürliche Zahl
Gruppenoperation
Web-Applikation
Besprechung/Interview
Code
Raum-Zeit
Internetworking
Web Services
Rendering
Front-End <Software>
Unordnung
Affiner Raum
Speicher <Informatik>
Tropfen
Konfigurationsraum
Leistung <Physik>
Caching
Addition
Relationale Datenbank
Prozess <Informatik>
Datennetz
Datenhaltung
Eindeutigkeit
Gebäude <Mathematik>
Zwei
Kanalkapazität
Vektorraum
Elektronische Publikation
Rendering
Konfiguration <Informatik>
Arithmetisches Mittel
Rechenschieber
Mapping <Computergraphik>
Forcing
Parkettierung
Caching
Mereologie
Server
Gamecontroller
Ordnung <Mathematik>
Streuungsdiagramm
Caching
Videospiel
Browser
Ausnahmebehandlung
Zoom
Computeranimation
Übergang
Caching
Dreiecksfreier Graph
Mereologie
Gamecontroller
Server
Normalvektor
E-Mail
Schlüsselverwaltung
Einheit <Mathematik>
Parkettierung
Quellcode
Flickr
Punkt
Prozess <Physik>
Quader
Besprechung/Interview
Gruppenkeim
Computeranimation
Fehlertoleranz
Metadaten
Spannweite <Stochastik>
Bildschirmmaske
Web Services
Rendering
Stichprobenumfang
Maßerweiterung
App <Programm>
Partitionsfunktion
Frequenz
Modul
Mapping <Computergraphik>
Computerschach
Parkettierung
Ganze Zahl
Heegaard-Zerlegung
Server
Energieerhaltung
Innerer Punkt
Bit
Protokoll <Datenverarbeitungssystem>
Browser
Vektorraum
Bitrate
Biprodukt
Quick-Sort
Computeranimation
Übergang
Puffer <Netzplantechnik>
Rendering
Rechter Winkel
Parkettierung
Heegaard-Zerlegung
Dateiformat
Kantenfärbung

Metadaten

Formale Metadaten

Titel Running Your Own Rendering Infrastructure
Serientitel FOSS4G 2014 Portland
Autor McConchie, Alan
Fitzsimmons, Seth
Lizenz CC-Namensnennung 3.0 Deutschland:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
DOI 10.5446/31602
Herausgeber FOSS4G, Open Source Geospatial Foundation (OSGeo)
Erscheinungsjahr 2014
Sprache Englisch
Produzent FOSS4G
Open Source Geospatial Foundation (OSGeo)
Produktionsjahr 2014
Produktionsort Portland, Oregon, United States of America

Inhaltliche Metadaten

Fachgebiet Informatik
Abstract In addition to hosting the popular OSM-base Toner, Watercolor, and Terrain tile sets, Stamen incorporates custom cartography into much of our client work. This is a behind-the-scenes walkthrough covering the evolution of our rendering infrastructure and the peripheral services that help to make our work unique. Topics covered include the image processing used for Watercolor and Map Stack, raster manipulation for Terrain, Surging Seas, and the Chesapeake Bay Program, as well as the use of vector tiles (for both OSM and other data) to support Pinterest and future work.
Schlagwörter Vector Tiles
Rendering
DIY

Ähnliche Filme

Loading...
Feedback