# База даных

**База даных** — структураваны набор даных, які захоўваецца па вызначаных правілах ў памяці вылічальных сістэм. Базы даных могуць захоўвацца ў памяці аднаго камп’ютара, а таксама могуць быць размешчаныя ў камп’ютарных кластэрах або воблачных сховішчах.

**Сістэма кіравання базамі даных (СКБД)** — гэта спецыяльная праграма або набор праграм для аперацый над базамі даных, у тым ліку для запытаў, аналізу і змянення даных. Класіфікацыя сістэм кіравання базамі даных звычайна заснавана на мадэлях, паводле якіх будуюцца базы даных. Так, з пачатку 1980-х гадоў дамінавалі рэляцыйныя базы даных, у якіх даныя арганізаваны як связаныя табліцы і выкарыстоўваецца мова запытаў SQL. У 2000-я гады сталі папулярнымі нерэляцыйныя (NoSQL) базы даных з уласнымі падыходамі да арганізацыі і запыту даных, напрыклад, графавыя базы даных або базы даных «ключ — значэнне».

## Тэрміналогія

Фармальна тэрмін «база даных» адносіцца да набору даных, да якіх можна атрымаць доступ з дапамогай «сістэмы кіравання базамі даных», што ўяўляе сабой камп’ютарную праграму ці набор праграм. З-за цеснай сувязі паміж імі тэрмін «база даных» часта выкарыстоўваецца для абазначэння як базы даных, так і сістэмы кіравання базамі даных.

Па-за межамі інфармацыйных тэхналогій тэрмін «база даных» часта выкарыстоўваецца для абазначэння любога збору даных, не абавязкова ў вылічальных сістэмах. Так, з юрыдычнага пункту гледжання, база даных — сукупнасць даных ці іншай інфармацыі, выражаная ў *любой аб’ектыўнай форме*, якая прадстаўляе з сябе па падборы або размяшчэнні гэтых даных або іншай інфармацыі вынік творчай працы.

## Віды баз даных

### Рэляцыйныя БД

Рэляцыйная мадэль баз даных была прапанавана ў 1970 годзе Эдгарам Кодам, у той час супрацоўнікам IBM. Аснова мадэлі — табліца ці двухмерны масіў, які складаецца з слупкоў і радкоў. Асноўныя прынцыпы рэляцыйнай сістэмы:

* усе даныя карыстальніку падаюцца ў выглядзе табліц;
* карыстальніку даюцца аператары, якія даюць магчымасць ствараць новыя табліцы з ужо існуючых.

На дадзены момант рэляцыйная мадэль з’яўляецца самай распаўсюджанай у свеце. Прыкладамі сістэм кіравання базамі даных, заснаваных на рэляцыйнай мадэлі, з’яўляюцца IBM DB2, MySQL, PostgreSQL.

### Аб’ектна-рэляцыйныя БД

Аб’ектна-рэляцыйная мадэль баз даных пашырае рэляцыйную мадэль магчымасцямі, звязанымі з аб’ектна-арыентаваным праграмаваннем: аб’екты, класы і наследаванне непасрэдна падтрымліваюцца ў схемах баз даных і ў мове запытаў.

### NoSQL

Базы даных NoSQL маюць механізмы для захоўвання і пошуку даных, адрозныя ад табліц, якія выкарыстоўваюцца ў рэляцыйных базах даных. Такія базы даных існуюць з канца 1960-х гадоў, але назва «NoSQL» была прыдумана толькі ў пачатку 21-га стагоддзя. Базы даных NoSQL выкарыстоўваюцца ў апрацоўцы вялікіх даных (англ.: big data) і вэб-праграмах у рэжыме рэальнага часу.
Структуры даных, якія выкарыстоўваюцца базамі даных NoSQL (напрыклад, пара ключ-значэнне, граф або дакумент), дазваляюць зрабіць некаторыя аперацыі больш хуткімі ў NoSQL. Большасць баз даных NoSQL не маюць сапраўдных транзакцый ACID.
Сярод прыкладаў баз даных NoSQL — MongoDB, Memcached, Redis, Amazon DynamoDB, Elasticsearch, Cassandra, Google Cloud Datastore.

### NewSQL

NewSQL — гэта клас сучасных рэляцыйных баз даных, мэта якога — забяспечыць такую ж маштабаваную прадукцыйнасць сістэм NoSQL для апрацоўкі анлайн-транзакцый, пры гэтым выкарыстоўваючы SQL і захоўваючы гарантыі ACID. Прыклады: CockroachDB, Couchbase, Google Spanner.

## Гл. таксама

* SQL
* Рэляцыйная алгебра

## Зноскі

## Літаратура

* *Baronas R.* Duomenų bazių valdymo sistemos. TEV, Vilnius, 2005.