Wpis z mikrobloga

Jezuu przypomniało mi się jak kiedyś był hype na NoSQLowe bazy danych, głównie MongoDB.

Dobrze, że ludzie wrócili po rozum do głowy i kapnęli się, że nierelacyjna baza danych nie nadaje się do większości rzeczy.
Ale dalej śmieszy jak człowiek wraca do jakiegoś starego projektu z MongoDB, gdzie okazywało się że bez joinów to jednak ciężko coś zaprojektować, więc tworzyli relacje w nierelacyjnej bazie danych xd

#programowanie #programista15k #bazydanych #sql #nosql #mongodb
trevoz - Jezuu przypomniało mi się jak kiedyś był hype na NoSQLowe bazy danych, główn...

źródło: comment_16450390334Xr8YsVCYBFSy43abBqM6v.jpg

Pobierz
  • 34
@kobrys13: jaką masz intuicję odnośnie użycia cosmosdb vs relacyjne? Ostatnio myślałem sobie o projekcie w pracy, który używa dynamodb (cosmo to chyba analogiczna baza?) i odniosłem wrażenie, że strasznie to upierdliwe. Rozumiem, że ma to zastosowanie przy ekstremalnych warunkach, ale większość projektów (zwłaszcza tych nowych) nie operuje na takiej skali, żeby było warto
@trevoz: Przez chwilę w komercyjnym projekcie w mojej pracy bawiłem się mongoDB i byłem zachwycony bo z zerową wiedzą szybko się połapałem o co chodzi. To był początkowy etap projektu, zostałem przerzucony do pracy w innym, a ludzie którzy dalej tkwili w mongoDB w tamtym projekcie, wraz z jego rozwojem zaczęli płakać, że ta baza się dla ich zastosowania totalnie nie nadaje.
via Wykop Mobilny (Android)
  • 0
@Saly: o panie wolę chyba mieć ogromny dokument niż jeszcze raz wrzucać jsona do psql. Albo co gorsza w oparciu o dane z niego jakiś raport generować. Never again
@trevoz: RavenDB, Couchbase - nosql + transakcje, joiny, replikacja/praca w klastrze - wszystko darmo do 4 węzłów.
O bazach chmurowych nie wspomnę.
O rozwiązaniach typu Aerospike, Scylla, które są w stanie zrealizować do 1mln transakcji na sekundę też już nie piszę.

Postgres to nie jest ani cud techniki ani wydajności...( ͡° ͜ʖ ͡°)
@trevoz: Jeśli ktoś nie działał to proponuje zerknąć na bazę Firestore w Firebase. Ma ona swoje ograniczenia np brak textsearch czy ograniczona ilość zapisów per dokument/sekundę. Ale do małych projektów które mogą się w przyszłości łatwo skalować jest świetna. Całą aplikację można napisać na kliencie i pisać bezpośrednio do bazy. Nie mamy tez problemu z odświeżaniem bo gdy otwieramy okienko w aplikacji to robimy query do bazy i nasł#!$%@? na zmianę
@kobrys13: czyli najpierw robicie wielki monolit a potem dopiero refactoring na DDD? Finansowo DDD wychodzi nawet korzystniej. Właśnie trzeba od początku dobrze zaprojektować a nie potem się pakować w refactoring...
U mnie w pracy sporo rzeczy przenosimy z mysql na dynamo.
Głównie po to by oszczędzić i zapewnić większą dostępność.
Z mysqlem jest ten problem, że ciężko się to skaluje. Albo przez większość czasu przepłacasz albo klękasz jak dostajesz 10x więcej requestów niż zazwyczaj.