MapCache: Fast and Featureful tile serving from the MapServer project


Formal Metadata

MapCache: Fast and Featureful tile serving from the MapServer project
Title of Series
Bonfort, Thomas
CC Attribution - NonCommercial - ShareAlike 3.0 Germany:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this license.
FOSS4G, Open Source Geospatial Foundation (OSGeo)
Release Date
Production Year
Production Place
Seoul, South Korea

Content Metadata

Subject Area
MapCache is a tiling server component designed to be efficient while still comprising all the features expected from a modern tiling solution. This presentation will give a brief presentation of the MapCache tiling solution, along with the recent developments that were added to reply to the needs of large scale installations (cache replication, load balancing, failsafe/fallback operations, large cache management, etc...)
Computer programming Server (computing) Product (category theory) Mapping Projective plane Tessellation Web 2.0 Word Computer animation Methodenbank Module (mathematics) Dependent and independent variables Quicksort Separation axiom Library (computing)
Interpolation Server (computing) Machine code Multiplication sign Combinational logic Client (computing) Medical imaging Latent heat Extension (kinesiology) Proxy server Address space Area Standard deviation Dialect Spacetime Tesselation Electronic mailing list Bit Zeitdilatation Set (mathematics) Equivalence relation Category of being Computer animation Universe (mathematics) Order (biology) Right angle Intercept theorem Communications protocol Empennage
Satellite Logical constant Pixel Code State of matter Multiplication sign Source code 1 (number) Client (computing) Function (mathematics) Disk read-and-write head Mereology Subset Medical imaging Data compression File system Extension (kinesiology) Error message Descriptive statistics Physical system Area Covering space Product (category theory) Spacetime Mapping File format Block (periodic table) Electronic mailing list Bit Peg solitaire Arithmetic mean Graph coloring Data storage device MiniDisc Data management Data type Numbering scheme Statistics Computer file Geometry Motion capture Code Template (C++) Number Power (physics) Database Authorization Ideal (ethics) Energy level Subtraction Address space Condition number Form (programming) Standard deviation Multiplication Dialect Tesselation Projective plane Content (media) Directory service Limit (category theory) Cache (computing) Geometric quantization Computer animation Query language Personal digital assistant Mixed reality Statement (computer science) Film editing
Satellite Thread (computing) Code Multiplication sign Source code Zoom lens Client (computing) Subset Medical imaging Mathematics Stress (mechanics) Videoconferencing Arrow of time Rhombus Area Compact space Process (computing) Mapping Electronic mailing list Instance (computer science) Connected space Category of being Network topology Vector space Hausdorff dimension Asynchronous Transfer Mode Server (computing) Computer file Geometry Student's t-test Revision control Latent heat Population density Database Energy level Software testing Units of measurement Multiplication Dialect Shift operator Focus (optics) Tesselation Physical law Set (mathematics) Line (geometry) Cartesian coordinate system Cache (computing) Word Computer animation Computer network
Sequel Divisor Tesselation Multiplication sign Student's t-test Cartesian coordinate system Computer animation Software Lecture/Conference Right angle Communications protocol Reading (process) Units of measurement Library (computing)
that sort of an hello everybody has a lot
of responses from France and I'm going to talk about that and not cash project which is so fouled caching solution that's under the umbrella of the maps of the product itself at 2 separate projects separate projects separate program actually so just a few words about what not contractually years so it's a tiling library that's runs as a native module from the the Apache web server farms as FSC GID modular as a native model for and
in x there's also an order to know and connects the right and it's rather versatile way of storing tails it's handles multiple cash reckons and multiple protocols for requesting dials from the clients and it has quite a few telemanagement features that allow you to seeds precede specific areas recompress image data to optimize its interpolate dilator from other times this is return the times and it's written in native code in C so it's rather and this the standard time addressing it's it's a understands from time so it's understands therapists intervention with general the specification uh w which is the UGC equivalent that's a bit more powerful by virtue of properties of our and standard xyz address signals it also can understand WMS requests and so it understands titled your mother questions deserve subspacc inside the various specification to align the request to read but it also respond to work and i'll WMS requests for any given the extent of the given size by and actually reassembling the tiles from its from its cash and then i'll putting in generating an image on the fly to return to the client can also use it to their full WMS of of so he just at the address of the WMS 7 it's not either cash layer by layer and then reassemble 1 itself on all cash the list of layers and 15 times it's for every combination of layers and the real answer is also forward to get teacher requesting puts but it in front of the universe of mother on
the other users use as an OTC proxy so actually what it will do is equal intercepts the WMS requested it understands so fertile sets that move some of those from the captions and then it can forward the request as it doesn't understand of 2 and the other the the URIs of OGC services of the standard so here's an example here for example I have here is that's the request for many is the time of from a space uh what every request known by not careful research not country requesting the from the face we send to oneself and all the other requests to another set this miscellaneous
list of the futurists won't go into details of it's it's treats the caching in each so the clients of requests to many times over and over again it can automatically expire old dials review regenerate them if the tools report errors by different means at the very edge images and just a status code of the actual error message that does what Mediterranean watermarking on and upsampling of viral levels and I'll so if you have satellite imagery that's only useful at 2 levels succeeds in it can also serve the request for up to the head is just by upsampling the the data from the all 16 of having to catch those data and once the images derived from the source of as the image can be recompressed and optimize before being stored in the cache so used to storing and so you can store very compressed data and so you can be aggressive at that time by applying lots of exactly compression to European duties on the 1 it and it also handles multiple image formats uh in full PNG files you can configure the compression level you want all also apply quantization to reduce the covers to and that that dude that you also have the compression level and the way that the pixels are encoded in non-trivial ways which know it's also you can use to the mixed image formats well depending on the contents of the image at full either use PNG if this transparency inside or used to break the image is fully opaque that allows you to have concepts from press the coverages that don't cover the whole world saw them as debate which is the most efficient when you have data and store them as PNG on the borders to have that transparency and it also handles until uniform titles which happened to can happen quite often given them depending on the time Satsuma you're using Soto's which no geometrical features on the uniformed cut on so depending on the cash conceptual either symbolically linked to work in a single file to avoid to say space all just save the color of the title to the cash back instead of the image data itself and just dynamically reconstruct the 1 PNG from that come and return back to the client so in that case a story in the stories in 5 bytes but science of of storing the hundreds of bytes of the standards of bytes of the of entity died in it handles multiple grids IEEE projections from that time state in Hamilton times in the long that unlike at all and is also 1 of the great ideas and so we can also understands the depreciated Gecode all non-standard codes if you use outside the because the database and on all mapped into the same actual production which is effectively used you can also use grid subsets so for a given title suggests restricted number of levels that are accessible at any given time restrict the extent also just also only see the for in areas of interest so the caches themselves them multiple cash beckons inside the cash and and the concept of a cache is actually just in the back and that's able to store a title data for a given x y z address of the time the it's rather than easily extensible so basically any API that supports exists the output and deletes statements is 1 could possibly be integrated into my cash there some of the and so the basic basic and most common captures the discussion does its findings on the file system so in mainly you is the 1st smaller datasets because usually when you all have coverage is all over the world of fires metals you end up with a large number of times that make the management of those stars impractical transferring them from 1 directory to the other getting statistics about the number of tiles to descriptions conditional but in it's a rather fast it supports the layout so you can give it at applied template to out whatever finding the ones shown to reuse existing caches also um and while pros and cons constant it's a difficult to manage wasted space also dutiful system block sizes depending on the 1st systems also depending on the block size if you only storing a few hundred bytes that the block sizes for kilobytes the occupied to which the disk you can also store to work sq like caches forward you can also give a template to depending on which friend dataset which they have assigned to use in you can splits the database 1st only have a certain number of styles and then if you hit the limits of the number of times inside the database file um supports any schema so actually you know the full scheme is used by not cash with then you can also configure it to you so if you want to write your selecting the 2 queries can hit a knee in the sky schema and here is an example of just using a custom scheme and so on the user and the x y z of mapping and Memcached
another cash back ends and starting times to amend guess so In those ideal phone temporary data memcached uses the every time is starts but it's very fast and you can easily distributed across multiple so go back it'll do automatic pruning also of there is the least recently used styles um the inconvenient is as its memory-based and you can still very little tiles on it so will see a bit later how to overcome some of those limitations to still be able to have the power of and cash for caching details that support for the rest sketches so just putting doubts through HTTP GET PUT and GET requests and we're there and Huggins to 2 in fall and occasional authorization to the 2009 was mystery images of city on Google Cloud Storage and of course the cost of storing those tiles on on those those rest back and solar depend on the on the use case and number of times and it can go up very quickly another kind of cash supported the is many useful for us the data that stores the Dow's directly in the intuitive files uh and Judith is an extensible format so you can store file data inside it's and so you can also directly with the using it to access the G. peg data itself directly from the logistic files so that means you can also use those duties size directly as a source for all of that Js of us and have them this perturbed data for your time cash directly and the prose of it it's rather efficient on a disk usage and even each j pick tile doesn't duplicate the debate had that's only written once inside the intuitive file and you can show this part of the publications the limitations is it the only only does J peg diff doesn't handle PNG files so when the most useful form from the rest of data it's an iron that some kinds of matter caches that composed of 2 other cash types so here's an example of a composite cash and so in the example here saying frozen levels 0 2 0 H which starts as it and never change going to store them on a cash and that's not volatile so on a discussion and then from ideas in mental that's maybe more transient in the subband of dating often lost all their money in cash so you can decide what cash to use depending on the levels depending on which reached to use the fullback gestures
and if you have network arrows on your and southern you can fall back to a discussion contains this so would contain the same the in the multi which recently is when using coupling men guassian sq lights back ends this the tile isn't found in the in the mn gush of an instance then it's only yielded loaded from India skewed unites file and then pushed demand cash so that subsequent usage will go from and cash 2nd wet with these kinds of carefully you can have huge caches that span the whole world that the stored into into a student files and then only tiles that are actually being used inside the guassian since for rapid and some foreign rapid axis and the other caches I won't go into or into more detail about Abbott that are supported by and in southern to react which is distributed and extensible of fault-tolerant so uh in but unique files and coming soon they'll be innocent code ready for propensity for catch basins of discussions for the 2 kinds button the the seed of a tree generated files so only if you want to create you don't want to generate them on demand that generate a set of so does its conceived with multiple threads or processes if you have multiple rendering instances behind that connection sense and it also does drill down scanning so it and seeing instead of scanning scanning to take advantage of catches on the on the WMS services so set of random lines you drill down further on the tube and out used to see the child dies at a given time as you can see a particular subsets of some of the concepts for over a given dimension of the trial sets regenerate styles older than a certain date 1 in law restricted the and all seed across the geometry so the example here is the C 2 level 18 only on the areas where you have a population density that's over something and as a truly mode to details also in the same In the same way depending on the roles a few examples of proceedings here the weekends just use succeeds in interval 0 to 12 In the 2nd example is and seeing the higher zoom levels would just using on the tiles that intersects the countries to avoid sitting on the on the honesty the and the last example is receding dials um that correspond to areas that have changed in the source database so we only received the areas that were affected by a geometry change in on that I'm data um
distal property about dimensions so for a given diversity can also will have a dimension applied to it so it and multiple versions of the test set depending on the time sometimes innovation client IDC 94 such as image whatever but some of the typical use-cases and video data where you have dimensions that will give you the full cost diamond when the focus was made in 2 dimensions for each of the time but in the end the compact that also support for on special support for the time dimension Anthony if you have multiple uh and it's missing useful satellite images where for a given time step you have just a small seen small specific spreads over footprint of the satellites you can also give us time interval to not cash and it'll to be reascending on the fly to create a mosaic from the since that's that correspond to the time interval given and there's also something going to move so the the when and to create animated images from those dimensions also so the shift evolving data to return then is a gift given the time interval just a few words on a future coming in and and conventions and 1 is a vector I supports and to be able to store all the other things that they just image data in adding those are just ideas and not not so not on the road map exactly yeah that's just a list of ideas of things to be cool to have having additional cash back and supporting GeoPackage directly storm DB Cris base for this and as the anomalous was e-mail automatically sheeting from notifies stress also known the and listening entails across multiple dimensions it and so were they share any questions as we get to a certain you know how how I was learning about the food where a URI tested their possible performance slowdown off storing times was grants you know having to talk to
external uh software by network protocols so on no its units and feeling about it but I probably slower know then sequel rights so and we don't get the disadvantages also of concurrent and so that's a problematic with right and then you can do it it could be something also that you just storing was way of actually storing the tiles and taken them on the offline which meant that brings me to my 2nd question so you have a high i.e. last library liabilities up so you have to look pictures to seperate comments came a work against the same sequel like fine looking after people choose separate applications In the sequel light itself will the primary for full read accesses you have a problem and for right axis is to give students because lacks current fights that's it I mean it's it's handled by the the sequel directly so you can do concurrent writes and the the what kind of the timeframe for the factor time catching uh very unless it is a very good question and this is I may depend on on financing may depend on time and it's like it up some new and thank you the


  492 ms - page object


AV-Portal 3.11.0 (be3ed8ed057d0e90118571ff94e9ca84ad5a2265)