Najlepsza odpowiedź
OQ: Co to jest przykładowa baza danych temporalnych?
Czasowa baza danych jest podobna do przestrzennej bazy danych, z tą różnicą, że przestrzenna baza danych obsługuje typy danych, relacje i funkcje związane z przestrzenią, podczas gdy tymczasowa baza danych koncentruje się na tym samym, związanym z czasem. Aby powiedzieć, że typem danych w tymczasowej bazie danych może być „okres czasu”, a rozszerzeniem języka (z typowego SQL) mogą być funkcje takie jak within\_period, period\_ overlap, period\_exclusive itp. Klucz podstawowy w tymczasowej bazie danych może zmieniać się w czasie (musi być stały tylko w okresie czas, a nie „na zawsze i na zawsze”).
Możesz częściowo symulować tymczasową bazę danych w zwykłej relacyjnej bazie danych, mając wszystkie tabele rozszerzone o kolumny „data od” i „data do”, które określają od kiedy do kiedy podano rekord jest prawidłową informacją. Na przykład:
Mark, blondynka, 2000–03–21, 2048–12–11
Mark, łysy, 2048–12–12, 2048–12–23
Mark, peruka, 2048–12–24,…
Tymczasowa dbałość powinna pozwolić ci zrobić więcej. Na przykład powinieneś być w stanie łatwo określić unikalne ograniczenie dla okresu czasu w znaczeniu nieprzekroczonego okresu, który jest czymś więcej niż tylko UQ (fryzura, data od, data do).
Odpowiedź
Najpierw wyjaśnię trochę terminologii. System zarządzania bazą danych to oprogramowanie zaprojektowane do organizowania i zarządzania danymi w taki sposób, aby można je było łatwo przechowywać przez długi czas, wyszukiwać (wyszukiwać), odzyskiwać i modyfikować. Baza danych jest instancją tego magazynu. Analogicznie, system zarządzania bazą danych jest podobny do koncepcji katalogu kartotekowego, a baza danych jest jak określona szafka przechowująca karty w określonej bibliotece. Jednak ogólną koncepcję będę nazywać „bazami danych”, tak jak większość ludzi robi to w rozmowie.
Możliwość przechowywania i pobierania danych brzmi dość ogólnie i to prawda. bazy danych są. Stanowią uogólnione rozwiązanie odpowiadające potrzebom, które często pojawiają się w aplikacjach. Kluczową cechą bazy danych jest to, że organizuje ona dane w sposób, który ma być używany przez aplikację / firmę. To nie tylko zbiór plików, ale także sposób ich uporządkowania w kontekście jakiejś aplikacji. Taka potrzeba pojawia się cały czas w oprogramowaniu, zwłaszcza w aplikacjach internetowych, które wymagają trwałego przechowywania i dostępu online. Na przykład, jeśli utworzysz usługę poczty elektronicznej, musisz mieć możliwość stałego przechowywania wiadomości e-mail i umożliwienia użytkownikom ich pobierania. Musisz mieć możliwość wyszukiwania i sortowania wiadomości e-mail. Musisz mieć możliwość łatwego rozpoznania, które e-maile należą do którego użytkownika i tak dalej. Baza danych jest do tego idealna.
Prawie każde oprogramowanie musi przechowywać dane i uzyskiwać do nich dostęp, ale inżynierowie oprogramowania nie zawsze decydują się na korzystanie z bazy danych. Jeśli więc nie zawsze są potrzebne, to co czemu służą i skąd wiedzą, kiedy ich używać?
Cóż, znowu spróbuję użyć analogii, chociaż nie będzie ona doskonała. Wyobraź sobie, że piszesz krótki, dwustronicowy artykuł do szkoły. Musisz tylko przeczytać kilka rozdziałów z podręcznika na temat, który już znasz. W takim przypadku możesz przeczytać rozdziały, a następnie od razu zacząć pisać artykuł. Może w razie potrzeby odwołasz się do podręcznika . Może napiszesz kilka notatek w konspekcie. Nieważne, nic wielkiego.
Teraz przypuśćmy, że musisz napisać dokładnie zbadaną tezę, która będzie miała 50 stron. Będziesz musiał poszukać informacji, korzystając z kilkunastu podręczników i cytować odniesienia. Teraz na pewno będziesz musiał się zorganizować. Prawdopodobnie będziesz chciał być bardziej zorganizowany i pilniejszy w sposobie pisania notatek, korzystania z zakładek w podręcznikach i szkicowania pracy.
W pierwszym scenariuszu bycie super- zorganizowanie może być trochę przesadzone i może spowolnić. W drugim scenariuszu, jeśli nie byłbyś tak zorganizowany, nigdy nie byłbyś w stanie wykonać pracy prawidłowo. Gdzieś pomiędzy tymi dwoma scenariuszami jest różnica między tym, kiedy aplikacja powinna korzystać z bazy danych i kiedy prawdopodobnie mogłaby zrobić coś lżejszego. Zależy to od scenariusza i potrzeb produktu / usługi.
W tym momencie naturalne jest pytanie, co Jaka jest różnica między bazą danych a systemem plików? Oba są używane do przechowywania, organizowania i pobierania danych, prawda?
System plików (taki jak system, który przechowuje i prezentuje pliki na komputerze) wiele tych samych rzeczy, do których jest zaprojektowana baza danych. Przechowuje dane długoterminowo. Pozwala na przeszukiwanie danych. Możesz pobierać dane i nowe dane, modyfikować istniejące i usuwać dane.
Kluczową różnicą jest to, że system plików nie jest przeznaczony do organizowania danych dla określonej aplikacji lub celu biznesowego. Nie rozumie zbyt wiele na temat struktury danych poza tym, czego potrzebuje, aby móc przechowywać i pobierać pliki. Pliki nie muszą być ze sobą powiązane.Niekoniecznie zależą od siebie nawzajem ani nie mają żadnego szczególnego znaczenia w odniesieniu do siebie nawzajem. W systemie plików twojego komputera masz pliki MP3 i być może napisane przez Ciebie prace szkolne, pliki zapisu gier wideo, e-maile, i zdjęcia z twojego aparatu. System plików pomaga organizować te pliki i używać ich w różnych aplikacjach, ale nie ma centralnego zrozumienia, jak je ze sobą wiązać. Dlatego niektóre pytania mogą mieć sens w systemie plików, np. „Gdzie jest mój ulubiony MP3?” „Który plik jest największy?” „Który plik jest najnowszy?” „Gdzie są wszystkie moje zdjęcia z zeszłego roku?” Są jednak inne pytania, które nie mają sensu w przypadku systemu plików, np. „Czy ten plik MP3 jest cenniejszy niż ten plik Word .doc?”.
Z drugiej strony baza danych jest przeznaczona do przechowywania danych, wszystko, przynajmniej w pewnym sensie, ma jakiś wspólny cel, dlatego bazy danych są dobre do organizowania informacji w sposób, który ułatwia udzielanie odpowiedzi na pytania typu „Kto jest moim najcenniejszym klientem?” „Który produkt jest najpopularniejszy? „„ Kim są wszyscy dostawcy i kim są wszyscy klienci, którzy zależą od dostępności produktu A? ”Itp.
Aby ponownie użyć analogii, system plików może przypominać szafkę na pliki w w domu. Używasz go do przechowywania dokumentów podatkowych, dokumentacji konserwacji samochodu, kart raportów dzieci, rachunków, na których chcesz się zatrzymać, rachunków itp. Dzięki temu Twoje rzeczy są uporządkowane, więc wiesz, jak je znaleźć, ale nie wszystko tam jest koniecznie powiązane z każdą inną rzeczą.
Baza danych przypomina raczej zbiór szafek na akta biuro rachunkowe, które przechowuje tylko faktury. Prawdopodobnie wszystkie są w jakiś sposób zorganizowane. Podobnie jak wszystkie należności są umieszczone na jednej ścianie, a wszystkie zobowiązania na drugiej. Mogą być uporządkowane według daty lub alfabetycznie według płatnika lub odbiorcy. Może być kilka indeksów pliki z przodu, które informują, w której szafce należy szukać plików powiązanych z płatnikami, którzy mają określoną nazwę i być może inny indeks według numeru telefonu lub inny indeks zawierający wszystkie faktury o wartości ponad 200 000 USD lub coś podobnego. Wszystkie pliki powiązane firmy i są zorganizowane w sposób bardziej przydatny do celów firmy.