Jak połączyć dwa światy w #sqlserver ?

W ostatnich wpisach pisałem m.in. o Azure SQL Data Warehouse oraz Azure Analysis Services. Obie usługi oferowane w ramach platformy Azure idealnie pasują do koncepcji budowy rozwiązania analityczno-raportowego,  opartego o koncepcję hurtowni danych i dodatkowej warstwy w postaci modelu danych, zbudowanego w oparciu o usługi analityczne. Koncepcja budowy hurtowni danych i baz danych OLAP (OnLine Analytical Processing) ma już swoją historię, a ich implementacja pozwala na budowę wydajnych rozwiązań raportowych. Jednak obok koncepcji hurtowni danych i baz danych OLAP, w 2014 roku pojawiła się nowa koncepcja budowy rozwiązań umożliwiających efektywną analizę danych, przy jednoczesnym wykorzystaniu bazy na potrzeby przetwarzania transakcyjnego(OLTP)….

Co to jest HTAP ?

Akronim HTAP pojawił się w raporcie firmy Gartner jako określenie nowego podejścia do budowy rozwiązań łączących w sobie cechy systemy/bazy OLTP oraz OLAP. Dzięki wykorzystaniu nowych możliwości technologicznych w obszarze baz danych Hybrid Transaction Analytical Processing w swoich głównych założeniach wyróżnia i adresuje:

  • brak opóźnienia w dostępie do danych, ze względu na wykonywanie analiz bezpośrednio na systemach transakcyjnych
  • efektywność zapytań analitycznych i brak ich negatywnego wpływu na wydajność przetwarzania transakcyjnego
  • wyeliminowanie konieczności duplikowania danych na potrzeby analiz

W jaki sposób obecne bazy danych realizuję założenia koncepcji HTAP ?

Odpowiedzią na to pytanie są wspomniane już technologie in-memory, nowe możliwości w zakresie budowy indeksów – aktualizowalne indeksy kolumnowe zakładane na tabelach, w tym tabelach in-memory, ale także umiejętność połączenia danych nie tylko w ramach konkretnego systemu, ale również wzbogacenia ich o źródła BigData

W przypadku SQL Server koncepcja HTAP zaczęła być powoli realizowana od wersji 2016, w której po raz pierwszy pojawiła się możliwość łączenia klasycznych indeksów(b-tree) z indeksami kolumnowymi, w tym również dla obiektów in-memory

 

One Reply to “Jak połączyć dwa światy w #sqlserver ?”

Comments are closed.