Szukasz opcji dla przestrzennego ETL (wyodrębnianie, przekształcanie, ładowanie)?


33

Interesują mnie zalety i wady różnych przestrzennych narzędzi ETL (ekstrakcja, transformacja, ładowanie). Jeśli korzystałeś z wymienionych tutaj przedmiotów (lub dodaj własne), szukam twoich opinii i doświadczeń. W szczególności chciałbym zobaczyć porównania użyteczności:

Nie ma potrzeby recenzowania WSZYSTKIEGO wspomnianego oprogramowania. Jeśli masz doświadczenie nawet z jednym, będzie to bardzo korzystne przy podejmowaniu decyzji, w którym kierunku pójść.

Przykład: Chcę utworzyć funkcję konwersji schematu, która pozwoli mi wybrać warstwę wejściową, utworzyć tłumaczenie i wygenerować nowy, wstępnie zdefiniowany schemat. Optymalnie, po utworzeniu skryptu tłumaczenia, chciałbym mieć interaktywną formę, w której mogę „mapować” pola w mojej warstwie wejściowej na warstwę wyjściową (tj. - Warstwa wyjściowa będzie miała pole o nazwie „Adres”, jak to się nazywa w warstwie wejściowej?)

Niektóre zostały wymienione w pytaniach i odpowiedziach na stronie Jakie narzędzia są dostępne do przesyłania danych gis do bazy danych?

A oto kilka powiązanych artykułów, które znalazłem.

Odpowiedzi:


17

To pytanie zostało przekonwertowane na Wiki Wiki i wiki zablokowane, ponieważ jest to przykład pytania, które szuka listy odpowiedzi i wydaje się być wystarczająco popularne, aby chronić je przed zamknięciem. Powinno to być traktowane jako szczególny przypadek i nie powinno być postrzegane jako rodzaj pytania, które jest zachęcane w tej lub dowolnej witrynie Stack Exchange, ale jeśli chcesz wnieść do niego więcej treści, możesz to zrobić, edytując tę ​​odpowiedź .


Opowiem tylko o tym, co widziałem w kontekście zawodowym. Mój student pracował z przedsiębiorstwem, którego zadaniem było otrzymywanie, sprawdzanie i integracja ogromnych ilości danych przestrzennych ze znanego źródła (TeleAtlas) w ich GIS. Korzystała z kilku przepływów pracy za pomocą FME, wykonując w czasie rzeczywistym bardzo skomplikowane weryfikacje i transformacje, od jednego formatu do drugiego, takie jak wybór funkcji, weryfikacja topologii, usuwanie duplikatów itp. Następnie przepływ pracy był w stanie przetwarzać automatycznie przychodzące zestawy danych.

Byłem w składzie jury w związku z raportem probacyjnym Viva (przepraszam, tradycją Google „soutenance de rapport de stage”), w którym uczeń opisał inny taki przepływ pracy FME, ale tym razem, aby zweryfikować regionalne zbiory danych wysłane na poziomie krajowym w celu integracji do krajowej bazy danych ryzyka. Główna różnica polega na tym, że w tym ostatnim przykładzie zestaw danych był w bardzo różnych formatach plików, rastrze i wektorze, skalach i stylach.

Na koniec przetestowałem Spatial Data Integrator, oprogramowanie typu open source ETL oparte na Talend Open Studio. Funkcje były liczne, ale mniej niż FME, ale myślę, że główne różnice dotyczyły dokumentacji i łatwości tworzenia przepływu pracy. Często byłem zmuszony modyfikować źródło kodu Java komponentów przepływu pracy. Była to jednak wcześniejsza wersja SDI, a niedociągnięcia, które tu opisuję, są dość typowe w przypadku projektów open source na ich początku, i nie możemy porównywać na tym samym poziomie zastrzeżonego, dobrze dopracowanego oprogramowania i młodych otwartych programów typu open source.


24

W ostatnim projekcie pracującym z kilkoma GB danych przestrzennych rozpocząłem ładowanie / reprojektowanie danych za pomocą FME. Działało dobrze, ale istnieje krzywa uczenia się.

Pod koniec projektu korzystałem ze skryptów Python do automatyzacji procesów ponownego testowania. FME może być skryptowane, ale jeśli znasz podstawy Pythona, po co komplikować rzeczy? Python zapewnia pełną elastyczność, a wraz z każdym skryptem importu Twoje umiejętności w Pythonie poprawiają się.

Uważam, że następujące pakiety Pythona są nieocenione podczas pracy z transformacjami danych:

Jeśli masz doświadczenie programistyczne / programistyczne, polecam używanie Pythona, jeśli wolisz pracować z GUI (który może również generować ładne obrazy do dokumentacji), polecam FME.


11

Uwielbiam oprogramowanie typu open source, ale FME łatwo wygrywa z ETL typu open source, co mogę powiedzieć. Jest też dość tani w utrzymaniu i wsparciu (przynajmniej w porównaniu z większością innych rozwiązań korporacyjnych, które mamy na rzeczy).

Jeśli szukasz tłumaczeń między formatami, OGR może to zrobić (z pewnymi potokami do GDAL w celu przekształcenia). Oczywiście to jest linia poleceń .

W celu modelowania wizualnego wykraczającego poza te wymienione w komentarzu „możliwa duplikacja” pracują nad konstruktorem modeli QGIS / SEXTANTE; film potwierdzający koncepcję: https://www.youtube.com/watch?v=LTUu-I2ouqU

(Nie, nie pracuję dla Safe, jestem tylko względnie szczęśliwym klientem).


link wideo jest zepsuty. Czy możesz to naprawić?
GeoStoneMarten


6

Zrobiłem porównanie różnych narzędzi o rok tyłu, który zawiera również większość z wymienionych w tym wątku opcji.

Jako bardziej bezpośrednią odpowiedź, często używam FME ze względu na jego wszechstronność. Jednak gdy pracuję ze złożonymi strukturami danych, takimi jak CityGML, INSPIRE GML lub większe modele baz danych, używam HALE , aplikacji open source opracowanej dla ETL, a szczególnie harmonizacji.

wprowadź opis zdjęcia tutaj

Obecnie (od wersji 2.9.0) porównuje się z FME (2014 SP1) w następujący sposób:

  • HALE ma mniejszą liczbę formatów (HALE: 20, FME 200) i transformatorów (HALE: 30+, FME: ponad 400), ale bardzo dobra obsługa wszystkich dialektów XML / GML
  • HALE podgląda wyniki transformacji interaktywnie na mapie i w widokach tabeli oraz bezpośrednio weryfikuje dane wyjściowe
  • HALE jest ogólnie znacznie szybszy, ponieważ zachowany jest kontekst lokalny dla każdego atrybutu, co pozwala zaoszczędzić na przykład sporo FeatureMergers
  • HALE jest oprogramowaniem typu open source i jest wykorzystywany w produkcji od 2010 roku
  • HALE używa deklaratywnego interfejsu mapowania, co prowadzi do mniejszej liczby wymaganych danych wejściowych użytkownika w porównaniu do podejść proceduralnych

Pamiętaj, że jestem w zespole HALE od kilku lat.


Jak myślisz, jak układa się dzisiaj w porównaniu z FME? Specjalnie dla internetowych i geoRSS kanałów danych?
Dr.YSG

@ Dr.YSG utrzymanie hale zostało przejęte przez wetransform GmbH w 2015 roku, więc za opracowaniem stoi teraz dedykowany zespół. W ciągu ostatnich czterech lat nastąpił znaczny rozwój. Zmiany są udokumentowane w uwagach do wydania GitHub. Obsługuje przetwarzanie danych JSON / GeoJSON. GeoRSS to prosty format XML, który ponownie wykorzystuje niektóre części GML, więc jest w pełni obsługiwany. Aby automatycznie przetwarzać kanały GeoRSS, powinieneś zajrzeć do hale-cli (interfejs wiersza poleceń i inne API).
tr_xsdi,

5

Jeśli spojrzysz na duplikat blah238s, znajdziesz więcej informacji. Powiedziałbym, że Talend Open Studio i Pentaho GeoKettle to najbardziej znane rozwiązania open source, jakie można wybrać. Z tych dwóch celów Talend więcej niż tylko ETL i GeoKettle są nieco łatwiejsze w użyciu, o ile czytałem.

Moja gmina ma zamiar dać GeoKettle napisanie dialektu GML opracowanego przez szwedzkie stowarzyszenie lokalnych władz i regionów (SALAR) i potrzebujemy tego formatu, aby dostarczyć geodane do różnych komercyjnych interesów.

Wierzę, że GeoKettle ma wsparcie dla OGR / GDAL od wersji 2.0.


5

FME jest prawdopodobnie najlepszym produktem do zastosowania w tej przestrzeni. Potem jest GDAL / OGR. Innym produktem open source w tej przestrzeni jest geokettle - http://www.spatialytics.org/projects/geokettle/, chociaż nigdy nie użyłem go w gniewie (mając szczęście, że wymieniono oba pozostałe produkty).

Jeśli żadna z tych ogólnych opcji nie działa, prawdopodobnie chcesz użyć określonego narzędzia do konwersji.


3

Użyłem Geokettle religijnie dla małego projektu wysokiego poziomu uczenia się, chyba że przyzwyczaiłeś się do interfejsu użytkownika Eclipse ... Naprawdę potężny, ponieważ skompilowany z GDAL1.10 obsługuje wszystkie typy geo ... Podobało mi się jego wsparcie zarówno dla przechowywanych danych, jak i danych za pośrednictwem usług ... użyłem go do odtworzenia i zsynchronizowania zbiorów danych ArcGIS na lokalnej instancji Postgis za pośrednictwem jsona ESRI z GeoJSON ... Przepływ pracy można budować w warunkach i sprawdzanie poprawności ustawia go w celu zapytania o # objectid i na podstawie tej kompilacji predefiniowany plik csv aby iterować zapytanie o 500 funkcji na raz, w zależności od pierwszego zapytania, udało się skonsolidować wszystkie żądania w jednym pliku geojson, uruchomić ogr2ogr, aby załadować do postgis nawet skryptuję postgis, aby uruchomić próżnię i zindeksować z nim ... Nie związany tylko fan

Możesz go uruchomić i zmapować przepływ pracy w graficznym interfejsie użytkownika oraz użyć narzędzi serwera pentahos, aby skonfigurować go na Hadoop i uruchomić jako skrypt lub zadanie CRON.


3

QGIS (przynajmniej od obecnej wersji 2.6) ma teraz również zintegrowany konstruktor modeli. Za pomocą tego zestawu narzędzi można uzyskać dostęp do setek algorytmów (GDAL, GRASS, SAGA, vectortools itp.). Możesz także dodać własny skrypt.

Muszę przyznać, że nie korzystałem z niego zbyt często, ale gdybym szukał konstruktora modeli, uznałbym to za warte zbadania.


0

[OSTRZEŻENIE: bezpłatna promocja produktu, w który jestem zaangażowana]

Pracowaliśmy nad narzędziem do wykonywania ETL. Ma podobny smak do FME, ale jest przeznaczony do prostszych zadań i wymaga mniejszej wiedzy specjalistycznej. Niektóre szczegóły można znaleźć na https://www.geoactive.it po prostu szukać informacji o Data Dragon. Ta aplikacja używa GDAL / OGR w back-endie i przesuwamy wszelkie dodatki, które wprowadzamy z powrotem do GDAL / OGR.

Wykorzystanie komercyjne wymaga zakupu, ale mamy dostępne licencje akademickie za darmo, więc jeśli chcesz go użyć do nauki, wyślij mi wiadomość, a ja przedstawię ci więcej szczegółów.

To jest w fazie wczesnego wydania, więc wciąż jest kilka drobnych błędów, więc proszę, bądź z nami delikatny.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.