Wiem, że to pytanie jest dość niejasne, ale proszę o wyrozumiałość. Próbuję dowiedzieć się, jaki rodzaj wydajności produktu - w szczególności czas - ludzie widzieli dla różnych metodologii, których używali do tworzenia kafelków map google / bing. Istnieje wiele metod, jak to zrobić (np. Gdal2tiles, FME, maptiler itp.). Początkowa próba po prostu zrobienia dużego PNG i utworzenia kafelków za pomocą imagemagick, na całkiem przyzwoitym serwerze linux, przyniosła całkiem długi czas przetwarzania, więc chciałem zobaczyć, co inni ludzie używają w produkcji. Nowe kafelki musiałyby być generowane co najmniej codziennie, więc czas realizacji jest bardzo ważny.
Jedynym prawdziwym wymogiem jest to, że może działać na serwerze Linux. Oczywiście, darmowe jest lepsze, ale nie chcę się do tego ograniczać. Dane wejściowe mogą być surowymi danymi gridowymi / rastrowymi lub dużym obrazem. Dane wyjściowe muszą być kafelkami obrazów, które mogą być używane w stanie obecnym na mapach Google lub Bing.
Dla porównania powiem, że czasy powinny dotyczyć poziomu powiększenia mapy google 7.
Doceniam pomoc wszystkich i jeszcze raz przepraszam za to, jak niewyraźne wydaje się to pytanie.
AKTUALIZACJA: Jeśli chodzi o dane wejściowe, obecnie mam wiele (surowych) źródeł danych w różnych formatach: netCDF, GRIB, GRIB2. Oprócz samych nieprzetworzonych danych mam również możliwość generowania naprawdę dużych obrazów tych danych, które można następnie pociąć na plasterki / płytki.
Idealnie byłoby po prostu pociąć obraz, ale jestem gotów spróbować wszystkiego, co da mi najszybsze wyniki.
źródło
Odpowiedzi:
Oto niektóre z moich wyników dla następującego pliku rastrowego:
$ gdal2tiles [...]
$ time [pngnq && pngcrush za każdy kafelek, łącznie 4500]
Tak, to w kilka minut - Zoptymalizowałem rozmiar wyjściowy, a nie szybkość. Maszyna to wirtualny Intel Xeon 2x3GHz, 4G pamięci. (I oczywiście gdal2tiles mógłby skorzystać z pewnej równoległości).
źródło
Miałem
gdal2tiles
problem z dość długim przetwarzaniem dość dużego tiffa (380 MB, 39 K x 10 K pikseli) na kafelki Google dla zakresów zoomu 0-12. Na Ubuntu 12.04 64bit bez wieloprocesowości przetworzenie tiffa na 1,99 miliona płytek przy 3,3 GB zajęło prawie cały dzień (8 godzin). Jak wspomniano powyżej @Stephan Talpalaru, kluczem do sukcesu jestgdal2tiles
równoległe bieganie . Utwórz kopię zapasową oryginaługdal2tiles.py
, a następnie zainstaluj łatkę z katalogu, w którym znajduje sięgdal2tiles.py
(mój był/usr/local/bin
):Teraz biegnij
gdal2tiles
tak jak zwykle. Mam niewiarygodny wzrost wydajności, gdy wszystkie 4 moje rdzenie (Intel Core i7 3,4 GHz) są zablokowane:Tak więc od ~ 8 godzin do 39 MINUT . Zmieniacz gier.
źródło
Wypróbuj równoległą wersję gdal2tiles.py: http://trac.osgeo.org/gdal/ticket/4379
źródło
Wspomniałeś o FME i jest kilka liczb na temat tworzenia kafelków map na FMEpedia
To długi artykuł, więc wyciągnąłem odpowiednie części:
Jest to proces wieloobsługowy z serwerem FME. Możesz również sprawdzić ten post autorstwa Paula Bissetta na blogu WeoGeo: http://www.weogeo.com/blog/Scaling_FME_Engines_on_WeoGeo.html
Ma świetny film pokazujący, jak przetwarzać takie dane w chmurze - w zasadzie uruchamiając kilka wirtualnych maszyn Amazon, aby rozłożyć obciążenie przetwarzania i zrobić to bardzo szybko.
źródło