DBMS imqassam għall-Intrapriża

It-teorema tal-PAK hija l-pedament tat-teorija tas-sistemi distribwiti. Naturalment, il-kontroversja madwarha ma tonqosx: id-definizzjonijiet fiha mhumiex kanoniċi, u m'hemm l-ebda prova stretta... Madankollu, b'mod sod fuq il-pożizzjonijiet tas-sens komun ta 'kuljum ™, aħna intuwittivament nifhmu li t-teorema hija vera.

DBMS imqassam għall-Intrapriża

L-unika ħaġa li mhix ovvja hija t-tifsira tal-ittra "P". Meta l-cluster ikun maqsum, jiddeċiedi jekk ma jirrispondix sakemm jintlaħaq kworum, jew jagħtix lura d-dejta li hija disponibbli. Skont ir-riżultati ta' din l-għażla, is-sistema hija kklassifikata jew bħala CP jew AP. Cassandra, per eżempju, tista 'tġib ruħha jew il-mod, jiddependi lanqas fuq is-settings tal-cluster, iżda fuq il-parametri ta' kull talba speċifika. Imma jekk is-sistema mhix "P" u tinqasam, allura xiex?

It-tweġiba għal din il-mistoqsija hija kemmxejn mhux mistennija: cluster CA ma jistax jinqasam.
X'tip ta' cluster huwa dan li ma jistax jinqasam?

Attribut indispensabbli ta' tali cluster huwa sistema ta' ħażna ta' data kondiviża. Fil-maġġoranza l-kbira tal-każijiet, dan ifisser konnessjoni fuq SAN, li jillimita l-użu ta 'soluzzjonijiet CA għal intrapriżi kbar li kapaċi jżommu infrastruttura SAN. Sabiex servers multipli jaħdmu bl-istess data, hija meħtieġa sistema ta 'fajls raggruppati. Sistemi ta' fajls bħal dawn huma disponibbli fil-portafolli HPE (CFS), Veritas (VxCFS) u IBM (GPFS).

Oracle RAC

L-għażla Real Application Cluster dehret għall-ewwel darba fl-2001 bir-rilaxx tal-Oracle 9i. F'tali cluster, diversi istanzi ta' server jaħdmu bl-istess database.
Oracle jista' jaħdem kemm b'sistema ta' fajls miġbura kif ukoll mas-soluzzjoni tiegħu stess - ASM, Automatic Storage Management.

Kull kopja żżomm il-ġurnal tagħha. It-tranżazzjoni tiġi esegwita u kommessa minn istanza waħda. Jekk istanza tfalli, wieħed min-nodi tal-clusters superstiti (istanzi) jaqra l-log tiegħu u jirrestawra d-dejta mitlufa - u b'hekk jiżgura d-disponibbiltà.

L-istanzi kollha jżommu l-cache tagħhom stess, u l-istess paġni (blokki) jistgħu jkunu fil-caches ta 'istanzi multipli fl-istess ħin. Barra minn hekk, jekk istanza waħda teħtieġ paġna u tkun fil-cache ta 'istanza oħra, tista' tiksebha mill-ġar tagħha billi tuża l-mekkaniżmu tal-fużjoni tal-cache minflok taqra mid-disk.

DBMS imqassam għall-Intrapriża

Imma x'jiġri jekk waħda mill-istanzi teħtieġ tibdel id-dejta?

Особенность Oracle в том, что у него нет выделенного сервиса блокировок: если сервер хочет заблокировать строку, то запись о блокировке ставится прямо на той странице памяти, где находится блокируемая строка. Благодаря такому подходу Oracle – чемпион по производительности среди монолитных баз: сервис блокировок никогда не становится узким местом. Но в кластерной конфигурации такая архитектура может приводить к интенсивному сетевому обмену и взаимным блокировкам.

Ladarba rekord jiġi msakkra, istanza tinnotifika l-istanzi l-oħra kollha li l-paġna li taħżen dak ir-rekord għandha żamma esklussiva. Jekk istanza oħra teħtieġ tibdel rekord fuq l-istess paġna, trid tistenna sakemm il-bidliet fil-paġna jiġu impenjati, jiġifieri, l-informazzjoni tal-bidla tinkiteb f'ġurnal fuq disk (u t-tranżazzjoni tista 'tkompli). Jista 'jiġri wkoll li paġna tinbidel b'mod sekwenzjali b'diversi kopji, u mbagħad meta tikteb il-paġna fuq disk ikollok issib min jaħżen il-verżjoni attwali ta' din il-paġna.

Случайное обновление одних и тех же страниц через разные узлы RAC приводит к резкому снижению производительности базы данных – вплоть до того, что производительность кластера может быть ниже, чем производительность единственного экземпляра.

L-użu korrett ta 'Oracle RAC huwa li jaqsam fiżikament id-dejta (per eżempju, bl-użu ta' mekkaniżmu ta 'tabella maqsuma) u aċċess għal kull sett ta' diviżorji permezz ta 'nodu ddedikat. L-iskop ewlieni tar-RAC ma kienx skalar orizzontali, iżda li jiżgura t-tolleranza tal-ħsarat.

Jekk nodu jieqaf jirrispondi għal taħbit tal-qalb, allura n-nodu li skoprah l-ewwel jibda proċedura ta 'votazzjoni fuq id-diska. Jekk in-nodu nieqes ma jiġix innutat hawn, allura wieħed min-nodi jieħu r-responsabbiltà għall-irkupru tad-data:

  • "tiffriża" il-paġni kollha li kienu fil-cache tan-nodu nieqes;
  • jaqra r-reġistri (redo) tan-nodu nieqes u jerġa' japplika l-bidliet irreġistrati f'dawn ir-reġistri, fl-istess ħin jivverifika jekk nodi oħra għandhomx verżjonijiet aktar riċenti tal-paġni li qed jinbidlu;
  • jreġġa' lura tranżazzjonijiet pendenti.

Biex tissimplifika l-bidla bejn in-nodi, Oracle għandu l-kunċett ta 'servizz - istanza virtwali. Istanza tista' sservi servizzi multipli, u servizz jista' jiċċaqlaq bejn in-nodi. Istanza ta 'applikazzjoni li sservi ċerta parti tad-database (per eżempju, grupp ta' klijenti) taħdem ma 'servizz wieħed, u s-servizz responsabbli għal din il-parti tad-database jiċċaqlaq għal nodu ieħor meta node ifalli.

IBM Pure Data Systems għal Transazzjonijiet

Soluzzjoni cluster għal DBMS dehret fil-portafoll tal-Blue Giant fl-2009. Ideoloġikament, huwa s-suċċessur tal-grupp Parallel Sysplex, mibni fuq tagħmir "regolari". Fl-2009, DB2 pureScale ġie rilaxxat bħala suite ta 'softwer, u fl-2012, IBM offriet apparat imsejjaħ Pure Data Systems for Transactions. M'għandux jiġi konfuż ma' Pure Data Systems for Analytics, li m'hu xejn aktar minn Netezza isem ġdid.

Ewwel daqqa t'għajn, l-arkitettura pureScale hija simili għal Oracle RAC: bl-istess mod, diversi nodi huma konnessi ma 'sistema ta' ħażna ta 'dejta komuni, u kull node jmexxi l-istanza DBMS tiegħu stess bl-oqsma tal-memorja u r-reġistri tat-tranżazzjonijiet tiegħu stess. Iżda, għall-kuntrarju ta' Oracle, DB2 għandu servizz ta' qfil iddedikat rappreżentat minn sett ta' proċessi db2LLM*. F'konfigurazzjoni ta 'cluster, dan is-servizz jitqiegħed fuq node separat, li jissejjaħ faċilità ta' akkoppjar (CF) f'Parallel Sysplex, u PowerHA f'Dejta Pura.

PowerHA tipprovdi s-servizzi li ġejjin:

  • Maniġer tas-serraturi;
  • глобальный буферный кэш;
  • область межпроцессных коммуникаций.

Biex tittrasferixxi d-dejta minn PowerHA għan-nodi tad-database u lura, jintuża aċċess għall-memorja remota, għalhekk l-interkonnessjoni tal-cluster għandha tappoġġja l-protokoll RDMA. PureScale jista' juża kemm Infiniband kif ukoll RDMA fuq Ethernet.

DBMS imqassam għall-Intrapriża

Jekk node jeħtieġ paġna, u din il-paġna mhix fil-cache, allura n-nodu jitlob il-paġna fil-cache globali, u biss jekk ma jkunx hemm, jaqraha mid-disk. B'differenza Oracle, it-talba tmur biss lil PowerHA, u mhux lil nodi ġirien.

Jekk istanza se tbiddel ringiela, tissakkarha fil-modalità esklussiva, u l-paġna fejn tinsab ir-ringiela f'modalità kondiviża. Is-serraturi kollha huma rreġistrati fil-maniġer globali tas-serraturi. Meta t-tranżazzjoni titlesta, in-node jibgħat messaġġ lill-maniġer tal-lock, li jikkopja l-paġna modifikata fil-cache globali, jirrilaxxa s-serraturi, u jinvalida l-paġna modifikata fil-caches ta 'nodi oħra.

Jekk il-paġna li fiha tinsab ir-ringiela modifikata tkun diġà msakkra, allura l-maniġer tal-lock jaqra l-paġna modifikata mill-memorja tan-node li għamel il-bidla, jirrilaxxa l-lock, jinvalida l-paġna modifikata fil-caches ta 'nodi oħra, u agħti l-lock tal-paġna lin-node li talabha.

«Грязные», то есть изменённые, страницы могут быть записаны на диск как с обычного узла, так и с PowerHA (castout).

Jekk wieħed min-nodi pureScale ifalli, l-irkupru huwa limitat biss għal dawk it-tranżazzjonijiet li kienu għadhom ma tlestewx fiż-żmien tal-falliment: il-paġni modifikati minn dak in-nodu fi tranżazzjonijiet kompluti jinsabu fil-cache globali fuq PowerHA. In-nodu jerġa 'jibda f'konfigurazzjoni mnaqqsa fuq wieħed mis-servers fil-cluster, jreġġa' lura tranżazzjonijiet pendenti u jirrilaxxa serraturi.

PowerHA taħdem fuq żewġ servers u n-nodu prinċipali jirreplika l-istat tiegħu b'mod sinkroniku. Jekk in-nodu PowerHA primarju jfalli, il-cluster ikompli jopera man-node backup.
Naturalment, jekk ikollok aċċess għas-sett tad-dejta permezz ta 'node wieħed, il-prestazzjoni ġenerali tal-cluster tkun ogħla. PureScale jista 'saħansitra jinnota li ċerta żona ta' dejta qed tiġi pproċessata minn nodu wieħed, u mbagħad is-serraturi kollha relatati ma 'dik iż-żona jiġu pproċessati lokalment min-nodu mingħajr ma jikkomunika ma' PowerHA. Iżda hekk kif l-applikazzjoni tipprova taċċessa din id-dejta permezz ta' nodu ieħor, jerġa' jibda l-ipproċessar ċentralizzat tal-lock.

It-testijiet interni tal-IBM fuq ammont ta 'xogħol ta' 90% qari u 10% kitba, li huwa simili ħafna għal xogħolijiet ta 'produzzjoni fid-dinja reali, juru skalar kważi lineari sa 128 nodu. Il-kundizzjonijiet tat-test, sfortunatament, mhumiex żvelati.

HPE NonStop SQL

Il-portafoll Hewlett-Packard Enterprise għandu wkoll il-pjattaforma disponibbli ħafna tiegħu stess. Din hija l-pjattaforma NonStop, rilaxxata fis-suq fl-1976 minn Tandem Computers. Fl-1997, il-kumpanija ġiet akkwistata minn Compaq, li mbagħad ingħaqdet ma' Hewlett-Packard fl-2002.

NonStop jintuża biex jinbnew applikazzjonijiet kritiċi - pereżempju, HLR jew proċessar ta 'kards tal-bank. Il-pjattaforma hija kkunsinnata fil-forma ta 'kumpless ta' softwer u ħardwer (appliance), li jinkludi nodi tal-kompjuters, sistema ta 'ħażna ta' data u tagħmir ta 'komunikazzjoni. In-netwerk ServerNet (f'sistemi moderni - Infiniband) iservi kemm għall-iskambju bejn in-nodi kif ukoll għall-aċċess għas-sistema tal-ħażna tad-dejta.

В ранних версиях системы использовались проприетарные процессоры, которые были синхронизированы друг с другом: все операции исполнялись синхронно несколькими процессорами, и как только один из процессоров ошибался, он отключался, а второй продолжал работу. Позднее система перешла на обычные процессоры (сначала MIPS, затем Itanium и, наконец, x86), а для синхронизации стали использоваться другие механизмы:

  • messaġġi: kull proċess tas-sistema għandu tewmin "dell", li l-proċess attiv jibgħat perjodikament messaġġi dwar l-istatus tiegħu; jekk il-proċess ewlieni jfalli, il-proċess dell jibda jaħdem mill-mument determinat mill-aħħar messaġġ;
  • votazzjoni: is-sistema tal-ħażna għandha komponent ta 'ħardwer speċjali li jaċċetta aċċessi multipli identiċi u jesegwixxihom biss jekk l-aċċessi jaqblu; Minflok sinkronizzazzjoni fiżika, il-proċessuri joperaw b'mod asinkroniku, u r-riżultati tax-xogħol tagħhom jitqabblu biss f'mumenti I/O.

Mill-1987, DBMS relazzjonali ilu jaħdem fuq il-pjattaforma NonStop - l-ewwel SQL/MP, u wara SQL/MX.

Id-database kollha hija maqsuma f'partijiet, u kull parti hija responsabbli għall-proċess tagħha stess tal-Maniġer tal-Aċċess għad-Data (DAM). Jipprovdi reġistrazzjoni tad-dejta, caching, u mekkaniżmi ta 'qfil. L-ipproċessar tad-dejta jitwettaq minn Executor Server Processes li jaħdmu fuq l-istess nodi bħall-maniġers tad-dejta korrispondenti. L-iskeder SQL/MX jaqsam il-kompiti fost l-eżekuturi u jaggrega r-riżultati. Meta jkun meħtieġ li jsiru bidliet miftiehma, jintuża l-protokoll ta’ impenn f’żewġ fażijiet ipprovdut mil-librerija TMF (Transaction Management Facility).

DBMS imqassam għall-Intrapriża

NonStop SQL умеет приоритезировать процессы так, чтобы длинные аналитические запросы не мешали исполнению транзакций. Однако её назначение – именно обработка коротких транзакций, а не аналитика. Разработчик гарантирует доступность кластера NonStop на уровне пять «девяток», то есть простой составляет всего 5 минут в год.

SAP-HANA

L-ewwel rilaxx stabbli tal-HANA DBMS (1.0) seħħ f'Novembru 2010, u l-pakkett SAP ERP qaleb għal HANA f'Mejju 2013. Il-pjattaforma hija bbażata fuq teknoloġiji mixtrija: TREX Search Engine (tfittxija fil-ħażna kolonni), P*TIME DBMS u MAX DB.

Il-kelma "HANA" nnifisha hija akronimu, Appliance Analitika ta 'prestazzjoni Għolja. Dan id-DBMS huwa fornut fil-forma ta 'kodiċi li jista' jaħdem fuq kwalunkwe servers x86, madankollu, installazzjonijiet industrijali huma permessi biss fuq tagħmir iċċertifikat. Soluzzjonijiet disponibbli minn HP, Lenovo, Cisco, Dell, Fujitsu, Hitachi, NEC. Xi konfigurazzjonijiet Lenovo saħansitra jippermettu tħaddim mingħajr SAN - ir-rwol ta 'sistema ta' ħażna komuni huwa rwol minn cluster GPFS fuq diski lokali.

B'differenza mill-pjattaformi elenkati hawn fuq, HANA hija DBMS fil-memorja, jiġifieri l-immaġni tad-dejta primarja hija maħżuna fir-RAM, u zkuk u snapshots perjodiċi biss jinkitbu fuq disk għall-irkupru f'każ ta 'diżastru.

DBMS imqassam għall-Intrapriża

Kull nodu tal-cluster HANA huwa responsabbli għall-parti tiegħu stess tad-dejta, u l-mappa tad-dejta hija maħżuna f'komponent speċjali - ​​Name Server, li jinsab fuq in-nodu tal-koordinatur. Id-dejta mhix duplikata bejn in-nodi. L-informazzjoni tal-illokkjar hija wkoll maħżuna fuq kull nodu, iżda s-sistema għandha detector ta 'deadlock globali.

Клиент HANA при соединении с кластером загружает его топологию и в дальнейшем может обращаться напрямую к любому узлу в зависимости от того, какие данные ему нужны. Если транзакция затрагивает данные единственного узла, то она может быть выполнена этим узлом локально, но если изменяются данные нескольких узлов, то узел-инициатор обращается к узлу-координатору, который открывает и координирует распределённую транзакцию, фиксируя её при помощи оптимизированного протокола двухфазной фиксации.

In-nodu tal-koordinatur huwa duplikat, għalhekk jekk il-koordinatur jonqos, in-nodu tal-backup immedjatament jieħu f'idejh. Imma jekk node bid-dejta jonqos, allura l-uniku mod biex taċċessa d-dejta tagħha huwa li terġa 'tibda n-nodu. Bħala regola, il-clusters HANA jżommu server żejda sabiex jerġgħu jibdew nodu mitluf fuqu malajr kemm jista 'jkun.

Sors: www.habr.com

Żid kumment