Baza danych MS SQL Server w parze z PHP: pełne zestawienie [2021]

kursphp.com 3 lat temu

Znasz bazy danych Microsoft SQL Server?

Temat relacyjnych baz danych ciągnie się niemal od początku nauki programowania w PHP.

Gdy tylko opanujesz podstawowe instrukcje, przychodzi moment na podpięcie się do bazy danych i trzymanie w niej ustrukturyzowanych danych.

Są różne rodzaje baz danych. Najważniejszym podziałem jest rozróżnienie na bazy relacyjne i nie-relacyjne. Nie-relacyjne to tzw. bazy NoSQL, zwane również dokumentowymi lub obiektowymi.

Gdzie wpasowuje się system bazodanowy Microsoftu?

Baza MS SQL Server

SQL Server to system zarządzania relacyjnymi bazami danych (RDBMS) opracowany i sprzedawany przez firmę Microsoft. Podobnie jak inne oprogramowanie RDBMS, SQL Server jest oparty na SQL, standardowym języku programowania do interakcji z relacyjnymi bazami danych.

Wykorzystuje do swego działania Transact-SQL (zwanym również T-SQL), własną implementację SQL w wykonaniu Microsoftu. Dzięki temu masz zestaw zastrzeżonych konstrukcji programistycznych, które ogromnie usprawniają operowanie na danych i tworzenie własnych widoków, funkcji i procedur wbudowanych.

SQL Server działał wyłącznie w środowisku Windows przez ponad 20 lat. W 2016 roku Microsoft udostępnił go w systemie Linux. Wersja 2017 stał się ogólnie dostępny w październiku 2016 r. I działał zarówno w systemie Windows, jak i Linux.

Pod spodem baza danych SQL

Podstawowym składnikiem tego systemu jest aparat relacyjnej bazy danych SQL.

Aparat baz danych składa się z silnika relacyjnego, który przetwarza kwerendy oraz aparatu magazynującego, który zarządza plikami bazy danych, stronami, stronami, indeksem itp.

Obiekty typowe dla bazy, takie jak procedury składowane, widoki i triggery (po polsku, wyzwalacze), są również tworzone i wykonywane przez aparat bazy danych.

Silnik relacyjny zawiera komponenty, które określają najlepszy sposób wykonania zapytania. Silnik relacyjny jest również nazywany procesorem zapytań, żądającym danych od silnika pamięci masowej.

Niektóre zadania silnika relacyjnego obejmują przetwarzanie zapytań, zarządzanie pamięcią, zarządzanie wątkami i zadaniami, zarządzanie buforami i rozproszone przetwarzanie zapytań.

Silnik pamięci masowej

Silnik pamięci masowej odpowiada za przechowywanie i odzyskiwanie danych z systemów pamięci masowej, takich jak dyski i sieci SAN.

Czym jest SQLOS?

Pod silnikiem relacyjnym i silnikiem pamięci masowej znajduje się system operacyjny SQL Server lub SQLOS. SQLOS zapewnia wiele usług systemu operacyjnego, takich jak zarządzanie pamięcią i urządzeniami wejścia/wyjścia.

Inne usługi obejmują obsługę wyjątków i usługi synchronizacji.

Microsoft udostępnia narzędzia i usługi do zarządzania danymi oraz analizy biznesowej (BI) wraz ze swoją bazą danych. W zakresie zarządzania danymi znajdziesz takie usługi, jak SQL Server Integration Services (SSIS), SQL Server Data Quality Services i SQL Server Master Data Services.

Do tworzenia baz danych masz w pakiecie SQL Server Data oraz do zarządzania, wdrażania i monitorowania baz danych możesz darmowo pobrać i korzystać z SQL Server Management Studio (SSMS).

Do analizy danych służą usługi SQL Server Analysis Services (SSAS). Usługi SQL Server Reporting Services (SSRS) zapewniają raporty i wizualizację danych. Technologia Machine Learning Services pojawiła się jako pierwsza w SQL Server 2016, której nazwa została zmieniona z R Services.

Wersje SQL Servera

SQL Server ma cztery podstawowe edycje, które oferują różne powiązane usługi i narzędzia oraz są dostępne w różnych wariantach cenowych. Bezpłatne edycje to:

  • Edycja Developer do użytku podczas developmentu (tworzenia i testowaniu baz danych).
  • SQL Server Express Edition dla małych baz danych o rozmiarze do 10 GB miejsca na dysku. Tutaj możesz śmiało korzystać choćby do zastosowań komercyjnych.

W przypadku większych i bardziej krytycznych aplikacji możesz wybrać wersję Enterprise, która zawiera wszystkie funkcje serwera SQL. Jest to jednak najdroższe rozwiązanie.

Jednak takim typowym produktem dla większości dużych aplikacji komercyjnych jestSQL Server Standard Edition. Zawiera częściowe zestawy funkcji wersji Enterprise Edition oraz posiada ograniczenia dotyczące liczby rdzeni procesora i pamięci, które można skonfigurować.

Który pakiet wybrać do pracy z PHP?

W świecie PHP przyzwyczailiśmy się do tego, iż narzędzia są darmowe lub mega tanie. Do tego większość z nich jest dystrybuowana na zasadzie licencji Open Source, czyli z otwartym kodem źródłowym.

W przypadku MSSQL Servera również mamy do dyspozycji wariant darmowy, który wystarcza dla 98% wszystkich aplikacji tworzonych w PHP. Rzadko kiedy dane Twojej aplikacji urosną więcej niż limit 10 GB.

Czy zatem warto z niego skorzystać?

Odpowiem: To zależy…

Jeśli masz wysokie umiejętności pisania skryptów T-SQL, potrafisz wykorzystać jego zalety i opierasz działanie aplikacji na skomplikowanych widokach SQLowych, to wykorzystanie SQL Servera będzie świetnym posunięciem.

Jednak większość aplikacji mało wykorzystuje potencjał baz danych. Najczęściej nie ma większego znaczenia, co jest pod spodem, bo i tak opakowujemy zapytania jakimś ORMem i sporo programistów dziś choćby nie zna SQLa. Bo jest mu to, po prostu, niepotrzebne.

Jeśli chcesz nauczyć się języka SQL, sprawdź ten darmowy kurs SQL.

Także, podsumowując, wybór zostawiam Tobie.

Narzędzie naprawdę imponujące. Warto chociaż się pobawić i ocenić samodzielnie.

Artykuł partnerski, powstał we współpracy z firmą Soft360 (https://soft360.pl/).

Idź do oryginalnego materiału