Próbuję przeprowadzić migrację projektu hibernacji/mysql do mongodb. Czy hibernacja obsługuje migrację do mongodb? Jeśli tak, w jaki sposób odwzorowywane są odwzorowania ORM, na przykład relacje jeden-do-jednego lub jeden-do-wielu?Jak przeprowadzić migrację mysql hibernacji do mongodb
Odpowiedz
Hibernate obsługuje relacyjnych baz danych, takich jak MySQL, PostgreSQL, Oracle, DB2 i SQL Server. Jednak MongoDB nie jest relacyjną bazą danych, jest to baza danych dokumentów . Różnice są dość duże:
- relacyjna baza danych określa relacje między tabelami. Tabele składają się z wierszy i kolumn. Kolumny, wraz z ograniczeniami typu lub relacji na nich, definiują tak zwany schemat .
- baza danych dokumentów określa kolekcje dokumentów. Baza danych dokumentów nie zna schematu :: każdy dokument może mieć inne właściwości. Zauważ, że nie nazywają się one "rzędami" i "kolumnami", lecz "dokumentami" i "właściwościami".
Aby odpowiedzieć na twoje pytanie, Hibernate nie obsługuje MongoDB i uważam, że szanse są bliskie zeru, jakie kiedykolwiek będą.
Istnieją jednak implementacje ORM dla Java/MongoDB, na przykład MJORM.
Jednak ponieważ są to dwa całkowicie odmienne punkty widzenia do organizacji bazy danych, nie ma prostej procedury do przeprowadzenia migracji. Przynajmniej będzie to obejmować ponowne przemyślenie projektu bazy danych. Warto więc ponownie rozważyć migrację i sprawdzić, czy rzeczywiście jest ona potrzebna. W końcu MongoDB nie jest zastępczym zamiennikiem relacyjnej bazy danych, ponieważ nie jest relacyjną bazą danych. Patrz poniższe linki do jakiejś dyskusji na dwóch typów baz danych:
- Document Database versus Relational Database : how to choose?
- Pros/cons of document-based databases vs. relational databases
- Wikipedia: Document-oriented database
- Wikipedia: Relational database
UPDATE chodzi Hibernate OGM
Prawdopodobnie możesz użyć Hibernate OGM. IMHO, istnieją dwie wady:
- OGM hibernacji Obecnie znajduje się w fazie beta; nie było jeszcze oficjalnego wydania, a ostatnia beta została wydana w styczniu ubiegłego roku, czyli pół roku temu. To zależy od twojego projektu, czy jest to dopuszczalne ryzyko, czy też nie.
- Hibernate OGM zapewnia implementację JPA dla pamięci NoSQL (w tym MongoDB). Zgodnie z twoim pytaniem, używasz obecnie Hibernuj, a nie JPA. Oznacza to, że nadal będziesz musiał zmieniać obiekty domeny, aby używać adnotacji JPA zamiast adnotacji Hibernate.
Twój najlepszy wybór należy przejść wiosennym danych MongoDB
Jest cicho proste do wykonania.
Have spojrzeć tam: http://www.mkyong.com/mongodb/spring-data-mongodb-hello-world-example/
Czy możesz porównać dane sprężyny z Hibernate OGM? – Murali
Również warto spojrzeć na morfinę https://github.com/mongodb/morphia. Jest to w zasadzie biblioteka ORM Java podobna do Hibernate, ale nie obsługuje adnotacji JPA.
- 1. Jak przeprowadzić migrację has_and_belongs_to_many do has_many through?
- 2. Jak przeprowadzić migrację skrótu hasła?
- 3. Jak przeprowadzić migrację z Vault na SourceGear do TFS?
- 4. Jak przeprowadzić migrację z belongs_to do embedded_in w Mongoid?
- 5. Jak przeprowadzić migrację z "Integracji tajemnej" do ciągłej integracji?
- 6. Jak przeprowadzić migrację z hostowanego TFS do lokalnego TFS?
- 7. Jak przeprowadzić migrację railsów za pomocą spinacza do papieru
- 8. Jak mogę przeprowadzić migrację SSL z Tomcat do Apache HTTPD?
- 9. Jak przeprowadzić migrację instalacji Homebrew do nowej lokalizacji?
- 10. Jak przeprowadzić migrację modeli Django z mysql do sqlite (lub między dowolnymi dwoma systemami baz danych)?
- 11. Jak przeprowadzić migrację mojej witryny, mySQL, stron php, plików, ustawień itp. Do Amazon EC2?
- 12. Jak przeprowadzić migrację witryny Pythona na inny komputer?
- 13. Eksport MySQL do MongoDB
- 14. Jak wykonać migrację do pola enum yii2
- 15. Jak przeprowadzić migrację aplikacji usługi Windows .NET do systemu Linux za pomocą trybu mono?
- 16. Jak przeprowadzić migrację z tradycyjnej aplikacji sieciowej Java (z web.xml) do wiosennego rozruchu?
- 17. Jak przeprowadzić migrację danych Cassandry z jednego obszaru kluczy do innego obszaru kluczy?
- 18. Jak przeprowadzić migrację projektu instalacji programu Visual Studio do wersji InstallShield Limited Edition?
- 19. Jak przeprowadzić migrację strategii NamingStrategy do (Implicit | Fizyczne) NamingStrategy? Gdzie jest dokumentacja?
- 20. Jak przeprowadzić migrację pojedynczego klastra do nowego klastra vNodes bez przestojów?
- 21. Jak przeprowadzić migrację interfejsu Twitter API z wersji 1 do wersji 1.1?
- 22. Jak przeprowadzić zbiorczą aktualizację dokumentów w MongoDB za pomocą Java
- 23. Android Lollipop wycofał ActionBar, jak mam przeprowadzić migrację mojej aplikacji, która używa ActionBara i kart?
- 24. Tworzenie EntityManagerFactory z konfiguracji hibernacji
- 25. Netbeans 7.1 usunął wsparcie dla Swing Application Framework? Jak mogę przeprowadzić migrację z wersji 7.0 do wersji 7.1?
- 26. Używanie MySQL i Mongodb razem
- 27. hibernacji mapa java Długi błędu MySQL BIGINT
- 28. Kolejność MySQL w mongodb findOne()
- 29. Szyny: Jak usunąć oczekującą migrację
- 30. Jak wykonać migrację do aplikacji Django do wielokrotnego użytku?
Czy możesz mi powiedzieć, jakie kroki muszę wykonać, aby przeprowadzić migrację wiosny hibernacji java na wiosnę do projektu java mongodb? – Murali
Dziękujemy za wysłanie cennego linku. – Murali
Czy funkcja OGM Hibernate zapewnia lepsze rozwiązanie migracji? – Murali