Ze względu na konieczność zapewnienia wysokiej dostępności i skalowalności rozwiązania udostępnianie w CloudPortal muszą spełniać najwyższe standardy dotyczące niezawodności i bezpieczeństwa oraz umożliwiać łączenie wielu instancji usług w klastry.

Usługą, która ma zagwarantować największy poziom funkcjonalności dla większości istniejących na rynku aplikacji pisanych dla różnych platform jest MariaDB 10. Jest to najnowsza i najbardziej zaawansowana wersja popularnej relacyjnej bazy danych MariaDB. Z jednej strony usługa oferuje kompatybilność z odpowiednimi wersjami MySQL, co sprawia, że aplikacje, które były tworzone na ten silnik bazodanowy, nie powinny mieć problemu z przejściem na MariaDB. Z drugiej strony w porównaniu z MySQL dodaje wiele nowych funkcjonalności, niezbędnych w najbardziej zaawansowanych scenariuszach aplikacji webowych. W przypadku MariaDB dostępność i skalowalność jest zaimplementowana poprzez technologię klastrową i replikację danych na wiele serwerów, co zapewnia wyeliminowanie jednego punktu awarii i rozłożenie obciążenia na wiele serwerów.

Wysoka skalowalność MariaDB jest uzyskiwana dzięki:

  • równoległej replikacji typu Slave – kompatybilny z MySQL 5.6 mechanizm replikacji, ale gwarantujący uruchomienie równolegle wielu transakcji w ramach jednej bazy, co zapewnia czterokrotne przyspieszenie sprawności replikacji;
  • wieloźródłowej replikacji – umożliwia replikację danych do bazy Slave z wielu serwerów Master. W przypadku, kiedy dane są składowane na wielu serwerach (wiele baz danych, wiele aplikacji, shardy), MariaDB udostępnia mechanizm replikacji tych danych do jednego źródła w celu np. archiwizacji lub analizy;
  • globalnemu identyfikatorowi transakcji – zapewnia nadawanie zdarzeniom w hierarchii replikacyjnej między wieloma domenami unikalnego identyfikatora, co gwarantuje, że mechanizm replikacji w wysoce skalowalnym środowisku udostępnia przetwarzanie transakcji spełniających założenia ACID;
  • silnikowi składowania Spider – silnik składowania z wbudowaną obsługą shardów, wspierający partycjonowanie i transakcje rozproszone ma umożliwić przechowywanie danych na wielu instancjach serwera i serwowanie ich tak, jakby to była jedna instancja. Umożliwia wykonywanie wydajnych, równoległych i wieloserwerowych zapytań;
  • silnikowi składowania TokuDB – zintegrowany z MariaDB TokuDB wykorzystuje zaawansowane mechanizmy indeksowania i kompresji danych, które umożliwiają dużo szybsze wykonywanie operacji modyfikujących dane, w dużym stopniu redukując opóźnienia w procesie replikacji baz slave;
  • ulepszonemu partycjonowaniu tabel – kontrolowanie partycjonowania danych na poziomie aplikacji pozwala na podejmowanie decyzji przez aplikację, w jaki sposób tabela jest przechowywana w wielu plikach i na wielu serwerach dla zapewnienia większej wydajności i skalowalności.

Aplikacje utrzymywane na platformie CloudPortal łączą się z usługą bazy danych za pośrednictwem dodatkowego routera TCP – switchboard. Jest to komponent udostępniający warstwę proxy odpowiedzialną za zagwarantowanie wysokiej dostępności w połączeniach z serwerem MariaBD. Switchboard utrzymuje połączenia klienckie do jednego z węzłów klastra bazodanowego i przełącza je pomiędzy węzłami w przypadku awarii.

 

Dotacje na innowacje. Inwestujemy w waszą przyszłość
Dotacje na innowacje. Inwestujemy w waszą przyszłość