Вбудовувана система керування базами даних — архітектура систем керування базами даних, коли СКБД тісно пов'язана з застосунком і працює на тому ж комп'ютері, не потребуючи професійного адміністрування.
Вбудовувані СКБД застосовують у багатьох програмах, які зберігають великі масиви даних без потреби доступу з багатьох комп'ютерів: поштових клієнтах та месенджерах (бази листування), медіапрогравачах (плей-листи та обкладинки), переглядачах зображень (метадані та зменшені ескізи), різні локальні БД на кшталт телефонних довідників і геоінформаційних систем (надавані дані) тощо.
Історично локальні та файл-серверні СКБД надавали скриптову мову, якою користувач міг писати прикладну програму. Так влаштовані Microsoft Access, , Clipper, 1С: Бухгалтерія. Недоліком цього підходу була бідність результуючих програм, обмежені засоби налагодження. І найчастіше не існувало компактного середовища виконання, яке можна розповсюджувати разом із програмою; потрібна програма — встановлюй весь пакунок. З поширенням динамічного зв'язування та ідеології opensource маятник хитнувся в інший бік: нехай програміст пише свою програму тією мовою високого рівня, якою зручно. СКБД приєднається до програми і стане з нею єдиним цілим.
Особливості
- Немає окремої програми-сервера.
- Фізично вбудовувана СКБД є бібліотекою, яка статично або динамічно приєднується до основної програми. Програма та СКБД спілкуються не через мережеві сокети, а через спеціалізований програмний інтерфейс. У цьому, щоправда, є й недолік: найчастіше програміст сам повинен не допускати багатопотокової гонитви.
- Висока швидкість і мала витрата пам'яті, особливо на довгих рядках та BLOBах.
- Завдяки спеціалізованому API кількість операцій читання-запису є мінімальною.
- Найчастіше невеликий за мірками БД максимальний розмір бази.
- Від одиниць гігабайт (обсяг пам'яті ПК на 2012) до одиниць терабайт (порядку обсягу жорсткого диска). Наприклад, SQLite завжди містить у пам'яті зміст БД (аналог таблиці розміщення файлів), цим обмежується обсяг БД.
- Як правило, спеціалізована мова запитів або неповна сумісність із SQL-92.
- Часто для продуктивності розробники реалізують або неповний SQL (SQLite), або спеціалізовану мову запитів (BerkeleyDB). До того ж вбудовувані СУБД можуть діяти зовсім за іншим принципом, ніж клієнт-серверні: пінг до БД нульовий, і запит можна виконувати частинами, декількома зверненнями до СУБД.
- Як правило, немає прав користувача; найпростіша ізоляція транзакцій.
- Більшого однокористувацькій БД і не потрібно. Як правило, транзакції ізолюються за принципом «записуємо по одному» за допомогою стандартних механізмів ОС на кшталт . Доступ до одного файлу з кількох програм можна налагодити: так, SQLite успішно працює в малонавантажених сайтах. Але високе навантаження йому не під силу.
- Як правило, немає архівації та реплікації БД.
- Вбудована БД надійна настільки, наскільки надійна бібліотека СКБД і файлова система, де розташовано базу даних. Відомі вбудовувані СКБД, як правило, добре відтестовані, а сучасні файлові системи дуже надійні. Разом з тим, є безліч способів втратити дані, тому такі рішення щодо надійності поступаються серверним СКБД.
- Як правило, немає мовних засобів, які спрощують доступ до БД.
- Спеціалізовані СКБД-мови на зразок зазвичай є симбіозом мови запитів і мови прикладного програмування. У мовах програмування загального призначення правильність запиту буде перевірено не під час компіляції, а лише тоді, коли запит буде надіслано в СКБД. І, звичайно ж, мовою програмування загального призначення конструкції доступу до БД (як вбудованої, так і клієнт-серверної) будуть «важкими».
- Втім, у C# є мова запитів LINQ, яка компілюється в комбінацію викликів методів, а ті, як правило, готують звичайний SQL.
Приклади
- Advantage Database Server
- Oracle Berkeley DB
- Вбудовувана версія Firebird
- HSQLDB
- Вбудовувана версія Informix Dynamic Server
- Вбудовувана версія InnoDB
- Вбудовувана версія InterBase
- Вбудовувана версія MySQL
- SQLite
- Microsoft
Примітки
- Зокрема, Skype використовує SQLite для зберігання баз листування
- Зокрема, AIMP використовує SQLite для зберігання плей-лістів
- Зокрема, XnView зберігає в базі SQLite ескізи та
- Приклад API BerkeleyDB(англ.)
- Приклад API SQLite [ 2012-12-20 у Wayback Machine.](англ.)
- Застосування SQLite [ 2012-12-20 у Wayback Machine.](англ.)
- Чого немає в SQLite [ 2012-12-20 у Wayback Machine.](англ.)
- Як тестується SQLite [ 2012-12-21 у Wayback Machine.](англ.)
- Як можна зіпсувати таблицю SQLite [ 2014-08-09 у Wayback Machine.](англ.)
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Vbudovuvana sistema keruvannya bazami danih arhitektura sistem keruvannya bazami danih koli SKBD tisno pov yazana z zastosunkom i pracyuye na tomu zh komp yuteri ne potrebuyuchi profesijnogo administruvannya Vbudovuvani SKBD zastosovuyut u bagatoh programah yaki zberigayut veliki masivi danih bez potrebi dostupu z bagatoh komp yuteriv poshtovih kliyentah ta mesendzherah bazi listuvannya mediaprogravachah plej listi ta obkladinki pereglyadachah zobrazhen metadani ta zmensheni eskizi rizni lokalni BD na kshtalt telefonnih dovidnikiv i geoinformacijnih sistem nadavani dani tosho Istorichno lokalni ta fajl serverni SKBD nadavali skriptovu movu yakoyu koristuvach mig pisati prikladnu programu Tak vlashtovani Microsoft Access Clipper 1S Buhgalteriya Nedolikom cogo pidhodu bula bidnist rezultuyuchih program obmezheni zasobi nalagodzhennya I najchastishe ne isnuvalo kompaktnogo seredovisha vikonannya yake mozhna rozpovsyudzhuvati razom iz programoyu potribna programa vstanovlyuj ves pakunok Z poshirennyam dinamichnogo zv yazuvannya ta ideologiyi opensource mayatnik hitnuvsya v inshij bik nehaj programist pishe svoyu programu tiyeyu movoyu visokogo rivnya yakoyu zruchno SKBD priyednayetsya do programi i stane z neyu yedinim cilim OsoblivostiNemaye okremoyi programi servera Fizichno vbudovuvana SKBD ye bibliotekoyu yaka statichno abo dinamichno priyednuyetsya do osnovnoyi programi Programa ta SKBD spilkuyutsya ne cherez merezhevi soketi a cherez specializovanij programnij interfejs U comu shopravda ye j nedolik najchastishe programist sam povinen ne dopuskati bagatopotokovoyi gonitvi Visoka shvidkist i mala vitrata pam yati osoblivo na dovgih ryadkah ta BLOBah Zavdyaki specializovanomu API kilkist operacij chitannya zapisu ye minimalnoyu Najchastishe nevelikij za mirkami BD maksimalnij rozmir bazi Vid odinic gigabajt obsyag pam yati PK na 2012 do odinic terabajt poryadku obsyagu zhorstkogo diska Napriklad SQLite zavzhdi mistit u pam yati zmist BD analog tablici rozmishennya fajliv cim obmezhuyetsya obsyag BD Yak pravilo specializovana mova zapitiv abo nepovna sumisnist iz SQL 92 Chasto dlya produktivnosti rozrobniki realizuyut abo nepovnij SQL SQLite abo specializovanu movu zapitiv BerkeleyDB Do togo zh vbudovuvani SUBD mozhut diyati zovsim za inshim principom nizh kliyent serverni ping do BD nulovij i zapit mozhna vikonuvati chastinami dekilkoma zvernennyami do SUBD Yak pravilo nemaye prav koristuvacha najprostisha izolyaciya tranzakcij Bilshogo odnokoristuvackij BD i ne potribno Yak pravilo tranzakciyi izolyuyutsya za principom zapisuyemo po odnomu za dopomogoyu standartnih mehanizmiv OS na kshtalt Dostup do odnogo fajlu z kilkoh program mozhna nalagoditi tak SQLite uspishno pracyuye v malonavantazhenih sajtah Ale visoke navantazhennya jomu ne pid silu Yak pravilo nemaye arhivaciyi ta replikaciyi BD Vbudovana BD nadijna nastilki naskilki nadijna biblioteka SKBD i fajlova sistema de roztashovano bazu danih Vidomi vbudovuvani SKBD yak pravilo dobre vidtestovani a suchasni fajlovi sistemi duzhe nadijni Razom z tim ye bezlich sposobiv vtratiti dani tomu taki rishennya shodo nadijnosti postupayutsya servernim SKBD Yak pravilo nemaye movnih zasobiv yaki sproshuyut dostup do BD Specializovani SKBD movi na zrazok zazvichaj ye simbiozom movi zapitiv i movi prikladnogo programuvannya U movah programuvannya zagalnogo priznachennya pravilnist zapitu bude perevireno ne pid chas kompilyaciyi a lishe todi koli zapit bude nadislano v SKBD I zvichajno zh movoyu programuvannya zagalnogo priznachennya konstrukciyi dostupu do BD yak vbudovanoyi tak i kliyent servernoyi budut vazhkimi Vtim u C ye mova zapitiv LINQ yaka kompilyuyetsya v kombinaciyu viklikiv metodiv a ti yak pravilo gotuyut zvichajnij SQL PrikladiAdvantage Database Server Oracle Berkeley DB Vbudovuvana versiya Firebird HSQLDB Vbudovuvana versiya Informix Dynamic Server Vbudovuvana versiya InnoDB Vbudovuvana versiya InterBase Vbudovuvana versiya MySQL SQLite MicrosoftPrimitkiZokrema Skype vikoristovuye SQLite dlya zberigannya baz listuvannya Zokrema AIMP vikoristovuye SQLite dlya zberigannya plej listiv Zokrema XnView zberigaye v bazi SQLite eskizi ta Priklad API BerkeleyDB angl Priklad API SQLite 2012 12 20 u Wayback Machine angl Zastosuvannya SQLite 2012 12 20 u Wayback Machine angl Chogo nemaye v SQLite 2012 12 20 u Wayback Machine angl Yak testuyetsya SQLite 2012 12 21 u Wayback Machine angl Yak mozhna zipsuvati tablicyu SQLite 2014 08 09 u Wayback Machine angl