NoSQL (czasem rozszerzony do „nie tylko sql”) to szeroka klasa systemów zarządzania bazami danych, które różnią się od klasycznego modelu systemu zarządzania relacyjnymi bazami danych (rdbms) w znaczący sposób.
Systemy NoSQL:
* Specjalnie zaprojektowany dla dużego obciążenia
* Natywnie obsługuje skalowanie w poziomie
*Odporne na uszkodzenia
* Przechowuj dane w sposób zdenormalizowany
* Zwykle nie egzekwuj ścisłego schematu bazy danych
* Zwykle nie przechowuj danych w tabeli
* Czasami zapewniają ostateczną spójność zamiast transakcji ACID
W przeciwieństwie do RDBMS, system NoSQL:
* Nie gwarantuje spójności danych
* Zwykle obsługuje ograniczony język zapytań (podzbiór SQL lub inny niestandardowy język zapytań)
* Może nie zapewniać obsługi transakcji / transakcji rozproszonych
* Zwykle nie używaj niektórych zaawansowanych koncepcji RDBMS, takich jak wyzwalacze, widoki, procedury składowane Implementacje NoSQL można podzielić na kategorie
PYTANIA: Jaki jest najlepszy backend NoSQL dla gry mobilnej? Jakiego backendu noSQL najlepiej użyć do gry mobilnej? Użytkownicy mogą wysyłać wiele żądań serwerów, muszą także pobierać historyczne dane użytkowników (np. Kupowanie aplikacji) i analizy zachowań użytkowników.
ODPOWIEDŹ:
Niektóre czynniki, które możesz wziąć pod uwagę:
Znajomość programistów: korzystaj z tego, co znasz Ty lub Twoi programiści. Mongo, Couch, Riak, DynamoDB itp. Mają swoje mocne strony, ale wszystko powinno być w porządku, więc zamiast szukać nieznanego rozwiązania, które może być nieco lepiej, przejdź do znajomego i zaoszczędź sporo czasu na rozwój.
Łatwość wdrożenia w chmurze: na przykład jeśli korzystasz z Amazon AWS, to DynamoDB jest prawdopodobnie doskonałym wyborem. Jasne, możesz użyć Mongo na AWS, ale po co? Inni dostawcy usług w chmurze mają własne preferowane bazy danych, na przykład jeśli korzystasz z Google AppEngine, warto skorzystać z BigTable lub Cloud Datastore.
Twój przypadek użycia wydaje się być zarówno odpowiedni dla NoSQL, jak i niezbyt trudny, ponieważ dane mają naturalną partycję według użytkownika. Myślę, że z technicznego punktu widzenia nie miałbyś nic przeciwko, dlatego omawiam głównie inne czynniki.