O se tasi o fa'ai'uga sili ona taua e faia e le tagata fa'atupu o le fa'amaumauga lea e fa'aoga. Mo le tele o tausaga, o filifiliga sa fa'atapula'a i le tele o feso'ota'iga fa'amaumauga fa'amaumauga e lagolagoina Structured Query Language (SQL). E aofia ai le MS SQL Server, Oracle, MySQL, PostgreSQL, DB2 ma le tele o isi.
I le 15 tausaga talu ai, e tele faʻamaumauga fou No-SQL ua faʻaalia i luga o le maketi. O nei mea e aofia ai faleoloa taua-taua pei o Redis ma Amazon DynamoDB, faʻamaumauga lautele faʻamaumauga e pei o Cassandra ma HBase, faleoloa pepa e pei o MongoDB ma Couchbase, ma faʻamaumauga kalafi ma masini suʻesuʻe e pei ole Elasticsearch ma Solr.
I lenei tusiga o le a tatou taumafai e malamalama i le SQL ma le NoSQL e aunoa ma le oʻo i totonu o latou galuega.
Ma le isi, o le a tatou maua sina fiafia i le faagasologa.
Fa'amatala SQL i tinamatua
Tinamatua, manatu faapea e le na o au le atalii o lau fanau. Ae, sa alofa le tasi i le isi e pei o lapiti, e 100 fanau, ona toe vaetamaina lea o le isi 50.
O lea, e te alofa ia i matou uma ma e te le manaʻo e faʻagaloina soʻo se igoa, aso fanau, meaʻai aisakulimi e sili ona fiafia i ai, lapopoa o lavalava, mea e fiafia i ai, igoa o taitoalua, igoa o fanau ma isi mea moni sili ona taua. Peitaʻi, seʻi o tatou fesagaʻia. Ua 85 ou tausaga ma o lou manatua lelei ua le mafai ona gafatia.
O le mea e laki ai, ona o a'u o se tagata sili ona popoto o fanau a lau fanau, e mafai ona ou fesoasoani atu. O lea ou te sau i lou fale, ave i fafo ni nai pepa ma fai atu ia te oe e tao ni kuki ae tatou te lei amata.
I luga o le tasi laupepa matou te faia ai se lisi e taʻua "Fanau a fanau" Ta'itasi tama a loʻu tama fa'amaumauina ma nisi fa'amatalaga taua e uiga i ai, e aofia ai se numera tulaga ese o le a fa'ailoa mai nei po'o fea atalii o le atalii o ia lava. E le gata i lea, mo le lelei o le faʻalapotopotoga, matou te tusia igoa faʻaigoaina i le pito i luga o le lisi ina ia matou iloa i taimi uma le faʻamatalaga o loʻo i ai i le lisi.
id
igoa
aso fanau
asiasiga mulimuli
tele lavalava
aisa kulimi e sili ona fiafia iai
talia
1
Jimmy
09-22-1992
09-01-2019
L
Mint sukalati
sese
2
Jessica
07-21-1992
02-22-2018
M
Auala papa
moni
...faaauau le lisi!
Lisi o fanau a fanau
A maeʻa sina taimi e te faʻavasega uma ma ua toeitiiti uma le lisi! Ae ui i lea, e te liliu mai ia te aʻu ma fai mai: "Ua galo ia i matou le faʻaopoopoina o avanoa mo taitoalua, mea e fiafia i ai, fanau a fanau!" Ae leai, matou te le faagaloina! E soso'o ai ma mana'omia se pepa fou.
O lea ou te toso mai ai i fafo se isi fasipepa ma i luga e taʻua ai le lisi taitoalua. Matou te toe faʻaopoopoina uiga taua ia i matou i le amataga o le lisi ma amata faʻaopoopo i laina.
id
grandchild_id
igoa
aso fanau
1
2
John
06-01-1988
2
9
Fernanda
03-05-1985
...tele taitoalua!
Lisi o taitoalua
I lenei laʻasaga, ou te faʻamatala atu i loʻu tinamatua afai na te fia iloa poʻo ai ua faaipoipo i ai, ona naʻo le mea e manaʻomia ona ia faʻatusatusa. id i le lisi fanau a fanau с grandchild_id i le lisi o taitoalua.
A uma le lua sefulu kuki, ou te manaʻomia se malologa. “E mafai ona e faaauau, tinamatua?” Ou te alu e fai se malologa.
O le a ou toe foʻi mai i ni nai itula. E lelei lou tinamatua! E foliga lelei mea uma vagana ai le lisi mea faʻafiafia. E tusa ma le 1000 mea e fiafia i ai i le lisi. O le tele o ia mea e fai soo; O le a le mea ua tupu?
grandchild_id
mausa
1
tietie uila
4
tietie uila
3
tietie uila
7
tamoʻe
11
tietie uila
...se'i faaauau!
Faamalie atu, ua galo atoa ona ou fai atu! Fa'aaoga le lisi e tasi, e na'o lou siaki mea faʻafiafia. Ona i ai lea i se isi lisi e tatau ona tatou siaki fanau a fanauo lo o faia lenei mea mea faʻafiafia. O le a tatou faaigoa "Lisi masani". I le va'aia e te le fiafia i ai, ua amata ona ou popole ma toe fo'i i le lisi lisi.
id
mausa
1
tietie uila
2
tamoʻe
3
aau
...tele mea fiafia!
Lisi o mea e fiafia i ai
O le taimi lava e maua ai la matou lisi mea e fiafia i ai, matou te faia la matou lisi lona lua ma taʻua "O mea e fiafia i ai fanau a fanau".
grandchild_id
hobby_id
4
1
3
1
7
2
…sili atu!
Lisi lautele o mea e fiafia i ai fanau a fanau
I le maea ai o nei galuega uma, ua maua nei e Tinamatua se masini manatua lelei mo le siakiina o lona aiga maoae tele. Ona sosoo ai lea - ia faʻaumiina aʻu - na ia fesili i le fesili faʻataulāitu: "O fea na e aʻoaʻo ai e fai nei mea uma?"
Fa'amaumauga o feso'ota'iga
Ose feso'ota'iga fa'amaumauga o se seti o laulau fa'amatala aloaia (i la matou fa'ata'ita'iga o pepa ia) e mafai ona e mauaina tuuina atu pe aoina i latou i auala eseese e aunoa ma le toe faatulagaina o laulau Fa'amaumauga. E tele ituaiga eseese o feso'ota'iga fa'amaumauga, ae paga lea o se lisi i luga o se fasipepa e le o se tasi oi latou.
O se vaega fa'apitoa o fa'amaumauga feso'ota'iga sili ona lauiloa o le gagana fesili SQL (Structured Query Language). Faʻafetai i ai, afai e faʻafeiloaʻi e tinamatua lana masini manatua i le komepiuta, e mafai ona vave maua se tali i fesili e pei o: "O ai na le asiasi mai ia te aʻu i le tausaga ua teʻa, ua faaipoipo ma e leai ni mea e fiafia i ai?"
O se tasi o faiga sili ona lauiloa o le SQL database management system o le open source MySQL. O lo'o fa'atinoina muamua e avea o se faiga fa'atautaia fa'amaumauga tu'ufa'atasiga (RDBMS) mo fa'aoga polokalame fa'akomepiuta i luga ole laiga.
O nisi vaega taua o MySQL:
- E fai si lauiloa, fa'aaoga lautele ma fa'ata'ita'iina mae'ae'a.
- E tele atina'e agavaa o lo'o i ai le poto masani e galulue ai ma SQL ma feso'ota'iga fa'amaumauga.
- O faʻamaumauga o loʻo teuina i laulau eseese, lea e faigofie ai ona faʻavae sootaga e faʻaaoga ai ki autu ma fafo (identifiers).
- E faigofie ona faʻaoga ma aoga, ma faʻamaonia mo pisinisi tetele ma laiti.
- O lo'o i lalo ole tulafono ole tulafono ole GNU General Public License.
Ia galo nei UMA.
Fa'amatala le NoSQL i tinamatua
Tinamatua, e toatele lo matou aiga. E 150 fanau a fanau i totonu! O le toatele o i latou ua faaipoipo, ua fai fanau, ua fiafia i se mea, ma isi. I lou matua e le mafai ona manatua mea uma e uiga ia i tatou uma. O le mea e te manaʻomia o se faiga tauloto!
O le mea e lelei ai, o aʻu lē i lou manao ia e faagalo lo'u aso fanau ma le tofo asikulimi e sili ona ou fiafia i ai, e mafai ona ou fesoasoani. O lea ou te tamoe i le faleoloa lata ane, ave se api ma toe foi i lou fale.
O le laasaga muamua ou te faia o le tusi lea o “Afanau a Fanau” i mataitusi tetele tetele i luga o le faavaa o lau api. Ona ou liliu lea i le itulau muamua ma amata ona tusi mea uma e te manaʻomia e manatua e uiga ia te aʻu. A mae'a ni nai minute e fa'apea le itulau.
{
"_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!"
}
Я: “E foliga mai ua saunia mea uma!”
Tinamatua: “Faatali, ae faapefea isi fanau a fanau?”
Я: “Ioe tonu lava. Ona matou vaevaeina lea o se itulau mo taʻitasi.”
Tinamatua: "E tatau ona ou tusia i lalo faʻamatalaga tutusa uma mo tagata uma e pei ona ou faia mo oe?"
Я: “Leai, pe afai e te manao ai. Sei ou faaali atu."
Ma ave le peni a lo'u tinamatua, ou te susueina le itulau ma tusi vave i lalo faamatalaga e uiga i lo'u tausoga e sili ona ou fiafia i ai.
{
"_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"
}
Soo se taimi lava e manaomia ai e tinamatua se mea e manatua e uiga i se tasi o fanau a lana fanau, e na o le alu lava i le itulau sao i le api a fanau a lana fanau. O faʻamatalaga uma e uiga ia i latou o le a teuina iina i luga o la latou itulau, lea e mafai ona vave suia ma faʻafouina.
A maeʻa mea uma, na ia fesili atu i le fesili faʻataulāitu: "O fea na e aʻoaʻo ai e fai nei mea uma?"
NoSQL Fa'amaumauga
E tele NoSQL fa'amaumauga (“e le na o SQL”). I a matou faʻataʻitaʻiga na matou faʻaalia fa'amaumauga fa'amaumauga. NoSQL database faʻataʻitaʻiga faʻamatalaga i auala e faʻaumatia ai sootaga laulau faʻaaogaina i faʻamaumauga fesoʻotaʻiga. O nei faʻamaumauga na lauiloa i le amataga o le 2000s i kamupani na manaʻomia le faʻapipiʻiina o faʻamaumauga i luga o le ao ona o latou manaʻoga faʻapitoa (eg Facebook). I ia fa'aoga, o le fa'atumauina o fa'amaumauga sa sili atu le taua nai lo le fa'atinoga ma le fa'ateleina.
I le amataga, o NoSQL database sa masani ona faʻaaogaina mo galuega faʻatautaia o faʻamatalaga. O le mea moni, pe a oʻo mai i luga o upega tafaʻilagi ma faʻaoga ao, NoSQL faʻamaumauga na faʻatautaia ma tufatufa atu le tele o faʻamaumauga. Na fiafia foi inisinia NoSQL i le fetuutuunai o le fuafuaga o faʻamaumauga (poʻo le leai o se mea) ina ia mafai ai ona vave suiga i talosaga faʻaleleia.
O mea taua ole NoSQL:
- O se auala sili ona fetuutuunai e teu ai faʻamatalaga
- Fa'asa'o fa'asaga i fuifui
- Fa'asologa talafeagai mo le fa'aauau/fa'asalalauina
- Pepa e fa'ailoa e fa'aaoga ai ki tulaga ese
Fa'atusatusaga fa'apitoa
MySQL e manaʻomia se fuafuaga faʻamalamalamaina ma faʻatulagaina.
NoSQL fa'atagaina oe e teu so'o se fa'amatalaga i totonu o se "pepa".
MySQL e lagolagoina e se faʻalapotopotoga tele.
O le NoSQL o loʻo i ai se faʻalapotopotoga laʻititi ma faʻavavevave.
NoSQL e faigofie ona fua.
E manaʻomia e MySQL le faʻaogaina atili.
MySQL faʻaaoga SQL, lea e faʻaaogaina i le tele o ituaiga o faʻamaumauga.
O le NoSQL o se faʻamaumauga e ala i mamanu ma faʻatinoga lauiloa.
MySQL fa'aaoga le gagana fa'atatau (SQL).
E le fa'aogaina e le NoSQL se gagana masani fesili.
O loʻo i ai i MySQL le tele o mea faigaluega faʻasalalau.
O le NoSQL o loʻo i ai le tele o mea faigaluega lipoti e faigata ona faʻavasegaina.
MySQL atonu e iai faʻafitauli faʻatinoga mo faʻamatalaga tetele.
O le NoSQL e maua ai le faʻatinoga lelei i luga o faʻamatalaga tetele.
Mafaufauga 8 faavae
I kamupani
Mo le amataina ma le au atinaʻe o loʻo fausia ni pisinisi faʻapisinisi e manaʻomia ai le lipotia, faʻamaoni fefaʻatauaʻiga, ma faʻamalamalama lelei faʻataʻitaʻiga faʻamatalaga, o le teu faʻafaigaluegaina i faʻamaumauga fesoʻotaʻiga, i lo matou manatu, o le filifiliga saʻo.
A'oa'o atili e uiga ile atina'e ma Aurora, Serverless ma GraphQL ile 8base.com
puna: www.habr.com