Matsananguriro Ekuita Musiyano Uripo Pakati peSQL neNoSQL kuna Ambuya Vako

Matsananguriro Ekuita Musiyano Uripo Pakati peSQL neNoSQL kuna Ambuya Vako

Imwe yesarudzo dzakanyanya kukosha dzinoitwa nemugadziri nderekuti ndeipi dhatabhesi yekushandisa. Kwemakore mazhinji, sarudzo dzaive dzakaganhurirwa kune dzakasiyana siyana dzehukama dhatabhesi sarudzo dzaitsigira Yakagadziriswa Query Mutauro (SQL). Izvi zvinosanganisira MS SQL Server, Oracle, MySQL, PostgreSQL, DB2 nevamwe vakawanda.

Kwemakore gumi nemashanu apfuura, akawanda matsva eNo-SQL dhatabhesi akaonekwa pamusika. Izvi zvinosanganisira zvitoro zvakakosha-zvakadai seRedis neAmazon DynamoDB, yakakura columnar dhatabhesi seCassandra neHBase, zvitoro zvemagwaro zvakaita seMongoDB neCouchbase, uye dhatabhesi remagraph uye injini dzekutsvaga dzakadai seElasticsearch uye Solr.

Muchikamu chino tichaedza kunzwisisa SQL neNoSQL pasina kupinda mukushanda kwavo.
Uyezve, tichava nekunakidzwa zvishoma mukuita.

Kutsanangura SQL kuna mbuya

Ambuya mufunge kuti handisi ndega muzukuru wenyu. Pane kudaro, Amai naBaba vaidanana setsuro, vakava nevana zana, ndokuzotora vamwe makumi mashanu.

Saka, munotida tose uye hamudi kukanganwa chero mazita edu, mazuva ekuzvarwa, favourite ice cream flavour, masaizi embatya, mafaro, mazita evakaroorana, mazita evana uye zvimwe zvinhu zvakakosha. Zvisinei, ngatitarisei. Une makore 85 okukura uye zvakanaka ndangariro yekare haigoni kutsungirira.

Sezvineiwo, kuva vazukuru vakachenjera, ndinogona kukubatsira. Saka ndinouya kumba kwako, ndotora mapepa mashoma uye ndokumbira kuti ubike makeke tisati tatanga.

Pane rimwe bepa tinonyora runyoro runonzi β€œvazukuru" Every muzukuru yakanyorwa nerumwe ruzivo rwakakosha pamusoro payo, kusanganisira nhamba yakasiyana inozoratidza kuti ndeipi muzukuru ari. Zvakare, nekuda kwehurongwa, tinonyora mazita ane mazita kumusoro kwechinyorwa kuitira kuti tigare tichiziva ruzivo rwuri murondedzero.

id
zita
bhavhdhe
kushanya kwekupedzisira
saizi yezvipfeko
kufarira ice-cream
akabvuma

1
Jimmy
09-22-1992
09-01-2019
L
Mint chokoreti
venhema

2
Jessica
07-21-1992
02-22-2018
M
Rocky road
zvechokwadi

...enderera mberi nerondedzero!

Rondedzero yevazukuru

Mushure mechinguva iwe unozviona zvese uye isu tave kutopedza nerondedzero! Zvisinei, unotendeukira kwandiri woti: β€œTakanganwa kuwedzera nzvimbo yevakaroorana, zvokuzvivaraidza nazvo, vazukuru!” Asi kwete, hatina kukanganwa! Izvi zvinotevera mberi uye zvinoda bepa idzva.

Saka ndinoburitsa rimwe bepa uye pariri tinodaidza rondedzero Vakaroorana. Isu tinowedzera zvakare hunhu hwakakosha kwatiri pakutanga kwechinyorwa uye tanga kuwedzera mumitsara.

id
muzukuru_id
zita
bhavhdhe

1
2
John
06-01-1988

2
9
Fernanda
03-05-1985

... vakaroorana vakawanda!

Rondedzero yevakaroorana

Panguva ino ndinotsanangurira mbuya vangu kuti kana vachida kuziva kuti akaroorwa naani vanongoda kufananidza. id mune rondedzero vazukuru с muzukuru_id mumazita evakaroorana.

Mushure memakuki gumi nemaviri, ndinoda kurara. "Mungaenderera here mbuya?" Ndave kuenda kunorara.

Ndichadzoka mumaawa mashoma. Makanaka ambuya! Zvese zvinotaridzika zvakanaka kunze kwechinyorwa hobby. Pane zvingangoita 1000 zvekuzvivaraidza pane iyo rondedzero. Zvizhinji zvacho zvinodzokorora; Chii chaitika?

muzukuru_id
chitandadzo

1
cu

4
cu

3
cu

7
kumhanya

11
cu

...ngatienderere mberi!

Ndine urombo, ndakanganwa zvachose kutaura! Uchishandisa runyoro rumwe, unogona chete kutevedzera hobby. Zvadaro mune imwe rondedzero tinofanira kuronda vazukuruvari kuita izvi hobby. Tichazvidaidza "Common list". Ndichiona kuti hauzvifarire, ndinotanga kunetseka ndodzokera kulist mode.

id
chitandadzo

1
cu

2
kumhanya

3
kushambira

...zvimwe zvekuzvivaraidza nazvo!

Rondedzero yezvaunofarira

Kana tave nerunyorwa rwedu rwekuzvivaraidza, tinogadzira yedu yechipiri runyorwa uye toidaidza "Zvido zvevazukuru".

muzukuru_id
hobby_id

4
1

3
1

7
2

…zvimwe!

General list yezvido zvevazukuru

Mushure mebasa rese iri, ambuya vava nendangariro inotonhorera yekuchengeta mhuri yavo yakakura zvinoshamisa. Uye zvino - kundichengeta kwenguva refu - anobvunza mubvunzo wemashiripiti: "Wakadzidza kupi kuita zvese izvi?"

Relational Databases

Dhatabhesi rehukama seti yematafura akatsanangurwa zviri pamutemo (mumuenzaniso wedu aya mapepa) kubva kwaunogona kuwana. kupihwa kana kuzviunganidza nenzira dzakasiyana pasina kuronga patsva matafura Database. Kune akawanda marudzi akasiyana ehukama dhatabhesi, asi zvinosuruvarisa kuti rondedzero pabepa haisi imwe yacho.

Chinhu chakasarudzika cheanonyanya kufarirwa hukama dhatabhesi mutauro wemibvunzo SQL (Yakarongwa Query Mutauro). Kuonga kwazviri, kana ambuya vakatamisira ndangariro yavo kukombiyuta, vaigona kukurumidza kuwana mhinduro kumibvunzo yakadai seyokuti: β€œNdiani asina kundishanyira gore rapfuura, akaroora uye haana basa rokuzvivaraidza nazvo?”

Imwe yeanonyanya kufarirwa SQL database manejimendi masisitimu ndiyo yakavhurika sosi MySQL. Iyo inoshandiswa zvakanyanya seyehukama dhatabhesi manejimendi system (RDBMS) yewebhu-based software application.

Zvimwe zvakakosha zveMySQL:

  • Inonyatsozivikanwa, inoshandiswa zvakanyanya uye yakaedzwa zvakakwana.
  • Kune vakawanda vanokwanisa vanogadzira vane ruzivo rwekushanda neSQL uye relational databases.
  • Iyo data inochengetwa mumatafura akasiyana, izvo zvinoita kuti zvive nyore kumisikidza hukama uchishandisa makiyi ekutanga uye ekunze (zviziviso).
  • Zviri nyore kushandisa uye zvinoshanda, zvichiita kuti ive yakanakira mabhizinesi makuru nemadiki.
  • Iyo kodhi kodhi iri pasi pemitemo yeGNU General Public License.

Chikanganwa manje ALL.

Kutsanangura NoSQL kuna mbuya

Ambuya tine mhuri yakakura. Mune vazukuru 150 mairi! Vazhinji vavo vakaroora, vane vana, vanofarira chimwe chinhu, zvichingodaro. Pazera rako hazvibviri kurangarira zvose pamusoro pedu tose. Chaunoda igadziriro yemusoro!

Sezvineiwo, I kwete ndichida kuti ukanganwe zuva rangu rekuzvarwa uye kunakidza kwandinoda kweaizikirimu, ndinogona kubatsira. Saka ndinomhanyira kuchitoro chiri pedyo, tora kabhuku uye udzokere kumba kwako.

Danho rekutanga randinotora nderekunyora "Vazukuru" nemavara makuru matema pabutiro rebhuku rangu. Ipapo ndinotendeukira kupeji rekutanga ndotanga kunyora zvese zvaunoda kurangarira nezvangu. Mushure memaminitsi mashoma peji inotaridzika seizvi.

{ 
  "_id":"dkdigiye82gd87gd99dg87gd",
  "name":"Cody",
  "birthday":"09-12-2006",
  "last_visit":"09-02-2019",
  "clothing_size":"XL",
  "favorite_ice_cream":"Fudge caramel",
  "adopted":false,
  "hobbies":[ 
     "video games",
     "computers",
     "cooking"
  ],
  "spouse":null,
  "kids":[ 

  ],
  "favorite_picture":"file://scrapbook-103/christmas-2010.jpg",
  "misc_notes":"Prefers ice-cream cake on birthday instead of chocolate cake!"
}

Π―: "Zvinoita kunge zvese zvagadzirira!"
Ambuya: "Mira, ko vamwe vazukuru?"
Π―: "Ehe chaizvo. Zvadaro tinogovera peji yeumwe neumwe."
Ambuya: "Ndichafanira kunyora pasi ruzivo rwese rwakafanana kune wese wese sezvandakakuitira iwe?"
Π―: β€œAiwa, kana muchida chete. Rega ndiratidze."
Ndichitora chinyoreso chaambuya vangu, ndinovhura peji yacho ndokurumidza kunyora mashoko pamusoro pemukoma wangu wandaisanyanya kufarira.

{ 
  "_id":"dh97dhs9b39397ss001",
  "name":"Tanner",
  "birthday":"09-12-2008",
  "clothing_size":"S",
  "friend_count":0,
  "favorite_picture":null,
  "remember":"Born on same day as Cody but not as important"
}

Pese apo mbuya vanoda kurangarira chimwe chinhu nezvemumwe wevazukuru vavo, vanongoda chete kuenda kupeji rekurudyi mubhuku renotibhuku revazukuru vavo. Ruzivo rwese pamusoro pavo ruchachengetwa ipapo papeji yavo, iyo yaanogona kukurumidza kuchinja nekuvandudza.

Kana zvese zvaitwa, anobvunza mubvunzo wemashiripiti: "Wakadzidza kupi kuita zvese izvi?"

NoSQL Databases

Kune akawanda NoSQL databases ("kwete chete SQL"). Mumienzaniso yedu takaratidza document database. NoSQL dhatabhesi modhi data munzira dzinobvisa hukama hwetafura hunoshandiswa mune zvehukama dhatabhesi. Aya dhatabhesi akave akakurumbira mukutanga 2000s pakati pemakambani aida cloud-based database clustering nekuda kwesheer scaling zvavanoda (e.g. Facebook). Mumashandisirwo akadai, kuenderana kwedata kwaive kushoma zvakanyanya pane kuita uye scalability.

Pakutanga, NoSQL dhatabhesi dzaiwanzo shandiswa niche data manejimendi mabasa. Chaizvoizvo, kana zvasvika kune webhu uye makore mashandisirwo, NoSQL dhatabhesi yakagadziriswa uye yakagovera akakosha huwandu hwe data. Mainjiniya eNoSQL akafarirawo kuchinjika kweiyo data schema (kana kushomeka kwayo) kuitira kuti shanduko dzekukurumidza dzigoneke mumashandisirwo anokwidziridzwa.

Zvinhu zvakakosha zveNoSQL:

  • Iyo inochinjika nzira yekuchengetedza data
  • Horizontal scaling kusvika masumbu
  • Zvinogoneka kutevedzana kwekushingirira/kuparadzira
  • Zvinyorwa zvinozivikanwa uchishandisa makiyi akasiyana

Kuenzanisa kwakadzama

MySQL inoda yakatsanangurwa uye yakarongeka schema.
NoSQL inokutendera iwe kuchengeta chero data mu "gwaro".

MySQL inotsigirwa nenharaunda yakakura.
NoSQL ine nharaunda diki uye inokurumidza kukura.

NoSQL iri nyore kuyera.
MySQL inoda mamwe manejimendi.

MySQL inoshandisa SQL, iyo inoshandiswa mumhando dzakawanda dzedhatabhesi.
NoSQL idhatabhesi nedhizaini ine yakakurumbira kuita.

MySQL inoshandisa yakajairika query mutauro (SQL).
NoSQL haishandisi mutauro wakajairwa wemubvunzo.

MySQL ine akawanda makuru ekubika maturusi.
NoSQL ine akati wandei maturusi ekubika ayo akaoma kumisa.

MySQL inogona kunge iine nyaya dzekuita kune yakakura data.
NoSQL inopa kuita kwakanyanya pane yakakura data.

Pfungwa 8base

Mukambani 8base, kwandinoshanda, tinosimbaradza nzvimbo yega yega yeprojekiti neAurora MySQL relational database inobatwa paAWS. Nepo NoSQL iri sarudzo ine musoro kana chikumbiro chako chinoda kuita kwepamusoro uye scalability, isu tinotenda kuti yakasimba data kuenderana kunopihwa neDBMS kwakakosha pakuvaka SaaS application uye mamwe mabhizinesi software.

Kune vanotanga uye vanogadzira vanovaka mabhizinesi maapplication anoda kushuma, kutendeseka kwekutengeserana, uye yakanyatsotsanangurwa data modhi, kudyara mune zvehukama dhatabhesi, mumaonero edu, sarudzo chaiyo.

Dzidza zvakawanda nezvekugadzira neAurora, Serverless uye GraphQL ine 8base.com pano.

Source: www.habr.com

Voeg