Ця стаття містить правописні, лексичні, граматичні, стилістичні або інші мовні помилки, які треба виправити. (24 вересня 2018) |
Ця стаття недостатньо . (24 вересня 2018) |
Ця стаття потребує уваги й турботи фахівця у своїй галузі. (вересень 2018) |
Рушій бази даних (або рушій зберігання) — базовий програмний компонент, який система керування базами даних (СКБД) використовує для створення, читання, оновлення та видалення (CRUD) даних із бази даних. Більшість систем керування базами даних містять власний прикладний програмний інтерфейс (API), який дозволяє користувачеві взаємодіяти зі своїм основним рушієм без використання користувацького інтерфейсу СКБД.
Термін «рушій бази даних» часто використовується взаємозамінно з «сервером даних» або «системою керування базами даних». «Екземпляр бази даних» позначає процеси й структури пам'яті запущеного рушія бази даних.
Рушії зберігання
Багато сучасних СКБД підтримують декілька рушіїв зберігання в одній базі даних. Наприклад, MySQL підтримує InnoDB так само як і MyISAM.
Деякі рушії зберігання є транзакційними.
Назва | Ліцензія | Транзакційний |
---|---|---|
[en] | GPL | Ні |
BlitzDB | GPL | Ні |
[en] | GPL | Так |
InnoDB | GPL | Так |
MyISAM | GPL | Ні |
[en] | CPL | Ні |
[en] | GPL | Так |
[en] | GPL | Так |
[en] | GPL | Так |
[en] | BSD | Так |
Додаткові типи рушіїв включають:
- Рушії вбудованих баз даних
- Рушії [en]
Проєктні міркування
Біти баз даних викладаються на зберігання у структури даних і групування, що можуть скористатися обома відомими ефективними алгоритмами отримання та маніпулювання ними та властивостями власне зберігання[]. Як правило, власне зберігання розроблено для задоволення вимог різних галузей, які широко використовують зберігання, включно з базами даних. СКБД в експлуатації завжди одночасно використовують кілька типів зберігання (наприклад, пам'ять і зовнішнє зберігання), з відповідними способами компонування.
У принципі, зберігання бази даних можна розглядати як [en], де кожен біт даних має унікальну адресу в цьому адресному просторі. На практиці дуже малий відсоток адрес зберігаються як початкові опорні точки (які також потребують зберігання); доступ до більшості даних здійснюється непрямо шляхом обчислень зміщення (відстані в бітах від опорних точок) та структур даних, які визначають шляхи доступу (використовуючи вказівники) до всіх необхідних даних ефективним способом, оптимізованим для операцій доступу до необхідних даних.
Ієрархія зберігання баз даних
База даних під час роботи одночасно перебуває в кількох типах зберігання, формуючи ієрархію зберігання. За природою сучасних комп'ютерів більша частина бази даних знаходиться всередині комп'ютера, що розміщує СКБД (частково репліковану) в енергозалежному зберіганні. Дані (шматки бази даних), що обробляються чи маніпулюються, перебувають усередині процесора, можливо, у кешах процесора. Ці дані читаються з і записуються у пам'ять, як правило, через комп'ютерну шину (все ще, як правило, енергозалежні компоненти зберігання). Комп'ютерна пам'ять обмінюється даними (передає до та з) зовнішнього зберігання, як правило, стандартними інтерфейсами зберігання чи мережами (наприклад, Fibre Channel, iSCSI). Масив зберігання, поширений зовнішній блок зберігання даних, як правило, має власну ієрархію зберігання, від плаского кешу, що, як правило, складається з (енергозалежної та швидкої) DRAM, сполученої (знову стандартними інтерфейсами) з носіями, можливо, з різними швидкостями, на кшталт флеш-накопичувачів і магнітних дискових носіїв (енергонезалежних). Носії можуть сполучатися з магнітними стрічками, на яких, як правило, можуть перебувати найменш активні частини великої бази даних або її резервні копії.
Наразі, як правило, існує кореляція між швидкістю та вартістю зберігання, тоді як швидкі зберігання зазвичай енергозалежні.
Структури даних
Структури даних є абстрактними конструкціями, що вбудовують дані у добре визначений спосіб. Ефективні структури даних дозволяють маніпулювання ними ефективними способами. Маніпулювання даними може включати їх вставку, видалення, оновлення й отримання в різних режимах. Певні типи структур даних можуть бути дуже ефективними в одних операціях і дуже неефективними в інших. Тип структури даних вибирається при розробці СКБД для найліпшої відповідності операціям, необхідним для типів даних. Тип структури даних обирається для конкретного завдання, як правило, також береться до уваги тип зберігання (наприклад, швидкість доступу, мінімально доступний розмір порції зберігання та ін.). У деяких СКБД адміністратори баз даних мають гнучкість вибору серед опції структур користувацьких даних із міркувань продуктивності. Іноді структури даних мають вибіркові параметри для налаштування продуктивності бази даних.
Бази даних можуть зберігати дані в багатьох типах структур даних. Поширеними прикладами є наступні:
- впорядковані чи невпорядковані пласкі файли
- хеш-таблиці
- [en]
- купи
Орієнтація та кластеризація даних
На відміну від звичайної рядкової орієнтації, реляційні бази даних також можуть бути [en].
Загалом, значне поліпшення продуктивності досягається, якщо різні типи об'єктів бази даних, які зазвичай використовуються разом, зберігаються в безпосередній близькості, стаючи «кластеризованими». Цей зазвичай дозволяє отримувати необхідні пов'язані об'єкти зі зберігання за мінімальну кількість операцій введення (кожна іноді займає багато часу). Навіть для баз даних у пам'яті кластеризація забезпечує перевагу в продуктивності завдяки спільному використанню великого кешу операцій введення-виведення у пам'яті з аналогічною результатною поведінкою.
Наприклад, може бути корисним кластеризувати запис «позиція» з усіма відповідними записами «замовлення». Рішення про те, чи кластеризувати конкретні об'єкти, чи ні, залежить від статистики їх використання, розмірів об'єктів і кешів, типів зберігання та ін.
Індексування баз даних
Індексування — техніка, яку використовують деякі рушії зберігання для поліпшення продуктивності бази даних. Багато типів індексів мають спільну властивість зниження потреби розглядати кожен запис при виконанні запиту. У великих базах даних це може знизити час або вартість запиту на кілька порядків. Найпростішою формою індексу є відсортований список значень, у якому можна шукати за допомогою двійкового пошуку з суміжним посиланням на розташування запису, аналогічно до покажчика наприкінці книги. Ті самі дані можуть мати багато індексів (база даних співробітників може індексуватися за прізвищем і датою найму).
Індекси впливають на продуктивність, але не на результат. Проєктувальники баз даних можуть додавати чи видаляти індекси без зміни прикладної логіки, знижуючи вартість підтримки зі зростанням та еволюцією бази даних. Індекси можуть прискорити доступ до даних, але вони споживають простір у базі даних і повинні оновлюватися щоразу при зміні даних. Таким чином, індекси можуть прискорити доступ до даних, але сповільнити їх підтримку. Ці дві властивості визначають чи коштує даний індекс витрат.
Див. також
- [en]
- Berkeley DB
- [de]
- [en]
- MySQL Cluster, на NDB рушії зберігання MySQL
- [en]
Примітки
- Sheeri K. Cabral; Keith Murphy (4 березня 2011). MySQL Administrator's Bible (англ.). John Wiley & Sons. с. 287. ISBN .
- Lightstone, Teorey та Nadeau, 2007
Посилання
- Chapter 16 Alternative Storage Engines [Глава 16 Альтернативні рушії зберігання]. MySQL. MySQL 8.0 Reference Manual (англійською) . оригіналу за 24 вересня 2018. Процитовано 24 вересня 2018.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Cya stattya mistit pravopisni leksichni gramatichni stilistichni abo inshi movni pomilki yaki treba vipraviti Vi mozhete dopomogti vdoskonaliti cyu stattyu pogodivshi yiyi iz chinnimi movnimi standartami 24 veresnya 2018 Cya stattya nedostatno ilyustrovana Vi mozhete dopomogti proyektu dodavshi zobrazhennya do ciyeyi statti 24 veresnya 2018 Cya stattya potrebuye uvagi j turboti fahivcya u svoyij galuzi Bud laska povidomte pro ce znajomomu vam specialistu abo vipravte yiyi sami yaksho vi volodiyete vidpovidnimi znannyami Mozhlivo mistit zauvazhennya shodo potribnih zmin veresen 2018 Rushij bazi danih abo rushij zberigannya bazovij programnij komponent yakij sistema keruvannya bazami danih SKBD vikoristovuye dlya stvorennya chitannya onovlennya ta vidalennya CRUD danih iz bazi danih Bilshist sistem keruvannya bazami danih mistyat vlasnij prikladnij programnij interfejs API yakij dozvolyaye koristuvachevi vzayemodiyati zi svoyim osnovnim rushiyem bez vikoristannya koristuvackogo interfejsu SKBD Termin rushij bazi danih chasto vikoristovuyetsya vzayemozaminno z serverom danih abo sistemoyu keruvannya bazami danih Ekzemplyar bazi danih poznachaye procesi j strukturi pam yati zapushenogo rushiya bazi danih Rushiyi zberigannyaBagato suchasnih SKBD pidtrimuyut dekilka rushiyiv zberigannya v odnij bazi danih Napriklad MySQL pidtrimuye InnoDB tak samo yak i MyISAM Deyaki rushiyi zberigannya ye tranzakcijnimi Nazva Licenziya Tranzakcijnij en GPL Ni BlitzDB GPL Ni en GPL Tak InnoDB GPL Tak MyISAM GPL Ni en CPL Ni en GPL Tak en GPL Tak en GPL Tak en BSD Tak Dodatkovi tipi rushiyiv vklyuchayut Rushiyi vbudovanih baz danih Rushiyi en Proyektni mirkuvannyaBiti baz danih vikladayutsya na zberigannya u strukturi danih i grupuvannya sho mozhut skoristatisya oboma vidomimi efektivnimi algoritmami otrimannya ta manipulyuvannya nimi ta vlastivostyami vlasne zberigannya proyasniti Yak pravilo vlasne zberigannya rozrobleno dlya zadovolennya vimog riznih galuzej yaki shiroko vikoristovuyut zberigannya vklyuchno z bazami danih SKBD v ekspluataciyi zavzhdi odnochasno vikoristovuyut kilka tipiv zberigannya napriklad pam yat i zovnishnye zberigannya z vidpovidnimi sposobami komponuvannya U principi zberigannya bazi danih mozhna rozglyadati yak en de kozhen bit danih maye unikalnu adresu v comu adresnomu prostori Na praktici duzhe malij vidsotok adres zberigayutsya yak pochatkovi oporni tochki yaki takozh potrebuyut zberigannya dostup do bilshosti danih zdijsnyuyetsya nepryamo shlyahom obchislen zmishennya vidstani v bitah vid opornih tochok ta struktur danih yaki viznachayut shlyahi dostupu vikoristovuyuchi vkazivniki do vsih neobhidnih danih efektivnim sposobom optimizovanim dlya operacij dostupu do neobhidnih danih Iyerarhiya zberigannya baz danih Baza danih pid chas roboti odnochasno perebuvaye v kilkoh tipah zberigannya formuyuchi iyerarhiyu zberigannya Za prirodoyu suchasnih komp yuteriv bilsha chastina bazi danih znahoditsya vseredini komp yutera sho rozmishuye SKBD chastkovo replikovanu v energozalezhnomu zberiganni Dani shmatki bazi danih sho obroblyayutsya chi manipulyuyutsya perebuvayut useredini procesora mozhlivo u keshah procesora Ci dani chitayutsya z i zapisuyutsya u pam yat yak pravilo cherez komp yuternu shinu vse she yak pravilo energozalezhni komponenti zberigannya Komp yuterna pam yat obminyuyetsya danimi peredaye do ta z zovnishnogo zberigannya yak pravilo standartnimi interfejsami zberigannya chi merezhami napriklad Fibre Channel iSCSI Masiv zberigannya poshirenij zovnishnij blok zberigannya danih yak pravilo maye vlasnu iyerarhiyu zberigannya vid plaskogo keshu sho yak pravilo skladayetsya z energozalezhnoyi ta shvidkoyi DRAM spoluchenoyi znovu standartnimi interfejsami z nosiyami mozhlivo z riznimi shvidkostyami na kshtalt flesh nakopichuvachiv i magnitnih diskovih nosiyiv energonezalezhnih Nosiyi mozhut spoluchatisya z magnitnimi strichkami na yakih yak pravilo mozhut perebuvati najmensh aktivni chastini velikoyi bazi danih abo yiyi rezervni kopiyi Narazi yak pravilo isnuye korelyaciya mizh shvidkistyu ta vartistyu zberigannya todi yak shvidki zberigannya zazvichaj energozalezhni Strukturi danih Strukturi danih ye abstraktnimi konstrukciyami sho vbudovuyut dani u dobre viznachenij sposib Efektivni strukturi danih dozvolyayut manipulyuvannya nimi efektivnimi sposobami Manipulyuvannya danimi mozhe vklyuchati yih vstavku vidalennya onovlennya j otrimannya v riznih rezhimah Pevni tipi struktur danih mozhut buti duzhe efektivnimi v odnih operaciyah i duzhe neefektivnimi v inshih Tip strukturi danih vibirayetsya pri rozrobci SKBD dlya najlipshoyi vidpovidnosti operaciyam neobhidnim dlya tipiv danih Tip strukturi danih obirayetsya dlya konkretnogo zavdannya yak pravilo takozh beretsya do uvagi tip zberigannya napriklad shvidkist dostupu minimalno dostupnij rozmir porciyi zberigannya ta in U deyakih SKBD administratori baz danih mayut gnuchkist viboru sered opciyi struktur koristuvackih danih iz mirkuvan produktivnosti Inodi strukturi danih mayut vibirkovi parametri dlya nalashtuvannya produktivnosti bazi danih Bazi danih mozhut zberigati dani v bagatoh tipah struktur danih Poshirenimi prikladami ye nastupni vporyadkovani chi nevporyadkovani plaski fajli hesh tablici B dereva en kupi Oriyentaciya ta klasterizaciya danih Na vidminu vid zvichajnoyi ryadkovoyi oriyentaciyi relyacijni bazi danih takozh mozhut buti en Zagalom znachne polipshennya produktivnosti dosyagayetsya yaksho rizni tipi ob yektiv bazi danih yaki zazvichaj vikoristovuyutsya razom zberigayutsya v bezposerednij blizkosti stayuchi klasterizovanimi Cej zazvichaj dozvolyaye otrimuvati neobhidni pov yazani ob yekti zi zberigannya za minimalnu kilkist operacij vvedennya kozhna inodi zajmaye bagato chasu Navit dlya baz danih u pam yati klasterizaciya zabezpechuye perevagu v produktivnosti zavdyaki spilnomu vikoristannyu velikogo keshu operacij vvedennya vivedennya u pam yati z analogichnoyu rezultatnoyu povedinkoyu Napriklad mozhe buti korisnim klasterizuvati zapis poziciya z usima vidpovidnimi zapisami zamovlennya Rishennya pro te chi klasterizuvati konkretni ob yekti chi ni zalezhit vid statistiki yih vikoristannya rozmiriv ob yektiv i keshiv tipiv zberigannya ta in Indeksuvannya baz danih Indeksuvannya tehnika yaku vikoristovuyut deyaki rushiyi zberigannya dlya polipshennya produktivnosti bazi danih Bagato tipiv indeksiv mayut spilnu vlastivist znizhennya potrebi rozglyadati kozhen zapis pri vikonanni zapitu U velikih bazah danih ce mozhe zniziti chas abo vartist zapitu na kilka poryadkiv Najprostishoyu formoyu indeksu ye vidsortovanij spisok znachen u yakomu mozhna shukati za dopomogoyu dvijkovogo poshuku z sumizhnim posilannyam na roztashuvannya zapisu analogichno do pokazhchika naprikinci knigi Ti sami dani mozhut mati bagato indeksiv baza danih spivrobitnikiv mozhe indeksuvatisya za prizvishem i datoyu najmu Indeksi vplivayut na produktivnist ale ne na rezultat Proyektuvalniki baz danih mozhut dodavati chi vidalyati indeksi bez zmini prikladnoyi logiki znizhuyuchi vartist pidtrimki zi zrostannyam ta evolyuciyeyu bazi danih Indeksi mozhut priskoriti dostup do danih ale voni spozhivayut prostir u bazi danih i povinni onovlyuvatisya shorazu pri zmini danih Takim chinom indeksi mozhut priskoriti dostup do danih ale spovilniti yih pidtrimku Ci dvi vlastivosti viznachayut chi koshtuye danij indeks vitrat Div takozh en Berkeley DB de en MySQL Cluster na NDB rushiyi zberigannya MySQL en PrimitkiSheeri K Cabral Keith Murphy 4 bereznya 2011 MySQL Administrator s Bible angl John Wiley amp Sons s 287 ISBN 978 1 118 08058 0 Lightstone Teorey ta Nadeau 2007PosilannyaChapter 16 Alternative Storage Engines Glava 16 Alternativni rushiyi zberigannya MySQL MySQL 8 0 Reference Manual anglijskoyu originalu za 24 veresnya 2018 Procitovano 24 veresnya 2018