W szczególności, jakie rozwiązania wykorzystują Hazelcast Jet, że Flink nie rozwiązuje problemu (równie dobrze) i na odwrót?Jakie są różnice między Hazelcast Jet a Apache Flink?
Odpowiedz
UWAGA: Należę do głównej grupy inżynierów Hazelcast Jet.
Powiedziałbym główną zaletą Hazelcast Jet nie jest w oferowaniu model nowiuteńki obliczeniową, ale w doprowadzeniu ten sam poziom wygody, że Hazelcast znany jest do sfery DAG opartej przetwarzanie rozproszone.
Jeśli obecnie aplikacja Java działa w klastrze, dodanie narzędzia Jet będzie bardzo proste: dodaj zależność Maven i napisz wiersz kodu, aby uruchomić instancję Jet na lokalnym elemencie. Instancje same się odkryją, tworząc własny klaster, i możesz teraz przesłać do niego swoje zadanie.
Jeśli potrzebujesz dedykowanego klastra obliczeniowego, zrobisz trywialny projekt z Jetem jako pojedynczą zależnością i uruchomisz go w klastrze, a następnie połączysz się z nim z zewnątrz, ponownie za pomocą pojedynczego wiersza kodu.
Nie trzeba dodawać, że Jet jest bardzo wygodny w użyciu jako Hazelcast IMap
lub IList
jako źródło danych. Klaster Jet może bezpośrednio obsługiwać struktury Hazelcast; następnie korzystasz z lokalizacji danych i otrzymujesz dane bez ruchu sieciowego. Z drugiej strony, wybór źródła danych jest całkowicie nieograniczony, a publiczny interfejs API jest dedykowany do implementacji szybkich, arbitralnie podzielonych na partycje, niestandardowych źródeł danych.
W wersji 0.3 Jet daje elastyczny i potężny model DAG, w której można precyzyjnie sterować aspekty wydajności krytycznych z obliczeń oraz warstwę wygodę na wysokim poziomie w postaci znanego java.util.stream
API dostosowaną do specyfiki przetwarzania rozproszonego (serializacja lambda i inne zagadnienia).
Na mapie drogowej do etapu 1.0 jest wsparcie pierwszej klasy dla problemów przetwarzania nieskończonych strumieni, takich jak okno czasowe, spójne migawki i odporność na zmiany w topologii klastra.
Moim zdaniem, flink wydaje się oferować bardzo przydatne funkcje strumieniowania, które nie są jeszcze oferowane przez jet hat.
- Różne elastyczne operatory okienne, które mogą również obsługiwać elementy spoza zamówienia i późniejsze.
- tolerancja błędu w klastrze i dostawy gwarantuje
Poza tym wydaje się też być bardziej stabilny i dobrze znany w tej chwili. Można na przykład użyć go jako środowiska wykonawczego dla Apache Beam, a następnie przeprowadzić łatwą migrację między przepływem danych Google w chmurze i własnym wdrożeniem. Tak więc obecnie używam migotania.
Najlepszy
- 1. Jakie są różnice między postem a stroną
- 2. Jakie są różnice między przerwą a wyjściem?
- 3. Jakie są różnice między MPI a OpenMP?
- 4. Jakie są różnice między typedef a używaniem?
- 5. Jakie są różnice między programem a aplikacją?
- 6. Jakie są różnice między Apache Spark i Apache Apex?
- 7. OSGi: Jakie są różnice między Apache Felix i Apache Karaf?
- 8. Jakie są różnice między java 1.5 a java 1.6
- 9. Jakie są różnice między widokiem snapshot a widokiem dynamicznym?
- 10. Jakie są różnice między & a &&, | i || w R?
- 11. Jakie są różnice między Visual Studio Code a Visual Studio?
- 12. Jakie są różnice między gradle assemble a gradle build taks?
- 13. Jakie są różnice między VBA 6.0 a VBA 7.0?
- 14. Jakie są różnice między rzutami a ponownymi rzutami w Swift?
- 15. Jakie są podstawowe różnice między instancją a obiektem klasy?
- 16. Jakie są różnice między trybem binarnym MD5 a trybem tekstowym?
- 17. Jakie są różnice między Tibco EMS a Rendezvous
- 18. Jakie są różnice w JIT między Javą a .Net
- 19. Jakie są duże różnice między wtyczką IntelliJ + Ruby a RubyMine?
- 20. Jakie są różnice między powłoką logowania a powłoką interaktywną?
- 21. Jakie są różnice między PECL i PEAR?
- 22. Jakie są różnice między Haskell i PureScript?
- 23. Jakie są różnice między Conda i Anaconda
- 24. Jakie są różnice między @dynamic i @synthesize?
- 25. Jakie są różnice między LinFu.DynamicProxy i Castle.DynamicProxy?
- 26. Jakie są różnice między możliwościami obliczeniowymi CUDA?
- 27. Jakie są różnice między utf8_general_ci i utf8_unicode_ci?
- 28. Apache Flink kontra Twitter Heron?
- 29. Różnice między GWT a Vaadin
- 30. W C++, jakie są różnice między static_cast <double> (a) i double (a)?
Więc można powiedzieć, że główną motywacją do zwalniania Jet jest oferowanie narzędzie, które jest łatwiejsze w użyciu niż Flink, a jej planowany featureset zachodzi na obecnym rynku? Czy możesz powiedzieć, że Jet jest "lekkim" rozwiązaniem dla aplikacji, które nie potrzebują tych samych funkcji, co istniejące rozwiązania? – Atle
Celem Jet jest zapewnienie prostego i solidnego fundamentu, który zachęca do tworzenia bardziej złożonych funkcji na poziomie użytkownika.Funkcja widoczna dla użytkownika, taka jak "wykrywanie oszustów", nie jest cechą definiującą silnika obliczeniowego; Jet może z łatwością obsługiwać to i wiele innych przypadków użycia, jeśli zapewnia niezbędne urządzenia. Hazelcast wciąż znajduje się w fazie rozważania, które konkretne domeny problemowe będzie zapewniał. Naszą nadzieją, jako projektem open-source, jest przyciągnięcie społeczności, która zbuduje wsparcie dla wielu niszowych dziedzin, niż możemy sami. –