Вградена база на податоци

Од Википедија — слободната енциклопедија

Вградена основа на податоци е систем за управување со бази на податоци (DBMS) кој е цврсто интегриран со апликативен софтвер кој бара пристап до веќе зачувани податоци, така што системот на базата на податоци е „скриен“ од крајниот корисник на апликацијата и бара мало одржување. Тоа е всушност широка категорија на технологии што вклучува

  • системи за бази на податоци со различни интерфејси за програмирање апликации ( SQL, како и комерцијални, мајчин API),
  • архитектури на бази на податоци (клиент-сервер и во процес),
  • режими на складирање (на диск, во меморија и комбинирани),
  • модели на основа на податоци (релационен, објектно-ориентиран, ентитет-атрибут-вредност на модел, мрежа / КОДАСИЛ) и
  • целни пазари.

Терминот вградена основа на податоци може да биде збунувачки бидејќи само мала подгрупа на производи за вградени бази на податоци се користат во вградени системи во реално време, како што се телекомуникациски прекинувачи и електронски уреди за широка потрошувачка. (Погледнете ја мобилната база на податоци за бази на податоци со мали траги што можат да се користат на вградени уреди).

Имплементации[уреди | уреди извор]

Главните производи за вградени бази на податоци вклучуваат:

  • <a href="https://en.wikipedia.org/wiki/Advantage_Database_Server" rel="mw:ExtLink" title="Advantage Database Server" class="mw-redirect cx-link" data-linkid="34">Advantage Database Server</a> од Sybase Inc.
  • Berkeley од корпорацијата Оракл
  • CSQL од csqlcache.com
  • Extensible Storage Engine од Microsoft
  • eXtremeDB од McObject
  • FileMaked од Claris
  • Firebird Embedded
  • HSQLDB од HSQLDB.ORG
  • Informix Dynamic Server (IDS) од IBM
  • InfinityDB од Boiler Bay Inc.
  • InnoDB од Oracle Corporation
  • InterBase (длабоко вградена верзија и за сервери и за мобилни уреди) од Embarcadero Technologies
  • Lightning Memory-Mapper Database (LMDB) од Symas Corp.
  • Raima Database Manager од Raima
  • solidDB
  • SQLite
  • SQL Server Compact од Microsoft Corporation
  • Sophia Embeddable key-value storage

Споредби на моторите за складирање бази на податоци[уреди | уреди извор]

Advantage Database Server[уреди | уреди извор]

Овој сервер е целосно опремен вграден систем за управување со базата на податоци. Обезбедува и ISAM и релациски пристап до податоци и е компатибилен со повеќе платформи, вклучително и Windows, Linux и Netware. Тој е достапен како локална основа на податоци за сервер за податотеки без хонорари или целосна верзија на клиент-сервер. ADS постои веќе многу години и е многу прикладен за приспособување, без администрација и има поддршка за различни IDE, вклучително и .NET рамка (. NET), Object Pascal (Delphi), Visual FoxPro (FoxPro), PHP, Visual Basic (VB), Визуелни објекти (VO), Vulcan, Клипер, Перл, Јава, xHarbour итн.

Apache Derby[уреди | уреди извор]

Се работи за е вграден SQL мотор, напишан целосно во Java. Целосно трансакциски, наменет за повеќе корисници истовремено со пристојно подмножество SQL, Derby е зрел мотор и слободно достапен под лиценцата на Apache и активно се одржува. Страница за проектот Derby . Исто така се дистрибуира како дел од Комплетот за развој на Java SE на Oracle (JDK) под името Java DB.

Еmpress Embedded Database[уреди | уреди извор]

Empress Software, Inc., развивач на Empress Embedded Database, е приватна компанија основана во 1979 година. Вградена основа на податоци Empress е релациона основа на податоци со целосна функција, вградена во апликации од мали до големи организации, со опкружувачки средини, вклучувајќи медицински организации, мрежни насочувачи, монитори на атомски централи, системи за управување со сателити и други апликации за вградени системи за кои е потребна сигурност и моќ.[1] Empress е мотор во согласност со ACID, SQL база на податоци со C, C ++, Java, JDBC, ODBC, SQL, ADO. NET и API. Апликациите развиени со користење на овие API можат да се извршуваат во самостоен режим и/или сервер. Вградената база на податоци Empress работи на Linux, Unix, Microsoft Windows и оперативни системи во реално време .

Extensible Storage Engine (ESE)[уреди | уреди извор]

ESE е технологија за складирање на податоци со индексиран метод на последователен пристап (ISAM) од Microsoft. ESE е јадро на Microsoft Exchange Server и Active Directory. Неговата цел е да им дозволи на апликациите да складираат и враќаат податоци преку индексиран и секвенцијален пристап. Windows mail и пребарувањето на работната површина во оперативниот систем Windows Vista, исто така, користат ЕСЕ за складирање на индекси и други информациисоодветно.

eXtremeDB[уреди | уреди извор]

McObject LLC ја лансирал eXtremeDB како прва вградена основа на податоци во меморија дизајнирана од нула за вградени системи во реално време. На почетниот производ наскоро му се придружи и eXtremeDB Висока Достапност (HA) за апликации кои толерираат одредени нивоа на грешки. Семејството на производи сега вклучува 64-битни изданија и изданија за најавување на трансакции и хибридниот eXtremeDB Fusion, кој комбинира меморија и складирање на податоци на диск. Во 2008 година, McObject го претстави eXtremeDB јадрениот режим, првиот вграден DBMS дизајниран да работи во јадро на оперативен систем.[2] Денес, eXtremeDB се користи во милиони системи во реално време и вградени во светот. McObject нуди и Perst, вградена основа на податоци со отворен извор, ориентирана кон објекти за Java, Java ME,. НЕТ ,. NET компактна рамка и Silverlight.

Firebird Embedded[уреди | уреди извор]

Firebird Embedded е мотор со релациона основа на податоци. Тоа е тип на основа на податоци тн. виљушка со отворен извор на InterBase, компатибилна е со ACID, поддржува активирачи и зачувани процедури и е достапна на системите Linux, OSX и Windows. Ги има истите одлики како класичната и суперсерверската верзија на Firebird, две или повеќе теми (и апликации) можат да пристапат на истата база на податоци истовремено почнувајќи со Firebird 2.5. Оваа база на податоци делува како локален сервер за еден клиент со нишка кој пристапува до неговите бази на податоци (тоа значи дека работи правилно за ASP. NET семрежни прилози, бидејќи таму, секој корисник има своја нишка, што значи дека двајца корисници може да имаат пристап до истата база на податоци истовремено, но тие не би биле во иста нишка, бидејќи ASP. NET отвора нова нишка за секој корисник). Ги извезува стандардните влезни точки на API за Firebird. Главната предност на вметнатите бази на податоци на Firebird е тоа што за разлика од SQlite или Access базите на податоци, тие можат да бидат вклучени во целосен Firebird сервер без никакви модификации, исто така е мултиплатформа (работи на Linux, OS X со целосен ASP). NET Моно поддршка)

H2[уреди | уреди извор]

Напишан во Java со отворен извор многу брз мотор за бази на податоци. Вградениот режим и серверот, поддршката за кластерирање, може да работи во Google App Engine . Поддржува шифрирани податотеки со бази на податоци (AES или XTEA). Развојот на H2 започна во мај 2004 година, но првпат беше објавен на 14 декември 2005 година. H2 е двојно лиценциран и достапен под модифицирана верзија на MPL 1.1 (јавна лиценца на Mozilla) или под (немодифициран) EPL 1.0 (јавна лиценца затемнување).

HailDB, порано познат како Embedded InnoDB[уреди | уреди извор]

HailDB е самостоен, вграден облик на InnoDB Storage Engine. Со оглед на тоа што HailDB се заснова на истата база на кодови како и InnoDB Storage Engine, тој содржи многу одлики кои исто така ги има во претходно споменатите софтвери: високи перформанси и приспособливост, контрола на повеќекратна истовременост (MVCC), заклучување на ниво на редица, откривање на ќор-сокак, толеранција на грешка, автоматско уривање закрепнување и сл. Сепак, бидејќи вградениот мотор е целосно независен од MySQL, му недостасуваат компоненти на серверот, како што се вмрежување, дозволи на ниво на објект, итн. Со елиминирање на режимот на сервер MySQL, InnoDB има мал отпечаток и е добро прилагоден за вградување во апликации за кои се потребни високи перформанси и истовременост. Како и кај повеќето вградени системи за бази на податоци, HailDB е дизајниран да се пристапи пред се со C API сличен на ISAM наместо со SQL (иако е поддржана исклучително рудиментирана варијанта на SQL).[3]

Проектот повеќе не се одржува.[4]

HSQLDB[уреди | уреди извор]

HSQLDB е систем за управување со релациони бази на податоци со отворен извор со лиценца слична на BSD што работи во истата виртуелна машина Java како и вградената апликација. HSQLDB поддржува различни режими на табели во меморија и диск, Уникод и SQL: 2016 година.

InfinityDB[уреди | уреди извор]

Вградена Java DBMS на InfinityDB е сортирана хиерархиска продавница за клучеви/вредности. Сега има шифрирано издание и издание на клиент/сервер. Мулти-јадровата брзина е применета за патент. InfinityDB е безбеден, трансакциски, компресивен и робустен, во една податотека за непосредна инсталација и нула администрација. АПИ вклучуваат едноставен брз „ItemSpace“, приказ на ConcurrentNavigableMap и JSON. RemoteItemSpace може транспарентно да ги пренасочи вградените API во други db инстанци. Клиентот/серверот вклучува сервер-сервер со мала тежина, веб-администратор и прелистување на базата на податоци и РЕСТ за питон.

Динамичен сервер Informix[уреди | уреди извор]

Informix Dynamic Server (IDS) се одликува како сервер за база на податоци што може да се вметне во претпријатие, со комбинирање на функции како што се ниски стапала, програмабилни и автономни можности со одлики на базата на податоци на компанијата, како што се висока достапност и одлики на флексибилна репликација.[5] IDS се користи во длабоко вградени сценарија како што се системи за обработка на повици со IP телефонија, апликации за продажба и системи за обработка на финансиски трансакции.

Интербаза[уреди | уреди извор]

InterBase е наградена со IoT крос-платформа, Unicode, овозможена SQL платформа за база на податоци, во можност да биде вградена во апликациите со клуч. Поддршка за поддршка на SMP и шифрирање на силата на AES со 256 бита, усогласеност на SQL 92 и ACID и поддршка за платформи за Windows, Macintosh, Linux, Solaris, iOS и Android. Идеално за мали и средни и големи претпријатија што поддржуваат стотици корисници и развој на мобилни апликации. InterBase Light е бесплатна верзија што може да се користи на кој било мобилен уред и е идеална за мобилни апликации. Претпријатијата можат да се префрлат на платена верзија бидејќи барањата за управување со промени и зголемување на безбедноста. ИнтерБајс има високо прифаќање во одбраната, воздушниот простор, нафтата и гасот и производствената индустрија.

НивоДБ[уреди | уреди извор]

LevelDB е нарачана продавница за клучеви / вредности создадена од Google како лесна примена на дизајнот за складирање Bigtable. Како библиотека (што е единствениот начин да се користи LevelDB), нејзиниот роден API е C ++. Вклучува и официјални C обвивки за најголема функционалност. Обвивки API на трети страни постојат за Python, PHP, Go ( чиста имплементација Go LevelDB постои, но сè уште е во тек), Node.js и Цел Г. Гугл го дистрибуира LevelDB според Новата лиценца BSD .

ЛМДБ[уреди | уреди извор]

База на податоци за меморирање на молња (LMDB) е база на податоци со клучна вредност мапирана со меморија за проектот OpenLDAP . Напишано е во C, а API е моделиран според Berkeley DB API, иако многу поедноставен. Библиотеката е екстремно компактна, составена од под 40KB на код на објект x86, доказ за корупција и нарачки по големина побрзо, поцврсто , постепено размерливо и поефикасно од сличните библиотеки како Беркли ДБ, НивелДБ итн. Библиотеката спроведува дрвја Б + со повеќекратна контрола на истовременост (MVCC), продавница за едно ниво, копирање на пишување и обезбедува целосни ТИСИС- трансакции без блокирање. Библиотеката е оптимизирана за високо читана истовременост; на читателите воопшто не им треба брави. Читателите не блокираат писатели, а писателите не ги блокираат читатели, затоа прочитајте ги скалите за перформанси совршено линеарно низ произволно многу теми и процесори. Обвивки од трети страни постојат за C ++, Erlang и Python . LMDB се дистрибуира од страна на проектот OpenLDAP според јавната лиценца OpenLDAP. Од 2013 година, Проектот OpenLDAP ја омаловажува употребата на Беркли ДБ, во корист на ЛМДБ.

Мимер SQL[уреди | уреди извор]

Вградена е верзија за одржување на нула, заштитената база на податоци Mimer SQL.

Библиотека за вграден сервер MySQL[уреди | уреди извор]

Libmysqld, Библиотеката за вградени сервери на MySQL Архивирано на 3 јули 2019 г. обезбедува повеќето одлики Архивирано на 30 јуни 2017 г. на редовната MySQL како библиотека што може да се поврзе и може да се изврши во контекст на клиентскиот процес. По иницијализацијата, клиентите можат да ги користат истите повици на C API како кога зборуваат со посебен MySQL сервер, но со помалку комуникациски трошоци и без потреба од посебен процес на основа на податоци.

NexusDB[уреди | уреди извор]

NexusDB е комерцијален наследник на базата на податоци FlashFiler, која сега е со отворен код. И двајцата можат да бидат вградени во апликациите на Делфи за да создадат самостојни извршни функции со целосна функционалност на базата на податоци.

Оракл Беркли ДБ[уреди | уреди извор]

Како што имплицира името, вградената база на податоци на Оракл е всушност Беркли ДБ, која Оракл ја купи од Сончајт Софтвер. Првично беше развиен на Универзитетот во Калифорнија.[6] Berkeley DB е брза, вградена основа на податоци со отворен извор и се користи во неколку познати производи со отворен извор, вклучувајќи ги оперативните системи Linux и BSD Unix, веб-серверот Apache, пакетот за продуктивност на OpenOffice. Како и да е, во текот на последните години многу познати проекти се префрлија на користење на LMDB, бидејќи го надминуваат Беркли ДБ во клучните сценарија на теренот на „ помалку е повеќе “ дизајн, како и поради промена на лиценцата.

Менаџер на основа на податоци на Раима[уреди | уреди извор]

Менаџерот за бази на податоци Raima, произведен од Raima, беше еден од првите системи за управување со базата на податоци што беше категоризиран во вградена основа на податоци. Според дефиницијата на Раима, производот е вграден во две сетила: прво, тој е вграден во апликацијата, станувајќи продолжение на апликацијата, и второ, можно е да се користи во вградени компјутерски / ОС или околини во реално време заради неговиот мал отпечаток и ефикасно работење. Нејзините API (за C / C ++, SQL, JDBC, ODBC, ADO. NET, и RESTful) се дизајнирани да ги поддржуваат ограничените ресурси на вградените средини. Од првичното објавување, RDM Embedded постојано се развива и моментално се издава како верзија 14.2.

RocksDB[уреди | уреди извор]

RocksDB, создаден на Facebook, започна како виљушка на LevelDB .[7] Се фокусира на перформансите, особено на SSD-дисковите . Додава многу одлики, вклучително и трансакции,[8] бекап,[9] снимки,[10] филтри за цут,[11] семејства на колони,[12] истек,[13] оператори за прилагодени спојувања,[14] порамливо набивање,[15] колекција на статистики,[16] и геопросторно индексирање.[17] Се користи како мотор за складирање во неколку други бази на податоци, вклучувајќи ги ArangoDB,[18] Ceph,[19] CockroachDB,[20] MongoRocks,[21] MyRocks,[22] Rocksandra,[23] и TiKV.[24][25]

solidDB[уреди | уреди извор]

solidDB е хибридна основа на податоци на дискот / во меморија, релациона основа и често се користи како вградена основа на податоци на системот за телекомуникации, мрежен софтвер и слични системи. Технологијата на основа на податоци во меморија се користи за да се постигне пропусност на десетици илјади трансакции во секунда со време на одговор одмерено во микросекунди. Опцијата за висока достапност одржува две копии на податоци синхронизирани во секое време. Во случај на дефект на системот, апликациите можат да го вратат пристапот до solidDB за помалку од една секунда без загуба на податоци.

SQLite[уреди | уреди извор]

SQLite е софтверска библиотека која спроведува автономен, без сервер, нула конфигурација, трансакциски SQL-база на податоци. SQLite е најшироко распореден мотор за бази на податоци SQL во светот. Изворниот код, главно Ц, за SQLite е во јавна сопственост. Вклучува и природна библиотека C и едноставен клиент за командна линија за нејзината база на податоци. Вклучено е во неколку оперативни системи; меѓу нив се Android, FreeBSD, iOS, OS X и Windows 10 .[26]

Компактен SQL-сервер[уреди | уреди извор]

SQL Server Compact на Мајкрософт е вградена основа на податоци со широк спектар на одлики како мулти-процесни врски, T-SQL, ADO. Услуги за NET Sync за синхронизација со која било база на податоци на заден крај, Спојување репликација со SQL Server, API за програмирање: LINQ до SQL, LINQ со субјекти, ADO. НЕТ. Производот работи и на платформите Desktop и Mobile Windows. Долго време е на пазарот, користен од многу претпријатија во софтвер за производство ( Студии на случај ). Производот помина низ повеќе ре-брендови и беше познат со повеќе имиња како: SQL CE, SQL Server CE, SQL Server Mobile, SQL Mobile.

Наводи[уреди | уреди извор]

  1. Mullins, Craig. "Empress Offers an Effective Embedded Database Solution", 2005. Retrieved on 2008-12-09
  2. Gorine, Andrei and Krivolapov, Alexander. "Kernel Mode Databases: A DBMS Technology For High-Performance Applications", Dr. Dobb's Journal, April, 2008. Retrieved on August 13, 2008.
  3. HailDB homepage
  4. Shutting down HailDB, By Stewart Smith on August 19th, 2015, HailDB
  5. "Embedding Informix Dynamic Server", Retrieved on August 30, 2009.
  6. See Berkeley DB
  7. „RocksDB Basics“. Посетено на 2018-07-19.
  8. „RocksDB transactions“. GitHub. Посетено на 2016-04-04.
  9. „How to backup RocksDB?“. Посетено на 2017-07-19.
  10. „Checkpoints“. Посетено на 2017-07-19.
  11. „RocksDB bloom filters“. GitHub. Посетено на 2016-04-04.
  12. „Column families in RocksDB“. GitHub. Посетено на 2016-04-04.
  13. „RocksDB TTL support“. GitHub. Посетено на 2016-04-04.
  14. „RocksDB merge operator“. GitHub. Посетено на 2016-04-04.
  15. „Universal compaction“. GitHub. Посетено на 2016-04-04.
  16. „RocksDB perf context and IO stats context“. GitHub. Посетено на 2016-04-04.
  17. „Spatial indexing in RocksDB“. rocksdb.org. Посетено на 2018-07-19.
  18. „Comparing new RocksDB and MMFiles storage engines“. Архивирано од изворникот на 2018-07-20. Посетено на 2018-07-19.
  19. „Storage Devices — Ceph Documentation“. Посетено на 2018-07-19.
  20. „Storage Layer - CockroachDB“. Посетено на 2018-07-19.
  21. „mongodb-partners/mongo-rocks: MongoDB storage integration layer for the Rocks storage engine“. Посетено на 2018-07-19.
  22. „MyRocks - A RocksDB storage engine with MySQL“. Посетено на 2018-07-19.
  23. „Open-sourcing a 10x reduction in Apache Cassandra tail latency“. Посетено на 2018-07-19.
  24. „RocksDB in TiKV - PingCAP“. Архивирано од изворникот на 2018-07-20. Посетено на 2018-07-19.
  25. https://medium.com/walmartglobaltech/https-medium-com-kharekartik-rocksdb-and-embedded-databases-1a0f8e6ea74f
  26. Answer, Usman (29 October 2015). „Shipping a New Mindset with SQLite in Windows 10“. Microsoft. Архивирано од изворникот на 2016-01-31. Посетено на 6 March 2016.