Naprawdę nie lubię nazwy „NoSQL”, ponieważ nie jest zbyt opisowa. Mówi mi, które bazy danych nie są tam, gdzie jestem bardziej zainteresowany tym, czym są bazy danych . Naprawdę uważam, że ta kategoria naprawdę obejmuje kilka kategorii baz danych. Próbuję tylko uzyskać ogólne pojęcie o tym, do jakiej pracy każda baza danych jest najlepszym narzędziem.
Kilka założeń, które chciałbym poczynić (i o które poproszę):
- Załóżmy, że możesz zatrudnić dowolną liczbę znakomitych inżynierów, którzy mają takie same doświadczenie z każdą technologią baz danych, jaka kiedykolwiek istniała.
- Załóżmy, że masz infrastrukturę techniczną do obsługi dowolnej bazy danych (w tym dostępnych serwerów i administratorów systemów, którzy mogą obsługiwać tę bazę danych).
- Załóżmy, że każda baza danych ma najlepsze możliwe wsparcie za darmo.
- Załóżmy, że masz 100% wpisowego od zarządu.
- Załóżmy, że masz nieskończoną ilość pieniędzy, które możesz rzucić na problem.
Teraz zdaję sobie sprawę, że powyższe założenia eliminują wiele ważnych rozważań związanych z wyborem bazy danych, ale skupiam się na ustaleniu, która baza danych jest najlepsza dla zadania na poziomie czysto technicznym. Biorąc pod uwagę powyższe założenia, pytanie brzmi: do jakich zadań każda baza danych (w tym zarówno SQL, jak i NoSQL) jest najlepszym narzędziem i dlaczego?