Michał Olber (MO): Sean czy mógłbyś przedstawić nam siebie, a także jaką rolę pełnisz w EnterpriseDB (EDB)?
Sean Doherty (SD): Jestem odpowiedzialny za globalny rozwój biznesu i sprzedaż międzynarodową w EDB. Z oprogramowaniem open source pracuję od 10 lat (przed EDB pracowałem na kilku stanowiskach w Red Hat – zajmując się polityką międzynarodową firmy; w Dellu nadzorowałem pracę grupy finansowej, a także zespół handlowców na wschodnim wybrzeżu Stanów zjednoczonych i Kanady).

MO: Czy mógłbyś opisać czym zajmuje się EDB i w jakich projektach bierze udział?
SD: EDB jest komercyjną firmą zajmującą się Postgresem. Jesteśmy główną komercyjną firmą, która udziela wsparcia i rozwija projekt bazy danych PostgreSQL. Jesteśmy także jedyną firmą, dającą globalne wsparcie a także posiadającą certyfikowany system wdrożeń bazy danych PostgreSQL. Dodajemy nowe funkcjonalności wychodzące poza ramy open sourcowego PostgreSQL w 4 aspektach: wydajności, bezpieczeństwa, narzędzi i kompatybilności z Oracle. Przez ponad 8 lat działalności w tej branży uzyskaliśmy ponad 2500 klientów na całym świecie. EDB poprzez silną współpracę z Linux Polska oferuje produkty, szkolenia, a także profesjonalne usługi.

MO: Czy możesz z grubsza opisać sposób rozwoju PostgreSQL w EDB?
SD: Bardziej szczegółowo na to pytanie odpowiedziałem w jednym z następnych pytań, aczkolwiek pokrótce rozwój w EDB jest w następujący:

  1. Skupiamy się na komercyjnej adaptacji PostgreSQL. W tym celu współpracujemy z naszymi klientami, aby określić cechy i funkcje, które wydają się być dla nich najbardziej istotne.
  2. Następnie rozwijać te cechy w Postgres Plus Advanced Server. W przeważającej części, naszym następnym krokiem będzie przeniesienie takich samych modyfikacji i udostępnienie ich do społeczności PostgreSQL.
  3. Również wykorzystujemy i ulepszamy funkcjonalności społecznościowe, które wejdą do projektu PostgreSQL.

Tak więc, proces rozwoju ma w naszym przypadku charakter cykliczny.

MO: Jak bardzo wspomagacie PostgreSQL?
SD: EDB jest głęboko zaangażowany i oddany społeczności PostgreSQL mając na celu ciągłe doskonalenie i rozwijanie PostgreSQL, a także promowanie jego oraz produktów pokrewnych na całym świecie.

EDB udziela się w społeczności PostgreSQL na wiele sposobów:

  • utrzymanie PostgreSQL.org
  • rozwijanie wielu funkcji PostgreSQL:
    • Materialized Views
    • MySQL i Redis Foreign Data Wrappers dla SQL/MED
    • Index-Only Scans
    • Usprawnienia skalowalności dla serwerów z dużą ilością rdzeni
    • Serializable-Snapshot concurrency
    • pg_upgrade
    • Wyszukiwanie pełno tekstowe
    • Heap Only Tuples
  • Pomoc w rowoju projektów pokrewnych:
    • pgAdmin
    • pgPool
    • Postgres-XC
  • Zatrudnianie kluczowych członków społecznościowe
  • Tworzenie i hostowanie plików binarnych dla PostgreSQL
  • Tworzenie i hostowanie paczek instalacyjnych RPM dla PostgreSQL
  • Hostowanie części infrastruktury społecznościowej
  • Tworzenie StackBuilder i udostępnianie dodatków do PostgreSQL
  • Tworzenie dokumentacji (np. pgAdmin)
  • Tworzenie poradników
  • Tworzenie webinarów szkoleniowych (np. Tunning, Administracja, Replikacji i inne)
  • Sponsorowanie wydarzeń PostgreSQL (np. PG East, PG West, PG Europe, and PG Con)
  • Sponsorowanie wydarzeń lokalnych (np. PGDay NY and PgDay TR)
  • Tworzenie materiałów prasowych
  • Tworzenie i utrzymywanie ankiet społecznościowych
  • Rozwój i pozyskiwanie nowych partnerów
  • Hostowanie forów PostgreSQL i Postgres Plus
  • Odpowiadanie na listy użytkowników na listach mailingowych
  • Odpowiadanie na pytania, oraz udzielanie pomocy osobą rozwijającym nowe funkcjonalności
  • Testowanie nowych funkcjonalności w czasie trwania ich rozwoju
  • Współpraca z dostawcami sprzętu w celu zapewnienia poprawności działania, odpowiedniej wydajności i skalowalności na ich produktach

MO: Jak wielu deweloperów bierze udział w rozwoju PostgreSQL w EDB? Jak ta liczba zmieniała się w czasie?
SD: Na obecną chwilę EDB posiada 12 deweloperów, którzy aktywnie biorą udział w rozwoju PostgreSQL i/lub projektach pokrewnych. Liczba deweloperów na przekroju ostatnich lat nieustannie rośnie.

MO: Czy posiadacie jakichś deweloperów z Polski?
SD: Nie, w tej chwili nie posiadamy żadnego dewelopera z Polski

MO: Niedawno doszło do wielkiego sporu pomiędzy społecznością MySQL a Oracle, w efekcie czego powstała MariaDB. Jak ta sytuacja wpłynęła na PostgreSQL i jego społeczność? I jakie są Twoje przemyślenia na temat tego zajścia?
SD: Przejęcie MySQL i wynikający z tego podział wspólnoty MySQL tylko wzmocnił rozwój open sourcowego PostgreSQL. W przeciwieństwie do MySQL, nie ma sposobu aby jednej firmie udało się przejąć PostgreSQL, ponieważ jest to naprawdę otwarta społeczność deweloperów. To nie jest sytuacja, w której jedna firma posiada pełne prawa autorskie i wszystkie inne ograniczają się do warunków licencji GNU Public License. Każdy może dokonać zmian i poddać PostgreSQL redystrybucji. Ponadto, ponieważ przyszłość MySQL z Oracle jest niepewna, wielu użytkowników MySQL rozpoczęło migrację do PostgreSQL.

MO: Czy mógłbyś wskazać 3 najważniejsze funkcje, które są już dostępne w PostgreSQL?
SD: Czy stabilność jest funkcją? My powiedzielibyśmy, że jest. PostgreSQL jest funkcjonalny, ale co ważniejsze, jest solidną bazą danych, która okazała się podołać w krytycznych wdrożeniach, działając latami bez żadnych problemów.

Partycjonowanie – z biegiem czasu jest to coraz ważniejsza funkcja, gdyż wielkość baz danych ciągle rośnie, a co za tym idzie systemy zarządzania bazą danych mają coraz większe problemy w ich zarządzaniu. Dobra wiadomość jest taka, że w PostgreSQL ta funkcja jest bezpłatna, w odróżnieniu od innych baz danych dostępnych na rynku.

PostgreSQL Plus

Foreign servers – jednym z głównych problemów z punktu widzenia biznesu, jest to jak zintegrować wszystkie dane w swojej firmie, aby móc je analizować w celu podejmowania ważnych decyzji biznesowych. Konsolidacja, choć jest dobrym rozwiązaniem tego problemu, zabiera dużo czasu a przez to jest wysoce kosztowna. Wsparcie Foreign Server umożliwia powiązanie innych baz danych z PostgreSQL, a następnie uzyskać do nich dostęp za pośrednictwem instrukcji SQL, tak jakby dane zamieszkiwały lokalnie. To pozwala szybko i łatwo uzyskać dostęp do danych z rozproszonych, heterogenicznych źródeł danych za pośrednictwem jednego punktu centralnego.

Aktualnie istnieją następujące moduły integracji:

  • Bazy danych SQL takie jak Oracle, MySQL, SQL Server, Postgres, Informix lub dowolna kompatybilna z ODBC czy JDBC.
  • NoSQL takie jak CouchDB, Mongo, Redis, Neo4j i Tycoon
  • Pliki danych
  • Inne systemy takie jak: witter, LDAP, WWW

MO: Co sądzisz o społeczności PostgreSQL? Jak układa się współpraca między wami?
SD: Społeczność PostgreSQL jest zbiorem jednych z najbystrzejszych jak i najbardziej zmotywowanych osób, jakie kiedykolwiek spotkałem. Wiele osób pracuje nad projektem nie dla pieniędzy czy sławy, tylko ponieważ wierzy w ten projekt i ogólnie w ideę open source. Ta pasja przekłada się na rozwój niesamowitego projektu, gdzie inne firmy rywalizujące wydały miliardy na badania i rozwój … to jest naprawdę znaczący wyczyn!

EDB cieszy się bardzo dobrą relacją ze społecznością. Zdecydowanie jesteśmy postrzegani w pozytywny sposób, gdyż EDB oferuje zatrudnienie dla wielu programistów, jednocześnie pozwalając im kontynuować prace nad projektem społecznościowym w ramach swoich codziennych obowiązków. EDB jest sponsorem wielu wydarzeń społecznych i ewangelizuje wykorzystanie PostgreSQL. Część z naszych najlepszych inżynierów pracuje także nad projektem społecznościowym, dzięki czemu zapewniają jego dalsze odnoszenie sukcesów, co z kolei przekłada się na nasz sukces.

MO: Wiele firm stara się określić „kulturę firmy”. Czy jesteś w stanie powiedzieć czym jest kultura PostgreSQL z Twojego punktu widzenia? Czy się ona zmieniła, ewoluowała w jakimś stopniu?
SD: PostgreSQL jest rozwijany jako projekt open source od 1996 roku. W tych początkowych latach każdy pracował przy nim jako wolontariusz, przez co ciężko było nam rozwijać znaczące funkcjonalności i prowadzić dobry marketing. W ostatnich 5 latach wiele firm zatrudniło pełno etatowych pracowników rozwijających projekt oraz zapewniło fundusze na cele marketingowe. To znacznie poprawiło nie tylko oprogramowanie, ale postrzeganie PostgreSQL na rynku. Na szczęście, pomimo tych wszystkich ulepszeń, kultura społeczności pozostała skoncentrowana na technologii, dostarczając najlepszą możliwą bazę danych dla rynku. Zaangażowanie firmy tylko wzmocniła te cele, aniżeli miałaby je zmieniać.

MO: Czy występują w ostatnim czasie jakieś zmiany w społeczności PostgreSQL? Jeżeli tak, to jak byś je opisał?
SD: Społeczność PostgreSQL jest bardziej świadoma naszej pozycji na rynku i potencjału do wzrostu i konkurowania z istniejącymi technologiami bazodanowymi. Istnieje wiele rodzajów ofert pracy, które przyciągają nowych użytkowników i zwiększają zaufanie.

PostgreSQL Plus

MO: Czy istnieje jakakolwiek współpraca między EDB a Transaction Processing Performance Council (tpc.org)? Jeżeli tak co co sądzisz o ich testach? Czy mają oni jakikolwiek wpływ na PostgreSQL?
SD: Obecnie EDB nie prowadzi żadnych prac w odniesieniu do rady TPC. Jak wiesz, te testy zajmują dużo czasu i pieniędzy. Dla nas, o wiele lepszym rozwiązaniem jest przeznaczenie czasu i energii aby pomóc naszym klientom, testując ich własne aplikacje w celu osiągnięcia wydajności jaką oni oczekują… i takie podejście bardziej nam odpowiada.

Wielu klientów nadal pyta nas o wyniki w testach TPC, jako sposób porównania z innymi bazami danych, a dla niektórych brak tych wyników jest kwestią problematyczną. Jednak, gdy rozpoczynamy współpracę z takimi klientami i pozwalamy im porozmawiać z innymi naszymi klientami, a także przetestować nasze oprogramowanie, to tego typu wątpliwości są eliminowane.

MO: Co sądzisz o dzisiejszej technologii i jej rozwoju?
SD: Obecnie rozwój baz danych ukierunkowany jest na 3 główne cele:

  • Wymogi deweloperów
  • Rozwój i wdrożenia w chmurach
  • Nowe możliwości sprzętowe

NoSQL powstał z powodu chęci wdrożenia wydajnych baz danych wykorzystujących technologię oferowaną przez chmury. W szczególności, możliwość skalowania bazy danych na żądanie oraz na dużą liczbę węzłów. NoSQL to rewolucyjne podejście do problemów Enterprise Data. My jednak widzimy, że większość korporacyjnych aplikacji dalej wymaga integralności związanej z transakcyjnością, standardowego sposobu dostępu, oraz aby móc nadal wykorzystać mnóstwo technik i narzędzi sprawozdawczych, które istnieją dla relacyjnych bazy danych. Dlatego tradycyjne relacyjne bazy danych ewoluują aby móc skutecznie działać w chmurze. Postgres Plus Cloud Database jest dokładnie taką bazą danych. Pozwala ona użytkownikom na skalowanie na żądanie oraz szybko i łatwo stawiać nowe klastry bazy danych o wysokiej dostępności.

Możliwość szybkiego i łatwego tworzenia nowych platform rozwoju, jest trendem z którym muszą się zmierzyć dzisiejsze oddziały IT. Deweloperzy stawiają aplikacje w chmurach Amazona, Rackspace czy HP z coraz większą częstotliwością. Plusy związane z wzrostem produktywności są bardzo trudne do zignorowania. Z taką myślą powstała właśnie Postgres Plus Cloud Database. Dostosowaliśmy naszą ofertę, tak aby ułatwić przejście do dużych baz danych zarządzanych przez korporacyjne oddziały IT.

MO: Czy możesz porównać rozwój technologii i PostgreSQL na ten moment i w przyszłości? Czy jest jakieś powiązanie między nimi?
SD: Głównymi trendami w przestrzeni bazy danych są dziś Big Data, NoSQL i chmura. PostgreSQL wprowadził funkcjonalności, które pozwalają mu istnieć w przestrzeni Big Data i NoSQL jak wspomniałem wcześniej (JSON, zewnętrzne źródła danych, itp). EDB stworzył Postgres Plus Cloud, który pozwala na tworzenie pojedynczych instancji lub klastrów baz danych PostgreSQL i PostgreSQL Plus Advanced Server w chmurze, zachowując przy tym zgodność z technologią Oracle.

Klastry są stawiane w ciągu kilku minut z szybką replikacją binarną, automatycznym równoważeniem obciążenia odczytów, zoptymalizowaną pulą połączeń, auto-skalowaniem (na poziomie skali odczytów i składowania), zaplanowanymi kopiami zapasowymi i automatycznym mechanizmem failover. Natychmiast możesz czerpać korzyści z cloud computing dzięki narzędziom takim jak: pay-as-you-go, tworzenie kopii zapasowych w chmurze, elastyczne składowanie danych oraz możliwość skalowania chmury w górę lub w dół, aby spełnić Twoje potrzeby w przetwarzaniu danych bez zbędnych kosztów związanych ze sprzętem.

MO: W przyszłości, gdzie widzisz: siebie, PostgreSQL i EDB?
SD: PostgreSQL, jak i oparty o niego Postgres Plus Advanced Server znajdą się w bardzo wyjątkowej sytuacji w najbliższej, jak i dalszej przyszłości. Jak widzimy dzisiaj przodują trendy związane z Big Data i rozwiązaniami NoSQL. Nie ma jeszcze dla nich standardów, a ponieważ większość ludzi wywodzi się z tradycyjnych RDBMS, nie wiedzą nawet gdzie zacząć. PostgreSQL wprowadza coraz więcej i więcej funkcji do podstawy RDBMS, które sprowadzają te technologie pod jednym silnikiem. Wprowadzenie typu danych JSON, razem z typem XML i możliwościami związanymi z wartościami typu klucz-wartość pozwalają PostgreSQL być wykorzystywanym do wielu aplikacji typu NoSQL. Zatem ludzie nie będą musieli porzucić swoich istniejących baz danych PostgreSQL, aby przejść do tej przestrzeni. Zamiast tego, mogą oni uzyskać najlepsze ze wszystkich, z najbardziej zaawansowanych na świecie bazy danych open source! Więc możesz sobie wyobrazić, przyszłość jest jasna. Widzimy duże możliwości dla nas, aby przejąć obciążenia z kosztownych zastrzeżonych baz danych, i widzimy jeszcze większe możliwości rozwoju nowych aplikacji w fizycznych, wirtualnych oraz chmurowych środowiskach.

Myślę, że to wszystko na teraz Sean. Dziękujemy Ci bardzo za poświęcony czas.