Raport z Register: Współautor SQL, znormalizowanego języka zapytań dla baz danych relacyjnych, poparł ruch baz danych NoSQL, który stara się uciec od tabelarycznych ograniczeń RDBMS. Rozmawiając z Register, gdy SQL obchodzi swoje 50. urodziny, Donald Chamberlin, który pierwszy zaproponował język wraz z kolegą z IBM, Raymondem Boyce'em, w pracy z 1974 roku wyjaśnia, że bazy danych NoSQL i ich języki zapytań mogą pomóc w wykonywaniu zadań, dla których systemy relacyjne nie zostały zaprojektowane.
„Świat się nie zatrzymuje, zwłaszcza w informatyce” - mówi. „To bardzo szybko rozwijający się przemysł. Pojawiają się nowe wymagania i technologia musi się zmieniać, aby im sprostać, myślę, że to właśnie się dzieje. Ruch NoSQL jest motywowany nowego rodzaju aplikacjami, zwłaszcza aplikacjami internetowymi, które potrzebują ogromnej skalowalności i wysokiej wydajności. Relacyjne bazy danych zostały opracowane we wcześniejszym pokoleniu, gdy skalowalność i wydajność nie były aż tak istotne. Aby uzyskać skalowalność i wydajność potrzebną dla nowoczesnych aplikacji, wiele systemów łagodzi niektóre z ograniczeń modelu danych relacyjnych.”
Aby przeciwdziałać „niezgodności impedancji” między strukturami danych w języku aplikacji a bazą danych, zaproponowano SQL++. Profesor UC San Diego, Yannis Papakonstantinou, opracował SQL++ w celu rozwiązania tego problemu, z myślą o adresowaniu niezgodności impedancji między mocno opartym na obiektach JavaScriptem, a zakładanym podejściem relacyjnym wbudowanym w SQL. Podobnie jak C++, SQL++ jest zaprojektowany jako zgodne rozszerzenie wcześniejszego języka SQL, ale jest uważany za lepiej radzący sobie z formatem plików JSON wbudowanym w JavaScript.
Couchbase i AWS przyjęły ten język, chociaż gigant chmur nazywa go PartiQL. Po zakończeniu wywiadu Chamblin dodaje, że „Nie sądzę, że SQL zniknie. Duża część danych biznesowych na świecie jest zakodowana w SQL, a dane są trudne do porzucenia. Gdy już masz swoją bazę danych, zostawisz ją tam. Ponadto systemy relacyjne bardzo dobrze radzą sobie z tym, dla czego zostały zaprojektowane... Jeśli jesteś nową firmą, która chce sprzedawać buty w internecie czy coś, potrzebujesz bazy danych, a jedna z tych implementacji SQL zrobi to za darmo. Myślę, że bazy danych relacyjne i język SQL będą z nami przez długi czas.
ELI5: Donald Chamberlin, współtwórca języka SQL, mówi, że bazy danych NoSQL są potrzebne do nowoczesnych aplikacji internetowych, które wymagają dużej skalowalności i wydajności. SQL został zaproponowany w 1974 roku dla innych potrzeb. W przyszłości, mimo rozwoju NoSQL, język SQL będzie nadal istotny, ponieważ wiele danych jest w bazach SQL, a systemy relacyjne są dobre dla swojego pierwotnego przeznaczenia.
Źródła:
- https://www.theregister.com/2024/05/10/sql_cocreator_nosql/
- https://web.archive.org/web/20070926212100/http://www.almaden.ibm.com/cs/people/chamberlin/sequel-1974.pdf
- https://en.wikipedia.org/wiki/Object%E2%80%93relational_impedance_mismatch
- https://arxiv.org/abs/1405.3631
- https://aws.amazon.com/blogs/opensource/announcing-partiql-one-query-language-for-all-your-data/