pouzitie MongoDB
-
harrison314
Hardcore addict
- Príspevky: 8222
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
pouzitie MongoDB
Zdravim,
verim, ze je tu dakto skuseny a opise mi hlavne scenare pouzitia MongoDB respektyve dokumentovych NoSQL databaz.
Dakujem
verim, ze je tu dakto skuseny a opise mi hlavne scenare pouzitia MongoDB respektyve dokumentovych NoSQL databaz.
Dakujem
Re: pouzitie MongoDB
harrison314, pozrel som si tvojich poslednych 35 zalozenych tem. Pytas sa na nejaku vec (o ktorej casto vies ze ti tu nik neporadi, napr. "verim") a namiesto toho aby si napisal na serioznejsie anglicke forum (co si mozno aj urobil) to pises tu. Ked proste vies ze uroven programatorskej casti fora nie je dostatocne vysoka, preco sa tu pytas?
Z tych poslednych 35 tem je 14, cize 40% presne takehoto typu. Oplaca sa ti to? Co robis ked ti nikto neporadi? Ides na dalsiu temu?
Z tych poslednych 35 tem je 14, cize 40% presne takehoto typu. Oplaca sa ti to? Co robis ked ti nikto neporadi? Ides na dalsiu temu?
-
harrison314
Hardcore addict
- Príspevky: 8222
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: pouzitie MongoDB
aj sem chodi par schopnych koderov, aj ked sa daju spocitat na prstoch jednej ruky,
ked nenasjdem googlim dalej
ked nenasjdem googlim dalej
-
MeanSeriously
Medium Star
- Príspevky: 430
- Registrovaný: 14 apr 2012, 15:07
Re: pouzitie MongoDB
@harrison: Presne tak. Tu chodí zopár dobrých kóderov. Dobrých programátorov by si tu spočítal na prstoch jednej ruky. Prečo sa teda v prípade problému (najmä takto špecifického) ideš spýtať na hojko, a nie na StackOverflow a jemu podobné
(SuperUser, Programmers, IT Security, DBA etc), Programming Forums, popr. teraz som našiel tento článok na CodeRanch,
alebo čo tak sa spýtať na oficiálnom fóre NoSQL?
Určite na každej z týchto stránok sa nájde viac a lepších odborníkov, ktorí ti odpovedia rýchlejšie, kvalitnejšie, komplexnejšie etc.
(SuperUser, Programmers, IT Security, DBA etc), Programming Forums, popr. teraz som našiel tento článok na CodeRanch,
alebo čo tak sa spýtať na oficiálnom fóre NoSQL?
Určite na každej z týchto stránok sa nájde viac a lepších odborníkov, ktorí ti odpovedia rýchlejšie, kvalitnejšie, komplexnejšie etc.
-
strejdabob
Amateur
- Príspevky: 12
- Registrovaný: 12 jan 2013, 22:53
Re: pouzitie MongoDB
Zdravím, ja momentálne používam MongoDB v projekte, na ktorom pracujem. Data v Mongu sú proste ukladané iným spôsobom. Nemáš tam pevne danú štruktúru ani dátové typy... jednu kolekciu (v SQL tabuľku) si predstav ako pole objektov, kde každý objekt má svoje jedinečné ID (zatiaľ nič nové). Každý objekt (v Mongu sa to volá document) je vlastne asociatívne pole, kde každý prvok v tomto asoc. poli môže byť ďalšie asoc. pole.
Ja to využívam preto, lebo ide o databázu publikácií, kde sú rôzne typy publikácií a každý typ má úplne iné položky a dynamicky potrebujem k záznamom niekedy pridávať nové položky, napr ISBN, ktoré tam dovtedy nebolo atď... VŠETKO čo sa dá spraviť v SQL sa dá spraviť aj v noSQL a naopak...pre taký prípad ako moja databáza existuje pár riešení v SQL (hlavne EAV model) ale všetky riešenia sú zlé a je to len taký kompromis a selecty sú veľmi zložité a neefektívne. Myslím že práve pre tento prípad sa noSQL hodí najviac, lebo nemá pevne danú štruktúru. Ďalej si viem predstaviť využitie v e-shopoch s veľa rôznymi položkami a kategóriami, ktoré spolu nesúvisia (napr. predávaš mobily a žehličky a tie majú rôzne atribúty/špecifikácie...)
Ja to využívam preto, lebo ide o databázu publikácií, kde sú rôzne typy publikácií a každý typ má úplne iné položky a dynamicky potrebujem k záznamom niekedy pridávať nové položky, napr ISBN, ktoré tam dovtedy nebolo atď... VŠETKO čo sa dá spraviť v SQL sa dá spraviť aj v noSQL a naopak...pre taký prípad ako moja databáza existuje pár riešení v SQL (hlavne EAV model) ale všetky riešenia sú zlé a je to len taký kompromis a selecty sú veľmi zložité a neefektívne. Myslím že práve pre tento prípad sa noSQL hodí najviac, lebo nemá pevne danú štruktúru. Ďalej si viem predstaviť využitie v e-shopoch s veľa rôznymi položkami a kategóriami, ktoré spolu nesúvisia (napr. predávaš mobily a žehličky a tie majú rôzne atribúty/špecifikácie...)
Re: pouzitie MongoDB
vsak kto by si nezvolil metodu autopochvaly, ked to ma iste
mam pocit ze tu vobec nejde o MongoDB.
-
harrison314
Hardcore addict
- Príspevky: 8222
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: pouzitie MongoDB
MeanSeriously: ja viem pouzivat googloe
, len vetcinou na oficilnych strankach je to prezentovane ako univerzalny liek na vsteko, na forach riesia veci na ktore by som NoSQL nikdy nepouzil, tutorialy zas hrackarske veci, ale to tvoja chyba nie je
ref0: (k zmazanemu prispevku
) uplne suhlasim, sam sa venujem MS SQL, ale chcem vediet co ma "konkurencia"
strejdabob: viem si riesnie daneho problemu predstavit pomocou 3 tabuliek a operatoru PIVOT, ale zaujimali by ma dalsie veci:
1) daju sa dokumenty idenxovat aj podla dacoho ineho ako ID ?
2) ked chcem vyhladavat napriklad podla autora, podla ISBM a podla nazvu poblikacie, je treba do Monga vlozit ten isty zaznam trikrat?
3) co je natom s programatorskeho hladiska prijemne/zaujimave
4) pri com si si trhal vlasi a musel robit krute heky aby si z toho dostal pozadovane data?
ref0: (k zmazanemu prispevku
strejdabob: viem si riesnie daneho problemu predstavit pomocou 3 tabuliek a operatoru PIVOT, ale zaujimali by ma dalsie veci:
1) daju sa dokumenty idenxovat aj podla dacoho ineho ako ID ?
2) ked chcem vyhladavat napriklad podla autora, podla ISBM a podla nazvu poblikacie, je treba do Monga vlozit ten isty zaznam trikrat?
3) co je natom s programatorskeho hladiska prijemne/zaujimave
4) pri com si si trhal vlasi a musel robit krute heky aby si z toho dostal pozadovane data?
Re: pouzitie MongoDB
Na uvod:
- Odporucam https://education.10gen.com/
K tvojim otazkam:
- Obecne vyhody NoSQL databaz je jednoduchsia skalovatelnost
- Ano, mongodb ma indexy. Je mozne indexovat aj ine ako ID stlpce. Dokonca ma podporu pre indexy pre spatial operacie
- Nechapem otazke, ale MongoDB query language si pozri v dokumentacii. Ponuka prakticky rovnake moznosti ako klasicke SQL databazy
- Svojim sposobom to moze byt viac "agile" friendly. Nakolko MongoDB pracuje s JSON dokumentami ktore su ukladane do kolekcii je jednoduche pridavat rozne nove udaje do jednotlivych JSON dokumentov v kolekcii. Tj. nie je nutne aby vsetky dokumenty v kolekcii obsahovali rovnake "stlpce".
- Pokial sa nemylim tak, MongoDB momentalne podporuje len transakcie na urovni 1 JSON dokumentu. Neexistuju "foreign key" a musis to obkodit v aplikacii rucne. Povedal by som, ze na aplikacie kde potrebujes zabezpecit vysoku integritu dat (FK, Transakcie atd) nie je MongoDB vhodne.
- Odporucam https://education.10gen.com/
K tvojim otazkam:
- Obecne vyhody NoSQL databaz je jednoduchsia skalovatelnost
- Ano, mongodb ma indexy. Je mozne indexovat aj ine ako ID stlpce. Dokonca ma podporu pre indexy pre spatial operacie
- Nechapem otazke, ale MongoDB query language si pozri v dokumentacii. Ponuka prakticky rovnake moznosti ako klasicke SQL databazy
- Svojim sposobom to moze byt viac "agile" friendly. Nakolko MongoDB pracuje s JSON dokumentami ktore su ukladane do kolekcii je jednoduche pridavat rozne nove udaje do jednotlivych JSON dokumentov v kolekcii. Tj. nie je nutne aby vsetky dokumenty v kolekcii obsahovali rovnake "stlpce".
- Pokial sa nemylim tak, MongoDB momentalne podporuje len transakcie na urovni 1 JSON dokumentu. Neexistuju "foreign key" a musis to obkodit v aplikacii rucne. Povedal by som, ze na aplikacie kde potrebujes zabezpecit vysoku integritu dat (FK, Transakcie atd) nie je MongoDB vhodne.
-
strejdabob
Amateur
- Príspevky: 12
- Registrovaný: 12 jan 2013, 22:53
Re: pouzitie MongoDB
harrison: na všetky otázky myslím odpovedal Baseilos a čo k tomu dodať. Ja som študent a použil som to v školskom projekte. Viem, že sa to dá spraviť aj v SQL (písal som o tom vyššie), ale tu som videl šancu skúsiť/naučiť sa niečo nové, moderné, iné... robiť stále to isté s tými istými technológiami (a ešte v škole zadarmo a dobrovoľne) je trochu nechutné
a takto som si ten projekt trochu oživil, že som sa popritom naučil robiť s Mongom
Baseilos: neviem, čo presne myslíš, ale cudzie kľúče v Mongu existujú, môžeš mať vzťahy medzi dukumentami v rôznych kolekciách...
http://docs.mongodb.org/manual/referenc ... ces/#dbref
Baseilos: neviem, čo presne myslíš, ale cudzie kľúče v Mongu existujú, môžeš mať vzťahy medzi dukumentami v rôznych kolekciách...
http://docs.mongodb.org/manual/referenc ... ces/#dbref
Re: pouzitie MongoDB
Mal som na mysli, ze MongoDB neudrzuje integritu dat cez FK. Tj. nestrazi to ci "druha" strana existuje, nerobi to cascade delete/update. Pokial viem tak to DBRef tiez nerobi.strejdabob napísal:harrison: na všetky otázky myslím odpovedal Baseilos a čo k tomu dodať. Ja som študent a použil som to v školskom projekte. Viem, že sa to dá spraviť aj v SQL (písal som o tom vyššie), ale tu som videl šancu skúsiť/naučiť sa niečo nové, moderné, iné... robiť stále to isté s tými istými technológiami (a ešte v škole zadarmo a dobrovoľne) je trochu nechutnéa takto som si ten projekt trochu oživil, že som sa popritom naučil robiť s Mongom
Baseilos: neviem, čo presne myslíš, ale cudzie kľúče v Mongu existujú, môžeš mať vzťahy medzi dukumentami v rôznych kolekciách...
http://docs.mongodb.org/manual/referenc ... ces/#dbref
-
harrison314
Hardcore addict
- Príspevky: 8222
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: pouzitie MongoDB
vdaka za odpovede
Som myslel ci je nutne pristupovat ku redudancii na na urvni kolekcii.2) ked chcem vyhladavat napriklad podla autora, podla ISBM a podla nazvu poblikacie, je treba do Monga vlozit ten isty zaznam trikrat?