Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> baza MongoDB a bazy relacyjne
wiewiorek
post
Post #1





Grupa: Zarejestrowani
Postów: 247
Pomógł: 11
Dołączył: 5.09.2009

Ostrzeżenie: (0%)
-----


Do tej pory używałem relacyjnych baz danych, niedawno wielce się zdziwiłem gdy spotkałem się z nosqlową bazą danych MongoDB. Ktoś tego używał i ma porównanie jakie to ma wady i zalety w porównaniu do relacyjnych baz danych? Chyba wszystkie duże serwisy są oparte o bazy relacyjne więc to MongoDB jest wykorzystywane tylko w małych serwisach czy jak to wygląda?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
alegorn
post
Post #2





Grupa: Zarejestrowani
Postów: 341
Pomógł: 40
Dołączył: 23.06.2009

Ostrzeżenie: (0%)
-----


solificati:: wszystko zależy od przypadku. trudno jest pisać o 'jedynym słusznym' rozwiązaniu, bo dojdziemy niedługo do stwierdzeń typu 'moje rozwiązanie jest słuszne bo jest słuszniejsze od Twojego' (IMG:style_emoticons/default/wink.gif) co samo w sobie jest prawdą, (IMG:style_emoticons/default/oneeyedsmiley02.png) ale nic nie wnosi do dyskusji.

zastanówmy się jednak nad tym co napisałeś

Cytat
Problem się zaczyna gdy potrzebujemy egzekwować zależności. Relacje pozwalają nam kontrolować dane, mamy dodatkowo contraints i triggery, które dbają o poprawność danych. Sam mechanizm relacyjny zapewnia w pewnym stopniu poprawność danych. Bazy dokumentów nic nie dają w tej kwestii.


tak naprawdę w ilu przypadkach potrzebujesz tego typu sprawdzeń ?
kolejnym pytaniem jest, czy jest to tak naprawdę potrzebne, i czy koszt obsługi tego jest tego warty? (czas implementacji, czas realizacji zapytania)

oczywiście że nie twierdzę że sql to przeżytek i nie warto już tego stosować. to by było nadinterpretacją. jeśli jest wymagane wysokie bezpieczeństwo poprawności danych - to owszem bazy sql'owe pewnie są lepszym rozwiązaniem.
tyle że tak naprawdę, w ilu przypadkach jest to nam potrzebne? do prowadzenia bloga? do strony firmowej? do stron wizytówkowych ? do wszelkiej maści prostych for? komentarzy ?


Cytat
Aplikacja internetowa to taka zwykła aplikacja, tylko ma inny interface. Jak najbardziej SQL jest do stron internetowych.

i tak i nie.
owszem jest to aplikacja o takim a nie innym interfejsie - tutaj zgoda.
tyle że specyfika funkcjonowania tegoż interfejsu sprawia że sqlowe bazy się nie sprawdzają.


proste pytanie, ile razy, po wykonaniu serwisu, a zwłaszcza po jakimś czasie jego funkcjonowania usłyszałeś,
no ok, niby działa, ale dlaczego to tak wolno działa ?
lub: dlaczego do prostego wyświetlenia wszystkich komentarzy pod postem trzeba tyle czekać ?

po sprawdzeniu, i wykonaniu rachunku sumienia, dochodzimy do ściany - już bardziej nie da się zoptymalizować tego zapytania, tej tabeli, tej aplikacji... stwierdzamy : po prostu serwer nie wyrabia.. kup pan nową maszynę...

idę o zakład ze dla pewnej części problemów (nie napiszę że dla wszystkich) - da się wybrać odpowiednie rozwiązanie, właśnie w nosql.
dlatego, między innymi właśnie powstały te bazy. bo stwierdzono że SQL nie daje rady w internecie.

j.

edit:
chwila refleksji nad tym co napisalem.
tak naprawdę ostatnio pracuje na hybrydach (mongo + mysql a nie wykluczam i inne silniki). nie używam jednej bazy danych, jednego jedynego 'słusznego' softu czy maszyny... okazuje się że tworząc hybrydy baz sql i nosql - otrzymamy wydajną i bezpieczną aplikację.
że stosując rozdział dla serwerów aplikacyjnych i na serwery serwujące kontent - osiąga się większą wydajność na maszynie, da się obsłużyć większy ruch. że warto czasem olać uznane frameworki i napisać cos dedykowanego dla problemu....
okazuje się ze np samo przejście na silnik percony - daje wymierny efekt
tak naprawdę okazuje się że warto szukać nowych, innych rozwiązań... czasem stracisz tylko czas, ale często udaje się urwać kilka procent mocy, czasu.... a to sprawia - ze warto

Ten post edytował alegorn 9.07.2012, 13:45:52
Go to the top of the page
+Quote Post

Posty w temacie
- wiewiorek   baza MongoDB a bazy relacyjne   8.07.2012, 15:33:01
- - Niktoś   Bazy nierelacyjne używa się zazwyczaj do przechowy...   8.07.2012, 15:53:47
- - wiewiorek   hm......... chyba nie o to chodzi - bo ja widziałe...   8.07.2012, 19:03:53
- - skowron-line   Może to nie odpowiedz na pytanie no ale taki teści...   8.07.2012, 19:11:06
- - Niktoś   Mimo ,że nirelacyjne bazy danych są szybsze(cechuj...   8.07.2012, 21:40:07
|- - Theqos   Cytat(Niktoś @ 8.07.2012, 22:40:07 ) ...   9.07.2012, 08:12:16
|- - NuLL   Cytat(Niktoś @ 8.07.2012, 21:40:07 ) ...   9.07.2012, 19:25:10
- - Crozin   A spróbowałeś chociaż wyszukać takie ogólnego poró...   9.07.2012, 09:20:20
- - solificati   Bazy noSQL to szeroki temat, nie ma tam jednego po...   9.07.2012, 11:01:19
- - alegorn   hmm. czytając cześć postów, mam wrażenie ze chyba ...   9.07.2012, 12:19:27
|- - solificati   Cytat(alegorn @ 9.07.2012, 13:19:27 )...   9.07.2012, 12:42:41
- - alegorn   solificati:: wszystko zależy od przypadku. trudno ...   9.07.2012, 13:19:42
|- - solificati   Cytat(alegorn @ 9.07.2012, 14:19:42 )...   9.07.2012, 13:41:57
- - alegorn   crm - tak, ale to idzie bardziej w intranet niz in...   9.07.2012, 15:22:53
|- - solificati   Cytat(alegorn @ 9.07.2012, 16:22:53 )...   9.07.2012, 16:52:14
- - alegorn   hmm. chyba nie ma o czym dyskutować, dlatego ze w ...   9.07.2012, 17:55:55
- - Niktoś   CytatCo do zadan - trzymanie logiki wewnatrz bazy ...   9.07.2012, 22:07:07
- - alegorn   CytatWydaje mi się, że nie należy patrzeć tylko na...   10.07.2012, 09:55:38
|- - solificati   Cytat(NuLL @ 9.07.2012, 20:25:10 ) Co...   10.07.2012, 11:03:28
- - nasty   Widzę, że muszę interweniować bo tu niektórzy Pano...   10.07.2012, 12:14:29
|- - solificati   Cytat(nasty @ 10.07.2012, 13:14:29 ) ...   10.07.2012, 13:24:30
|- - nasty   Cytat(solificati @ 10.07.2012, 14:24...   10.07.2012, 14:33:00
- - solificati   Mój błąd. Przez poprawić go miałem na myśli popraw...   10.07.2012, 14:34:09
|- - nasty   Cytat(solificati @ 10.07.2012, 15:34...   10.07.2012, 14:42:17
- - solificati   Och, jeszcze raz. Twój plan zapytania jest dobry, ...   10.07.2012, 15:27:03
|- - nasty   Cytat(solificati @ 10.07.2012, 15:27...   10.07.2012, 16:03:02
|- - solificati   Cytat(nasty @ 10.07.2012, 17:03:02 ) ...   10.07.2012, 16:29:55
|- - nasty   Cytat(solificati @ 10.07.2012, 16:29...   10.07.2012, 16:54:46
|- - solificati   Cytat(nasty @ 10.07.2012, 17:54:46 ) ...   10.07.2012, 17:15:32
|- - nasty   Cytat(solificati @ 10.07.2012, 17:15...   10.07.2012, 17:20:24
- - Niktoś   Ja używam MSSQL i świetny T-SQL, jednakże ze wzglę...   10.07.2012, 16:53:55
- - Niktoś   CytatI tu dochodzimy do sedna sprawy. NoSql jest u...   10.07.2012, 16:57:00
|- - nasty   Cytat(Niktoś @ 10.07.2012, 16:57:00 )...   10.07.2012, 17:07:41
- - Niktoś   CytatTo nie jest relacyjna baza danych.To jest rel...   10.07.2012, 17:30:58
- - nasty   Cytat(Niktoś @ 10.07.2012, 17:30:58 )...   10.07.2012, 17:35:00


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 4.10.2025 - 00:42