Programmcache?

Hi,

gibt es eigentlich eine Empfehlung wie Programme den Cache abspeichern soll wenn er OpenStreetMap Tiles verwendet?

Ich hab 2 Programme die machen das gleich und zwei die machen es ganz anders… :frowning: Es wäre schön wenn Sie es gemeinsam nutzen würden… es gänge dann auch schneller…

Gruß Michael

http://wiki.openstreetmap.org/wiki/Tile_usage_policy

Du meinst ‘Tiles cache’. Wo programme ihre Tiles ablegen. In welche Directory. Dass darf jedes Program selbst wissen denke ich. Eine gemeinsame cache wäre aber interessant.

Vieleicht kann mann dass irgendwo einstellen.

Dus hast bei vier Programme nichts unter Einstellungen gefunden? Etwas um ein Pfad an zu weisen?

Kannst du die Namen diese vier Programme nennen? Ich kenne nur die webkarte und da gibt es nichts ein zu stellen. (na ja der browser cache)

Auch wenn die eine gemeinsame cache benutzen könnten war noch nicht gesagt dass es dann functionierte. Jedes Program kann nämlich selbst entscheiden unter welche dateiname er die tiles speichert. Ja und ein Program kann auch noch in eine database speichern.

Speichern diese vier Programme alle in ordners und benutzen sie das selbe system von tiles-dateinamen?

Ja genau weil ein gemeinsamer Cache interessant ist, weil ein Programm kann die eine Sache gut ein anderes kann was anderes sehr gut. So hat man mehrere Programme die vom der Sacher her ähnlich, aber keines ist perfekt. Perfekte Programm, Dinge gingt es eh nicht.

Aber deswegen alle Tiles doppelt und dreifach runterzuladen ist eigentlich Käse und total langsam. Am meisten stört mich einfach die Wartezeit, für das hab ich einfach keine Geduld. ActivityDiary z.B. wurde deutlich angenehmer zu Bedienen als es den Cache von Marble verwendete. Ganz klar weil Marble hat ich schon länger und schon so ca. 5000-6000 Tiles im Cache.

Also die 4. Programme die ich habe sind:
Marble
ActivityDiary
Viking
BT747

Zum Einstellen gibt es fast nichts leider :frowning: beim einem kann man einstellen wo der Cache hinkommt (BT747), beim anderen wieviel maximal Cache (Marble) und bei 2 (ActivityDiary/Viking) garnichts zum einstellen.

Marble und ActivityDiary legen den Cache identisch ab, also gleiche Verzeichnisstruktur und gleiche Dateinamen nur an unterschiedlichen Stellen. Mit einem Symbolischen Link (Linux/Unix) kann man die beiden Programme dazu bringen den gleichen Cache zu verwenden, weil es ja nicht einzustellen ist.

Viking behandelt die ganze Sache als Projekt und lädt nur Tiles auf Anweisung in nur in einer Zoomstufe. Das Projekt wird in mit den Tiles in einer Datei gespeichert. Man kann das fast nicht als Cache bezeichnen. Find ich nicht so toll die Lösung.

BT747 hat alle Tiles in ein Verzeichnis flach gespeichert mit ausführlichen Dateinamen. Aber das hat sich erledigt, weil ich hab den Entwickler angeschrieben. Dieser war so freundlich und hat es einfach so für mich umprogrammiert. In der aktuellen Entwicklungsversion (2.X.1614) ist dies enthalten. Das Programm wurde auch so ein Stück schneller…

Aber mir scheint hat man sich dazu noch nicht viele Gedanken gemacht??? Über hundert Leute hab hier schon reingeschaut, aber erst nach 4 Tagen wenigstens eine Antwort, Danke. Ich hätte schon gemeint es Antwortet keiner mehr.

MfG Michael

Heute habe ich noch geguckt wie GoogleOzi und gpsVP es machen. Die directory ist bei beide einstellbar. Aber die lagerung der einzelne bilder ganz unterschiedlich.

Vielleicht hast du eine lansame verbindung? Ich finde dass es nicht so langsam geht. Mann sieht die Kacheln kommen. Mehr nicht.

Aha… jetzt gehst du alle Entwickler anschreiben … uniformitaet…

An der Verbindung zum Internet kann es nicht liegen mit DSL2000. Nein ich werde nicht jeden Entwickler anschreiben… wie käme ich dazu? BT747 unterstützt meinen GPS-Logger und deswegen ist das Programm für mich besonders interessant. Er hätte ja auch “nein” sagen können. uniformität hat Vorteile ist aber kein muss, wenn man eine bessere Lösung hat oder meint sie zu haben… :wink:

Eigentlich müßte man sowas mit einem lokalen Proxy lösen können, der einfach alle Datenanforderungen (oder nur solche an OSM) zwischenspeichert, so daß die nur einmal geladen werden. Erneuerungsrate oder nur laden wenn geändert muß man dann im Proxy einstellen.

Kannst du -mit einige Beispiele von Pfade- angeben wie es erst war und wie die tiles jetzt gespeichert wirden?

Ich möchte dass gern wissen weil ich selbst -na ja mein program- auch tiles cache. Jede optmierung ist da willkommen.

Gute Idee. Aber dann muss mann alle Programme noch veranlassen können die tiles nicht selbst zu cachen.

Dann biete ich dir jtiledownloader und gpsvp an.

der Downloader speichert die Dateien in einer Ordnerstruktur /Zoomstufe/X-Koordinate/Y-Koordiante.png ab.
Für die verschiedenen OSM-Karten kann man eigene Hauptordner anlegen.

gpsvpxp kann man diese Hierarchie per ini-Datei mitteilen (was nicht ganz einafch ist, aber es klappt).

Die Pda-Version funktioniert mit der gleichen Tilestruktur, und der osmtracker versteht sie auch.

Wenn man das jetzt noch QlandkarteGT und Quantum GIS beibringen könnte, wäre ich wunschlos glücklich :wink:

Gruß,
André Joost

@ektus ja sowas wäre auch eine Art Notlösung. Aber da die meisten Programme eh schon einen Cache verwalten können, wäre es einfacher für die Nutzer das dieser angepasst wird. Als wie jeden Win/Mac/Linux Nutzer zu erklären wie er einen Proxy zu konfigurieren hat damit er die Karte schneller bekommt.

@greencaps

Ich habs denn Entwickler von BT747 so beschrieben: (Als Beispiel die Ablage von Marble bzw. von Server von OSM… in gewisser weise. )

Vorher wurde der Cache flach in einem Ordner ohne Unterordner gespeichert. Die verschieden Varianten/Zoomstufen/X-Wert/Y-Wert wurde in einem langen Dateinamen untergebracht…

um bei oberen Beispiel zu bleiben würde der Dateinamen dann so heißen:
osm-zoom_16_x_34903_y_22740cache.img

(osm → steht für mapnik Kartenvariante)
Im dem das sich in relativer kurzer Zeit sind in diesem Verzeichnis viele Dateien ansammeln, wird der Zugriff auf das Verzeichnis langsamer…

@ajoessen ja genau das ist die Struktur die ich meine Ordnerstruktur /Zoomstufe/X-Koordinate/Y-Koordiante.png

Danke für das Angebot… ich werde es mir anschauen die Anwendungen :).

Gruß
Michael

zufälligerweise ist das auch die Filestruktur der Tileserver :wink:

Bei Qlandkarte liegen die Tiles unter

C:\Dokumente und Einstellungen\Benutzername\Lokale Einstellungen\Temp\qlandkarteqt\cache\tile.openstreetmap.org\p1\p2\p3.png
C:\Dokumente und Einstellungen\Benutzername\Lokale Einstellungen\Temp\qlandkarteqt\cache\andy.sandbox.cloudmade.com\tiles\cycle\p1\p2\p3.png\tiles\cycle
C:\Dokumente und Einstellungen\Benutzername\Lokale Einstellungen\Temp\qlandkarteqt\cache\topo.geofabrik.de\trails\p1\p2\p3.png\trails\

abweichende Filehierarchie:

Josm-Tilecache:
C:\Dokumente und Einstellungen\Benutzername\Lokale Einstellungen\Temp\JMapViewerTiles_Benutzername\TilesAtHome
Filename: Zoom_x_y.png (alle in einem Verzeichnis)

Viking-Tilecache:
C:\Dokumente und Einstellungen\Benutzername\VIKING-MAPS
mit den Unterverzeichnissen
t12s8z0 = osm-Zoom 9
t12s7z0 = osm-Zoom 10
t12s6z0 = osm-Zoom 11
t12s5z0 = osm-Zoom 12
t12s4z0 = osm-Zoom 13
t12s3z0 = osm-Zoom 14
t13s2z0 = osm-Zoom 15
t13s1z0 = osm-Zoom 16
t13s0z0 = osm-Zoom 17
Ordner x wie OSM-Hierarchie
Filename: y (ohne .png)

Gruß,
ajoessen

Ja ich weiss schon, aber man muss ja nicht immer kompliziert sich ausdrücken ;).

Josm-Tilecache?? war mir bis heute unbekannt, aber jetzt hab ich in gefunden :slight_smile: Der liegt bei mir auch im Temp Ordner

/tmp/JMapViewerTiles_miche101/Mapnik

…aber der wird automatisch geleert, also ist jeden Tag weg :-. Aber hab jetzt nichts gefunden wie man die Ort ändert kann? Im JOSM wäre das auch praktisch zum zeichnen. Das Plugin Slippymap hab ich schon mal deinstalliert weil es mir zu langsam ging, jetzt weiß ich warum… wenn der Cache jeden Tag weg ist dann ist des blöd g. Hat aber meines erachtens nichts im Temp Ordner zu suchen… ist ja nicht Temporär also mal kurz benötigt…

Es wär so einfach aber jeder schnittst sich was eigenes…

Gruß Michael

Michael und ajoessen danke fuer die gute info.

Benutze selbst nur einen Urdner pro Tileserver. Also keine unter ordner struktuur. Bis jetzt meckere ich nicht ueber geschwindigkeit. Aber weis jetzt was es nog zu optimieren gibt.

Uebrigens sammeln die Tiles sich rasant. 204.061 tiles in 33 serverordner. 1,34 GB. (1,80 auf festplatte)

Josm speichert da die tiles, die beim Daten-Herunterladen-Dialog angezeigt werden. Bei mir haben sich da schon 486 MB angesammelt, also nicht jeden Tag neu. Möglicherweise ist das in Linux anders gelöst als in Windows.

Ändern kannst du den Cahe-Ordner natürlcih, wenn du dir das Programm selber komplierst :wink:

Gruß,
ajoessen

Unter Windows ist es auch im Temp Verzeichnis untergebraucht, aber dort wird nicht immer aufgeräumt. Bei Kubuntu ist es so eingestellt dass der Temp Ordner geleert wird. Bestimmt kann man das ändern, aber er Speichert den Cache ja wieder anders… :frowning: …da such ich nicht danach, rentiert sich nicht :wink:

Gruß Michael