Eksperymenty
Wybierz ćwiczenie
Teoria - Pomoc

Wprowadzenie

Bazy danych
Baza danych to zestaw odpowiednio usystematyzowanych informacji. Współcześnie te zestawy danych DS są zwykle umieszczne w systemach komputerowych (DS = Data Set). Taką komputerową bazą danych zarządza odpowiednie oprogramowanie nazywane systemem zarządzania danych - DBMS (Database Management System). W szczególności system DBMS pozwala na pobieranie lub zapisywanie danych i przykładowo kontrolę wielodostępu.
Zazwyczaj gdy mówimy o bazie danych (Database) to mamy na myśli zbiór danych DS oraz system DBMS.

Database = DS + DBMS

Mamy bardzo wiele różnych typów baz danych i mają one zastosowanie do różnych celów. Można więc je różnie klasyfikować.
Bazy danych to bardzo szeroka dziedzina technologii informatycznych (IT). Ten serwis nie jest poświęcony studiowaniu tej dziedziny IT. Jeśli chcesz studiować tę dziedzinę, poszukaj specjalistycznych kursów na ten temat (może tutaj).
Omawiamy tutaj wybrane zagadnienia związane z bazami danych tylko dlatego, że są one również wykorzystywane w sterowaniu komputerowym. Obecnie są powszechnie stosowane różne urządzenia sterowane przez systemy oparte na tak zwanych chmurowych bazach danych. Mam chociażby na myśli różne urządzenia systemów klasyfikowanych jako elementy systemów Inteligentny Dom.
W tym serwisie znajdziesz przykłady komputerowego sterowania urządzeniami z wykorzystaniem baz danych dostępnych przez sieć internet.

Podstawowe informacje o bazach danych
Bardzo często, zwłaszcza w prostych bazach danych, dane są przechowywane w tabelach. Jedna baza może zawierać bardzo wiele tabel odpowiednio ze sobą powiązanych (bazy relacyjne). W przedstawionych tutaj aplikacjach będziemy w zasadzie bazować na bardzo prostych bazach danych tylko z jedną tabelą.
Tabela bazy danych przypomina arkusz kalkulacyjny, w którym dane są przechowywane w kolumnach i wierszach - patrz rysunek poniżej.
Rekord to wiersz tabeli. Każdy rekord zawiera jedno lub więcej pól. Pola odpowiadają kolumnom tabeli. Pola muszą mieć określony typ danych. Przykładowo: mogą to być pola przeznaczone na przechowywanie danych liczbowych, tekstowych albo czasu itp.
Podsumowując, rekord, to pojedynczy wiersz w tabeli, czyli zestaw pól w niej występujących.
Klucz podstawowy (primary key) nazywany też kluczem głównym to pole, którego wartość jednoznacznie identyfikuje każdy rekord w tabeli. Ja będę często zamiast tego określenia używał terminu ID rekordu. ID to akronim od słów Identification Number (Numer identyfikacyjny).
Hasło do bazy danych zapobiega nieautoryzowanemu dostępowi do danych. Jeśli znasz hasło to masz dostęp do pewnych danych, przykładowo zapisanych w jednym rekordzie.

Wyobraź sobie, że masz 6 urządzeń w różnych miejscach świata, które są sprzężone z czujnikami temperatury. Każde urządzenie jest połączone z czterema takimi czujnikami. Chcesz przechowywać dane z tych urządzeń. Dla tego celu możesz utworzyć bazę danych o strukturze jak na rysunku.

database

Baza danych zawiera tabelę z sześcioma rekordami (0 - 5). Każdy rekord bazy danych (wiersz tabeli) składa się z 7 pól (kolumny tabeli 0 - 6). Mamy pola do przechwywania danych liczbowych (ID, Temp1, Temp2, Temp3, Temp4) i danych tekstowych (Pass, Localisation). Pole Pass zadedykowałem do przechowywania hasła.

Kwerenda (query) to zapytanie do bazy danych.
Zapytanie do bazy danych może być zapytaniem funkcjonalnym lub zapytaniem wybierającym. Zapytanie wybierające to takie, które pobiera dane z bazy danych. Zapytanie funkcjonalne zleca dodatkowe operacje na danych, takie jak wstawianie, aktualizacja, usuwanie lub inne formy manipulacji danymi. Te operacje wykonuje na żądanie użytkownika bazy system DBMS. Aby baza danych mogła zrozumieć wymagania, musi otrzymać zapytanie w odpowiedniej składni. Istnieją specjalne języki do tworzenia kwerend. Przykładowo, SQL jest bardzo znany i powszechnie używanym językiem do komunikacji z bazami danych (SQL = Structured Query Language).

Wyobraź sobie, że baza danych z naszą przykładową tabelą jest zainstalowana na komputerze w Tokio, który jest odpowiednim serwerem podłaczonym do sieci Internet. Mamy więc internetową bazę danych. Możesz będąc w Kairze wysłać poprzez Internet kwerendę i dowiedzieć się jaką temperaturę zmierzył czujnik Nr 4 w Londynie. Musisz w tej kwerendzie wyspecyfikować: numer rekordu (ID), hasło dostępu (Pass) i określić pole lub pola, z których chcesz pobrać dane. Żeby to zrobić musisz znać format i składnię języka takiej kwerendy.

W różnych sekcjach tego serwisu będziemy korzystać z tak zwanych internetowych baz danych i wysyłać do nich kwerendy. Okaże się wtedy, że nie zawsze musimy poznawać jakiś złożony język tworzenia kwerend.

API
Interfejs API bazy danych umożliwia aplikacjom interakcję ze zdalną bazą danych w celu uzyskania dostępu do danych i manipulowania nimi (API = Application Programming Interface). W prostym przypadku to może być tylko kilka komend, które łatwo załączyć do żądań obsługi wysyłanych protokołem HTTP do bazodanowego serwera. Taka komenda wywoła odpowiednią funkcję aplikacji serwerowej. Na podstawie danych załączonych do komendy, serwer wykona żądaną operację na danych i zwróci wynik. Przykładowo to może być odczyt danych z odpowiedniego pola wybranego rekordu bazy danych.
Brzmi niezbyt jasno? Czas na ćwiczenia praktyczne, które wszystko wyjaśnią.

Uczenie się przez doświadczenie
Przygotowałem dla Was internetową bazę danych z tabelą dokładnie taką samą jak na rysunku powyżej. Opis funkcji API i instrukcję jak z nich skorzystać znajdziecie w menu "Eksperymenty" znajdujące się po lewej stronie ekranu. Kliknijcie na pozycję Eksperyment_001.



Tu jest minimum wiedzy jaką powinniście znać aby zacząć tworzyć aplikacje webowe. Ten opis i zalecany eksperyment powinien Wam wystarczyć by zrozumieć koncepcję wielu modeli sterowania komputerowego opartego na sieciach komputerowych.
Menu po prawej zawiera przekierowania do różnych opisów innych zagadnień, których znajomość jest potrzebna do implementacji chmurowych baz danych.