Hoʻolaha ʻia ʻo DBMS no ka ʻoihana

ʻO ka theorem CAP ka pōhaku kihi o ka manaʻo ʻōnaehana mahele. ʻOiaʻiʻo, ʻaʻole i emi ka hoʻopaʻapaʻa e hoʻopuni ana iā ia: ʻaʻole canonical nā wehewehe i loko, a ʻaʻohe hōʻoia koʻikoʻi ... Akā naʻe, kū paʻa i nā kūlana o kēlā me kēia lā maʻamau ™, maopopo mākou he ʻoiaʻiʻo ka theorem.

Hoʻolaha ʻia ʻo DBMS no ka ʻoihana

ʻO ka mea wale nō i maopopo ʻole ʻo ke ʻano o ka leka "P". Ke hoʻokaʻawale ʻia ka pūʻulu, hoʻoholo ʻo ia inā ʻaʻole e pane a hiki i kahi korum, a i ʻole e hāʻawi i ka ʻikepili i loaʻa. Ma muli o nā hopena o kēia koho, ua helu ʻia ka ʻōnaehana ma ke ʻano he CP a he AP paha. ʻO Cassandra, no ka laʻana, hiki ke hana i kēlā me kēia ala, ʻaʻole i hilinaʻi ʻia ma nā hoʻonohonoho cluster, akā ma nā ʻāpana o kēlā me kēia noi kikoʻī. Akā inā ʻaʻole ʻo "P" ka ʻōnaehana, a laila he aha?

ʻAʻole i manaʻo ʻia ka pane i kēia nīnau: ʻaʻole hiki ke hoʻokaʻawale i kahi hui CA.
He aha ke ʻano o kēia puʻupuʻu hiki ʻole ke wehe?

ʻO kahi hiʻohiʻona koʻikoʻi o ia pūʻulu he ʻōnaehana mālama ʻikepili like. Ma ka hapanui o nā hihia, ʻo ia ke ʻano o ka hoʻopili ʻana ma luna o kahi SAN, kahi e kaupalena ʻia ai ka hoʻohana ʻana i nā hoʻonā CA i nā ʻoihana nui e hiki ke mālama i kahi ʻōnaehana SAN. I mea e hana ai nā kikowaena he nui me ka ʻikepili like, pono kahi ʻōnaehana file clustered. Loaʻa ia mau ʻōnaehana waihona ma nā waihona HPE (CFS), Veritas (VxCFS) a me IBM (GPFS).

Oracle RAC

Ua ʻike mua ʻia ka koho Cluster Real Application ma 2001 me ka hoʻokuʻu ʻana o Oracle 9i. I loko o ia pūʻulu, hana kekahi mau kikowaena kikowaena me ka waihona like.
Hiki iā Oracle ke hana pū me kahi ʻōnaehana waihona puʻupuʻu a me kāna hoʻonā ponoʻī - ASM, Automatic Storage Management.

Mālama kēlā me kēia kope i kāna puke pai. Hoʻokō ʻia ka hana a hana ʻia e hoʻokahi manawa. Inā hāʻule kahi laʻana, heluhelu kekahi o nā pūnana puʻupuʻu e ola nei i kona log a hoʻihoʻi i ka ʻikepili i nalowale - no laila e hōʻoiaʻiʻo ai i ka loaʻa.

Mālama nā mea a pau i kā lākou huna huna ponoʻī, a hiki i nā ʻaoʻao like (nā poloka) ke waiho i loko o nā huna o nā manawa he nui i ka manawa like. Eia kekahi, inā makemake kekahi ʻaoʻao i kahi ʻaoʻao a aia ia i loko o ka cache o kahi hiʻohiʻona ʻē aʻe, hiki iā ia ke kiʻi mai kona hoalauna me ka hoʻohana ʻana i ka mīkini fusion cache ma mua o ka heluhelu ʻana mai ka disk.

Hoʻolaha ʻia ʻo DBMS no ka ʻoihana

Akā he aha ka hopena inā pono e hoʻololi kekahi o nā ʻikepili?

ʻO ka hiʻohiʻona o Oracle ʻaʻole ia he lawelawe laka paʻa: inā makemake ke kikowaena e laka i kahi lālani, a laila kau pololei ʻia ka laka paʻa ma ka ʻaoʻao hoʻomanaʻo kahi i loaʻa ai ka lālani paʻa. Mahalo i kēia ala, ʻo Oracle ka poʻokela hana ma waena o nā waihona monolithic: ʻaʻole lilo ka lawelawe laka i kahi bottleneck. Akā i loko o kahi hoʻonohonoho cluster, hiki i kēlā ʻano hoʻolālā ke alakaʻi i ka neʻe ʻana o ka pūnaewele a me nā deadlocks.

Ke hoʻopaʻa ʻia kahi moʻolelo, e hōʻike ana kahi laʻana i nā manawa ʻē aʻe a pau he paʻa kūʻokoʻa ka ʻaoʻao e mālama ai i kēlā moʻolelo. Inā pono e hoʻololi i kahi moʻolelo ma ka ʻaoʻao hoʻokahi, pono ia e kali a hiki i ka hoʻololi ʻana i ka ʻaoʻao, ʻo ia hoʻi, kākau ʻia ka ʻike hoʻololi i kahi puke pai ma ka disk (a hiki ke hoʻomau ke kālepa). E hoʻololi ʻia paha kekahi ʻaoʻao e nā kope he nui, a laila ke kākau ʻana i ka ʻaoʻao i ka diski e ʻike ʻoe i ka mea nāna e mālama i ka mana o kēia ʻaoʻao.

ʻO ka hoʻonui wale ʻana i nā ʻaoʻao like ʻole ma waena o nā node RAC ʻokoʻa ke kumu e hāʻule nui ai ka hana ʻikepili, a hiki i kahi haʻahaʻa o ka hana cluster ma mua o ka hoʻokahi laʻana.

ʻO ka hoʻohana pono ʻana o Oracle RAC ʻo ia ka hoʻokaʻawale kino ʻana i ka ʻikepili (no ka laʻana, me ka hoʻohana ʻana i kahi mīkini papaʻaina i hoʻokaʻawale ʻia) a komo i kēlā me kēia ʻāpana o nā ʻāpana ma o kahi node i hoʻolaʻa ʻia. ʻO ke kumu nui o ka RAC ʻaʻole ʻo ka hoʻonui ʻia ʻana, akā e hōʻoia i ka hoʻomanawanui hewa.

Inā pau ka pane ʻana i ka puʻuwai, a laila hoʻomaka ka node i ʻike mua i ke kaʻina koho ma ka disk. Inā ʻaʻole ʻike ʻia ka node nalo ma aneʻi, a laila lawe kekahi o nā node i ke kuleana no ka hoʻihoʻi ʻana i ka ʻikepili:

  • "hoʻokuʻu" i nā ʻaoʻao āpau i loko o ka huna huna o ka node nalo;
  • heluhelu i nā lāʻau (redo) o ka node nalo a hoʻopili hou i nā hoʻololi i hoʻopaʻa ʻia i kēia mau moʻolelo, me ka nānā ʻana inā loaʻa i nā node ʻē aʻe nā mana hou o nā ʻaoʻao i hoʻololi ʻia;
  • hoʻihoʻi i nā hana e kali ana.

No ka maʻalahi o ka hoʻololi ʻana ma waena o nā nodes, aia ʻo Oracle i ka manaʻo o kahi lawelawe - kahi hiʻohiʻona virtual. Hiki i kahi laʻana ke lawelawe i nā lawelawe he nui, a hiki i kahi lawelawe ke neʻe ma waena o nā nodes. ʻO kahi laʻana noi e lawelawe ana i kekahi ʻāpana o ka waihona (no ka laʻana, kahi hui o nā mea kūʻai aku) e hana pū me hoʻokahi lawelawe, a neʻe ka lawelawe kuleana no kēia ʻāpana o ka waihona i kahi node ʻē aʻe ke hāʻule kahi node.

IBM Pure Data Systems for Transactions

Ua ʻike ʻia kahi hoʻonā hui no DBMS i ka waihona Blue Giant ma 2009. Ideologically, ʻo ia ka mea pani o ka hui ʻo Parallel Sysplex, i kūkulu ʻia ma nā mea "maʻamau". Ma 2009, ua hoʻokuʻu ʻia ʻo DB2 pureScale, kahi polokalamu lako polokalamu, a ma 2012, hāʻawi ʻo IBM i kahi mea hana i kapa ʻia ʻo Pure Data Systems for Transactions. ʻAʻole pono e huikau me Pure Data Systems for Analytics, ʻaʻole ia he mea ʻē aʻe ma mua o kahi inoa hou ʻo Netezza.

I ka nānā mua ʻana, ua like ka pureScale architecture me Oracle RAC: ma ke ʻano like, pili kekahi mau nodes i kahi ʻōnaehana mālama ʻikepili maʻamau, a holo kēlā me kēia node i kāna hiʻohiʻona DBMS me kāna mau wahi hoʻomanaʻo a me nā moʻolelo kālepa. Akā, ʻaʻole like me Oracle, loaʻa iā DB2 kahi lawelawe laka paʻa i hōʻike ʻia e kahi hoʻonohonoho o nā kaʻina db2LLM*. I loko o kahi hoʻonohonoho cluster, kau ʻia kēia lawelawe ma kahi node ʻokoʻa, i kapa ʻia ʻo coupling facility (CF) ma Parallel Sysplex, a me PowerHA i Pure Data.

Hāʻawi ʻo PowerHA i nā lawelawe penei:

  • luna laka;
  • huna huna honua;
  • wahi o nā kamaʻilio interprocess.

No ka hoʻoili ʻana i ka ʻikepili mai PowerHA i nā nodes waihona a i hope, hoʻohana ʻia ka ʻike hoʻomanaʻo mamao, no laila pono ke kākoʻo o ka hui hui i ka protocol RDMA. Hiki iā PureScale ke hoʻohana i ka Infiniband a me RDMA ma luna o Ethernet.

Hoʻolaha ʻia ʻo DBMS no ka ʻoihana

Inā pono kahi node i kahi ʻaoʻao, a ʻaʻole kēia ʻaoʻao i loko o ka cache, a laila noi ka node i ka ʻaoʻao i ka huna honua, a inā ʻaʻole ia, heluhelu ia mai ka disk. ʻAʻole like me Oracle, hele wale ka noi i PowerHA, ʻaʻole i nā nodes kokoke.

Inā hoʻololi kekahi lālani i kahi lālani, hoʻopaʻa ia i ke ʻano kūʻokoʻa, a me ka ʻaoʻao kahi i loaʻa ai ka lālani ma ke ʻano kaʻana like. Hoʻopaʻa inoa ʻia nā laka a pau i ka luna hoʻokele honua. Ke hoʻopau ke kālepa, hoʻouna ka node i kahi leka i ka luna laka, nāna e kope i ka ʻaoʻao i hoʻololi ʻia i ka huna honua, hoʻokuʻu i nā laka, a hōʻole i ka ʻaoʻao i hoʻololi ʻia i nā huna o nā nodes ʻē aʻe.

Inā ua paʻa ka ʻaoʻao kahi i hoʻololi ʻia ai ka lālani, a laila e heluhelu ka luna laka i ka ʻaoʻao i hoʻololi ʻia mai ka hoʻomanaʻo o ka node i hana i ka hoʻololi, hoʻokuʻu i ka laka, hoʻopau i ka ʻaoʻao i hoʻololi ʻia i nā huna o nā node ʻē aʻe, a hāʻawi i ka laka ʻaoʻao i ka node i noi ai.

"Dirty", ʻo ia hoʻi, hoʻololi ʻia, hiki ke kākau ʻia nā ʻaoʻao i ka diski mai kahi node maʻamau a mai PowerHA (castout).

Inā hāʻule kekahi o nā node pureScale, ua kaupalena ʻia ka hoʻihoʻi ʻana i kēlā mau hana ʻaʻole i hoʻopau ʻia i ka manawa o ka hāʻule: ʻo nā ʻaoʻao i hoʻololi ʻia e kēlā node i nā hana i hoʻopau ʻia aia i loko o ka huna honua ma PowerHA. Hoʻomaka hou ka node i kahi hoʻonohonoho hoʻohaʻahaʻa ma kekahi o nā kikowaena i loko o ka pūʻulu, hoʻihoʻi i nā hana e kali nei a hoʻokuʻu i nā laka.

E holo ana ka PowerHA ma nā kikowaena ʻelua a hoʻihoʻi ka haku node i kona mokuʻāina i ka manawa like. Inā hāʻule ka puʻupuʻu PowerHA mua, hoʻomau ka pūʻulu me ka node hoʻihoʻi.
ʻOiaʻiʻo, inā ʻoe e komo i ka ʻikepili i hoʻonohonoho ʻia ma o ka node hoʻokahi, ʻoi aku ka kiʻekiʻe o ka hana holoʻokoʻa o ka hui. Hiki iā PureScale ke hoʻomaopopo i ka hana ʻia ʻana o kekahi wahi o ka ʻikepili e hoʻokahi node, a laila e hana ʻia nā laka āpau e pili ana i kēlā wahi e ka node me ka ʻole e kamaʻilio pū me PowerHA. Akā i ka manawa e hoʻāʻo ai ka noi e komo i kēia ʻikepili ma o kahi node ʻē aʻe, e hoʻomaka hou ka hana paʻa kikowaena.

ʻO nā hoʻokolohua kūloko o IBM ma kahi haʻahaʻa hana o 90% heluhelu a me 10% kākau, kahi mea like loa me nā hana hana hana honua maoli, hōʻike kokoke i ka scaling linear a hiki i 128 nodes. ʻAʻole i hōʻike ʻia nā kūlana hoʻāʻo.

HPE NonStop SQL

Loaʻa i ka waihona Hewlett-Packard Enterprise kona kahua ponoʻī loa. ʻO kēia ka papahana NonStop, i hoʻokuʻu ʻia i ka mākeke ma 1976 e Tandem Computers. I ka makahiki 1997, ua loaʻa ka hui e Compaq, a ua hui pū me Hewlett-Packard i ka makahiki 2002.

Hoʻohana ʻia ʻo NonStop e kūkulu i nā noi koʻikoʻi - no ka laʻana, HLR a i ʻole ka hana kāleka panakō. Hāʻawi ʻia ka paepae ma ke ʻano o kahi lako polokalamu a me ka paʻakikī (mea hoʻohana), e komo pū ana me nā nodes computing, kahi ʻōnaehana mālama ʻikepili a me nā lako kamaʻilio. ʻO ka pūnaewele ServerNet (ma nā ʻōnaehana hou - Infiniband) lawelawe ʻelua no ka hoʻololi ʻana ma waena o nā nodes a no ke komo ʻana i ka ʻōnaehana mālama ʻikepili.

Ua hoʻohana ʻia nā ʻano mua o ka ʻōnaehana i nā kaʻina hana proprietary i hui pū ʻia me kekahi: ua hana ʻia nā hana a pau e nā kaʻina hana, a i ka wā i hana hewa ai kekahi o nā mea hana, ua hoʻopau ʻia, a hoʻomau ka hana ʻelua. Ma hope mai, ua hoʻololi ka ʻōnaehana i nā kaʻina hana maʻamau (MIPS mua, a laila ʻo Itanium a hope x86), a hoʻomaka nā ʻano hana ʻē aʻe e hoʻohana no ka hoʻonohonoho ʻana:

  • nā memo: i kēlā me kēia kaʻina ʻōnaehana he māhoe "aka", kahi e hoʻouna ai ke kaʻina hana i kēlā me kēia manawa i nā leka e pili ana i kona kūlana; inā hāʻule ke kaʻina hana nui, hoʻomaka ka hana o ke aka mai ka manawa i hoʻoholo ʻia e ka memo hope;
  • koho pāloka: loaʻa i ka ʻōnaehana hoʻopaʻa ʻana kahi ʻāpana lako lako kūikawā e ʻae i nā komo like like ʻole a hoʻokō iā lākou inā pili nā mea komo; Ma kahi o ka synchronization kino, hana nā mea hana asynchronously, a hoʻohālikelike ʻia nā hopena o kā lākou hana i nā manawa I/O wale nō.

Mai ka makahiki 1987, e holo ana kekahi DBMS pili ma ke kahua NonStop - SQL/MP mua, a ma hope mai SQL/MX.

Hoʻokaʻawale ʻia ka ʻikepili holoʻokoʻa i nā ʻāpana, a ʻo kēlā me kēia ʻāpana ke kuleana no kāna kaʻina hana Data Access Manager (DAM). Hāʻawi ia i ka hoʻopaʻa ʻana i ka ʻikepili, caching, a me nā mīkini laka. Lawe ʻia ka hoʻoili ʻana i ka ʻikepili e ka Executor Server Processes e holo ana ma nā nodes like me nā luna ʻikepili pili. Hoʻokaʻawale ka mea hoʻonohonoho SQL/MX i nā hana ma waena o nā mea hoʻokō a hōʻuluʻulu i nā hopena. Inā pono e hana i nā hoʻololi i ʻae ʻia, hoʻohana ʻia ka protocol commit ʻelua i hāʻawi ʻia e ka waihona TMF (Transaction Management Facility).

Hoʻolaha ʻia ʻo DBMS no ka ʻoihana

Hiki i ka NonStop SQL ke hoʻonohonoho mua i nā kaʻina hana i ʻole e hoʻopilikia nā nīnau loiloi lōʻihi i ka hoʻokō ʻana. Eia nō naʻe, ʻo kāna kumu, ʻo ia ka hana ʻana i nā kālepa pōkole, ʻaʻole ka analytics. Hōʻoia ka mea hoʻomohala i ka loaʻa ʻana o ka hui NonStop ma ke kiʻekiʻe o ʻelima "nines", ʻo ia hoʻi, he 5 mau minuke wale nō ka downtime i kēlā me kēia makahiki.

ʻO SAP HANA

ʻO ka hoʻokuʻu paʻa mua o ka HANA DBMS (1.0) i mālama ʻia i Nowemapa 2010, a ua hoʻololi ʻia ka pūʻolo SAP ERP iā HANA i Mei 2013. Hoʻokumu ʻia ka paepae ma nā ʻenehana i kūʻai ʻia: TREX Search Engine (search in columnar storage), P*TIME DBMS a me MAX DB.

ʻO ka huaʻōlelo "HANA" ponoʻī he acronym, High performance ANalytical Appliance. Hāʻawi ʻia kēia DBMS ma ke ʻano o ke code e hiki ke holo ma nā kikowaena x86, akā naʻe, ʻae ʻia nā hoʻonohonoho ʻoihana ma nā lako i hōʻoia ʻia. Loaʻa nā haʻina mai HP, Lenovo, Cisco, Dell, Fujitsu, Hitachi, NEC. Hiki i kekahi mau hoʻonohonoho Lenovo ke ʻae i ka hana me ka ʻole o kahi SAN - ke kuleana o kahi ʻōnaehana mālama maʻamau e pāʻani ʻia e kahi pūʻulu GPFS ma nā disks kūloko.

ʻAʻole like me nā paepae i helu ʻia ma luna nei, ʻo HANA kahi DBMS i hoʻomanaʻo ʻia, ʻo ia hoʻi, mālama ʻia ke kiʻi ʻikepili mua ma RAM, a ʻo nā lāʻau a me nā kiʻi paʻi kiʻi i kākau ʻia i ka disk no ka hoʻihoʻi ʻana i ka wā o kahi pōʻino.

Hoʻolaha ʻia ʻo DBMS no ka ʻoihana

ʻO kēlā me kēia puʻupuʻu HANA ke kuleana no kāna ʻāpana ponoʻī o ka ʻikepili, a mālama ʻia ka palapala ʻikepili i kahi ʻāpana kūikawā - Name Server, aia ma ka node coordinator. ʻAʻole paʻa ʻia ka ʻikepili ma waena o nā node. Hoʻopaʻa ʻia ka ʻike laka ma kēlā me kēia node, akā aia ka ʻōnaehana i kahi mea ʻike maka honua.

Ke hoʻopili ka mea kūʻai HANA i kahi hui, hoʻoiho ʻo ia i kāna topology a laila hiki ke komo pololei i kekahi node, e pili ana i ka ʻikepili e pono ai. Inā pili ka hana i ka ʻikepili o kahi node hoʻokahi, a laila hiki ke hoʻokō ʻia ma ka ʻāina e kēlā node, akā inā hoʻololi ka ʻikepili o kekahi mau node, hoʻopili ka node hoʻomaka i ka node coordinator, nāna e wehe a hoʻonohonoho i ke kālepa i puʻunaue ʻia. i hoʻopaʻa ʻia i ka protocol commit ʻelua.

Hoʻopili kope ʻia ka node coordinator, no laila inā hāʻule ka coordinator, lawe koke ka node backup. Akā inā hāʻule ka node me ka ʻikepili, ʻo ke ala wale nō e komo ai i kāna ʻikepili ke hoʻomaka hou i ka node. Ma ke ʻano maʻamau, mālama nā pūʻulu HANA i kahi kikowaena kaʻawale i mea e hoʻomaka hou ai i kahi node nalowale ma luna o ka wikiwiki.

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka