eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.wwwCMSy - jak przechowywać treść?Re: CMSy - jak przechowywać treść?
  • Data: 2010-03-27 17:24:38
    Temat: Re: CMSy - jak przechowywać treść?
    Od: Artur Muszyński <a...@u...wytnijto.com.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu 2010-03-24 21:15, Marek pisze:
    >
    >> Kolejny raz napiszę, że to bzdurne podejście.
    >
    > To prawda - lecz nie rozwijasz wątku. Bzdurne bo Ty stosujesz inne
    > rozwiązanie? To słaby argument.

    Premature optimization is the root of all evil. Na pewno to wiesz.

    >> Przyznaj się, że gubisz
    >> się w kodzie przy ilości tabel > 1, a nie teorie sobie dorabiasz.
    >
    > Po pierwsze tabel mam 96 i jakoś nie gubię się w tym, po drugie
    > chciałbym abyś wykazał iż tyle samo czasu CPU zajmie zapytanie
    > składające się z SELECT * FROM tabela oraz SELECT * FROM tabela JOIN
    > inna_tabela JOIN jeszcze_inna JOIN kolejna. Nie wiem na czym opierasz
    > swoje twierdzenie, że takie rozbudowywanie zapytań SQL w niczym nie
    > szkodzi. Otrzymałem skrajnie odmienne wyniki pomiarów.

    Te różnice wydajności nie powinny być kryterium projektowym.
    Denormalizacja to raczej wyjątkowa sprawa.

    >> Szczególnie, że dalej twierdzisz, że wrzucasz kontent do cache, co
    >> powinno dodatkowo niwelować narzut na bazę. Tak w ogóle, MySQL też
    >> potrafi keszować sobie zapytania, czyli oszczędzasz co najwyżej na
    >> czasie generowania treści.
    >
    > Akurat nie stosuję MySQL'a aby wypowiadać się w sprawie tej bazy lecz
    > wydaje mi się ciekawym zagadnienie cache'owania zapytań przez samą bazę.
    > Nie wyobrażam sobie jak taki mechanizm może funkcjonować jeśli baza "nie
    > wie" co najczęściej będzie czytane i jak dalej przetwarzane i w związku
    > z tym co należy cacheować. W innych bazach: PostgreSQL, M$ SQL nie
    > zaobserwowałem takiego mechanizmu o jakim piszesz dla zapytań typu
    > SELECT * FROM tabela WHERE tabela_id=losowy_id (bo nie można przewidzieć
    > o jaki ID będzie zapytanie). Zapytanie pochłania znacznie więcej taktów
    > CPU niż odczyt z cache tych samych informacji a już nie wspomnę o danych
    > przetworzonych wstępnie - głównie to jest przedmiotem cacheowania w moim
    > CMS a nie same zapytania SQL. Są to np. wyniki rekurencyjnych zapytań
    > SQL często powtarzanych przy odwiedzaniu serwisu WWW - np. dla struktur
    > menu, kategorii i innych hirerchii, wstępnie przetworzone fragmenty
    > stron WWW, które nie muszą być dynamicznie aktualizowane itp.

    PostgreSQL chyba nie ma, a MySQL ma.
    Keszowanie przetworzonych wyników jest OK, ale... tym bardziej po co
    optymalizować zapytania? :-)

    PS: Takty CPU liczyłem za czasów Z80, sądziłem, że to historia :-)

    artur

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: