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í
×
    včera 19:22 | Nová verze

    Byl vydán Debian 12.10, tj. desátá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    včera 18:22 | Nová verze

    Byla vydána nová verze 4.5 svobodného notačního programu MuseScore (Wikipedie). Představení novinek v oznámení v diskusním fóru a také na YouTube.

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

    Byla vydána nová verze 8.6.0 správce sbírky fotografií digiKam (Wikipedie). Přehled novinek i s náhledy v oficiálním oznámení (NEWS). Nejnovější digiKam je ke stažení také jako balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo ke spuštění a spustit.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Komunita

    O víkendu probíhá v Praze na Karlově náměstí 13 konference Installfest 2025. Na programu je celá řada zajímavých přednášek a workshopů. Vstup je zdarma. Přednášky lze sledovat i online na YouTube.

    Ladislav Hagara | Komentářů: 1
    14.3. 22:11 | Nová verze

    Byla vydána nová verze 2.49.0 distribuovaného systému správy verzí Git. Přispělo 89 vývojářů, z toho 24 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    14.3. 19:00 | IT novinky

    Premiér Petr Fiala (ODS) dnes na síti X vyloučil, že by za jeho vlády mohla začít platit vyhláška, podle níž by poskytovatelé internetového připojení měli uchovávat adresy internetových stránek, na které se lidé připojují.

    Ladislav Hagara | Komentářů: 4
    14.3. 12:33 | Komunita

    Flock 2025, tj. konference pro přispěvatele a příznivce Fedory, proběhne od 5. do 8. června v Praze.

    Ladislav Hagara | Komentářů: 0
    13.3. 17:29 | Komunita

    Zemřel Mark Klein, který dlouhá léta pracoval pro telekomunikační firmu AT&T a proslavil se jako whistleblower, když zveřejnil informace o spolupráci AT&T s agenturou NSA. Cílem spolupráce bylo sledovat veškerou komunikaci občanů za pomocí zařízeních v místnosti 641A. O spolupráci obou subjektů napsal knihu Wiring Up The Big Brother Machine...And Fighting It.

    Max | Komentářů: 0
    13.3. 16:33 | Nová verze

    Byla vydána nová verze 16 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v changelogu.

    Ladislav Hagara | Komentářů: 0
    13.3. 13:00 | IT novinky

    Texas Instruments představil nejmenší mikrokontrolér na světě MSPM0C1104. Je o 38 % menší než současné nejmenší mikrokontroléry. Má pouze 1,38 mm².

    Ladislav Hagara | Komentářů: 11
    Jaké je vaše preferované prostředí?
     (27%)
     (1%)
     (1%)
     (1%)
     (1%)
     (2%)
     (64%)
     (2%)
    Celkem 145 hlasů
     Komentářů: 5, poslední 13.3. 11:45
    Rozcestník

    Dotaz: mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov

    3.8.2011 19:54 monty
    mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov
    Přečteno: 271×
    ahojte, potreboval by som poradiť s týmto. V crone sa mi spúšťajú súbory (denne niekoľko tisíckrát rôzne súbory sa spustia). Po spustení každého súboru sa automaticky do db zapíše čas spustenia (prvý riadok na začiatku súboru) a po jeho ukončení sa zapíše čas ukončenia (posledný riadok na konci súboru php). Mám to tak preto, aby som vedel, keď niektorý súbor nedobehne do konca (napr.kvôli chybe, utne ho server, vyprší doba behu skriptu, atď). Týmto sa mi ale zbytočne plní databáza a po roku tam bude niekoľko miliónov riadkov, veľké auto increment idečka, skrátka bude veľká. Z môjho pohľadu ma nezaujímajú riadky v databáze, ktoré majú zapísaný začiatok i koniec behu súboru, lebo tým pádom je jasné, že súbor sa ukončil korektne. Moja myšlienka (laická) je taká, že by sa mala od týchto riadkov čas od času databáza odľahčiť, teda mohli by byť zmazané a zostať len tie riadky, ktoré napr. nemajú zapísanú hodnotu ukončenia (tých je úplné minimum). Ako by som to mal spraviť, aby databáza zbytočne nebola zaťažovaná riadkami, ktoré ma nezaujímajú? Čo radíte? Asi by bolo dobré aj nejako poupratovať auto increment hodnotu, aby zbytočne po vymazaní riadkov nepočítala a nezapisovala miliónové čísla, keď tie pred nimi sú voľné. Ďakujem za vaše rady už teraz.

    Řešení dotazu:


    Odpovědi

    Řešení 1× (monty (tazatel))
    3.8.2011 20:22 Kit
    Rozbalit Rozbalit vše Re: mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov
    Autoincrement neřeš. Miliardová čísla ID nejsou na závadu.

    Začátek skriptu můžeš udělat jako INSERT SET zacatek=now() a konec UPDATE SET konec=now().

    Při ukončení skriptu můžeš záznam smazat. Zůstanou jen neukončené.

    Pokud už máš tabulku naplněnu, pošli sem strukturu. Dá se to udělat celkem snadno přes spojení tabulky na sebe samu.

    Zvaž, jestli je na tuto úlohu nutná databáze a zda je nutné použít zrovna MySQL.
    3.8.2011 22:00 l0gik | skóre: 22
    Rozbalit Rozbalit vše Re: mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov
    Databáze je ideální, protože kdyby to psal někam do souboru atd., tak musí řešit konkurenci. Tak max ještě nějaká nosql databáze možná, ale proč nad tím mudrovat, když v mysql to je rychle a bez problémů.
    Řešení 1× (monty (tazatel))
    3.8.2011 20:46 l0gik | skóre: 22
    Rozbalit Rozbalit vše Re: mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov
    • Udělej autoincrement bigint a o jeho hodnotu se nestarej. Je jedno, jak je velkej a jestli v něm jsou či nejsou díry. Výkonnostně je to už úplně jedno.
    • Pokud úspěšné běhy logovat nepotřebuješ, zapisuj si do databáze i pid a místo zápisu času ukončení rovnou odmaž záznam s daným pid.
    • Několik milionů řádků pro databázi nic neznamená, nemusíš to řešit vůbec.
    3.8.2011 21:11 monty
    Rozbalit Rozbalit vše Re: mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov
    ďakujem Vám za obom za usmernenie. Teší ma, že to pre db nebude problém. zase som o niečo chytrejší :-)
    4.8.2011 09:57 kuka
    Rozbalit Rozbalit vše Re: mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov
    Pri tomto scenari tam muzes mit stovky milionu radku a bude to z hlediska vykonu pri zapisu asi celkem fuk (analyticke dotazy - pokud tam jsou potreba - jsou jina kapitola). Ale samozrejme treba zalohy ti usnadni, kdyz budes stara nepotrebna data cas od casu mazat.
    5.8.2011 12:30 VM
    Rozbalit Rozbalit vše Re: mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov
    O limitech tabulky v MySQL: http://dev.mysql.com/doc/refman/4.1/en/full-table.html
    5.8.2011 16:41 Kit
    Rozbalit Rozbalit vše Re: mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov
    Na druhou stranu je zbytečné udržovat data o kterých vím, že je nebudu potřebovat. Na zmíněnou úlohu by stačilo nějaké jednoduché KVS, relační databáze bych nechal pro jiné účely.
    5.8.2011 19:06 monty
    Rozbalit Rozbalit vše Re: mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov
    čo znamená prosím KVS?
    5.8.2011 19:48 Kit
    Rozbalit Rozbalit vše Re: mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov
    KVS je myšleno Key-Value Store. Databáze, do které se data ukládají pouze ve formě klíč->hodnota. Jinou strukturu nemá, záleží na fantazii a schopnostech programátora. Obvykle bývá velmi rychlá, řádově rychlejší než běžné relační databáze. V PHP jsou běžně dostupné např DB4 nebo GDBM a dost se na ně zapomíná.

    Jiným označením KVS je asociativní pole.
    5.8.2011 19:55 monty
    Rozbalit Rozbalit vše Re: mysql zamedzenie znižovaniu výkonu odstraňovaním nepotrebných riadkov
    vďaka za vysvetlenie

    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.