Kuwonjezeka kwakukulu kwa database kumaphatikizapo kuwonjezeka kwa kusadziŵika bwino.
Ndikufuna kuthokoza Emmanuel Odeke, Rein Henrichs ndi ena chifukwa cha ndemanga zawo pa mtundu wakale wa nkhaniyi.
Ndinu mwayi ngati 99,999% ya nthawi yomwe maukonde sakuyambitsa mavuto.
Funso limakhalabe la momwe matekinoloje amakono odalirika alili komanso kangati machitidwe amatsika chifukwa cha kulephera kwa maukonde. Zambiri pankhaniyi ndizosowa ndipo kafukufuku nthawi zambiri amayendetsedwa ndi mabungwe akuluakulu omwe ali ndi maukonde apadera, zida ndi ogwira ntchito.
Ndi kuchuluka kwa kupezeka kwa 99,999% kwa Spanner (database ya Google padziko lonse lapansi), Google imanena kuti 7,6% mavuto okhudzana ndi netiweki. Nthawi yomweyo, kampaniyo imatcha maukonde ake apadera "mzati waukulu" wopezeka kwambiri. Phunzirani Bailis ndi Kingsbury, yomwe idachitika mu 2014, ikutsutsa imodzi mwa "malingaliro olakwika okhudza kugawa makompyuta", yomwe Peter Deutsch adapanga mu 1994. Kodi maukondewa ndi odalirika?
Kafukufuku wokwanira kunja kwa makampani akuluakulu, opangidwa pa intaneti ambiri, kulibe. Palibenso deta yokwanira kuchokera kwa osewera akuluakulu ponena za kuchuluka kwa mavuto amakasitomala awo okhudzana ndi netiweki. Tikudziwa bwino za kuzimitsidwa kwapaintaneti ya opereka mtambo akuluakulu omwe amatha kutsitsa gawo lonse la intaneti kwa maola angapo chifukwa ndizochitika zapamwamba zomwe zimakhudza anthu ambiri ndi makampani. Kuzimitsa kwa ma netiweki kumatha kuyambitsa mavuto nthawi zambiri, ngakhale sizinthu zonsezo zomwe zili pachiwonetsero. Makasitomala a mautumiki amtambo nawonso sakudziwa chilichonse chokhudza zomwe zimayambitsa mavuto. Ngati pali kulephera, ndikosatheka kunena kuti chifukwa cha vuto la netiweki kumbali ya wothandizira. Kwa iwo, mautumiki a chipani chachitatu ndi mabokosi akuda. Sizingatheke kuwunika momwe zingakhudzire popanda kukhala wothandizira wamkulu.
Poganizira zomwe osewera akuluakulu amafotokoza za machitidwe awo, ndibwino kunena kuti muli ndi mwayi ngati zovuta zapaintaneti zimangotengera zochepa chabe zazovuta zomwe zingachitike. Kuyankhulana kwa ma netiweki kumavutitsidwabe ndi zinthu wamba monga kulephera kwa ma hardware, kusintha kwa topology, kusintha kwa kachitidwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe ka kayendetsedwe kake, ndi kuzimitsa kwa magetsi. Posachedwapa, ndinadabwa kumva kuti mndandanda wa zovuta zomwe zingatheke zinawonjezeredwa kuluma shark (inde, mwamva bwino).
ACID imatanthauza zinthu zosiyanasiyana
ACID imayimira Atomicity, Consistency, Isolation, Reliability. Zochita izi zimapangidwira kuti zitsimikizire kutsimikizika kwawo pakagwa zolephera, zolakwika, kulephera kwa hardware, ndi zina zotero. Popanda ACID kapena njira zofananira, zingakhale zovuta kwa opanga mapulogalamu kuti asiyanitse zomwe ali ndi udindo ndi zomwe database imayang'anira. Ma database ambiri ogwirizana amayesa kukhala ogwirizana ndi ACID, koma njira zatsopano monga NoSQL zapangitsa kuti pakhale ma database ambiri opanda ACID chifukwa ndi okwera mtengo kukhazikitsa.
mlingo Zosasinthika amachepetsa chiopsezo cha mitundu ya data, pomwe amakhala okwera mtengo kwambiri kukhazikitsa ndikupangitsa kuti pakhale mpikisano wokwera kwambiri pamakina. Miyezo ina yodzipatula ndiyosavuta kukhazikitsa, koma onjezerani mwayi wamitundu yama data. Ma DBMS ena amakulolani kuti muyike mulingo wodzipatula, ena amakhala ndi zokonda zamphamvu ndipo si magulu onse omwe amathandizidwa.
Thandizo la magawo odzipatula nthawi zambiri limalengezedwa mu DBMS yopatsidwa, koma kufufuza mosamala za khalidwe lake kungasonyeze zomwe zikuchitikadi.
Kuwunikidwanso kwa concurrency anomalies pamilingo yodzipatula yosiyana ya ma DBMS osiyanasiyana
Martin Kleppmann mu ntchito yake malimidwe Poyerekeza milingo yodzipatula yosiyana, imakamba za zosokoneza za concurrency, komanso ngati nkhokweyo imatha kumamatira pamlingo wina wodzipatula. Kafukufuku wa Kleppmann akuwonetsa momwe opanga ma database osiyanasiyana amaganizira za kudzipatula.
Kuletsa kumatha kukhala okwera mtengo kwambiri, osati chifukwa kumawonjezera mpikisano mu database, komanso chifukwa kumafunika ma seva ogwiritsira ntchito kuti azilumikizana nthawi zonse ndi database. Kugawanika kwa ma netiweki kumatha kukulitsa zochitika zotsekera zokhazokha ndikupangitsa kuti pakhale zotsekeka zomwe zimakhala zovuta kuzizindikira ndikuzithetsa. Ngati kutseka kokha sikuli koyenera, kutseka mwachiyembekezo kumathandiza.
Kuyembekezera loko ndi njira yomwe powerenga chingwe, imaganizira mtundu wake, checksum, kapena nthawi yomaliza kusinthidwa. Izi zimakupatsani mwayi kuti muwonetsetse kuti palibe kusintha kwa atomiki musanasinthe cholowa:
UPDATE products
SET name = 'Telegraph receiver', version = 2
WHERE id = 1 AND version = 1
Pankhaniyi, kusintha tebulo products sichidzachitika ngati ntchito ina idasintha kale mzerewu. Ngati palibe ntchito zina zomwe zidachitika pamzerewu, kusintha kwa mzere umodzi kudzachitika ndipo titha kunena kuti zosinthazo zidapambana.
Palinso zolakwika zina kupatula zowerengera zonyansa komanso kutayika kwa data
Pankhani ya kusasinthika kwa data, kuyang'ana kwambiri ndi kuthekera kwa mikhalidwe yamtundu yomwe ingayambitse kuwerengera konyansa ndi kutayika kwa data. Komabe, zosokoneza za data sizimatha pamenepo.
Chitsanzo chimodzi cha zolakwika zotere ndi kujambula kupotoza (lembani skews). Zopotoka zimakhala zovuta kuzizindikira chifukwa nthawi zambiri sizimafufuzidwa mwachangu. Sali chifukwa cha kuwerenga konyansa kapena kutayika kwa data, koma kuphwanya zopinga zomveka zomwe zimayikidwa pa data.
BEGIN tx1; BEGIN tx2;
SELECT COUNT(*)
FROM operators
WHERE oncall = true;
0 SELECT COUNT(*)
FROM operators
WHERE oncall = TRUE;
0
UPDATE operators UPDATE operators
SET oncall = TRUE SET oncall = TRUE
WHERE userId = 4; WHERE userId = 2;
COMMIT tx1; COMMIT tx2;
M'mikhalidwe yomwe ili pamwambapa, chivundi chambiri chidzachitika ngati zonse ziwiri zachitika bwino. Ngakhale kuti panalibe zowerengera zonyansa kapena kutayika kwa deta, kukhulupirika kwa deta kunasokonekera: tsopano anthu awiri amaganiziridwa pa-call pa nthawi imodzi.
Kudzipatula kotsatizana, kapangidwe ka schema, kapena zopinga za database zitha kuthandizira kuthetsa ziphuphu. Madivelopa akuyenera kuzindikira zovuta zotere panthawi yachitukuko kuti apewe kupanga. Nthawi yomweyo, zosokoneza zojambulitsa zimakhala zovuta kwambiri kuziyang'ana mu code base. Makamaka m'machitidwe akuluakulu, pamene magulu osiyanasiyana a chitukuko ali ndi udindo wogwiritsa ntchito ntchito zochokera kumatebulo omwewo ndipo sagwirizana ndi zenizeni za kupeza deta.
Malo osungirako zinthu zakale ndi wogwiritsa ntchito samagwirizana nthawi zonse pazomwe angachite
Chimodzi mwazinthu zazikulu za database ndi chitsimikizo cha dongosolo la kuphedwa, koma dongosololi palokha silingakhale lowonekera kwa wopanga mapulogalamu. Madatabase amachita zinthu motsatira dongosolo lomwe alandilidwa, osati mu dongosolo lomwe olemba mapulogalamu akufuna. Dongosolo la zochitika ndizovuta kulosera, makamaka pamakina odzaza kwambiri.
Poyang'ana koyamba, mu pulogalamu yomwe ili pansipa, T1 ndi T2 zimatchedwa sequentially, koma ngati izi sizikulepheretsa ndipo nthawi yomweyo bweretsani zotsatira mu mawonekedwe. lonjezo, ndiye kuti kuyitanitsa kudzadziwika ndi nthawi yomwe adalowa mu database:
Sharding-level-level sharding ikhoza kusunthidwa kunja kwa pulogalamuyo
Sharding ndi njira yogawanitsa database mozungulira. Ma database ena amatha kugawanitsa deta mozungulira, pomwe ena sangathe, kapena samadziwa bwino. Pamene omanga deta/madivelopa amatha kulosera ndendende momwe deta idzafikire, amatha kupanga magawo opingasa m'malo ogwiritsira ntchito m'malo mopereka ntchitoyi ku database. Njirayi imatchedwa "application-level sharding" (Sharding-level application).
Tsoka ilo, dzinali nthawi zambiri limapanga malingaliro olakwika akuti sharding amakhala mu ntchito zofunsira. M'malo mwake, imatha kukhazikitsidwa ngati gawo losiyana kutsogolo kwa database. Kutengera kukula kwa data ndi kubwereza kwa schema, zofunikira za sharding zitha kukhala zovuta. Njira zina zitha kupindula ndikutha kubwereza popanda kuyikanso ma seva ogwiritsira ntchito.
Chitsanzo cha zomangamanga zomwe ma seva ogwiritsira ntchito amasiyanitsidwa ndi ntchito ya sharding
Kusuntha sharding mu ntchito yosiyana kumakulitsa luso logwiritsa ntchito njira zosiyanasiyana za sharding popanda kufunikira kuyikanso mapulogalamu. Vitess ndi chitsanzo cha sharding dongosolo chotero pa mlingo ntchito. Vitess imapereka sharding yopingasa ya MySQL ndipo imalola makasitomala kuti alumikizane nayo kudzera mu protocol ya MySQL. Dongosololi limagawaniza deta m'malo osiyanasiyana a MySQL omwe sadziwa chilichonse chokhudza wina ndi mnzake.
Autoincrementing kungakhale koopsa
AUTOINCREMENT ndi njira yodziwika bwino yopangira makiyi oyambira. Nthawi zambiri pamakhala zochitika pomwe ma database amagwiritsidwa ntchito ngati ma ID generator, ndipo nkhokweyo imakhala ndi matebulo opangidwa kuti apange zozindikiritsa. Pali zifukwa zingapo zomwe kupanga makiyi oyambira pogwiritsa ntchito auto-incrementing sikuli bwino:
Mu database yogawidwa, auto-incrementing ndi vuto lalikulu. Kuti mupange ID, loko yapadziko lonse ikufunika. M'malo mwake, mutha kupanga UUID: izi sizifunikira kuyanjana pakati pa ma node osiyanasiyana. Kuchulukitsa ndi zotsekera kungayambitse mikangano ndikuchepetsa kwambiri magwiridwe antchito pamikhalidwe yogawidwa. Ma DBMS ena (mwachitsanzo, MySQL) angafunike kusinthidwa mwapadera komanso kusamala kwambiri kuti mukonzekere bwino kubwereza kwa master-master. Ndipo ndizosavuta kulakwitsa pokonzekera, zomwe zingayambitse kulephera kujambula.
Ma database ena ali ndi ma algorithms ogawa kutengera makiyi oyambira. Ma ID otsatizana amatha kubweretsa malo otentha osayembekezereka ndikuwonjezera katundu pamagawo ena pomwe ena amakhala opanda ntchito.
Chinsinsi choyambirira ndi njira yachangu kwambiri yopezera mizere mu database. Ndi njira zabwino zodziwira ma rekodi, ma ID otsatizana amatha kusintha gawo lofunikira kwambiri m'matebulo kukhala gawo lopanda phindu lodzaza ndi zinthu zopanda tanthauzo. Chifukwa chake, ngati kuli kotheka, chonde sankhani kiyi yapadera yapadziko lonse komanso yachilengedwe (monga dzina lolowera).
Musanasankhe njira, ganizirani momwe ma ID odzipangira okha ndi ma UUID pa indexing, partitioning, and sharding.
Multiversion Concurrency Control (MVCC) imagwiritsa ntchito zofunikira zambiri zomwe zidakambidwa mwachidule pamwambapa. Ma database ena (mwachitsanzo, Postgres, Spanner) amagwiritsa ntchito MVCC "kudyetsa" zochitika ndi zithunzithunzi-mitundu yakale ya nkhokwe. Zochita za Snapshot zitha kusinthidwanso kuti zitsimikizire kusasinthika. Mukamawerenga chithunzi chakale, deta yakale imawerengedwa.
Kuwerenga zachikale pang'ono kungakhale kothandiza, mwachitsanzo, popanga analytics kuchokera ku datayo kapena powerengera pafupifupi ma aggregate values.
Ubwino woyamba wogwirira ntchito ndi zomwe zasungidwa kale ndi latency yochepa (makamaka ngati nkhokwe ikugawidwa m'malo osiyanasiyana). Chachiwiri ndi chakuti zowerengera-zokha sizimatseka. Uwu ndi mwayi waukulu kwa mapulogalamu omwe amawerenga kwambiri, bola atha kuthana ndi data yakale.
Seva ya pulogalamuyo imawerenga zomwe zalembedwa m'deralo zomwe zatha masekondi 5, ngakhale mtundu waposachedwa ukupezeka kutsidya lina la Pacific Ocean.
Chinsinsi chosungidwa bwino mu sayansi yamakompyuta ndikuti ma API onse anthawi amanama. Ndipotu makina athu sadziwa nthawi yeniyeni. Makompyuta amakhala ndi makristasi a quartz omwe amapanga ma vibrate omwe amagwiritsidwa ntchito kusunga nthawi. Komabe, sizolondola mokwanira ndipo zitha kukhala patsogolo / kutsalira nthawi yeniyeni. Kusintha kumatha kufika masekondi 20 patsiku. Chifukwa chake, nthawi pamakompyuta athu iyenera kulumikizidwa nthawi ndi nthawi ndi intaneti.
Ma seva a NTP amagwiritsidwa ntchito polumikizana, koma njira yolumikizira yokha imatha kuchedwa. Ngakhale kulunzanitsa ndi seva ya NTP pamalo amodzi a data kumatenga nthawi. Zikuwonekeratu kuti kugwira ntchito ndi seva yapagulu ya NTP kungayambitse kusokonekera kwakukulu.
Mawotchi a atomiki ndi GPS anzawo ndi abwino kudziwa nthawi yomwe ilipo, koma ndi okwera mtengo ndipo amafunikira kukhazikitsidwa kovutirapo, kotero sangathe kuyikika pagalimoto iliyonse. Pachifukwa ichi, malo opangira data amagwiritsa ntchito njira yamagulu. Mawotchi a atomiki ndi/kapena GPS amawonetsa nthawi yeniyeni, pambuyo pake amawulutsidwa kumakina ena kudzera pa maseva apachiwiri. Izi zikutanthauza kuti makina aliwonse amakumana ndi kuchotsera kwina kuchokera nthawi yeniyeni.
Zinthu zimakulitsidwa chifukwa chakuti mapulogalamu ndi nkhokwe nthawi zambiri zimakhala pamakina osiyanasiyana (ngati sizili m'malo osiyanasiyana). Chifukwa chake, nthawiyo idzasiyana osati pa ma DB okha omwe amagawidwa pamakina osiyanasiyana. Zidzakhalanso zosiyana pa seva yogwiritsira ntchito.
Google TrueTime imatenga njira yosiyana kwambiri. Anthu ambiri amakhulupirira kuti kupita patsogolo kwa Google kumbali iyi kumafotokozedwa ndi kusintha kwa banal ku mawotchi a atomiki ndi GPS, koma ichi ndi gawo limodzi la chithunzi chachikulu. Umu ndi momwe TrueTime imagwirira ntchito:
TrueTime imagwiritsa ntchito magwero awiri osiyana: GPS ndi mawotchi a atomiki. Mawotchiwa ali ndi mitundu yolephera yolumikizana. [Onani tsamba 5 kuti mumve zambiri apa - pafupifupi. transl.), kotero kugwiritsa ntchito kwawo pamodzi kumawonjezera kudalirika.
TrueTime ili ndi API yachilendo. Imabwezeretsa nthawi ngati nthawi yokhala ndi cholakwika chamiyeso ndi kusatsimikizika komwe kumapangidwira. Mphindi yeniyeni mu nthawi ili kwinakwake pakati pa malire apamwamba ndi apansi a nthawiyi. Spanner, nkhokwe ya Google yogawa, imangodikirira mpaka zili bwino kunena kuti nthawi yatha. Njirayi imayambitsa latency mu dongosolo, makamaka ngati kusatsimikizika kwa ambuye kuli kwakukulu, koma kumatsimikizira kulondola ngakhale kugawidwa padziko lonse lapansi.
Nthawi zina machitidwe a DBMS ndi zolephera zake zimatchulidwa polemba / kuwerenga kuwerenga ndi latency. Izi zimapereka chithunzithunzi cha magawo ofunikira, koma powunika momwe DBMS yatsopano ikugwirira ntchito, njira yowonjezereka ndiyo kuyesa padera ntchito zovuta (pafunso lililonse ndi / kapena kugulitsa). Zitsanzo:
Lembani machulukitsidwe ndi kuchedwa pamene mukulowetsa mzere watsopano mu tebulo X (ndi mizere 50 miliyoni) ndi zolepheretsa zodziwika ndi zomangirira mizere mu matebulo ogwirizana.
Kuchedwerako kuwonetsa mabwenzi a mabwenzi a munthu wina wogwiritsa ntchito pomwe chiŵerengero cha mabwenzi chili 500.
Kuchedwa pakubweza zolemba zapamwamba 100 kuchokera m'mbiri ya wogwiritsa ntchito pomwe wogwiritsa ntchito atsatira ena 500 ogwiritsa ntchito X pa ola limodzi.
Kuwunika ndi kuyesa kungaphatikizepo milandu yovuta mpaka mutakhala ndi chidaliro kuti nkhokwe ikukwaniritsa zofunikira zantchito. Lamulo lofananira la chala chachikulu limaganiziranso kusokonekera kumeneku posonkhanitsa ma metric a latency ndikuzindikira ma SLO.
Chenjerani ndi makhadi okwera kwambiri potolera ma metric pa ntchito iliyonse. Gwiritsani ntchito zipika, zosonkhanitsira zochitika, kapena kutsatiridwa kogawa kuti mupeze data yothetsa vuto lamphamvu kwambiri. M'nkhani yakuti "Mukufuna Kuthetsa Latency?» Mutha kudziwa njira zochepetsera zolakwika.
Zogulitsa zomwe zili mu zisa zitha kukhala zowopsa
Ingoganizirani zosanjikiza za data zomwe zimakhala ndi machitidwe angapo (mwachitsanzo. newAccount) yakhazikitsidwa kale muzochita zake. Kodi chimachitika ndi chiyani ngati muwayendetsa ngati gawo lamabizinesi apamwamba kwambiri omwe amayenda mkati mwazochita zake? Kodi kudzipatula ndi kusasinthasintha kukanakhala chiyani pankhaniyi?
function newAccount(id string) {
with newTransaction():
Accounts.create(id)
}
M'malo mofufuza mayankho a mafunso osatha oterowo, ndi bwino kupeŵa kugulitsana zisa. Kupatula apo, wosanjikiza wanu wa data amatha kuchita ntchito zapamwamba kwambiri popanda kupanga zake zokha. Kuphatikiza apo, lingaliro la bizinesi palokha limatha kuyambitsa bizinesi, kuchitapo kanthu, kuchita kapena kuletsa malondawo.
function newAccount(id string) {
Accounts.create(id)
}
// In main application:
with newTransaction():
// Read some data from database for configuration.
// Generate an ID from the ID service.
Accounts.create(id)
Uploads.create(id) // create upload queue for the user.
SELECT * FROM articles where author = "rakyll" order by title;
Zotsatira zitha kubwezedwa m'njira ziwiri:
Full table scan: Mutha kuyang'ana chilichonse chomwe chili patebulo ndikubwezeretsanso zolemba zomwe zili ndi dzina lofananira la wolemba, kenako ndikuyitanitsa.
Index scan: Mutha kugwiritsa ntchito index kuti mupeze ma ID ofanana, pezani mizereyo, kenako ndikuyitanitsa.
Ntchito ya query planner ndiyo kudziwa njira yomwe ili yabwino kwambiri. Ndikoyenera kulingalira kuti okonza mafunso ali ndi mphamvu zochepa zolosera. Izi zingapangitse zosankha zoipa. Ma DBA kapena opanga atha kuzigwiritsa ntchito kuti azindikire ndikuwongolera mafunso omwe sakuyenda bwino. Mabaibulo atsopano a DBMS amatha kukonza okonza mafunso, ndipo kudzidziwitsa nokha kungathandize pokonzanso deta ngati mawonekedwe atsopano amabweretsa mavuto. Mafunso ochedwa, malipoti ochedwa, kapena ziwerengero za nthawi yogwira ntchito zingathandize kuzindikira mafunso omwe akufunika kukhathamiritsa.
Ma metrics ena operekedwa ndi query planner amatha kukhala ndi phokoso (makamaka poyerekezera kuchedwa kapena nthawi ya CPU). Zowonjezera zabwino kwa okonza mapulani ndi zida zotsatirira ndikutsata njira yochitira. Amakulolani kuti muzindikire zovuta zotere (tsoka, si ma DBMS onse omwe amapereka zida zotere).
Kusamuka pa intaneti ndikovuta koma kotheka
Kusamuka kwapaintaneti, kusamuka kwamoyo, kapena kusamuka kwanthawi yeniyeni kumatanthauza kusuntha kuchokera ku database imodzi kupita ku ina popanda kuwononga nthawi kapena kuwonongeka kwa data. Kusamuka kwamoyo ndikosavuta kuchita ngati kusinthaku kumachitika mkati mwa DBMS/injini yomweyo. Zinthu zimakhala zovuta kwambiri pakafunika kusamukira ku DBMS yatsopano yokhala ndi magwiridwe antchito osiyanasiyana komanso zofunikira za schema.
Pali mitundu yosiyanasiyana yosamukira pa intaneti. Nayi imodzi mwa izo:
Yambitsani kulowa kawiri muzosunga zonse ziwiri. Dongosolo latsopanoli pakadali pano lilibe deta yonse, koma amangovomereza zaposachedwa. Mukatsimikiza za izi, mutha kupita ku sitepe yotsatira.
Dongosolo lakale la database ndi kuwerenga kokha. Koperani zomwe zikusowa kuchokera ku database yakale kupita ku yatsopano. Kusamuka kukatha, sinthani njira zopita ku database yatsopano, ndikuyimitsa yakale ndikuyichotsa padongosolo.
Kuti mudziwe zambiri, ndikupangira kulumikizana nkhani, yomwe imafotokoza za njira ya Stripe yosamukira kutengera chitsanzo ichi.
Kuwonjezeka kwakukulu kwa database kumaphatikizapo kuwonjezeka kwa kusadziŵika bwino
Kukula kwa database kumabweretsa mavuto osayembekezereka okhudzana ndi kukula kwake. Tikamadziwa zambiri za kapangidwe ka mkati mwa nkhokwe, m'pamenenso timadziwiratu momwe zidzakulire. Komabe, nthawi zina sizingatheke kudziwiratu.
Pamene maziko akukula, malingaliro am'mbuyomu ndi ziyembekezo zokhudzana ndi kuchuluka kwa deta ndi zofunikira za bandwidth ya netiweki zitha kukhala zachikale. Apa ndi pamene funso likubwera la kukonzanso kwakukulu kwa mapangidwe, kusintha kwakukulu kwa ntchito, kukonzanso kutumizidwa, kapena kusamukira ku ma DBMS ena kuti apewe mavuto omwe angakhalepo.
Koma musaganize kuti chidziwitso chabwino kwambiri chamkati mwa database yomwe ilipo ndiyo yokhayo yomwe ikufunika. Mamba atsopano adzabweretsa zosadziwika zatsopano. Mfundo zowawa zosayembekezereka, kugawa kwa data kosagwirizana, bandwidth yosayembekezereka ndi zovuta za hardware, kuchuluka kwa magalimoto ndi magawo atsopano a maukonde adzakukakamizani kuti muganizirenso njira yanu yachinsinsi, chitsanzo cha deta, chitsanzo chotumizira, ndi kukula kwa deta.