Niedawno ogłoszona przez firmę Oracle usługa bazy danych Exadata Database Service on Exascale (ExaDB-XS) ma na celu poprawę wydajności obciążenia bazy danych i obniżyć koszty.
Architektura w Exascale, czyli wielodostępnej architekturze Oracle, która inteligentnie przydziela pule obliczeniowe zoptymalizowane pod kątem baz danych, jest zbudowana na tych samych urządzeniach – X8M, X9M i X10M – których Oracle używa w swojej usłudze Exadata Database Service w Dedicated Infrastructure. Exadata ma już dekadę i jest infrastrukturą Oracle dla jej relacyjnej bazy danych.
Nowością jest skupienie się na obciążenia sztucznej inteligencji (AI) i baz danych wektorowych, a także strukturę opłat za użytkowanie.
Od czasu udostępnienia urządzeń X8M firma Oracle połączyła serwery z pamięcią masową poprzez sieć RoCEa serwery pamięci masowej Oracle są wyposażone w pamięć XRMEM, do której dostęp uzyskuje się za pośrednictwem protokołu RDMA z dysków NVMe i dysków twardych, tworząc trzy warstwy pamięci masowej: gorącą, ciepłą i zimną.
Logikę tę dostosowano do współdzielonej architektury, głównie poprzez modyfikację oprogramowania zarządzającego bazami danych.
„Wcześniej każdy najemca miał własną, dedykowaną infrastrukturę obliczeniową i pamięć masową Exadata” — powiedział Kodi Umamageswaran, starszy wiceprezes ds. technologii Exadata i skalowania poziomego w firmie Oracle.
„Mieliśmy oprogramowanie o nazwie Automatic Storage Management (ASM), które służyło do dystrybucji pamięci masowej między bazami danych” — powiedział. „Teraz wspólna pula obliczeń i pamięci masowej Exascale przejmie kontrolę nad tysiącami dzierżawców i milionami baz danych”.
Podsumowując, do zarządzania maszynami wirtualnymi i pamięcią masową wykorzystywana jest specjalna płaszczyzna sterowania Exascale.
Tradycyjnie Oracle reprezentował każdy dysk twardy w systemie operacyjnym poprzez logiczny numer jednostki (LUN) i zarządzał wszystkimi logicznymi zasobami w formie plików, danych w bazie danych, migawek, dzienników redo, klonów i bloków pamięci masowej.
Jednak w przypadku Oracle ASM każdy typ pliku jest współdzielony przez każdą grupę dysków powiązaną z bazą danych, jej plikami odzyskiwania, migawki i rozszerzona konfiguracja pamięci masowej. Służy to zapewnieniu redundancji danych i ich separacji pomiędzy odrębnymi woluminami pamięci masowej.
Od teraz, w Exascale, to typ pliku będzie określał redundancję. Szablony umożliwiają konfigurację poziomów redundancji, a płaszczyzna sterowania zapewnia, że dane nie są przechowywane na tym samym dysku.
Ponadto pliki są dzielone na „rozszerzenia” 8 MB, jak nazywa je Oracle, rozmiar wybrany w celu optymalizacji wydajności w architekturze multitenant. „Te 8-megabajtowe fragmenty są wystarczająco duże, aby uzyskać dobrą wydajność sekwencyjną, gdy skanujemy ciągłe dane” — powiedział Umamageswaran. „I wystarczająco małe, aby umożliwić dystrybucję bazy danych w chmurze pamięci masowej w celu współdzielenia obciążenia wejścia/wyjścia”.
Zakresy są przydzielane do kontenerów pamięci masowej za pomocą kodu skrótu, a tabela mapowania wskazuje, na którym dysku są przechowywane. „Wszystkie zakresy znajdujące się w kontenerze są przechowywane w sposób redundantny na trzech dyskach na trzech serwerach pamięci masowej w celu ochrony przed awariami pamięci masowej i przerwami w świadczeniu usług” — powiedział Umamageswaran.
Maksymalna liczba kontenerów jest ustalona na 100 000. „Wystarczy, aby udostępnić dane tysiącom serwerów pamięci masowej i jest wystarczająco mała dla tabeli korespondencji przechowywanej w pamięci podręcznej na serwerach baz danych klientów” — powiedział.
Wydajność równa dedykowanej infrastrukturze
Ta architektura, która wykorzystuje sieć RoCE i protokół połączenia RDMA, umożliwia wydajność podobną do dedykowanych usług Exadata. Oznacza to przepustowość 2880 GBps przy ogólnych obciążeniach testowych i opóźnieniu 17 µs, z serwerami X10M.
Taka wydajność wynika m.in. z dynamicznego podziału danych na warstwy i automatyzacji paralelizacji przetwarzania SQL.
Programiści mogą skorzystać z możliwości tworzenia klonów baz danych, całych lub „cienkich”, z bazy danych w produkcji lub migawki. Technologia przekierowania przy zapisie zmniejsza pojemność pamięci masowej wymaganą dla klonów, ponieważ klony współdzielą bloki z oryginalnej bazy danych bez zapisywania nowych danych. Większość z tych funkcji już jednak istnieje.
Zamiast grup dysków administratorzy widzą teraz „skarbce” dołączone do klastrów maszyn wirtualnych. Te skarbce to logiczne kontenery pamięci masowej, które pobierają zasoby z serwerów fizycznych dołączonych do klastrów maszyn wirtualnych.
Skarbce reprezentują nowy, bardziej widoczny sposób pracy dla administratorów, ponieważ są używane bezpośrednio przez bazę danych Oracle, a nie przez grupy dysków ASM.
Podczas wdrażania można konfigurować maszyny wirtualne, dołączone skarbce i udostępniać obraz kontenera bazy danych w taki sam sposób, jak w przypadku wirtualnej sieci w chmurze, a także jej sieci klienckich i kopii zapasowych.
Administratorzy mogą wdrożyć od dwóch do 10 maszyn wirtualnych, z których każda ma przydzieloną elastyczną liczbę rdzeni na godzinę w schemacie ECPU Oracle. Jeden skarbiec może mieć od 300 GB do 100 TB przestrzeni dyskowej.
Mniej kosztowne, na mniejszą skalę
Dzięki architekturze multitenant ExaDB-XS będzie o 95% tańszy niż Exadata Cloud Infrastructure X9M Dedicated.
W przypadku konfiguracji podstawowej (wraz z licencją) wykorzystującej ćwierć szafy X9M – tj. dwa serwery baz danych na trzy serwery pamięci masowej – dedykowana infrastruktura Exadata Cloud Infrastructure kosztuje około 10 000 euro miesięcznie, w porównaniu z około 330 euro miesięcznie w przypadku infrastruktury Exadata Exascale.
Musisz dodać uruchomione usługi Exadata Database, które Oracle fakturuje jako przetwarzanie za pośrednictwem RDMA. Podstawowa instancja ExaDB-XS kosztuje około 4000 EUR miesięcznie w porównaniu z 13 700 EUR za dedykowaną instancję X9M w chmurze, z 4 OCPU (8vCPU) powiązanymi z usługą Exadata Database Service. To oszczędność około 70%, według dostawcy.
Podczas gdy instancja quarter rack X9M ma większą pojemność pamięci masowej (190 TB), 4 OCPU nie wystarczają do przetworzenia takiej ilości danych. Tak więc Exadata Exascale może nie być tańsza przy tej samej pojemności pamięci masowej.
„Niski koszt Exascale pozwala dużym przedsiębiorstwom i MŚP na korzystanie z niej w przypadku niewielkich obciążeń” – powiedział Umamageswaran.
Analitycy zgadzają się, że Oracle nadal wprowadza innowacje w obliczu konkurencji ze strony konkurentów. Kluczowe wśród nich są PostgreSQL i jego warianty, wspierane przez duże wdrożenia wśród gigantów chmury, a także MongoDB. Oracle powoli oferował licencjonowanie oparte na użytkowaniu, ale wydaje się, że zamierza nadrobić zaległości.
Według Umamageswarana w przyszłości Exadata Exascale będzie stanowić podstawową architekturę wszystkich usług baz danych w ramach Oracle Cloud Infrastructure.