-
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
Następne wpisy z tego wątku
- 27.03.10 17:27 Artur Muszyński
- 28.03.10 14:42 Marek
Najnowsze wątki z tej grupy
- Jakie znacie działające serwery grup dyskusyjnych?
- is it live this group at news.icm.edu.pl
- php, linki z nazwami a $_GET, SEO
- www polityka pl captcha
- dyktatura brudnego palucha
- www.znanylekarz.pl
- Czy pytanie o sczytywanie stron programami/skryptami to tu?
- Grupy webdevowe
- Jak wydrukować stronę?
- IIS, kilka witryn
- linki <a href="/strona.php"> (ze slashami)
- co rozszerza stronę??
- responsywny akapit <p>
- Czy istnieje jakiś emulator przeglądarek pod Mac'a?
- taka sama konfiguracja dla localhost i produkcji
Najnowsze wątki
- 2024-11-08 Belka
- 2024-11-09 pierdolec na punkcie psa
- 2024-11-09 Warszawa => Sales Executive <=
- 2024-11-09 Wrocław => SAP BTP Consultant (mid/senior) <=
- 2024-11-09 Warszawa => ECM Specialist / Consultant <=
- 2024-11-09 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-10 TVN donosi: Obywatelskie zatrzymanie policjanta (nie na służbie)
- 2024-11-08 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-08 Warszawa => Key Account Manager <=
- 2024-11-08 Szczecin => Key Account Manager (ERP) <=
- 2024-11-08 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-11-08 Wrocław => Senior PHP Symfony Developer <=
- 2024-11-08 Warszawa => QA Engineer <=
- 2024-11-08 Warszawa => QA Inżynier <=
- 2024-11-08 Warszawa => Key Account Manager <=