Tomasz Zadora

Tomasz Zadora programuję

Temat: Kiedy NoSQL?

Łukasz Grabowski:
[...]

a co do kluczy obcych, jak masz constrainta założonego to on wymaga aby rekord był ...w myisam nie masz kluczy obcych ....

Klucz obcy to konstrukcja logiczna i niekoniecznie musisz zakładać "constrainta".

i nie spotkałem się aby było coś takiego jak contraint który do tej tabelki może być a do tej nie ...

No cóż, parafrazując Twój aktualny podpis, że cokolwiek nie możesz dotknąć, zobaczyć lub poczuć to dla Ciebie nie istnieje, to wcale mnie to nie dziwi :)

[...]
Ja doskonale rozumiem to co chcesz zrealizować,ale jest to naprawdę ciężkie bez realizacji obsługi operacji w oparciu o dodatkowa warstwę.

Ja to nie tylko chcę ale już z powodzeniem to realizuje właśnie łącząc MyISAM z InnoDB, tylko potrzeby się zwiększają i myślę o NoSQL.
Uważam że możemy zakończyć tutaj naszą rozmowę, ponieważ zeszła na technicze rozmowy o mysql ...

*ulga*

[...]

pozdrawiam,
TZTomasz Zadora edytował(a) ten post dnia 23.06.11 o godzinie 20:09

konto usunięte

Temat: Kiedy NoSQL?

Tomasz Wiśniewski:
Polecam obejrzeć:

http://www.percona.tv/percona-live/why-sql-wins
Czy mi się wydaje, czy ten człowiek czyta z kartki swoją prezentacje?

Temat: Kiedy NoSQL?

Nie wiem, może. Ale to chyba nie jest ważniejsze od treści?

konto usunięte

Temat: Kiedy NoSQL?

Tomasz Wiśniewski:
Nie wiem, może. Ale to chyba nie jest ważniejsze od treści?

Oczywiście przerost formy nad treścią jest czymś niepoprawnym. Ale czytanie prezentacji z kartki jest czymś bardzo nagannym na konferencji. Wygląda to wówczas tak, jakby prezentacje pisał ktoś inny.

Co zaś do samej treści. Na rynku baz danych wciąż zachodzą wszelkiego rodzaju ewolucje. Sam system relacyjnych baz jest już dopracowany z taką precyzją, że ciężko coś zmienić/udoskonalić. Na ogół są to elementy pozwalające zoptymalizować wydajność, zmniejszyć koszty utrzymania bądź ułatwić zarządzanie.
W chwili obecnej widać rzeczywiście powrót do wykorzystania innych struktur niż relacyjne. Tak było kilka lat temu kiedy do baz na powrót wrzucono struktury hierarchiczne (charakteryzujące bazy pierwszej generacji) na ogół w postaci XML. Teraz mamy pokaz siły map, których implementacje w silniki oferują dostawcy (np. IBM Netezza). Ale to na pewno nie jest cofanie się, a raczej reimplementacja.

Temat: Kiedy NoSQL?

NoSQL [Wikipedia.NoSQL] to termin, jakim określa się bazy danych, które, głównie dla lepszej skalowalności, odchodzą od ścisłego modelu relacyjnego i gwarancji ACID. Oprócz CouchDB i MongoDB do tego grona zalicza się np. BigTable Google, Cassandra Facebooka czy Dynamo Amazona. Zwykle nie obsługują transakcji powodujących zmiany w kilku obiektach, nie strukturyzują ściśle przechowywanych danych, oferując w zamian dużą szybkość i możliwość prostego skalowania poziomego (na wiele maszyn).

Bazy nierelacyjne zyskują na popularności chyba nie bez powodu?
Jesteśmy przyzwyczajeni do tradycyjnego przetwarzania transakcji
i ciężko nam przekonać się do czegoś nowego.
Owszem, przeważnie bazy nierelacyjne są wykorzystywane w połączeniu z relacyjnymi, ale co w tym złego?
Dlaczego nie wykorzystywać zalet nierelacyjnych baz danych? Nikt nie zmusza nas do całkowitego oddania NoSqlowi. Poczekajmy i zobaczymy jak rozwinie się nurt noSql, a rozwinie się na pewno.

konto usunięte

Temat: Kiedy NoSQL?

Hanna M.:
Generalizując odpowiedź na pytanie w temacie można powiedzieć, że noSQL jest lepszy do obsługi wielkiej ilości danych o nieskomplikowanej strukturze (nieliczna ilość typów danych), natomiast rozwiązanie SQL będzie lepsze do obsługi wielkiej ilości danych o skomplikowanej strukturze (liczna ilość typów danych).

Mam wrażenie że jest wręcz przeciwnie - że NoSQL stosuje się głównie wtedy gdy struktura jest nieokreślona i gdyby próbować usystematyzować daną strukturę (wciskając ją w relacje) - wyszedłby koszmar. W relacyjnych bazach spotyka się to wtedy, gdy mamy wariantowe struktury (np. w wypadku dziedziczenia, grup pól opcjonalnych, podtablic). W takiej sytuacji w bazie relacyjnej zaczyna się robić bałagan, w NoSQL - nie, od razu widać z jaką strukturą ma się do czynienia.

Podobna sytuacja jest w JSON vs XML. XML nastawiony jest na definiowanie sztywnych reguł, JSON - luźna zupa wartości.

Temat: Kiedy NoSQL?

noSQL daje nam nowe modele danych - nowe możliwości.
Nie ma w noSQL nic ścisłego, ale według mnie możemy znaleźć cztery główne modele danych - kolumnowy (np.: Cassandra), dokumentowy (np.: CouchDB czy MongoDB), grafowy (np.: Neo4j) i klucz-wartość (np.: Redis).
Projektując bazę danych, w przypadku baz relacyjnych, musisz określić wszystko przed rozpoczęciem pracy, a w przypadku baz nierelacyjny masz ten komfort, że nie musisz ustalać od razu wszystkiego (i to też uważam za zaletę) i dokumenty w JSONie są mile widziane, gdy mamy do czynienia z bazami nierelacyjnymi. Oczywiście co do skomplikowanej struktury - uważam, że nierelacyjne bazy pozwalają na większą elastyczność jeśli chodzi o model danych.
Nierelacyjne bazy wygrywają przy dużej ilości danych - to fakt - skalowalność pozioma, to jedna z wielkich zalet noSQL.
Nie mówiąc już o prostej obsłudze tych baz - każdy na pewno, jakby spróbował znalazłby coś dla siebie.

Będę bronić noSQLa ;)
Krzysztof Białkowski

Krzysztof Białkowski Software Developer
(C# .NET)

Temat: Kiedy NoSQL?

dobra a ja mam pytanko czy ktoś z Was tego używa na produkcji ?
Jeśli tak to do czego i jakie ilości danych się rozchodzi.

Następna dyskusja:

Kursy z baz danych SQL? Gdz...




Wyślij zaproszenie do