Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

MongoDB - vodeca NoSQL baza podataka

[es] :: Baze podataka :: MongoDB - vodeca NoSQL baza podataka

Strane: 1 2 3 4 5

[ Pregleda: 96387 | Odgovora: 92 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

nkrgovic
Nikola Krgović
Beograd

Član broj: 3534
Poruke: 2807

ICQ: 49345867
Sajt: https://www.twinstarsyste..


+655 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka15.10.2013. u 22:02 - pre 127 meseci
Ja inace upravo razmisljam da li da nekome preporucim mongo za storage dokumenata, umesto nfs-a. OK, ne mongo, toku i to verovatno ne jedan vec neki lep replica set, ali sve jedno, slican princip.

Razmisljam da mi je mongo bolje resenje, ako ne mogu da imam pristojan storage u doglednoj buducnosti. Cisto mi treba nesto kao CDN, ka internom sistemu, pa razmisljam....
Please do not feed the Trolls!

Blasphemy? How can I blaspheme? I'm a god!'
 
Odgovor na temu

mist
Milos Stanic
Kragujevac

Član broj: 4871
Poruke: 210
*.static.sbb.rs.



+190 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka15.10.2013. u 22:18 - pre 127 meseci
Citat:
bogdan.kecman: ah ti si od ovih "programera" sto "kompajlira" svoj kod u javascript ... to mnogo govori


Ne znam čime je ovo izazvano i šta je imalo za cilj, ali nije vaspitano.

Citat:
bogdan.kecman: a google je inace poznat kao neko ko open source zajednici nesto daje a ne iskoristava istu za svoju cistu dobit?! i ne radi na tome da aplikacije prebaci komplet u SAS rezim sa varijantom ako je nekako moguce da ih oni hostuju a da se izvrsavaju na njihovim thin klijentima .. to sto su te aplikace za 2-3 reda velicine sporije i trose 2-3 reda velicine vise resursa nego sto je potrebno to neme veze, klijenti ce da plate i resurse i retardirane skirptere ubedjene da znaju "da programiraju"


Šta Gugl radi ili ne radi, i da li nekoga iskorišćava je : a) njihov problem; b) stvar pogrešne percepcije i potpunog neshvatanja kako funkcioniše kapitalizam kome imamo da zahvalimo ove uređaje koje koristimo da bi se dopisivali preko ove mreže koju takođe imamo da zahvalimo kapitalizmu.

Citat:
bogdan.kecman: no bojim se da ti imas manjak znanja oko baza podataka te da svojim komentarima doticnom pravis vecu stetu nego korist .. mozda gresim ali iz ovog tvog komentara se tako da zakljuciti


Tačno je da nisam ekspert za baze podataka, ali kao što sam i rekao u prvom postu nije mi cilj da promovišem ovu ili onu bazu, jer niti živim od toga niti me baš briga. Međutim jasno je da ti živiš od Oracle/MySQL, prema tome jesi stručnjak za baze, ali nisi objektivan da sudiš o tome koja je bolja.

http://www.kgonline.info - Prvi kragujevački portal i forum
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka16.10.2013. u 01:06 - pre 127 meseci
Citat:
mist: ... vaspitano ...

nisam imao nameru da vredjam, no malo me iritira javascript i ceo koncept kompajliranja u javascript i javascript app servera i celog extremno pogresnog hype-a vezano za isti

Citat:
mist: ... google ...

kako nema veze? ti si rekao da ga google podrzava i da to nesto "Znaci", to sto google nesto podrzava danas sa 100% niti znaci da ce da ga podrzava sutra niti znaci da to nesto valja .. vrlo cesto se google pokusava predstaviti kao opozicija zlom zatvorenom microsoftu, pritom je google zatvoren koliko i microsoft i zliji i komercijalniji od microsofta ... dakle ima veze, kako nema .. to sto google nesto podrzava nije nista pozitivnije nego da ga podrzava bilo koja druga firma

Citat:
mist: ... mysql ...

vidis ti ne znas sta ja radim :D, ja actually zivim od noSQL-a (mysql cluster je nosql baza i kao takvu je koriste i alcatel lucent i nokia siemens network i ericsson i mnogo drugih telco-a, banaka etc etc .. mysql server je rdbms koji ume da koristi razne storage sisteme pa kao jedan od njih moze da bude i mysql cluster te se onda mysql clusteru pristupa kroz SQL interface ali to ne cini mysql cluster rdbms-om isto kao sto ni memcached interface za innodb ne cini innodb key-value/nosql storage sistemom), mysql server kao rdbms znam koliko i postgresql, mssql, sybase, db2 etc etc .. iz visedeceniskog rada sa istim ... placaju me da budem objektivan, ne da vucem na ovu ili onu stranu (sadasnji poslodavac ima i rdbms i noSQL resenja i vrlo lepo naplacuje i jedna i druga)... a ne placaju me da pisem na forumu te ovde predstavljam sebe a ne njih ..

no nisam tema ni ja, ni oracle ni mysql cluster, ni rdbms-ovi an general vec je tema mongo, ti ako sumnjas u moju objektivnost slobodno to sto sam napisao opovrgni cinjenicama. ja sam to sto si ti napisao stavio u kontekts sa cinjenicama ..
 
Odgovor na temu

nkrgovic
Nikola Krgović
Beograd

Član broj: 3534
Poruke: 2807

ICQ: 49345867
Sajt: https://www.twinstarsyste..


+655 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka16.10.2013. u 08:46 - pre 127 meseci
Meni ova javascript hype prica mnogo, ali mnogo potseca na slicnu vezanu za ruby on rails pre par godina. Mator sam, sta li je.

Neke stvari su jako dobre. Doticni node.js je odlicno resenje za neke stvari, ali nema nekih velikih prednosti u odnosu na python twisted, ili neko resenje za php. Ima tu dobrih tehnologija, ali ubi me hype, ogadice mi i ono sto valja...
Please do not feed the Trolls!

Blasphemy? How can I blaspheme? I'm a god!'
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka16.10.2013. u 09:13 - pre 127 meseci
to je najveci problem novih tehnologija .. fanboys .. najveci
neprijatelji svojih fanova .. npr za mongo, ja sam pratio razvoj istog
sa podsmehom i vristao od smeha na fanboy price, a 99% prica je bilo od
strane istih .. da bi u nekom trenutku bio prisiljen da se sretnem sa
istim oci u oci i vidim sta to i kako stvarno radi te skonto da je
mongodb u stvari extra stvar, samo ako ga koristis za sta je namenjen i
izignorises armiju retarda koji pricaju gluposti .. potpuno ista prica i
za mysql i fanboy klub, linux i fanboy klub etc etc ..

mora se uzeti u obzir da je mongo dizajniran nekoliko decenija posle
SQL-a da resi probleme sa kojima se SQL bori i da nije opterecen
nikakvim standardom pri osnovnom dizajnu.. realno uzimajuci u obzir te
dve cinjenice mongo je trebao da bude znatno bolji.. razlog zasto nije
(isti problem sa kasandrom) je sto je neko ko ne zna dovoljno sql probao
da resi problem svog neznanja novom tehnologijom .. tako da tu ima nekih
odluka koje nisu najbolje i nekih projekata koji su skupo kostali nosql
open source community .. no sta je tu je, i dalje je to mlad community
koji i dalje moze vrlo lako da odbaci bilo koju premisu i promeni
arhitekturu sistema na bilo koji nacin ako se za to nadje potreba posto
je user base dovoljno mali i dovoljno agilan da bilo koju promenu moze
da proguta... to je ono sto je najveca prednost mongodb-a, kasandre i
ekipe .. ja licno ocekujem da ce upotrebna vrednost a samim tim i broj
instalacija da raste exponencijalno narednih par godina
 
Odgovor na temu

ivan.mojsilovic
CEO @ Yanado.com
Novi Sad

Član broj: 277882
Poruke: 780
*.dynamic.sbb.rs.

Sajt: www.yanado.com


+1042 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka17.10.2013. u 07:47 - pre 127 meseci
@Bogdane, jel mozes ti da kazes za koje namene je Mongo odlican? Vise si puta si rekao da je za odredjene stvari extra, ali nikako da kaze za sta, a bilo bi korisno od nekoga poput tebe cuti to. Hvala!
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka17.10.2013. u 08:45 - pre 127 meseci
@ivan.mojsilovic, nemoj pogresno da me shvatis, nije moje misljenje nista validnije od nkrgovic ili mist ili bilo koga drugog ko je pisao na ovoj temi. profesionalno ima ovde mnogo vise ucesnika cije misljenje o ovom problemu treba da ima mnogo vecu tezinu od mog.. moj "posao" je daleko od toga da mogu da sudim o kvalitetu i upotrebnoj vrednosti bilo kog data storage sistema bio on big data ili sql ili nosql, key-value etc etc, dakle moje misljenje je zasnovano ne na "poslu" vec na onome sto radim u slobodno vreme ... a ima ovde ljudi koji koriste i rdbms i nosql za leba te bih njima mnogo vise verovao (tako sam i krenuo da koristim mongo za neke svoje projekte verujuci tim ljudima) ... ja sa @mist diskutujem (vidim da se nasao uvredjen, nisam siguran zasto) ali ne odbacujem njegovo misljenje, on je rekao nesto, ja sam dao protivargument, ako on ima argument da potvrdi svoju tezu ja sam vise nego rad da je cujem i nesto naucim, on ili bilo ko drugi .. tako da gde je dobar, mogu da ti dam recimo 3 projekta za koja mislim da je idealan, dva moja i jedan veliki globalni, no to je opet moje misljenje zasnovano na limitiranom iskustvu bavljenja tom problematikom (monngodb) "usput", ako ti koristi super ali nemoj to da uzimas kao informaciju prve klase

1. kreglista, oni momci imaju cca giga podataka dnevno koje moraju da arhiviraju (stare vesti). live vesti su im u sql-u i tu po njihovom ( a i po mom ) misljenju, za sada, mongo nema sta da trazi, ali za arhivu, koja se pretrazuje sporije i na drugi nacin, nosql tj. u ovom slucaju mongodb, je odlican sistem za cuvanje te date

2. sistem za vertikalnu pretragu, inicijalno je bila ideja da se ovo radi sa nosql (druga velika firma koja to radi koristi nosql za isti posao) ali sam ja rekao da cu da postignem min 10x vecu brzinu na 10x manje servera (iliti 2 reda velicine manji utrosak resursa za isti kvalitet servisa) ako stavimo sql, dobio sam odgovor da je to nemoguce posto su "oni drugi probali" .. ti "drugi" nisu znali da organizuju sistem i sa nekim usputnim savetima koje su dobili su ubrzali svoj sistem nekoliko puta da bi na kraju batalili sql i presli na nosql .. elem ja sam dobio "sansu" da uradim to sa mysql-om i napravili smo sistem koji je ne samo bio za 2 reda velicine brzi nego je imao i funkcionalnost koju ovi drugi nikako mogli da naprave (radi se o count(*) group by x; sto sql uradi iz ... a nosql da bi to radio u nekom realnom vremenu nad 20-30 kolona u bazi, moras da rodis mecku) .. to je recimo tipican primer gde je neko resio problem sa mongom bolje nego sa sql-om zato sto nije znao da napravi resenje sa sql-om a ne zato sto mongo bolje resava taj problem ... elem za taj sistem je potrebno logovanje svega zivog, ko je dosao na sajt, odakle, gde je klikno, to sto je klikno dal je filter ili rezultat ili .. ako je klikno na rezultat pretrage koja strana, koji redni broj rezultata, ako je klikno na outlet koji je outlet, dal je klikno na bustovan rezultat ili na regularni .. svi podaci njegovog browsera etc etc ... ta tusta i tma date se cuva u mongodb i odatle se ta data izvlaci (povremeno) i iz nje racuna razna statistika .. citanje te date je prilicno sporo ali realno mongodb je idealan sistem za cuvanje takve date.. moglo je to jos malo bolje da se odradi, tada kada smo radili nismo imali dovoljno iskustva sa mongom, ali svakako sledeci put kada budem radio neko logovanje tog tipa, obavezno mongodb (mozda kassandra no za sada ipak mongo)

3. sistem za oglasavanje (recimo personals), u startu je tim bio za sql a ja sam (za cudo svih) bio za to da idemo na mongo, osnovni razlog za mongo u ovom slucaju su spatial indexi koji rade brze od mysql/pgsql za 2-3 reda velicine!!! uz neka teska budzenja pgsql smo naterali da bude blizu (samo 2 puta sporiji) u nekim slucajevima .. te je inicijalna ideja bila da mesamo mongo i sql no ipak je reseno da se ide 100% sa mongodb posto denormalizacije date ne pravi preveliki problem, gro date bi ionako bilo u nekom blobu a mongo u poslednjih par verzija podrzava indexe te tih par atributa koji su morali biti denormalizovani ne predstavlja za mongo nikakav problem .. jeste malo cimanje sa "samo jedan index" pricom ali ima i za to resenje ...


 
Odgovor na temu

ivan.mojsilovic
CEO @ Yanado.com
Novi Sad

Član broj: 277882
Poruke: 780
*.dynamic.sbb.rs.

Sajt: www.yanado.com


+1042 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka17.10.2013. u 08:54 - pre 127 meseci
'nough said :)
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka17.10.2013. u 12:07 - pre 127 meseci
btw za kreglistu, vrlo poucan video:
http://youtu.be/a25tBrQCs1Y

 
Odgovor na temu

Dejan Lozanovic
Dejan Lozanovic
Beograd

Član broj: 691
Poruke: 2325
84.93.80.*

Jabber: null@elitesecurity.org
Sajt: speedy-order.com


+75 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka17.10.2013. u 23:14 - pre 127 meseci
Nije MongoDB resenje svih problema :) ima on i tekako svojih mana. Odlican je kad na brzaka treba da dodas neko novo polje jer ne moras da molis DBA da uradi alter table-a. I sto s obzirom da je dokument based od jednom procitas sve sto ti treba i tu dobijes ubrzanje jer ne radis nekakav join. Ili ako treba da uradis neki dinamican query da radis neku novu vrstu pretrage koju nisi do sada radio. I zgodan je zbog samih kljuceva tj shardovanja kolekcije. I drugovi omladinci tu svaka lepota prestaje.

A da mu pogledamo mane ?

Velicina polja moze da bude problem sa mnogo strana drasticno moze da poveca zauzece diska, tj da samo ime polja bude duze nego pravi podatak., query takodje mogu da budu veoma spori bas zbog tih istih duzina polja, je mongo ne moze da koristi optimizacije nad jednom rekordom kao sto to sql elegantno radi. Pa onda da bi resio problem taj problem kreces da imenujes svoja polja sa jednim ili dva slova, drugim recima zarad optimizacije samog mongoa ti sam sebi obsfrukujes bazu. Pa onda takodje da bi brze pretrazivao neki put sam vestacki pomeras polja u pod objekte.

Pa idemo dalje putem perfomansi, kukala mongu majka kad mu index vise ne staje ceo fizicki u ram memoriju. Tad krece jad cemer i tuga.

Pa onda opet mozemo da se vratimo na velicinu baze, mongodb ne radi kompresiju dokumenata, pa i vrapci na granama iz big data sveta (hadoop i kompanija) znaju da kad treba da obrade veliku kolicinu podataka da ce to sve ici mnogo brze ako se koriste neki algorimi koji "solidno" kompresuju a brzi su jer vreme provedeno na citanju manje kolicine podataka plus dekompresija traju krace nego citanje vece kolicine podataka.
 
Odgovor na temu

nkrgovic
Nikola Krgović
Beograd

Član broj: 3534
Poruke: 2807

ICQ: 49345867
Sajt: https://www.twinstarsyste..


+655 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka18.10.2013. u 08:36 - pre 127 meseci
Prvo, to da treba da "molis" za alter nije posledica toga ko je DBA, vec toga sto to traje. Drugo, to sto je "dokument based", ne daje ubrzanje, to si se ti nesto presao. Moze i sql upit da nema join - i da, onda radi brze. A moze da radi brzo i kad ima join. Ovo sve lici na to da tvoj DBA nije bas neki, ili da vam sql i ne ide, nhf. I da, mysql ima particionisanje tabela. :D

Sa druge strane, imenovanje kljuceva u key-value store-u, bar po meni, ne treba da bude human readable, a kamoli dugacko. Tipican primer je session storage - kad je SessionID bio human readable. To nije, bar meni, mana monga. Nije on za citanje "na ruke".

Kompresija i RAM, to stoji. Mada, opet, ni MySQL nije srecan ako ti je InnoDB Buffer Pool manji od 10% tablespace-a. Ja to imam na nekim sandbox okruzenjima, baza 150GB, memorija 2GB - i to je isto JAKO sporo. Kompresija.... e to je boljka koja i meni ide na zivce. :D
Please do not feed the Trolls!

Blasphemy? How can I blaspheme? I'm a god!'
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka18.10.2013. u 09:15 - pre 127 meseci
za sistem koji je dizajniran "pre neki dan" stvarno je cudno da mongo ne ume da koristi bar neki brzi lzw ili lz4 ili tako nesto .. odavno smo svi svesni da su nam db serveri overloadovani na IO delu dok proecsori lade jaja 99% vremena... takodje vezano za brzinu i nove tehnologije, vrlo je cudno da sistem dizajniran "pre neki dan" ne ume da koristi 2-3 level cache, danas sa mega brzim ssd diskovima koji su beskorisni za cuvanje velike date (previse $$$) doticni extra dobro mogu da rade kao 2nd level cache.. svi filesystem-i dizajnirani skoro umeju to da koriste, vrlo cudno da nijedan od novih "document storage" sistema to ignorise ... etc etc .. ima tu jos mnogo stvari koje bi covek ocekivao od monga, kasandre .. a koji ne postoje, koji bi ih ucinili znacajno upotrebljivijim .. sad, moram da priznam da nisam pratio worklog entries za mongo/kasandru pa ne znam da li je tako nesto planirano vec ili ne ..

secam se kada je krneta pricao pre 20tak godina kako je alfa sa 64 bita resila problem baza jer ce ram da bude mnogo jeftiniji te ce cele baze da sede u ramu, ono cega se tada nije setio je da ce velicina date koju cuvamo rasti mnogo brze nego sto padaju cene rama ..

elem, nadam se da ne smaram sa klasterom u mongodb temi ali bas upravo nesto diskutujem sa kolegama, ono sto mccge recimo vec resava a ima i transakcije i relacije i ...

- Sharding
- Cross-shard transakcije (nema nijedan od ovih open source dokument storage sistema tipa mongo, kasandra..)
- Pushed down predicate filters / programs ( nema nijedan od ovih ..)
- Pushed down joins / Adaptive Query Localization (ovi nemaju ni join a kamoli pushed down joins)
- Cross-shard consistent backup (ovo nisam siguran kako se radi sa mongo/kasandrom)
- Online resharding (ovo mongo ume ako sam ja dobro svatio, nisam probao doduse)
- Pruning of cross-shard scans to single shards (nisam siguran kako ovo radi mongo ali mislim da ne radi ovako brzo)
- Distributed transactional DDL (recimo da mongu ovo nije problem)
- Batched cross-shard parallelism (ne znam da li ovo mongo ume, realno bi trebalo da ume)
- Synchronous replication (ovo nema nijedan od ovih ...)
- Automatic Failure detection, failover and recovery (ok ovo bi trebalo da radi sa mongom jedino sto je sa ndb-om data uvek accessible a sa mongom je eventually accessible sto je ogromna razlika, na ndb-u ako crkne jedan nod sva data je up to date i dostupna)
...

pricamo o sistemu (mysql cluster) koji je dizajniran da rani na ruterima, PC racunar tada nije bio dovoljno stabilan da tera tako nesto, dakle pricamo o vremenu pre 20+ godina .... realno je ocekivati da sistem koji je dizajniran pre neki dan prevazidje 20+ godina star dizajn ...
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.static.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka18.10.2013. u 12:07 - pre 127 meseci
MongoDB je vrlo zanimljiv koncept i treba ga probati i koristiti ali ne po svaku cenu.

Licno mislim da strogo definisane strukture ipak imaju prednost, nema "prljavih" podataka i tacka :)

To me je licno u gomili primera prilicno nerviralo kada sam imao potrebe recimo za Array data type u MySQL.
Sto to dan-danas nije napravljeno (ima nekih ne-oficialnih ekstenzija ali to ne racunam) !?
Kasnije kada sam to morao da "normalizujem" ipak se ispostavilo da mi nije ni bio potreban takav tip polja.

Znaci treba samo da se debelo zamisli i lepo izprojektuje struktura DB, "veza sa ovim je u vezi sa onim" i to je to.

Skoro sam radio neku APP sa preko 150 tablica (sve custom), bez obzira sto to izgleda komplikovano, tu mi je sve skockano kako treba, bas me briga da li cu da koristim ili necu JOIN, meni je bitno kada ja "pitam" bazu da ona meni vrati tacno to sto sam hteo.
Struktura baze se jedva sitno ostampa na A3 format, ali lepo nacrtano sta je sa cim povezano i to stoji na zidu offica :)

Jedino je malo pitanje oko skalabilnosti, mada to nije pitanje mogucnosti MySQL engina-a vec necije upucenosti u celu problematiku i poznavanja tih stvari.

Evo ta APP radi u privatnom cloud-u (kolokacija 10-ak servera), milionska poseta, integrisna sa Amazon CDN i to fercera samo tako, trunke problema bar oko DB nismo imali. Jedino kad mi neki od developera buta po strukturi dodajuci neka polja a ono se zakuca sve, posle kad pogledam sta je uradio "zavrcem ushi" jer nije stavio index na polje :)
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka18.10.2013. u 12:15 - pre 127 meseci
ima dosta rdbms-a sa array tip poljem (npr pgsql), znam da su nasi
developeri vise puta pricali o implementaciji toga u mysql .. tako da to
jeste nedostatak mysql-a, to moze da se zaobidje ali je vrlo korisna
stavka :D ... jos neki nedostaci su vrlo nezgodni, isto mogu da se
zaobidju (npr group by je vrlo limitiran na mysql-u u odnosu na oracledb
ili pgsql etc etc ..) ali jbg, ne mozes da kazes da ne trebaju :D ..
"tako smo hteli" je prolazilo pre 15 godina, danas bas i ne prolazi :D
 
Odgovor na temu

Dejan Lozanovic
Dejan Lozanovic
Beograd

Član broj: 691
Poruke: 2325
84.246.168.*

Jabber: null@elitesecurity.org
Sajt: speedy-order.com


+75 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka18.10.2013. u 14:22 - pre 127 meseci
Citat:
nkrgovic:
Prvo, to da treba da "molis" za alter nije posledica toga ko je DBA, vec toga sto to traje. Drugo, to sto je "dokument based", ne daje ubrzanje, to si se ti nesto presao. Moze i sql upit da nema join - i da, onda radi brze. A moze da radi brzo i kad ima join.


To sto je document based, daje ubrzanje kada je u pitanju IO, sam IO sa hard diskom je botleneck svake baze podataka. cukni neki hdparm pa pogledaj koliko ti je pisanje a koliko citanje sa diska, a koliko je spooooooooooooooooooooooooooor random seek. Imajuci to u vidu da bi dobio brze perfomanse citanja, zgodno je da mozes da uradis randoom seek samo jednom , pa da procitas apsolutno sve sto ti treba u jednom cugu, to je upravo ono na sta gadjaju sve te scheema-less baze podataka. Niko ne kaze da ne mozes da denormalizujes sve tabele u svojoj bazi na SQL serveru, ali si ipak ogranicen ako moras da dodas nesto novo.

I da se razumemo naravno da ce ovaj sql upit da radi brze
Code:

select * from persons where firstname='dejan'


nego mongov ekvivalent

Code:

db.persons.find({firstname:'dejan'})


iz prostog razloga sto mongodb mora da proverava da li je ime polja firstname, dok sql tacno zna gde se podatak nalazi u memoriji. E onda da bi tu ubrzao querije za mongoDb, brze je ako mozes da polja da smestis po drugim podobjektima, i trazenje polja svedes sa sa N na log(N), ali to je opet sporije.


Citat:
nkrgovic:
Sa druge strane, imenovanje kljuceva u key-value store-u, bar po meni, ne treba da bude human readable, a kamoli dugacko. Tipican primer je session storage - kad je SessionID bio human readable. To nije, bar meni, mana monga. Nije on za citanje "na ruke".


Ja ne pricam o values, ja pricam o keys. Kljucevi treba da budu human readable, ako imam neku kolekciju i ako trazim nekog po imenu, hocu da navodim ime kljuca da bude "firstname" a ne da bude "fn" ili "f" i kada sam rekao obsfrukovanje baze na to sam mislio. Jer pisanje takvih querija je bolno i smorno i svodi se na to idi gledaj mapiranje obsfrukovanih polja.



 
Odgovor na temu

nkrgovic
Nikola Krgović
Beograd

Član broj: 3534
Poruke: 2807

ICQ: 49345867
Sajt: https://www.twinstarsyste..


+655 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka18.10.2013. u 14:35 - pre 127 meseci
I ja pricam o keys. Kad smestas sessions u key-value, sessionID je KEY - value je sve ono sto potrpas / serializujes u sesiju. I nope, nisu human readable.
Please do not feed the Trolls!

Blasphemy? How can I blaspheme? I'm a god!'
 
Odgovor na temu

Dejan Lozanovic
Dejan Lozanovic
Beograd

Član broj: 691
Poruke: 2325
84.246.168.*

Jabber: null@elitesecurity.org
Sajt: speedy-order.com


+75 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka18.10.2013. u 15:05 - pre 127 meseci
Iskreno zivo me zanima da vidim takav dizajn baze gde u recordu ime polja bude sessionID, a ostatak nesto levo, po cemu indeksiras taj sessionID kad je ime za svako polje razlicito?
 
Odgovor na temu

nkrgovic
Nikola Krgović
Beograd

Član broj: 3534
Poruke: 2807

ICQ: 49345867
Sajt: https://www.twinstarsyste..


+655 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka18.10.2013. u 20:22 - pre 127 meseci
Kljuc. Ne ime polja, nisam bas kr*ten :) - samo vrednost. Key-value. Ako koristis mongo kao prost key-value, mozes da ih imenujes i kao a i b, tj. ako imas samo 2 poslja u jednoj tabeli.

Mozda to tebi zvuci cudno, ali ja bar na mongo gledam kao na dopunu rdbms-a, ne kao zamenu. Samim tim, u njega potrpam samo neke stvari, i to uglavnom vise kao key-value. Slicno kao sto bi koristio npr. memcached, ali naravno sa mnogo vecom kolicinom podataka - i perzistentnoscu.

Konkretan primer: Smestanje dokumenata. Imam dva polja, kluc i dokument. Indexiram po kljucu, koji je ID (a sifranik je u RDBMS-u), a dokument je, realno, BLOB (unutra je npr. serijalizovani json, ili sta vec....). Meni je to OK zamena za npr. NFS koji sluzi samo za smestanje dokumenata. Glavna prednost je brzina citanja i robusnost sistema. 3-way replica set od 3 off-the-shelf servera (ili VM-a) kosta manje nego dobar storage (tipa EMC), a radi isti posao.
Please do not feed the Trolls!

Blasphemy? How can I blaspheme? I'm a god!'
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka18.10.2013. u 21:28 - pre 127 meseci
@nkrgovic, ako ti treba key-value gde ti je storage "create table t (id
bigint/uuid/stagod not null primary key, content blob/text/stagod)" a
upiti "select b from t where id=konstanta" onda ti je ndbcluster majka
mara .. ne postoji brze resenje na planeti a pitanje je debelo da li
postoji resenje koje je stabilnije/robusnije ... cak i ako picis to kroz
sql nije sporo, ako picis kroz memcached interface (ndb ima isti i
zaobilazi sql kompletno) to je jos brze a ako ti je app u nekom
"podrzanom" jeziku (c/c++/java) mozes direktno da picis ndb-api i onda
je to smrzavanje .. ndb-cluster drzi normalno datu u ramu ali ti mozes
da kazes da ti je kolona "content" na disku (index mora da bude u ramu,
za to nema mogucnost da ide na disk), performanse za takav use case su
neprehebive, pricamo o milionima upita nad terabajtnom bazom ..
 
Odgovor na temu

Dejan Lozanovic
Dejan Lozanovic
Beograd

Član broj: 691
Poruke: 2325
84.93.80.*

Jabber: null@elitesecurity.org
Sajt: speedy-order.com


+75 Profil

icon Re: MongoDB - vodeca NoSQL baza podataka18.10.2013. u 22:02 - pre 127 meseci
Citat:
nkrgovic:
Kljuc. Ne ime polja, nisam bas kr*ten :) - samo vrednost. Key-value. Ako koristis mongo kao prost key-value, mozes da ih imenujes i kao a i b, tj. ako imas samo 2 poslja u jednoj tabeli.

Mozda to tebi zvuci cudno, ali ja bar na mongo gledam kao na dopunu rdbms-a, ne kao zamenu. Samim tim, u njega potrpam samo neke stvari, i to uglavnom vise kao key-value. Slicno kao sto bi koristio npr. memcached, ali naravno sa mnogo vecom kolicinom podataka - i perzistentnoscu.

Konkretan primer: Smestanje dokumenata. Imam dva polja, kluc i dokument. Indexiram po kljucu, koji je ID (a sifranik je u RDBMS-u), a dokument je, realno, BLOB (unutra je npr. serijalizovani json, ili sta vec....). Meni je to OK zamena za npr. NFS koji sluzi samo za smestanje dokumenata. Glavna prednost je brzina citanja i robusnost sistema. 3-way replica set od 3 off-the-shelf servera (ili VM-a) kosta manje nego dobar storage (tipa EMC), a radi isti posao.


Ok sad se razumemo, pricano u mongo terminologiji 1 record = 1 document = lista key/value parova, gde value moze da bude string, broj, array, drugi objekat itd..., e sad kad kazem kljuc mislim na ime polja. I da bi stedeo na prostoru i performansama querija prosto moras da imena polja drzis kratkima, sto same querije cini uzasnima i veoma necitljivima.

 
Odgovor na temu

[es] :: Baze podataka :: MongoDB - vodeca NoSQL baza podataka

Strane: 1 2 3 4 5

[ Pregleda: 96387 | Odgovora: 92 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.