Wymagania wobec systemów baz danych: Różnice pomiędzy wersjami
m (Infobox update) |
m (Pozycjonowanie) |
||
(Nie pokazano 7 wersji utworzonych przez 3 użytkowników) | |||
Linia 1: | Linia 1: | ||
'''Wymagania wobec systemów baz danych''' obejmują szereg elementów. Są one związane z redundancją, elastycznością, dostępnością, wydajnością i innymi czynnikami. Poniżej przedstawiono zestawienie kluczowych wymagań. | |||
==Wymagania podstawowe wobec systemów baz danych== | |||
# Kontrolowana redundancja - nadmiarowość danych wprowadzona celowo wtedy, gdy uzyskanie określonej informacji z podstawowego zbioru danych jest czasochłonne i skomplikowane. Poprawia ona czas dostępu do danych. W przypadku [[system]]ów informatycznych przyjmuje się, że czas odpowiedzi na zapytanie użytkownika nie powinien przekraczać 20 sekund. W przypadku, gdy musi on | # Kontrolowana [[redundancja]] - nadmiarowość danych wprowadzona celowo wtedy, gdy uzyskanie określonej informacji z podstawowego zbioru danych jest czasochłonne i skomplikowane. Poprawia ona czas dostępu do danych. W przypadku [[system]]ów informatycznych przyjmuje się, że czas odpowiedzi na zapytanie użytkownika nie powinien przekraczać 20 sekund. W przypadku, gdy musi on [[czek]]ać dłużej wywołuje to jego niezadowolenie i "narzekanie" na [[system informatyczny]]. Nowoczesne systemu analityczne i raportujące (np.: Oracle Discoverer) potrafią oszacować czas niezbędny na realizację zapytania i w przypadku, gdy jest on dłuższy od zakładanych 20 sekund ostrzegają użytkownika, lub też pytają o jego decyzję o wykonaniu operacji, rezygnacji lub wykonania w terminie późniejszym. | ||
# Elastyczność korzystania z bazy danych - uwzględniająca różnorodność [[użytkownik]]ów, zastosowań, podejść do analizy danych, potrzeb informacyjnych, sposobów wykorzystania. | # [[Elastyczność]] korzystania z bazy danych - uwzględniająca [[różnorodność]] [[użytkownik]]ów, zastosowań, podejść do analizy danych, potrzeb informacyjnych, sposobów wykorzystania. | ||
# Możliwość szybkiej pracy konwersacyjnej - mającej postać dialogu człowieka z komputerem. Człowiek zadaje pytania, zaś [[system informatyczny]] generuje odpowiedzi. | # Możliwość szybkiej pracy konwersacyjnej - mającej postać dialogu człowieka z komputerem. Człowiek zadaje pytania, zaś [[system informatyczny]] generuje odpowiedzi. | ||
# Łatwość rozbudowy - możliwość rozwijania bazy danych w sensie jej struktury i zawartości merytorycznej, bez konieczności zmiany sposobu jej wykorzystania. | # Łatwość rozbudowy - możliwość rozwijania bazy danych w sensie jej struktury i zawartości merytorycznej, bez konieczności zmiany sposobu jej wykorzystania. | ||
# Dostępność i wydajność - użytkownik powinien uzyskać każdą daną, która znajduje się w systemie odpowiednio szybko, o ile jest upoważniony do ich otrzymania, | # [[Dostępność]] i [[wydajność]] - użytkownik powinien uzyskać każdą daną, która znajduje się w systemie odpowiednio szybko, o ile jest upoważniony do ich otrzymania, | ||
# Tajność - osoby nieupoważnione nie mają dostępu do danych, | # Tajność - osoby nieupoważnione nie mają dostępu do danych, | ||
# Bezpieczeństwo - ochrona przed utratą, zniszczeniem z powodu awarii i katastrof, zabezpieczenie przed błędami człowieka, wandalizmem, itp. | # Bezpieczeństwo - ochrona przed utratą, zniszczeniem z powodu awarii i katastrof, [[zabezpieczenie]] przed błędami człowieka, wandalizmem, itp. | ||
# Fizyczna i logiczna niezależność danych - pozwalająca użytkownikowi na nieprzerwaną pracę, i brak konieczności zwracania uwagi na rodzaj zastosowanego rozwiązania sprzętowego i systemowego. | # Fizyczna i logiczna niezależność danych - pozwalająca użytkownikowi na nieprzerwaną pracę, i brak konieczności zwracania uwagi na rodzaj zastosowanego rozwiązania sprzętowego i systemowego. | ||
<google> | |||
==Wymagania dotyczące skalowalności systemów baz danych== | |||
1. Elastyczne dostosowywanie się do rosnącej liczby użytkowników i danych: | |||
* Możliwość obsługi większej liczby równoczesnych połączeń użytkowników. | |||
* Skalowanie poziome lub pionowe w zależności od potrzeb. | |||
* Automatyczne [[zarząd]]zanie zasobami w celu zapewnienia odpowiedniej wydajności. | |||
<google>n</google> | |||
2. Możliwość łatwej rozbudowy infrastruktury w celu zapewnienia odpowiedniej wydajności: | |||
* Elastyczność w dodawaniu nowych serwerów i węzłów w klastrze. | |||
* Możliwość dynamicznego przypisywania zasobów w zależności od obciążenia. | |||
* Automatyczne równoważenie obciążenia między różnymi komponentami systemu. | |||
3. [[Optymalizacja]] zasobów w celu efektywnego zarządzania skalowalnością systemu: | |||
* Możliwość monitorowania wykorzystania zasobów i skalowanie w oparciu o [[dane]] statystyczne. | |||
* Wykorzystanie technik kompresji danych w celu zmniejszenia zapotrzebowania na przestrzeń dyskową. | |||
* Możliwość automatycznego usuwania zbędnych danych w celu optymalizacji dostępu. | |||
4. [[Zarządzanie]] migracją danych przy rozbudowie systemu: | |||
* Możliwość przeniesienia danych między różnymi serwerami i węzłami. | |||
* Zapewnienie spójności danych podczas [[proces]]u migracji. | |||
* Możliwość automatycznego przenoszenia danych w tle, minimalizując przestoje w pracy systemu. | |||
5. Wsparcie dla rozproszonej architektury systemu baz danych: | |||
* Możliwość replikacji danych między różnymi lokalizacjami. | |||
* Mechanizmy synchronizacji danych w celu zapewnienia spójności. | |||
* Możliwość obsługi geograficznie rozproszonych użytkowników i danych. | |||
==Wymagania dotyczące zgodności z regulacjami prawnymi== | |||
1. Zapewnienie zgodności z obowiązującymi przepisami dotyczącymi ochrony danych (np. [[RODO]]): | |||
* Możliwość definiowania i implementacji odpowiednich polityk ochrony danych. | |||
* Mechanizmy kontroli dostępu i uwierzytelniania, które spełniają wymogi prawne. | |||
* Możliwość [[audyt]]owania dostępu i operacji na danych w celu spełnienia obowiązków raportowania. | |||
2. Możliwość śledzenia i audytowania dostępu do danych w celu spełnienia wymogów prawnych: | |||
* Zapewnienie pełnej historii dostępu i modyfikacji danych. | |||
* Możliwość generowania raportów audytowych i analizy zdarzeń. | |||
* Mechanizmy zabezpieczające przed modyfikacją lub usuwaniem zarejestrowanych informacji. | |||
3. Ochrona poufności i integralności danych zgodnie z przepisami prawnymi: | |||
* Mechanizmy szyfrowania danych w celu zapewnienia poufności. | |||
* Możliwość kontrolowania dostępu do danych na różnych poziomach. | |||
* Mechanizmy kontroli integralności danych, takie jak cyfrowe podpisy czy sumy kontrolne. | |||
4. Procedury zarządzania [[incydent]]ami i naruszeniami bezpieczeństwa danych: | |||
* Możliwość szybkiego reagowania na incydenty bezpieczeństwa. | |||
* Mechanizmy powiadamiania o naruszeniach danych. | |||
* Procedury odzyskiwania danych i przywracania systemu po naruszeniu. | |||
5. Wsparcie dla międzynarodowych przepisów dotyczących ochrony danych: | |||
* Możliwość obsługi przepisów dotyczących transferu danych między różnymi jurysdykcjami. | |||
* Mechanizmy kontroli i zabezpieczeń spełniające wymogi różnych krajów. | |||
* Możliwość dostosowania ustawień związanych z ochroną danych do lokalnych przepisów. | |||
==Wymagania dotyczące zarządzania transakcjami== | |||
1. Zapewnienie spójności danych i unikanie utraty informacji w przypadku awarii systemu: | |||
* Mechanizmy rollback i commit, które [[gwarant]]ują atomowość transakcji. | |||
* Możliwość przywracania stanu systemu do poprzedniego punktu w przypadku awarii. | |||
* [[Replikacja]] danych w celu zwiększenia odporności na awarie. | |||
2. Możliwość przeprowadzania transakcji z zachowaniem izolacji i trwałości: | |||
* Mechanizmy blokujące i [[kontrola]] równoczesnego dostępu do danych. | |||
* [[Transakcje]] w trybie izolacji, które zapewniają spójny widok danych dla różnych użytkowników. | |||
* [[Zapis]] transakcji na trwałe, aby uniknąć utraty danych w przypadku awarii systemu. | |||
3. Mechanizmy odzyskiwania danych w przypadku nieudanej transakcji lub awarii systemu: | |||
* Możliwość cofnięcia zmian dokonanych przez nieudaną transakcję. | |||
* Replikacja danych w celu zapewnienia dostępności w przypadku awarii systemu. | |||
* Możliwość przywrócenia danych do ostatniego poprawnego stanu przed awarią. | |||
4. Zarządzanie blokadami i [[konflikt]]ami w przypadku równoczesnego dostępu do danych: | |||
* Mechanizmy wykrywania i rozwiązywania konfliktów w dostępie do danych. | |||
* Optymalizacja równoczesnego dostępu poprzez minimalizację blokad. | |||
* Możliwość ustalania [[priorytet]]ów dostępu w przypadku konfliktów. | |||
5. Możliwość monitorowania i analizy wydajności transakcji: | |||
* Mechanizmy monitorowania czasu wykonania transakcji. | |||
* Analiza wydajności i optymalizacja zapytań w celu poprawy czasu odpowiedzi. | |||
* Możliwość generowania raportów i analizy statystyk dotyczących transakcji. | |||
{{infobox5|list1={{i5link|a=[[Aktualizacja oprogramowania]]}} — {{i5link|a=[[Informatyczne narzędzia wspomagania zarządzania]]}} — {{i5link|a=[[Big data]]}} — {{i5link|a=[[Hurtownia danych]]}} — {{i5link|a=[[System ekspercki]]}} — {{i5link|a=[[Systemy OLAP]]}} — {{i5link|a=[[Podatność informatyczna]]}} — {{i5link|a=[[ASP.NET]]}} — {{i5link|a=[[Systemy wspomagania decyzji]]}} }} | |||
==Bibliografia== | ==Bibliografia== | ||
* Woźniak K., '' | <noautolinks> | ||
* Woźniak K. (2005), ''System informacji menedżerskiej jako instrument zarządzania strategicznego w firmie'', praca doktorska, Akademia Ekonomiczna w Krakowie, Kraków | |||
</noautolinks> | |||
{{a|[[Krzysztof Woźniak]]}} | {{a|[[Krzysztof Woźniak]]}} | ||
[[Kategoria:Systemy informatyczne]] | [[Kategoria:Systemy informatyczne]] | ||
{{#metamaster:description|Wymagania dla systemów baz danych: redundancja, elastyczność, szybkość, łatwość rozbudowy. Kluczowe: dostępność, wydajność, tajność, bezpieczeństwo.}} |
Aktualna wersja na dzień 19:06, 18 lis 2023
Wymagania wobec systemów baz danych obejmują szereg elementów. Są one związane z redundancją, elastycznością, dostępnością, wydajnością i innymi czynnikami. Poniżej przedstawiono zestawienie kluczowych wymagań.
Wymagania podstawowe wobec systemów baz danych
- Kontrolowana redundancja - nadmiarowość danych wprowadzona celowo wtedy, gdy uzyskanie określonej informacji z podstawowego zbioru danych jest czasochłonne i skomplikowane. Poprawia ona czas dostępu do danych. W przypadku systemów informatycznych przyjmuje się, że czas odpowiedzi na zapytanie użytkownika nie powinien przekraczać 20 sekund. W przypadku, gdy musi on czekać dłużej wywołuje to jego niezadowolenie i "narzekanie" na system informatyczny. Nowoczesne systemu analityczne i raportujące (np.: Oracle Discoverer) potrafią oszacować czas niezbędny na realizację zapytania i w przypadku, gdy jest on dłuższy od zakładanych 20 sekund ostrzegają użytkownika, lub też pytają o jego decyzję o wykonaniu operacji, rezygnacji lub wykonania w terminie późniejszym.
- Elastyczność korzystania z bazy danych - uwzględniająca różnorodność użytkowników, zastosowań, podejść do analizy danych, potrzeb informacyjnych, sposobów wykorzystania.
- Możliwość szybkiej pracy konwersacyjnej - mającej postać dialogu człowieka z komputerem. Człowiek zadaje pytania, zaś system informatyczny generuje odpowiedzi.
- Łatwość rozbudowy - możliwość rozwijania bazy danych w sensie jej struktury i zawartości merytorycznej, bez konieczności zmiany sposobu jej wykorzystania.
- Dostępność i wydajność - użytkownik powinien uzyskać każdą daną, która znajduje się w systemie odpowiednio szybko, o ile jest upoważniony do ich otrzymania,
- Tajność - osoby nieupoważnione nie mają dostępu do danych,
- Bezpieczeństwo - ochrona przed utratą, zniszczeniem z powodu awarii i katastrof, zabezpieczenie przed błędami człowieka, wandalizmem, itp.
- Fizyczna i logiczna niezależność danych - pozwalająca użytkownikowi na nieprzerwaną pracę, i brak konieczności zwracania uwagi na rodzaj zastosowanego rozwiązania sprzętowego i systemowego.
Wymagania dotyczące skalowalności systemów baz danych
1. Elastyczne dostosowywanie się do rosnącej liczby użytkowników i danych:
- Możliwość obsługi większej liczby równoczesnych połączeń użytkowników.
- Skalowanie poziome lub pionowe w zależności od potrzeb.
- Automatyczne zarządzanie zasobami w celu zapewnienia odpowiedniej wydajności.
2. Możliwość łatwej rozbudowy infrastruktury w celu zapewnienia odpowiedniej wydajności:
- Elastyczność w dodawaniu nowych serwerów i węzłów w klastrze.
- Możliwość dynamicznego przypisywania zasobów w zależności od obciążenia.
- Automatyczne równoważenie obciążenia między różnymi komponentami systemu.
3. Optymalizacja zasobów w celu efektywnego zarządzania skalowalnością systemu:
- Możliwość monitorowania wykorzystania zasobów i skalowanie w oparciu o dane statystyczne.
- Wykorzystanie technik kompresji danych w celu zmniejszenia zapotrzebowania na przestrzeń dyskową.
- Możliwość automatycznego usuwania zbędnych danych w celu optymalizacji dostępu.
4. Zarządzanie migracją danych przy rozbudowie systemu:
- Możliwość przeniesienia danych między różnymi serwerami i węzłami.
- Zapewnienie spójności danych podczas procesu migracji.
- Możliwość automatycznego przenoszenia danych w tle, minimalizując przestoje w pracy systemu.
5. Wsparcie dla rozproszonej architektury systemu baz danych:
- Możliwość replikacji danych między różnymi lokalizacjami.
- Mechanizmy synchronizacji danych w celu zapewnienia spójności.
- Możliwość obsługi geograficznie rozproszonych użytkowników i danych.
Wymagania dotyczące zgodności z regulacjami prawnymi
1. Zapewnienie zgodności z obowiązującymi przepisami dotyczącymi ochrony danych (np. RODO):
- Możliwość definiowania i implementacji odpowiednich polityk ochrony danych.
- Mechanizmy kontroli dostępu i uwierzytelniania, które spełniają wymogi prawne.
- Możliwość audytowania dostępu i operacji na danych w celu spełnienia obowiązków raportowania.
2. Możliwość śledzenia i audytowania dostępu do danych w celu spełnienia wymogów prawnych:
- Zapewnienie pełnej historii dostępu i modyfikacji danych.
- Możliwość generowania raportów audytowych i analizy zdarzeń.
- Mechanizmy zabezpieczające przed modyfikacją lub usuwaniem zarejestrowanych informacji.
3. Ochrona poufności i integralności danych zgodnie z przepisami prawnymi:
- Mechanizmy szyfrowania danych w celu zapewnienia poufności.
- Możliwość kontrolowania dostępu do danych na różnych poziomach.
- Mechanizmy kontroli integralności danych, takie jak cyfrowe podpisy czy sumy kontrolne.
4. Procedury zarządzania incydentami i naruszeniami bezpieczeństwa danych:
- Możliwość szybkiego reagowania na incydenty bezpieczeństwa.
- Mechanizmy powiadamiania o naruszeniach danych.
- Procedury odzyskiwania danych i przywracania systemu po naruszeniu.
5. Wsparcie dla międzynarodowych przepisów dotyczących ochrony danych:
- Możliwość obsługi przepisów dotyczących transferu danych między różnymi jurysdykcjami.
- Mechanizmy kontroli i zabezpieczeń spełniające wymogi różnych krajów.
- Możliwość dostosowania ustawień związanych z ochroną danych do lokalnych przepisów.
Wymagania dotyczące zarządzania transakcjami
1. Zapewnienie spójności danych i unikanie utraty informacji w przypadku awarii systemu:
- Mechanizmy rollback i commit, które gwarantują atomowość transakcji.
- Możliwość przywracania stanu systemu do poprzedniego punktu w przypadku awarii.
- Replikacja danych w celu zwiększenia odporności na awarie.
2. Możliwość przeprowadzania transakcji z zachowaniem izolacji i trwałości:
- Mechanizmy blokujące i kontrola równoczesnego dostępu do danych.
- Transakcje w trybie izolacji, które zapewniają spójny widok danych dla różnych użytkowników.
- Zapis transakcji na trwałe, aby uniknąć utraty danych w przypadku awarii systemu.
3. Mechanizmy odzyskiwania danych w przypadku nieudanej transakcji lub awarii systemu:
- Możliwość cofnięcia zmian dokonanych przez nieudaną transakcję.
- Replikacja danych w celu zapewnienia dostępności w przypadku awarii systemu.
- Możliwość przywrócenia danych do ostatniego poprawnego stanu przed awarią.
4. Zarządzanie blokadami i konfliktami w przypadku równoczesnego dostępu do danych:
- Mechanizmy wykrywania i rozwiązywania konfliktów w dostępie do danych.
- Optymalizacja równoczesnego dostępu poprzez minimalizację blokad.
- Możliwość ustalania priorytetów dostępu w przypadku konfliktów.
5. Możliwość monitorowania i analizy wydajności transakcji:
- Mechanizmy monitorowania czasu wykonania transakcji.
- Analiza wydajności i optymalizacja zapytań w celu poprawy czasu odpowiedzi.
- Możliwość generowania raportów i analizy statystyk dotyczących transakcji.
Wymagania wobec systemów baz danych — artykuły polecane |
Aktualizacja oprogramowania — Informatyczne narzędzia wspomagania zarządzania — Big data — Hurtownia danych — System ekspercki — Systemy OLAP — Podatność informatyczna — ASP.NET — Systemy wspomagania decyzji |
Bibliografia
- Woźniak K. (2005), System informacji menedżerskiej jako instrument zarządzania strategicznego w firmie, praca doktorska, Akademia Ekonomiczna w Krakowie, Kraków
Autor: Krzysztof Woźniak