Scroll to top
en pl

DBmaestro – czym jest i jakie są jego możliwości?


Radoslaw Kosiec - 7 listopada 2017 - 0 comments

Już od dłuższego czasu deweloperzy korzystają z repozytoriów kodu źródłowego. Repozytoria te pozwalają na śledzenie historii zmian, ułatwiają zespołowi rozwój, oferują mechanizm do odkrywania scenariuszy  oraz wiele innych korzyści. Z drugiej strony, aktualizacje i modyfikacje projektów baz danych nie mogą korzystać z tego typu funkcjonalności. Niedawno zapoznałem się z pakietem produktów DBmaestro, które koncentrują się na tym, aby możliwości zarządzania zmianami w bazach danych były równie szerokie jak w przypadku zarządzania kodem źródłowym.

O DBMAESTRO

DBmaestro to prywatna firma z siedzibą w Houston w stanie Teksas. Sami siebie określają jako „DevOps dla baz danych”. Ich produkty wspierają bazy danych Microsoft SQL Server i Oracle. Zespół DBmaestro w 2008 roku wprowadził na rynek swój flagowy produkt – TeamWork, którego zadaniem jest zapewnianie ciągłej integracji baz danych. Wśród klientów firmy znajdują się m.in.: Aetna, Cricket, Nextera Energy, TravelClick i Xerox.

FUNKCJE I ZALETY

DBmaestro oferuje trzy plany licencyjne (Standard, Professional i Enterprise). Każdy z nich dostarcza następujące funkcje:

    • Wymuszony system kontroli wersji – raz zainstalowany produkt nie pozwala na pojawienie się zmian w bazie danych bez użycia narzędzia DBmaestro. Obejmuje to również wykonywanie poleceń SQL w wierszu poleceń.
    • Silnik analizy wpływu i wdrażania zmian – zapewnia możliwość wdrażania zmian przechowywanych w produkcie DBmaestro oraz analizuje wpływ wprowadzanych zmian.
    • Integracja z IDE – aktualizacje baz danych są przeprowadzane za pomocą pluginów do Microsoft VisualStudio lub Oracle SQLDeveloper.

DBmaestro jest integralne także z JIRA firmy Atlassian, ClearQuest i Rational Team Concert firmy IBM, Perforce i Team Foundation Server firmy Microsoft. Pozwala to na aktualizację baz danych w ticketach danego systemu.

Wersja Professional dodaje funkcje raportowania, API i wykonywania z poziomu interfejsu wiersza poleceń oraz integracji zarządzania zadaniami. Licencja Enterprise daje ponadto możliwość niestandardowej integracji zarządzania zadaniami, ulepszonego uwierzytelniania oraz dostarcza builder dla continuous delivery, menedżera autoryzacji TeamWork.

W demo produktu zmiany z dwóch różnych gałęzi zostały scalone w środowisko integracyjne, które obsługiwało zarówno zmiany w projekcie bazy danych, jak i zmiany w zarządzanych treściach. W ramach przykładu obserwowałem w jaki sposób zostały wprowadzone i rozwiązane konflikty, co wydawało się dobrym odzwierciedleniem rzeczywistych konfliktów, z którymi na co dzień stykają się zespoły programistyczne. Zmiany te zostały zintegrowane za pomocą systemu Jenkins, ale alternatywne produkty (takie jak Bamboo Atlassiana) poradziłyby sobie równie dobrze.

Narzędzie DBmaestro posiada również pewien rodzaj inteligencji. Rozważmy przykład, w którym indeks został ręcznie dodany bezpośrednio do produkcyjnej bazy danych w celu rozwiązania problemów z wydajnością, które nie występują w fazie rozwojowej. Domyślnie DBmaestro podczas procesu budowy zaalarmuje o tym indeksie, ponieważ baza danych zawiera coś, co nie zostało wprowadzone za pomocą kodu produkcyjnego. Jednak w tym przypadku indeks bazy danych nie zostanie usunięty, dzięki czemu problem z wydajnością nie powróci.

WYZWANIA I KONKURENCJA

Największym wyzwaniem, z którym musi zmierzyć się DBmaestro jest działalność w relatywnie nowej przestrzeni. Firmy badawcze, takie jak Gartner i Forrester, nie przeprowadzają analiz dla systemów kontroli wersji zorientowanych na bazy danych. W rezultacie świadomość odbiorców produktów DBmaestro prawdopodobnie będzie niewielka, dopóki działania marketingowe firmy nie uświadomią zainteresowanym istnienia takich rozwiązań.

Kolejnym problemem jest brak wsparcia dla innych dostawców baz danych. Obecnie DBmaestro wspiera Microsoft SQL Server i Oracle. Miejmy nadzieję, że wkrótce będzie także wspierać IBM DB2, PostgreSQL i MySQL. Kwestią do rozważenia pozostaje również potrzeba obsługi innych baz danych, takich jak MongoDB, Apache Cassandra i Redis.

Przegląd rynku pokazuje, że DBmaestro naprawdę nie ma sobie równych. Na chwilę obecną najpoważniejszym konkurentem dla systemu DBmaestro jest pakiet produktów RedGate, chociaż można znaleźć w nim pewne niedociągnięcia.

PODSUMOWANIE

DBmaestro włożyło sporo wysiłku, aby wypełnić pustkę wśród systemów kontroli wersji dla baz danych. Obecnie produkt wspiera tylko takie bazy danych jak Oracle i Microsoft SQL Server, jednakże decyzja, aby zacząć od dwóch liderów na rynku i ewentualnie z czasem się rozwijać jest całkowicie zrozumiała.

Autorem tekstu jest John Vester.

Źródło oryginalnego tekstu: dzone.com

Related posts