Обявено като част от изданието ClusterControl 1.5, сега предоставяме пълна поддръжка за MariaDB версия 10.2. Тази нова версия осигурява още по-голяма интеграция с Galera Cluster, предпочитано решение за HA на MariaDB, и също така включва подобрения на SQL като функции на прозорци, общи изрази на таблици и JSON функции.
MariaDB е най-бързо развиващата се база данни с отворен код, достигаща до повече от 60 милиона разработчици по целия свят чрез включването си във всяка голяма дистрибуция на Linux, както и нарастващото присъствие във водещите световни доставчици на облак. Широкото му използване в дистрибуции на Linux и облачни платформи, както и лекотата на използване бързо превърнаха MariaDB в стандарт за база данни с отворен код за модерното предприятие.
MariaDB Server беше посочен в скорошното проучване на OpenStack като технология за бази данни номер едно и две, използвани днес.
Какво е новото във версия 10.2?
MariaDB Server 10.1 донесе вградената по подразбиране интеграция на Galera Cluster, за да позволи на своите потребители да постигнат максималната висока наличност. Severalnines беше първият, който използва тази технология за клъстериране и беше развълнуван да види MariaDB да я прегърне за HA.
Ето някои от подобренията, включени в новата версия 10.2, както беше обявено от MariaDB…
- Подобренията в SQL, като функции на прозорци, общи изрази на таблици и JSON функции позволяват нови случаи на употреба за MariaDB Server
- Стандартната репликация на MariaDB сървър има допълнителни оптимизации
- Много ограничения в областта са премахнати, което позволява по-лесно използване и няма нужда от обработка на ограничения на ниво приложение
- MyRocks, нов механизъм за съхранение, разработен от Facebook, беше представен, който допълнително ще обогати случаите на използване на MariaDB Server (ЗАБЕЛЕЖКА:Тази нова система за съхранение също е достъпна за внедряване на MariaDB в ClusterControl, но ClusterControl го прави все още не поддържат специфично наблюдение на MyRocks .)
Функции на прозореца
Функциите на прозореца са популярни в Business Intelligence (BI), където е необходимо генериране на по-сложни отчети въз основа на подмножество от данни, като показатели за държава или търговски екип. Друг често срещан случай на употреба е, когато данните, базирани на времеви серии, трябва да бъдат обобщени въз основа на времеви прозорец, вместо само на текущ запис, както всички редове в определен период от време.
Тъй като анализът става все по-важен за крайните потребители, функциите на прозореца предоставят нов начин за писане на оптимизирани за производителността аналитични SQL заявки, които са лесни за четене и поддръжка и елиминират необходимостта от писане на скъпи подзаявки и самообединяване.
Общи таблични изрази
Йерархичните и рекурсивните заявки обикновено се изпълняват с помощта на общи таблични изрази (CTE). Те са подобни на извлечените таблици в клауза FROM, но като има ключова дума за идентификация WITH, оптимизаторът може да създаде по-ефективни планове за заявки. Действайки като автоматично създаден временен и наименуван резултатен набор, който е валиден само за времето на заявката, той може да се използва за рекурсивно и йерархично изпълнение и също така позволява повторно използване на временния набор от данни. Наличието на специален метод също помага за създаване на по-изразителен и по-чист SQL код.
JSON функции
JSON (JavaScript Object Notation), текстово базиран и независим от платформа формат за обмен на данни, се използва не само за обмен на данни, но и като формат за съхранение на неструктурирани данни. MariaDB Server 10.2 предлага повече от 24 JSON функции, които позволяват заявки, модифициране, валидиране и индексиране на JSON форматирани данни, които се съхраняват в текстово поле на база данни. В резултат на това мощният релационен модел на MariaDB може да бъде обогатен чрез работа с неструктурирани данни, където е необходимо.
Чрез използването на виртуални колони, функцията JSON, JSON_VALUE и най-новата функция за индексиране на MariaDB Server 10.2 за виртуални колони, стойностите на JSON ще бъдат автоматично извлечени от JSON низа, съхранени във виртуална колона и индексирани, осигурявайки най-бързия достъп до JSON низ.
Използвайки функцията JSON JSON_VALID, новите ПРОВЕРКИ ОГРАНИЧЕНИЯ в MariaDB Server 10.2 гарантират, че само JSON низове от правилния JSON формат могат да бъдат добавени в поле.
Отвръщане на базата на двоичен журнал
Усъвършенстваната помощна програма mysqlbinlog, доставена с MariaDB Server 10.2, включва нова функция за връщане назад към момента, която позволява на база данни или таблица да се върне към по-ранно състояние и доставя базирано на двоичен дневник връщане назад на вече заети данни. Инструментът mysqlbinlog не променя директно никакви данни, той генерира „файл за експортиране“, включващ върнатите изявления на транзакциите, регистрирани в двоичен регистрационен файл. Създаденият файл може да се използва с клиента на командния ред или друг инструмент за SQL за изпълнение на включените SQL изрази. По този начин всички ангажирани транзакции до дадена времева марка ще бъдат върнати назад.
В случай на адресиране на логически грешки като добавяне, промяна или изтриване на данни, досега единственият възможен начин беше да се използва mysqlbinlog за преглед на транзакции и ръчно отстраняване на проблемите. Това обаче често води до несъответствие на данните, тъй като корекциите обикновено адресират само грешното твърдение, като по този начин игнорират други зависимости от данни.
Обикновено причинено от DBA или потребителска грешка, възстановяването на огромна база данни може да доведе до значително прекъсване на услугата. Отмяната на последните транзакции с помощта на връщане назад към момента отнема само времето на извлечението, кратък преглед и изпълнение на върнатите транзакции – спестявайки ценно време, ресурси и услуга.
Защо MariaDB?
С няколко MySQL опции за избор, защо да изберете MariaDB като технология за захранване на вашето приложение? Ето някои от предимствата при избора на MariaDB...
- MariaDB е изградена върху модерна архитектура, която е разширяема на всеки слой:клиент, клъстер, ядро и хранилище. Тази разширяемост осигурява две основни предимства. Той позволява непрекъснати иновации в общността чрез плъгини и улеснява клиентите да конфигурират MariaDB да поддържа голямо разнообразие от случаи на употреба от OLTP до OLAP.
- MariaDB разработва функции и подобрения, които са част от собствената му пътна карта, независимо от Oracle/MySQL. Това позволява на MariaDB да приема и привлича по-широки иновации в общността, както и да добавя вътрешно разработени нови функции, които улесняват мигрирането от собствени системи към MariaDB с отворен код.
- MariaDB е проектирана да защитава базата данни на всеки слой, което я прави надеждна база данни с общо предназначение, използвана в индустрии като правителството и банкирането, които изискват функции за сигурност от най-високо ниво.
- MariaDB предлага поддръжка за различни машини за съхранение, включително поддръжка на NoSQL, като дава на потребителите си няколко възможности за избор, за да определят коя ще работи най-добре с тяхната среда.
- MariaDB е внедрила много подобрения за подобряване на производителността, включително оптимизации на заявки, които в няколко сравнителни теста позволяват на MariaDB да се представя с 3-5% по-добре от подобно конфигурирана среда на MySQL.
ClusterControl за MariaDB
ClusterControl осигурява поддръжка за всяка от най-добрите технологии на MariaDB...
- Сървър MariaDB: MariaDB Server е база данни с общо предназначение, проектирана с разширяема архитектура, за да поддържа широк набор от случаи на използване чрез плъзгащи се двигатели за съхранение – като InnoDB, MyRocks и Spider.
- Вградена асинхронна главна/подчинена репликация
- Динамични колони, които позволяват на различни редове да съхраняват различни данни в една и съща колона
- Вградено криптиране
- Оптимизация на заявки
- Подобрена съвместимост на схемата
- Клъстер MariaDB: MariaDB Cluster е създаден за днешните облачни среди. Той е напълно мащабируем за четене-запис, идва със синхронна репликация, позволява топологии с няколко главни и гарантира липса на забавяне или загубени транзакции.
- Синхронна репликация без подчинено забавяне или загубени транзакции
- Многоглавна топология активен-активен
- Четете и пишете на всеки възел на клъстер
- Автоматичен контрол на членството, с отпаднали възли от клъстера
- Автоматично присъединяване на възли
- Истинска паралелна репликация на ниво ред
- Директни клиентски връзки, естествен вид и усещане за MariaDB
- Мащабируемост както за четене, така и за запис
- MariaDB MaxScale: MariaDB MaxScale е прокси сървър на база данни, който разширява високата наличност, мащабируемост и сигурност на MariaDB Server, като в същото време опростява разработването на приложения, като го отделя от основната инфраструктура на базата данни.
- Включва защитна стена на базата данни и защита от DoS
- Разделяне на четене-запис
- Маскиране на данни
- Шардиране, базирано на схема
- Кеширане на заявки