abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    dnes 12:33 | Komunita

    Alex Ellis upozornil 15. března, že firma Docker se chystala zrušit bezplatný hosting open-source projektů na Docker Hubu. Po vlně odporu se představitelé firmy omluvili a posléze byl původní záměr odvolán.

    Fluttershy, yay! | Komentářů: 0
    dnes 07:00 | IT novinky

    Ve věku 94 let zemřel Gordon Moore, mj. spoluzakladatel společnosti Intel a autor Moorova zákona.

    Ladislav Hagara | Komentářů: 0
    včera 17:11 | Nová verze

    Mercurial (Wikipedie), software pro SCM (Source Code Management), byl vydán ve verzi 6.4. Přehled novinek v poznámkách k vydání. Ve dnech 5. až 7. dubna proběhne konference Mercurial Paris.

    Ladislav Hagara | Komentářů: 0
    včera 11:55 | IT novinky

    Byly rozdány Ceny Velkého bratra (Big Brother Awards) za rok 2022 pro největší slídily pořádané nevládní organizací Iuridicum Remedium. Dlouhodobý slídil: Microsoft. Firemní slídil: Seznam. Úřední slídil: Nejvyšší správní soud. Výrok Velkého bratra: Marian Jurečka. Pozitivní cena: NoLog.

    Ladislav Hagara | Komentářů: 10
    včera 11:11 | Zajímavý projekt

    Byla představena online vzdělávací platforma Ada Computer Science pro učitele, studenty a kohokoli, kdo se zajímá o informatiku. Stojí za ní Raspberry Pi Foundation a Univerzita v Cambridgi.

    Ladislav Hagara | Komentářů: 0
    včera 09:11 | Bezpečnostní upozornění

    GitHub má nový RSA SSH klíč. Předchozí soukromý klíč byl krátce vystaven na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 08:55 | IT novinky

    Společnost Framework Computer představila (YouTube) nové modulární notebooky: Laptop 13 s Intel Core nebo AMD Ryzen a Laptop 16 (YouTube).

    Ladislav Hagara | Komentářů: 0
    23.3. 19:33 | Nová verze

    Bylo vydáno Ubuntu 20.04.6 LTS, tj. šesté opravné vydání Ubuntu 20.04 LTS s kódovým názvem Focal Fossa. Přehled novinek v poznámkách k vydání a v přehledu změn.

    Ladislav Hagara | Komentářů: 1
    23.3. 14:44 | IT novinky

    Připojit neznámý USB flash disk do počítače může být nebezpečné. Dokonce může jít i o život. Někdo rozeslal ekvádorským novinářům USB flash disky, které po připojení do počítače explodují [BBC, Twitter].

    Ladislav Hagara | Komentářů: 2
    23.3. 13:33 | Nová verze

    Byla vydána nová verze 7.4 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu.

    Ladislav Hagara | Komentářů: 0
    Používáte WSL (Windows Subsystem for Linux)?
     (74%)
     (12%)
     (4%)
     (10%)
    Celkem 318 hlasů
     Komentářů: 4, poslední včera 06:42
    Rozcestník


    Dotaz: Docasna tabulka

    9.2.2009 00:09 tony
    Docasna tabulka
    Přečteno: 268×

    Zdravim, potrebuji udelat neco jako docasnou tabulku. Problem je takovy, mam obrovske mnozstvi jednoduchych dat v nejake tabulce, no a chci pro kazde id (ruzne se opakuje) vytvorit neco jako cache tabulku kde bude vysledek dotazu (...where id = 123 group by...), teda az pri prvnim pouziti onoho id. takze dotaz na hlavni tabulku ktery obvykle trva treba 2 sekundy, by pri dotazu na tuhle docasnou tabulku trval 00 nic (odkud brat data by bylo osetrene v samotne webove aplikaci).
    No pri aktualizaci dat (ktera by probihala treba 1x denne) by se vsechny docasne tabulky smazaly.

    Zkousel jsem neco jako CREATE VIEW, jenze to bylo snad jeste pomalejsi nez kdybych ten dotaz pokazde provadel znovu. Delal jsem snad nekde chybu?! Taky jsem zkousel create temporary table, jenze to mi v databazi evidentne jen-tak nezustane.

    Nevite jak na to? Mam na svym serveru mysql5. Nejsem proti zmene na jiny databazovy server, ktery bude minimalne stejne rychly a bude umoznovat neco pro reseni problemu, ktery jsem popsal vyse.
     

    p.s. Ted me napadlo, co takhle vytvorit klasickou tabulku, ale v memory enginu? Tzn. bylo by to ulozene v pameti, takze by ta rychlost vytvoreni, pouzivani (pouze select) a smazani mela bejt postacujici.

    Odpovědi

    9.2.2009 00:29 mozog | skóre: 28
    Rozbalit Rozbalit vše Re: Docasna tabulka
    nedal by sa pouzit Memory engine ?
    9.2.2009 02:24 Tomáš K.
    Rozbalit Rozbalit vše Re: Docasna tabulka

    CREATE VIEW můžeš zadat ALGORITHM, který říká, jak má s pohledem pracovat. Možnosti jsou dvě - MERGE nebo TEMPTABLE. Pokud nezadáš něco explicitně, mysql si vybere jeden z nich, nevím jak. MERGE si zřejmě vybralo v tvém případě - tento algoritmus si pamatuje akorát dotaz, který jsi zadal při CREATE VIEW a pokud pošlel nějaký dotaz na ten VIEW, tak ho syntakticky zmerguje s tím, co si pamatuje a zavolá. Tedy v podstatě syntaktický cukr. Druhý algoritmus - TEMPTABLE vytvoři dočasnou tabulku, kde si pamatuje data - to je to, co chceš. Jak se to chová při updatu bych musel hledat v dokumentaci, je možné, že tam jsou nějaká omezení... 

     

    Zdroj: http://dev.mysql.com/doc/refman/5.0/en/view-algorithms.html  

    9.2.2009 06:54 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Docasna tabulka
    Ak ma byt aktualiazcia udajov raz denne, a podla vsetkeho kontrolovana, isiel by som na to "hrubou silou", t.j. vytvaranim plnohodnotnej a vhodne oindexovanej tabulky. Ani by som sa velmi nestaral o to, ze bude umiestnena na disku: ak bude pouzivana casto, bude pravdepodobne natiahnuta v cache.
    Mam na svym serveru mysql5. Nejsem proti zmene na jiny databazovy server, ...
    V tom pripade odporucam zvazit PostgreSQL, pripadne jeho "enterprise" verziu EnterpriseDB.

    9.2.2009 08:50 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Docasna tabulka
    S PostgreSQL můžete pomocí triggerů nebo rules vyvolat změnu vaší kešovací tabulky, pokud dojde ke změně v hlavní tabulce. Pomocí rules pak můžete udělat takový pohled, který se nejprve podívá do kešovací tabulky, pokud tam data nenajde, udělá SELECT nad hlavní tabulkou a výsledek uloží do té kešovací tabulky. Aplikace o tom tedy vůbec nemusí vědět a bude se ptát stále toho pohledu.
    9.2.2009 16:50 Johny99
    Rozbalit Rozbalit vše Re: Docasna tabulka

    Zatim to tu nikde nepdalo, takze se zeptam - pouzivate indexy? Nevim kolik zaznamu je v tabulkce celkem ani kolik filtrujete (v procentech) ani jaky mate hardware - na vsem zalezi. Pokud ale jde o nejakou "obycejnou" webovou aplikaci a query neni nejak silene komplikovana, tak bude problem spis v indexaci databaze a optimalizaci dotazu. Driv nez bych resil nejake silenosti, tak bych se zameril na toto. Daji se s tim dokazat zazraky... :-)

    Johny99

    9.2.2009 23:28 Tlama | skóre: 6
    Rozbalit Rozbalit vše Re: Docasna tabulka

    Ahoj! Co znamena "obrovske mnozstvi jednoduchych dat"? Pokud mas nekolik milionu zaznamu, tak to rozdel do partitions podle prave toho id. Kazde id, pak bude mit "svoji" tbl, coz ti pomuze zvysit vykon.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.