Lieber Zuschauer, dieser Untertitel wurde automatisch generiert von YouTube und dementsprechend (sehr) fehlerhaft. Wenn du kannst, hilf uns bitte gute Untertitel zu erstellen: https://c3subtitles.de/talk/2532 Danke!
[Musik]
also Karten sind super um Informationen
darzustellen und geobezogene Sachen zu
visualisieren und wenn die dann auch
noch interaktiv sind dann sind zumindest
alle meine Freunde und ich begeistert
und Michael und jetzt würden euch mal
vorstellen wie man das realisieren kann
mit ihrem Projekt verser tilils gut dann
eine Runde Applaus und viel
Spaß vielen Dank mein Name ist Michael
Kreil ich bin datenjournalist bei beim
südwestrundfung und das ist genau ich
bin jetzt ich bin auch datenjournalist
in und zwar bei der
funkediengruppe und zusammen machen wir
ganz viele oder haben fürher ganz viele
Datenvisualisierung gemacht und haben
festgestellt Karten sind total wichtiges
Instrument um Daten darzustellen aber
leider sind die Daten nicht immer frei
und die Anbieter die sich da ähm
etabliert haben geben die geben die
Daten nicht immer frei raus und dagegen
wollen wir was tun wir haben was dagegen
ich gebe mal ein typisches Beispiel in
Corona ne ihr Berliner Kurier die 14
kleineren Testzentren des Senats ist
eine lange Auflistung von Adressen das
hilft einem nicht man möchte gerne
wissen was ist in der Nähe und eine
Kartendarstellung würde helfen
Kartendarstellung sind aber extrem
schwierig zum einen gibt's natürlich den
Ansatz man kann auf openstreetmap.org
einfach die kartenkachelfrei verwenden
die sind aber nicht hübsch und das liegt
auch einfach da dran dass die Aufgabe
von Open Street Map eine andere ist sie
versuchen alle Daten in dieser Datenbank
in einer Karte darzustellen da geht's
nicht um Übersichtlichkeit sondern
sozusagen mit hohen Informationsgehalt
da gibt's kommerzielle Anbieter die
machen schönere Karten die man einkaufen
kann aber zum einen machen die eine
Menge Tracking also z.B wenn ich eine
Google Maps Karte einbinde müsste ich
eigentlich eine zweiklicklösung und eine
Cookie Warnung und
datenschutzgrundverordnung
berücksichtigen und sie sind extrem
teuer mal Beispiel Beispielszenario ich
habe eine Million Besucher die kommen
klicken ungefähr so Zeh Kacheln wenn sie
reinzoomen und das macht ungefähr 1
terab an Traffic das ist ein Szenario
typisch für ein Medium auch für der NGO
für private Anbieter jetzt erstmal oder
sozusagen private Webseiten nicht aber
wenn jetzt mal irgendwie netzpolitik.org
oder viel für euch auf euch verlinken ne
dann seid ihr auch sozusagen relativ
schnell in diesem Bereich drin bei
mapbox würde euch das 2800 € Kosten wenn
man es komplett selber macht hat man
eigentlich bei Hetzner bisschen Hosting
und hauptsächlich Traffic Kosten da sind
wir dann bei 1,19 € also hier hat mapbox
auch ein Geschäftsmodell gefahren das
einfach Faktor 2000 den Traffic
vergoldet
ja das heißt wir brauchen eigentlich mal
einen eigenen hübschen Kartenserver
haben wir uns dann auch beim
südwestrundfun gedacht und den machen
wir dann auch gleich mal Open Source die
Daten sind ja schon Open Source und wir
müssen jetzt halt noch eine
Infrastruktur drum rumbauen dass alle
die benutzen können ohne dass dann
kommerzielle Anbieter wie mapbox oder
mapteiler für das Hosting und den
Service unm Geld
verlangt so ich zeig euch hier einfach
mal sofort geht's im Browser weiter das
jetzt z.B mal so eine
waldbrandgefahrenkarte die wir beim SWR
gemacht haben dann sieht man sozusagen
die europäischen Waldbrand
Gefahrenstufen und die müssen wir halt
auch auf eine Karte dahinter setzen und
die ist halt mit unserem Kartenserver
gebaut und das Ding haben wir Open
Source und haben es genannt versatiles
hier auf der Webseite versatiles.org mal
so ein kleines Demo da kann man sich das
halt im Prinzip
angucken und jetzt gehe ich mal im
Schnelldurchlauf durch will jetzt mehr
euch Zeit lassen Fragen dazu zu stellen
oh Gott wir sind zu fix da können sogar
noch eine schweigigenute zwischench
machen also die es gibt die Idee von
versatiles ist dass wir sozusagen
mehrere Varianten anbieten für alle
Leute wie s dann ein Kartenserver
aufsetzen oder nutzen können die erste
Variante ist useour map server das
sozusagen der fertige Code wo JavaScript
CSS drin steht und den Style den er
braucht und dann könnt ihr einfach
unseren Kartenserver benutzen den Zahlen
wir jetzt gerade
privat Vorteil ist einfach und kostenlos
Nachteil ist wir können euch jetzt noch
nicht eine 247 availability und
Performance maximum garantieren da
müssen wir glaube ich noch Strukturen im
Hintergrund sozusagen aufbauen wir
wünschen uns dass es irgendwann
vielleicht zu einem größeren Community
Projekt wird wo die Community einfach
Hosting Infrastruktur stellt und die
Daten da einfach liegen die Ansprüche
sind relativ gering das große was
weggeht ist Traffic wenn es populär wird
irgendwann
ähm ja zweite Variante ist ihr könnt
unseren Kartenserver benutzen und die
könnten ein CDN D vorsetzen also da kann
man dann so sich ein Anbieter ich habe
jetzt mal Bunny net genommen den legt
man einfach davor
sorgt dafür dass sozusagen die
Performance besser ist und
sozusagen sichergestellt ist dass wenn
unser Server mal ausfällt dass weiterhin
bei euch Kartenkacheln ankommen ich will
es mal erwähnt haben weil ihr dürft das
bei kommerziellen Anbietern nämlich
nicht machen die sagen explizit ihr
dürft deren Kartenkacheln nicht casen
weil damit ihr nämlich schön den
kompletten Traffic bezahlt ne muss ja
sozusagen auch sein wir sagen im
Gegenteil nutzen CDN entlastet unseren
Server und macht eure Anwendung
schneller und es gibt keine besonderen
Ansprüche an das CDN sondern es ist
einfach eins von der Stange es ist ganz
normale https Traffic der da durchläuft
ja dann könnt natürlich eigen Server
aufsetzen
da haben wir auch schon alles dazu
fertig zeigen wir euch gleich und ihr
müsst halt auch den ganzen
kartenkachelnkram den müsst das ist
extrem aufwendig diese
vektorkartenkacheln alle
vorzubereiten die ganze Welt bis zom
Stufe 14 hat dann irwie 360 Millionen
Kartenkacheln das haben wir schon alles
vorbereitet auf Download versatiles.org
könnt ihr das dann einfach runterladen
und wir haben schon alles vorbereitet
dass ihr es auch in einem Cloud Service
machen könnt undwi was wei ich so
kubernetes digital Ocean Google cloudw
AWS und was es nicht alles gibt
genau und ansonsten planen wir alle paar
Wochen den kompletten Planeten neu
zusammenzupacken und allen einfach
zurfügung zuustellen so dass alle
Menschen benutzen können hier ist mal
ein Beispiel das jetzt hier verstiles
also letzte Stand ist juni ich bin jetzt
momentan im dre Monate Takt okay also
September gibt's mal wieder ein Update
das ist eine sehr sehr große fette
Maschine die halt den kompletten
Planeten durchrechnet da brauchst Meere
Stunden dran und machen jetzt erstmal so
ein quartalsmodus und dann gucken wir
mal ob wir irgendwann häufiger wer und
was ihr seht ist es gibt sowohl MB
tililes als auch eine Datei die heißt
dtver tiles und die ist deutlich kleiner
dtver tiles ist unser eigenes
Containerformat dass wir unter Open
Source Lizenz veröffentlicht haben und
wo es auch schon Software für gibt um
das zu benutzen ja kann ich auch gleich
was dazu erzählen hier ist noch mal kurz
ja ich habe mal den Ziegeleipark
millenberg hier mal gemacht nur mal zu
zeigen an was wir gerade so arbeiten
klassisch eine Karte und da möchte man
aber jetzt gerne was im Vordergrund
machen da haben wir hier so ein kleines
Tool schon eingebaut dass man irgendwie
das Ding schwarz-weiß machen kann oder
irgendwie den den Kontrast verändern
oder man möchte es gerne irgendwie
einfärben oder in anderen Farbe oder
sowas ne dass man sich einfach relativ
schnell so eine Karte selber machen kann
die dann irgendwie blasser ist um dann
irgendwie rote Punkte vorne reinzumachen
oder irendwie
sowas jetzt wird kommt das wird etwas
nerdiger wie funktioniert der Kram die
Kernidee von versatiles ist eigentlich
ganz einfach man sieht's
nicht aber die Idee ist sozusagen das
große Problem ich möchte gerne eine
interaktive Karte haben in fünf Schritte
zu ze leen das erste ist ich mache aus
Open Street Map Daten diese
Kartenkacheln der zweite Schritt ist ich
bereite diese Kartenkacheln vor dass ich
sie dann im Internet ausbreiten oder
serven verbreiten kann publizieren kann
und dann n setz wir z.B explizit da rein
dass wir nicht das in einem MB
tililsformat liegen haben das ist eine
SQL light Datenbank das ist ein bisschen
Hacky was ich mapbox damals ausgedacht
hatte da haben wir ein eigenes
Containerformat gemacht das halt kleiner
und schneller ist und dass es extrem
Cloud kompatibel ist und D man über HDP
Range request auch direkt queren kann
genau dann gibt's ein Server da haben
wir jetzt schon mehrere Implementierung
fertig das ist ja das mittlere Feld was
ihr nicht seht dann kommt dann sozusagen
Proxy davor das ist derjenige der Teil
der sich um den ganzen netzwerkkram
kümmert also SSL Verschlüsselung das wie
https ausliefert Caching CDN load
balancing was macht man noch so die
Details Notfall noch manipulieren und
leer rausschmeißen die man nicht haben
möchte ja m gucken ich ma mal issue auf
ähm tailblaster kann das
ja die größten Konkurrenten arbeiten in
einem Team das kann ja das kann ja nur
perfekt werden und zum Schluss gibt's
ein Frontend vorne drauf ja zäh ich dann
sozusagen auf der Webseite noch ein
bisschen genauer wie das funktioniert
und für die ganz harten sieht man hier
so ein Struktur strukturdiagramm da
sieht man sozusagen im Flowchart welche
Sachen für alles zuständig ist hier
gibt's dann so ein Docker Container da
ist dann versatiles drin und tailemaker
ihr könnt es auf der Webseite anschauen
m der sozusagen sich darum kümmert ähm
für die Leute die keine Lust drauf haben
wie gesagt ignoriert das ihr könnt
einfach die fertigen kartenkachen bei
uns runterladen hier gibt's einmal den
notde Server von Sebastian nojs dann
habe ich noch mal so ein Server in Rust
geschrieben der ist noch mal in dem
Docker Container auch extrem klein drin
genau wir haben das Frontend schon
komplett vorbereitet da haben wir jetzt
mehrere Stile drin wir haben jetzt
Sprites also so kleine wenn man Symbole
wie ein Hauptbahnhof oder Restaurants
darstellen möchte wir haben von
vorgerändert das braucht man ja auch die
müssen ja speziell dann sozusagen
vorgerändert werden damit es dann im
Frontend läuft ja Sprites und glüfs
haben wir auch rumliegen ja alles da und
hier unten sind dann sozusagen die
ganzen Repositories die das Bauen und
wenn ihr helfen wollt
wir brauchen also wir brauchen sozusagen
wir brauchen Feedback wir brauchen Leute
die das nutzen also momentan essen wir
gerade die ganze Zeit unser eigenes
hundfutter sagt man in dogf genau
dogfoing genau wir brauchen mehr Leute
die hunderfoter essen wir brauchen mehr
Leute die das mal austesten
wir haben noch ein paar Probleme
brauchen würden gerne den ich würde
gerne diesen Docker Container mit
versatiles and engines mit let Crip drin
richtig machen der versle Server läuft
noch nicht unter Windows wä ganz wä nice
to have also vielleicht braucht das
jemand na ja also ich habe ih immerhin
auf Linux undter GN und [ __ ] läuft auf
Arm und AMD Mac haben wir auch Intel und
ARM Prozessoren aber Windows ist dann
einfach damit die Reihe voll ist ne ja
jad so homeb W wir den auch gerne damit
den für Mac leichter genutzt werden kann
ich brauche ein besseren workerpol um
irgendwie ein Rust sozusagen die kachen
besser vorzukomprimieren momentan sind
sie in ges wir würden sie in brotli dann
sind die Daten einfach noch mal kleiner
wenn er sie ausspielt spart halt auch
noch mehr Kosten genau und ach so die
die obersten Zoomstufen sieht man auch
so ein bisschen wenn man jetzt hiermer
so ganz weit rauszoomt die Erde ist ein
bisschen bisschen langweilig ja ist ein
bisschen sozusagen leer das liegt halt
einfach da dran
das Layer scheme aufgebaut ist und da
müssen wir natürlich noch ein bisschen
das Layer schem tweaken damit auch mehr
Informationen in den höheren Zoomstufen
Spich niedrigener Zoomstufen wo man
weiter rausgezoomt ist zu sehen sind so
ist noch relativ wenig aber das ist
alles noch anpassungsfähig ja D man
irgendwie so Vegetation oder irgendwie
sowas hat oder weler oder so genau falls
sich Leute fragen das lchem das wir da
verwenden ist eins das von der geofabrik
entwickelt wurde explizit unter der FTV
PL also der [ __ ] warranty Public License
im Gegensatz zu der propriitären Lizens
die z.B mapbox oder auch open Map
verwenden ist das ein freies Layer
scheme wo niemand irgendwie ein
Copyright ununterschreiben muss oder
irgendwelche Ansprüche erheben kann ja
wir haben drauf geachtet dass es
keinerlei proprietäre oder sonst welche
Lizenz und Bedingung oder sonst was dran
gibt das einzige ist sozusagen Quelle
Open Street Map contributors das ist das
einzige alles andere ist absolut
lizenzfrei genau und das war mal im
Schnelldurchlauf danke schön
J dann vielen Dank und wenn ihr Fragen
habt dann bitte immer raus damit ich
würde dann mein Mikro genau einmal
bisschen durch die Gegend reichen
hervorragend hallo ja ich finde das
Projekt super spannend und ich habe auch
letztens mal so ein ähnliches Projekt
gesehen das heißt protomaps das macht
glaube ich also das ist sehr sehr
ähnlich auch zu eurem Format nehme ich
mal an habt ihr da irgendwie connections
oder vielleicht Überlegung dann Standard
zu schaffen also wir haben auch schon
miteinander gesprochen und es macht Sinn
sozusagen diese beiden Projekte
auseinander zu halten sie überlappen
sich eigentlich nur in einem Punkt und
zwar in diesem Containerformat das
sozusagen das pmtililesformat oder auch
comtililes ein anderes ähnlich wie wie
unser versatiles der Unterschied von ihm
ist aber es geht da drum dass man
sozusagen einen Container bei sich
irgendwie online packt und dann kann man
da irgendwie können da so ein paar Leute
sozusagen ihre Karten anschauen wir
haben das so gemacht dass es eine
hochskalierbare karteninfrastruktur ist
das ist sowohl für Privatleute kostenlos
nutzbar als auch was wei ich für große
Medienkonzerne ne also das wir können
richtige skalierbare Infrastruktur
machen das kann protomaps nicht genau
pmteil ist sehr draf zugeschnitten dass
es bei spezifisch Amazon liegt wo die
HTP Range requesten gewisse Länge haben
müssen damit sie gut gecasht werden
können und deswegen benutzen die da so
ein wie heißt das hilbertkurve
hbertkurve um dieails abzulegen so das
ist eigentlich viel zu kompliziert und
uns ist das einfach deutlich einfacher
zu implementieren also nur noch zwei
Stichworte das eine ist PM tilils können
nicht gecasht werden die sind nicht im
Browser casche weil es nur HTTP
und sie sind unkomprimiert das will
jetzt nachrüsten da will jetzt ein
javascriptzusagen noch
gipau der Browser hat keine AP für
Kompression das ist auch was wieso
unsers nicht im Browser also man kann
das theoretisch machen du implemierst B
und GIP direkt im Browser in Javascript
und dann kannst du auch direkt auf
unseren ktainer zugreifen aber es ist
halt einfach unperformant wir hab uns
entschlossen lieber gut zu machen hest
noch eine
Frage da
hervorragend hallo ja vielen Dank für
den Vortrag war jetzt nicht von Anfang
dabei aber gibt's zufällig eine Android
Library die auf eure Tils zugreifen kann
z OSM Android heißt die glaube ich nein
also unsere vecttorteil sind kompatibel
mit Map li GL und da gibt's auch native
libraries die für alle möglichen mobilen
Betriebssysteme funktionieren
danke sieht eure Infrastruktur komplett
vor dass man quasi immer vorrändert und
darstellt in getrennten Schritten da
könnte man sich auch vorstellen quasi on
Demand aus openstet Maps direkt
irgendwie teils zu generieren und die
dann zu casen also wir wollten es
einfacher machen also der klassische
Deck für Kartenkacheln ist ja dass du
sozusagen den kompletten Open Street Map
Planeten in eine PostGIS Datenbank liest
und dann daraus sozusagen irendwie deine
Kartenkacheln generierst oder so das
macht aber das Ding enorm komplex mit
dem einzigen Vorteil ich kann irgendwie
wenn es auf Open Street Map ein Update
gibt wenn es auf Open Stre Update gibt
relativ schnell aktuelle kartenkaral
haben wir gehen davon aus dass jetzt so
für eine Hintergrundkarte jetzt
irgendwie Straßennamen sich nicht
ständig ändern oder sowas ne wir gehen
davon aus so ein startenstand von dre
Monaten ist vollkommen okay deswegen
gehen wir jetzt mehr in die Richtung mit
einmal sozusagen Update alle Monate oder
Quartale genau
ähm okay ich glaube das du hast es fast
schon gerade beantwortet wenn ich jetzt
also eine Karte haben möchte die alle 5
Minuten abgedatet ist so wie das andere
Lösungen machen dann wäre wster teils
die falsche Lösung richtig ja richtig da
bist du besser mit einer PostGIS
Datenbank dran wo du dieails live
händerst und die hab postcast die neuen
Version haben auch schon eine Funktion
eingebaut mit den du quasi vektoril
direkt aus der Datenbank Rändern kannst
dafür ist es dann besser unser
Anwendungsfall ist ein bisschen ein
anderer hey hat noch jemand fragen ja
perfekt ich habe zwei Fragen das eine
ist ist es einfachte zu subsetten dass
ich keine 50 GB Dateien auf meinem
Rechner rumfliegen haben muss wenn ich
mich eh nur für Berlin interessiere ja
ja und nein also es gibt ein ein Feature
das dass du sozusagen dieses versatiles
Tool nutzen kannst und sagen kannst ich
möchte gerne aus dem großen PIL das bei
uns im Download liegt nur sozusagen
diese Bounding Box runterladen das geht
aktuell wir bauen da gerade dass es noch
performanter ist denn dieses Datenformat
ist in Blöcken so eingeteilt dass er
sozusagen weiß ich muss jetzt n noch
diesen Daten also dieses ganzen Blob
einmal im Stück runterladen und D diesen
dann stecke ich die interinander das
heißt man könnte es extrem performant
machen dass man nur Deutschland
beispielsweise nur Europa runterlädt
kommt noch genau die andere Möglichkeit
ist du schmeißt anstatt von dem USM
Planeten einfach nur ein USM D für ein
bestimmte Bounding Box rein dann hast du
kommst du zu demselben Ergebnis du musst
es halt D nur selbst tun genau aber dass
man sozusagen schon aus unseren fertigen
Daten dann das Ex kann das das machen
wir noch performant jaau das wä nicht
meine zweite Frage gewesen das heißt es
ist auch Teil eurer Pipeline dass ich
selbst mir die OSM Daten ziehe irgendwas
rausschneid und dann auch höhere
Zoomstufen bekommen kann weil gesagt ich
hab Zeit bis 14 was jetzt nicht bis
besonders viel ist das könnte ich dann
einfach iner Config Datei sagen ich
brauche jetzt so bis 17 und dann kann
ich du kannst mit den vectorteils
overzoomen das heißt du brauchst nicht
bis 20 14 ist meistens ausreichend also
eine kartenkachel hat eine sozusagen
koordinatenauflösung von
466 Pixeln sozusagen das heißt ich kann
sie extrem overzoomen ohne irendein
Qualitätsverlust zu haben und es werden
auch gar keine neuen Details ist werden
jetzt nicht guldeckel nachgeladen oder
so wenn ich auf superstufe 1 bin sondern
einfach nur ob die häuserkante oder oder
die Straßenkante mehr Details hat die
hat's halt nicht sondern das steckt
schon in aber wenn du den Anwendungsfall
hast dann kannst du das tun ja unser
unsere Idee ist wir bieten alles an so
damit niemand was machen muss aber alle
können alles machen kannst jederzeit
sozusagen einen Schritt rausschmeißen
von den fünf und kannst die anderen vier
benutzen das ist so die auch die Frage
ob man anderen Server benutzt ob man
statt tailemaker ein anderen Prozess
benutzt um kartenkaren zu generieren ob
man Andes Frontend benutzt oder so kann
man explizit austauschen deswegen haben
wir es versucht in fünf subpreme zu
zerlegen ob du nur ein Teil dessen was
wir anbieten oder was wir da
zusammengesteckt haben benutzt ich z.B
habe Daten in dem gejason ich benutze
tipkanu um die dann umzuwandeln in
vecttorteils und schmeiße diese
vectorteils dann auch in so ein
verserils Container funktioniert auch es
ist nicht nur für basemaps aber das ist
so der Anwendungsfall den wahrscheinlich
die meisten Leute haben den wir halt
quasi so auch noch
Servicen ja ich habe einmal eine
Anfängerfrage vielleicht wenn ich jetzt
einfach nur Marker zu einer Karte
hinzufügen will ist das hier das
Richtige für mich geht das schon oder
ist das das Frontend was ihr was ihr so
genannt habt also im Frontend benutzen
wir maplib GGS ich weiß auch nicht warum
warum das so heißt mbreggs aber auf der
Webseite
mbre findet man alles und auch die
komplette Dokumentation wie man z.B
Marker drauf wirft und bei der Frage wo
möchtest du denn die Karte dann eher
haben nimmst du einfach sozusagen unsere
Adresse und dann ja es kommt duf an wenn
du jetzt sagen willst ich muss jetzt
fünf Marke auf einer Karte setzen ich
auf der Webseite darstellen will dann
machst du das am besten Front mit M oder
auch mit lelat wenn du sagst ich habe
eine Milliarde Marker über ganzen
Planeten verteilt sind und ich muss die
distributieren dann nimmst du dann
machst du da spezielle vektorteils für
okay wir hätten noch Zeit für eine
schnelle Frage wenn es noch was
gibt ja nein keine frag mehr das hab wir
noch Gesa fr F hängen wir hier auch
irgendwo rum und ihr könnt uns auch
direkt anquatschen wenn euch das so
peinlich ist vor der großen Menge dann
auf jeden Fall vielen Dank für den Talk
und eine Runde Applaus bitte
[Musik]
ه