Co to jest warstwa dostępu do danych?
Warstwa dostępu do danych (DAL) to określona część każdego programu komputerowego, która ułatwia dostęp między programem a dowolnym rodzajem trwałego przechowywania. Programy to dowolne aplikacje działające na komputerze; Pamięć trwała odnosi się do dowolnej stałej lokalizacji do przechowywania na komputerze, takiej jak dyski twarde. Podczas działania programy stale zapisują i odczytują informacje na dysk twardy i z niego. Funkcją warstwy dostępu do danych jest zapewnienie, że każdy program działający w systemie jest w stanie uzyskać potrzebne informacje, gdy tylko będą ich potrzebować.
Podobnie jak pośrednik lub dostawca w relacjach biznesowych, warstwa dostępu do danych stoi między programem a urządzeniem pamięci masowej. Każdy program działający na komputerze, który musi uzyskać dostęp do informacji na dysku twardym, ma działające warstwy dostępu do danych. Zamiast głównej części programu komunikującej się bezpośrednio z trwałym miejscem przechowywania, przekazuje odpowiedzialność warstwie dostępu do danych, która następnie wykonuje zadania w imieniu programu. Jego jedynym „zadaniem” jest tasowanie informacji w tę iz powrotem, uwalniając resztę programu, aby wypełnić inne obowiązki.
Typowy przykład funkcjonującej warstwy dostępu do danych dotyczy programu wymagającego działania informacji zewnętrznych; innymi słowy, informacje, których program nie posiada intuicyjnie. Na przykład, jeśli program próbuje obliczyć zmiany marży zysku firmy w ciągu ostatnich 10 lat, informacje te prawdopodobnie nie będą istnieć w ramach rzeczywistego programu. Będzie jednak istniał w bazie danych finansowych firmy. Ponieważ program zdaje sobie sprawę, że wymaga „sprawozdania finansowego X” lub „raportu o zarobkach Y”, informuje warstwę dostępu do danych, aby znaleźć te informacje. Warstwa dostępu do danych następnie wysysa niezbędne informacje z odpowiedniej bazy danych lub tabeli, zwracając je do programu, aby mógł kontynuować działanie.
Niektóre programy korzystające z warstwy dostępu do danych zależą od bazy danych; oznacza to, że zostały zaprojektowane do pracy z jednym konkretnym typem bazy danych, co ogranicza ich możliwości przenoszenia. Inne są niezależne od bazy danych, zapewniając możliwość działania z szerszym zakresem oprogramowania bazodanowego. Chociaż może się wydawać, że zależne programy warstwy dostępu do danych są mniej przydatne, niekoniecznie tak jest. Ponieważ są zaprogramowane do pracy z jednym rodzajem bazy danych, prawdopodobnie zostaną zoptymalizowane bardziej wydajnie, zapewniając wyższą wydajność podczas pracy z zamierzonym typem systemu baz danych.