Baza danych Oracle
Oracle i Teradata są jednocześnie Systemy zarządzania relacyjnymi bazami danych (RDBMS), jednak Oracle implementuje Object-Relational Database Management System (ORDBMS).[ja]
RDBMS został wprowadzony przy użyciu modelu relacyjnego [ii], który utrzymuje relacje między tabelami przy użyciu indeksów, kluczy podstawowych i obcych. Szybsze jest pobieranie i przechowywanie danych w porównaniu do starego systemu zarządzania bazami danych (DBMS).
Chociaż podobny do relacyjnej bazy danych, obiektowy model bazy danych Oracle wykorzystuje obiekty i klasy obsługiwane w schemacie bazy danych i języku zapytań.
Pod koniec lat siedemdziesiątych, kiedy Oracle stało się pierwszym komercyjnie dostępnym RDBMS, Teradata kładł podwaliny pod pierwszą hurtownię danych. Jego możliwości sprawiły, że jest to idealne rozwiązanie dla dużych zbiorów danych (termin opracowany przez Teradata), narzędzi Business Intelligence (BI) [iii] oraz Internetu przedmiotów (IoT) [iv].
Systemy zarządzania relacyjnymi bazami danych (RDBMS) można sklasyfikować jako Przetwarzanie transakcji online - OLTP i Online Analitical Processing - OLAP.[v]
OLTP jest transakcyjny i dostarcza dane do hurtowni danych, a OLAP służy do analizy danych.
"ZA hurtownia danych to baza danych zawierająca dane, które zwykle reprezentują historię biznesową organizacji. Dane w hurtowni danych są zorganizowane w celu obsługi analizy, a nie przetwarzania transakcji w czasie rzeczywistym, jak w systemy przetwarzania transakcji online (OLTP).
OLAP technologia umożliwia efektywne wykorzystanie hurtowni danych do analiz online, zapewniając szybkie odpowiedzi na iteracyjne złożone zapytania analityczne.”[vi]
Chociaż Teradata jest ukierunkowana na OLAP i Oracle dla OLTP, Oracle może uruchamiać zarówno bazy danych OLTP, jak i OLAP na tej samej platformie, której Teradata nie obsługuje. Wydajność daje Oracle przewagę nad Teradata w większości scenariuszy o mieszanym obciążeniu.
Transakcje obejmują jedną lub więcej instrukcji SQL wykonanych w bazie danych w celu wykonania zadań przy zachowaniu integralności danych. Transakcje są współzależne w zakresie zarządzania i przetwarzania danych dodawanych lub usuwanych z bazy danych.
Oracle jest dostosowany do przetwarzania transakcji ze względu na jego elastyczność architektoniczną (z obiektowym RDBMS), podczas gdy OLAP Teradata jest potężny do krojenia i krojenia danych (historia danych OLTP) do analizy, bez konieczności przenoszenia lub restrukturyzacji danych.
Oracle jest głównie używana jako aplikacja zaplecza online do zarządzania wstawianiem, aktualizacjami i usuwaniem podczas transakcji, podczas gdy Teradata jest Hurtownie danych, które przechowują duże zbiory danych do celów analitycznych i nie zawierają transakcji w czasie rzeczywistym.
Teradata to dobra kombinacja sprzętu i oprogramowania, produkująca najwyższej klasy korporacyjne urządzenie bazodanowe, jednak Oracle uruchomiła OLAP Exadata Server w 2008 roku. Była to odpowiedź Oracle na pełne urządzenie bazodanowe.
Oba wymagają znacznej inwestycji i są bardziej odpowiednie dla bardzo dużych baz danych, które wymagają dużej wydajności przy złożonych zapytaniach.
Teradata jest Architektura Shared Nothing (SN) podczas gdy Oracle jest Udostępniono wszystko.
Termin wspólna architektura nic odnosi się do wieloprocesorowego systemu zarządzania bazą danych, w którym pamięć i pamięć dyskowa nie są współużytkowane przez procesory. [vii] Przepustowość sieci jest współdzielona do przesyłania danych.
Dzięki Teradata dane są przechowywane na serwerach i każdy z nich oblicza własną część. Dane są dzielone na partycje i przechowywane na zestawie serwerów, a każdy serwer jest odpowiedzialny za swoje dane. Przykłady wysokiej klasy platform korzystających z tej samej architektury to Google, Amazon i Facebook.
Jednak w przypadku Oracle udostępnił wszystko architektura, wszystkie dane są dostępne na wszystkich serwerach, a poziomy dostępu można w razie potrzeby zastosować do dowolnej części danych. Potencjalnym minusem jest wzrost obciążenia związanego z zarządzaniem dostępem do danych, który może skomplikować zarządzanie systemem.
Architektura Oracle oznacza, że każda maszyna może uzyskać dostęp do dowolnych danych, i to jest podstawowa różnica między Teradata, dzięki czemu Teradata idealnie nadaje się do hurtowni danych, a Oracle lepiej nadaje się do OTLP.
Należy zauważyć, że chociaż Oracle Exadata wdrożyło hybrydowe podejście dwóch architektur, systemu Exadata nie można używać bez Oracle. Exadata to „dodatkowy” silnik pamięci masowej, a nie przegląd silnika bazy danych Oracle.
Skalowalność obejmuje kilka aspektów infrastruktury IT, takich jak obsługa wzrostu ilości danych i woluminów transakcyjnych, a także wzrost danych wielowymiarowych, liczby użytkowników, zarządzania obciążeniem, złożoności i ilości zapytań itp..
Teradata jest Skalowalne liniowo[viii], co oznacza, że pojemność bazy danych można zwiększyć, dodając więcej węzłów do infrastruktury, a gdy zwiększa się ilość danych, nie ma to wpływu na wydajność.
System został zaprojektowany z myślą o skalowalności wielowymiarowej i zapewnia bardziej niezawodne modele skalowania i skalowania niż Oracle. Chociaż Oracle ma dobrą skalowalność, wiadomo, że występują wąskie gardła w podsystemie pamięci masowej i ma on jedną z najlepszych prędkości przetwarzania danych, ale tylko do pewnego limitu. Na przykład, jeśli większość zapytań jest znana, a użyte dane są mniejsze niż 600 TB, to Oracle może być odpowiednie, ale jeśli oczekuje się, że dane wzrosną ponad to, Teradata jest lepszym wyborem.
Teradata ma bezwarunkową paralelizm [ix], podczas gdy Oracle ma Warunkową. Daje to Teradata przewagę dzięki OLAP, ponieważ wydajność jest wyjątkowa, aby uzyskać pojedynczą odpowiedź szybciej niż system nierównoległy. Równoległość wykorzystuje wiele procesorów pracujących razem, aby szybko wykonać zadanie.
Aby skorzystać z analogii działania równoległości, pomyśl o kolejce w zatłoczonym sklepie, w której jedna kolejka rozgałęzia się na osobne kolejki dla każdej kasy. Linia przesuwa się w ten sposób szybciej zamiast jednej kolejki i jednej kasy. Im bardziej wydajne ładowanie równoległe, tym lepsza wydajność systemu.
Teradata ma równoległość w całym swoim systemie, w tym w architekturze, złożonym przetwarzaniu i ładowaniu danych. Dostrajanie zapytań nie jest potrzebne do równoległego przetwarzania żądań, a Teradata nie zależy od ograniczeń zakresu kolumn lub ograniczonej ilości danych, w przeciwieństwie do Oracle.
Inne znaczące różnice obejmują:
Zarówno Oracle, jak i Teradata są dojrzałe w zakresie produktów i technologii, jednak liczba wdrożeń Oracle jest większa niż w przypadku Teradata.
Ponieważ Oracle jest częściej używany niż Teradata, ma bogaty zestaw narzędzi, dzięki czemu jest lepszym wyborem dla programistów i użytkowników biznesowych. Opinie użytkowników biznesowych postrzegają Teradata jako zbyt skomplikowane lub zastrzeżone dla wyspecjalizowanych ekspertów, dlatego łatwiej jest znaleźć wykwalifikowanego użytkownika lub programistę Oracle, niż znaleźć Teradata.
Składnik | Teradata | Wyrocznia |
Architektura | · Nic wspólnego · Model relacyjny · Węzły mają wiele mechanizmów analizujących i silników baz danych zwanych procesorami modułów dostępu | · Udostępniono wszystko · Obiektowo-relacyjny model · Dysk współdzielony / luźno sprzężona pamięć współdzielona · Architektura DB dla baz danych z wieloma węzłami |
OLAP | System zaprojektowany i niezbędna konfiguracja nie jest wymagana. | Instalacja i konfiguracja OLAP jest techniczna i złożona. |
OLTP | Niemożliwe. | Zaprojektowany system. |
System operacyjny | · Windows · Linux · UNIX | · Windows · Linux · UNIX · Mac OS X · Z / OS |
Równoległość | Bezwarunkowe „Zawsze włączone”, zaprojektowane od samego początku. | Warunkowe i nieprzewidywalne |
Tabele bazy danych | Tabelami utworzonymi w bazach danych i przestrzeni dyskowej zarządza sama Teradata. | Tabele utworzone w obszarach tabel należące do schematu i mają parametry wykorzystania przestrzeni. |
Obiekty bazy danych | · Kursor · Rutyna zewnętrzna · Funkcja · Procedura · Spust | · Domena danych · Kursor · Rutyna zewnętrzna · Funkcja · Procedura · Spust |
Wykorzystanie indeksu | Tradycyjnie nie używa się wielu indeksów, ponieważ architektura równoległa koncentruje się na wymaganiach dotyczących wydajności. | Polegaj na indeksach, ponieważ obciążenia OLTP wymagają szybkich ścieżek dostępu. |
Berło | · SQL | · SQL · GUI |
Typy danych | ||
Strunowy | · CHAR · CLOB · VARCHAR | · CHAR · CLOB · VARCHAR · NCHAR · NVARCHAR |
Dwójkowy | · BYTE · VARBYTE | · BFILE · LONGRAW · SUROWY |
Data / godzina | · CZAS · DATA · ZNAK CZASU | · DATA · ZNAK CZASU |
Ogólny ranking użytkowników (badanie centralnej stacji IT) [xi] | Trzeci | Pierwszy |