Zastanawiasz się, które bazy danych zyskują popularność w 2019 roku? Poprosiliśmy setki programistów, inżynierów, architektów oprogramowania, zespoły programistów i liderów IT na DeveloperWeek o odkrycie aktualnego wykorzystania NoSQL i SQL, najpopularniejszych baz danych, ważnych wskaźników do śledzenia i ich najbardziej czasochłonnych zadań związanych z zarządzaniem bazami danych. Uzyskaj najnowsze informacje na temat obsługiwanych przez nas baz danych MySQL, MongoDB®, PostgreSQL, Redis™* i wielu innych, aby zobaczyć, które systemy zarządzania bazami danych są najbardziej preferowane w tym roku.
SQL kontra NoSQL
Jak każdy administrator bazy danych wie, pierwszym pytaniem, które musisz sobie zadać, jest to, czy używać bazy danych SQL lub NoSQL w swojej aplikacji. Jaka jest różnica między tymi dwoma?
bazy danych SQL
Znane również relacyjnymi bazami danych, definiują i manipulują danymi w oparciu o ustrukturyzowany język zapytań (SQL). Są one najczęściej używane i przydatne do obsługi danych strukturalnych, które porządkują elementy danych i standaryzują ich wzajemne powiązania i różne właściwości.
Bazy danych NoSQL
Znane również nierelacyjnymi bazami danych, umożliwiają przechowywanie i pobieranie nieustrukturyzowanych danych przy użyciu dynamicznego schematu. NoSQL jest powszechnie używany ze względu na jego elastyczną zdolność do tworzenia unikalnej struktury i może być zorganizowany jako dokument, wykres, kolumna, a nawet KeyValue jako struktura danych.
SQL od dziesięcioleci ma dużą przewagę nad nierelacyjnymi alternatywami, ale NoSQL szybko wypełnia lukę w popularnych bazach danych, takich jak MongoDB, Redis, i Kasandry. Chociaż wiele organizacji decyduje się na migrację ze starszych baz danych, takich jak Oracle, nie wszystkie przechodzą na sposób NoSQL. Z naszych ustaleń wynika, że SQL nadal utrzymuje 60% przy rosnącym popycie na systemy takie jak PostgreSQL:
Użycie bazy danych SQL: 60,48%
Wykorzystanie bazy danych NoSQL:39,52%
Najpopularniejsze bazy danych
Które bazy danych są najpopularniejsze w 2019 roku? Wiedząc, że SQL używało ponad 3/5 respondentów, można założyć, że Oracle ukradł show. Zgadnij jeszcze raz. MySQL zdominował ten raport z 38,9% wykorzystaniem, następnie MongoDB z 24,6%, PostgreSQL z 17,4%, Redis z 8,4% i Cassandra z 3,0%. Oracle pozostał w tyle o zaledwie 1,8% od tych reporterów baz danych, a użytkownicy CouchDB, Berkeley DB, Microsoft SQL Server, Redshift, Firebase, Elasticsearch i InfluxDB połączyli naszą kategorię Inne na poziomie 2,4%.
Chociaż te liczby mogą szokować, nie można pomylić wzrostu popularności MySQL, MongoDB i PostgreSQL. Jak więc ta ankieta wypada w porównaniu z najbardziej znanym źródłem trendów dotyczących systemów zarządzania bazami danych? Ranking DB-Engines – Raport popularności trendów umieszcza tych liderów w pierwszej piątce, ale Oracle utrzymuje się na pierwszym miejscu, a Microsoft SQL Server na 3.
Chociaż spodziewaliśmy się znacznie większej liczby użytkowników baz danych Oracle, ich reprezentacja była niska na największych na świecie targach deweloperskich.
Pojedyncza baza danych a użycie wielu baz danych
W porównaniu z tradycyjną strategią polegającą na wrzucaniu wszystkich jajek do jednego koszyka, w ciągu ostatniej dekady eksplodowało użycie typów wielu baz danych. Ile tak? Prawie połowa organizacji, z którymi rozmawialiśmy, w rzeczywistości korzysta z więcej niż jednego typu bazy danych do obsługi swoich aplikacji niż z jednej bazy danych! 44,3% zgłosiło korzystanie z wielu baz danych, a 55,7% korzysta z jednej:
Trendy w bazach danych 2019 – SQL a NoSQL, najlepsze bazy danych, pojedyncze a wiele baz danych.Kliknij, aby tweetować
Kombinacje wielu baz danych SQL i NoSQL
Więc wiedząc, że prawie połowa naszych respondentów łączy wiele baz danych w celu obsługi swoich produktów, jakich typów systemów zarządzania bazami danych używają razem? Ten jest mniej szokujący, 75,6% użycia wielu typów baz danych składa się z kombinacji baz danych SQL i NoSQL. To potwierdza, że w wielu organizacjach jeden rozmiar nie pasuje do wszystkich. Chociaż możesz mieć przewagę nad SQL vs NoSQL, nie można zaprzeczyć, że oba oferują wyraźne zalety drugiego. Zamiast ograniczać swoją organizację do jednego typu bazy danych, ewoluuj (lub rozwijaj) strategię dotyczącą danych pod kątem zgodności, aby te potężne systemy zarządzania bazami danych mogły się wzajemnie uzupełniać i wypełniać luki w Twoich potrzebach dotyczących danych!
Wykorzystanie bazy danych SQL + NoSQL:75,6%
SQL + Wykorzystanie bazy danych SQL:14,6%
NoSQL + NoSQL Wykorzystanie bazy danych:9,8%
Najpopularniejsze kombinacje wielu typów baz danych
Jeśli jesteś użytkownikiem jednego typu bazy danych, który rozważa dodanie innego typu bazy danych do swojej mieszanki, ta sekcja może być bardzo interesująca – które bazy danych, zarówno SQL, jak i NoSQL, są najbardziej powszechnie używane razem.
Wyraźnym zwycięzcą z ponad 1/3 użytkowania wielu typów baz danych jest połączenie MySQL i MongoDB. Chociaż MongoDB jest często uważany za alternatywę dla MySQL, te dwie bazy danych dobrze ze sobą współpracują, jeśli są odpowiednio zaprojektowane. Drugą najpopularniejszą kombinacją był MySQL i PostgreSQL razem. Te dwie bazy danych SQL są wyraźnymi konkurentami, ale mogą być używane wspólnie do przechowywania różnych zbiorów danych. Jak widać na powyższym wykresie w sekcji, 9,76% reprezentacja MySQL i PostgreSQL stanowi znaczną większość użycia SQL + SQL w wielu bazach danych.
MySQL + MongoDB:34,15%
MySQL + PostgreSQL:9,76%
MongoDB + PostgreSQL:7,32%
MongoDB + Redis:7,32%
MySQL + MongoDB + PostgreSQL:4,88%
MySQL + MongoDB + PostgreSQL + Redis:4,88%
Najbardziej czasochłonne zadanie zarządzania bazą danych
Teraz teraz, gdy wiemy, które systemy zarządzania bazami danych, typy i kombinacje zastosowań są najpopularniejsze, przyjrzyjmy się, co pochłania nasz czas na froncie zarządzania bazami danych. Jak każdy, kto wcześniej zarządzał bazą danych, wie, że utrzymanie prawidłowego wdrożenia produkcyjnego wiąże się z niezliczonymi zadaniami. Nie zdziwiliśmy się więc, widząc tak zróżnicowaną odpowiedź w naszym najbardziej czasochłonnym pytaniu dotyczącym zarządzania bazą danych.
Monitorowanie znalazło się na pierwszym miejscu z 12,6% wśród naszych respondentów, ledwo wyprzedzając tworzenie kopii zapasowych, zarządzanie przestrzenią dyskową, skalowanie i łączenie tabel, wszyscy zdobyli drugie miejsce z 11,6% każdy. Samodzielne miejsce na trzecim miejscu utrzymywało i redystrybuowało zmiany między widokami i przechowywanymi programami na poziomie 8,7% i ponownie na czwartym miejscu z 7,2% dla każdego czyszczenia i konfiguracji bazy danych. Aktualizacje znalazły się na piątym miejscu z 6,5%, a kilkanaście innych zadań, w tym migracje, zapytania, porównywanie, dostrajanie i replikacja, składało się na 11,6% kategorii Inne.
Najważniejsze wskaźniki śledzone dla wydajności bazy danych
Chociaż widzieliśmy wiele różnych odpowiedzi na najważniejsze zadanie związane z zarządzaniem bazami danych, najważniejszy wskaźnik do śledzenia wydajności miał trzech znaczących liderów.
Czas odpowiedzi na zapytanie był nie tylko najczęściej śledzonym wskaźnikiem, ale także większością z 51,8% odpowiedzi! Spodziewaliśmy się, że będzie to prowadzić, ponieważ wyniosło 30,8% z najbardziej czasochłonnego raportu dotyczącego zadań zarządzania PostgreSQL, który skompilowaliśmy w październiku 2018 r., ale znacznie wzrosło, gdy rozszerzyliśmy to pytanie na wszystkie systemy zarządzania bazami danych. Szybkość zapytań to niezwykle ważna metryka, którą należy śledzić w sposób ciągły, dzięki czemu można zidentyfikować wolno działające zapytania, które mogą mieć wpływ na wydajność aplikacji. Wielu administratorów baz danych używa narzędzia Slow Query Analyzer do identyfikowania problematycznych zapytań, sprawdzania, z jakim rodzajem zapytania jest ono powiązane, analizowania zapytań według zakresu czasowego i znajdowania najczęstszych zapytań powodujących ładowanie odczytu w systemie w celu zidentyfikowania zapytań, które nie są zindeksowane .
Na drugim miejscu znalazła się rzetelność z 18,2% wśród naszych respondentów. Nie trzeba dodawać, że chociaż awarie są rzadsze niż powolne zapytania, awaria baz danych będzie miała najpoważniejszy wpływ na wydajność. Dlatego niezwykle ważne jest wdrożenie struktury wysokiej dostępności dla wdrożeń produkcyjnych, aby utrzymać bazy danych w trybie online w przypadku awarii jednego z centrów danych.
Pamięć znalazła się na trzecim miejscu z 8,2% odpowiedziami. Im więcej masz dostępnej pamięci, tym lepiej powinna działać Twoja baza danych. Zarówno zrozumienie, jak i monitorowanie wykorzystania pamięci powinny znajdować się wysoko na liście, ponieważ niewystarczająca lub wyczerpana pamięć spowoduje, że baza danych będzie odczytywać i zapisywać dane na dysku, co jest znacznie wolniejsze.
Dziękujemy setkom uczestników, którzy przyczynili się do raportu trendów w bazach danych w chmurze na DeveloperWeek 2019! Cieszymy się, że możemy podzielić się tymi spostrzeżeniami i mamy nadzieję, że w naszych komentarzach poznamy Twoje przemyślenia.