Naprawdę nie rozumiem, dlaczego ludzie porównują dostawców danych, takich jak Cassandra i MySQL – tak naprawdę porównujesz tutaj jabłka i pomarańcze.
Tak, rozwiązania NoSQL mogą w niektórych przypadkach zapewnić lepszą wydajność niż SQL. Ale nie zapomnij powodu zapewniają taką szybkość — rezygnują z kilku sprawdzeń, które w SQL są często uważane za oczywiste. Na przykład nie zobaczysz takich rzeczy, jak transakcje w systemie NoSQL, ani nie będziesz mieć rodzajów złączeń i funkcji agregacji danych, które otrzymujesz jako część systemu SQL. Otrzymasz bardzo niewiele gwarancji w odniesieniu do spójności danych.
W przypadku 99% aplikacji po prostu nie jest to warte czasu i wysiłku. Jeśli korzystasz z facebooka lub twittera, gdzie masz ogromne ilości nieustrukturyzowanych danych, gdzie nie obchodzi Cię, czy rzeczywiście stracisz jakieś dane w tasowaniu rzeczy, lub masz opóźnienia w stosunku do tego, kiedy dane są dostępne po ich wstawieniu, NoSQL jest w porządku. Jednak w przypadku zdecydowanej większości aplikacji nadal powinieneś trzymać się SQL.
Jeśli chodzi o skalowalność, jeśli ogromna witryna, taka jak Stack Overflow lub Ebay, może działać na bazie SQL, nie rozumiem, dlaczego Twoja aplikacja nie może działać na SQL.