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 21:00 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 7.0 oznámil Linus Torvalds vydání Linuxu 7.1. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a časem také na Linux Kernel Newbies.

    Ladislav Hagara | Komentářů: 0
    včera 13:33 | Zajímavý software

    Cheat Engine (Wikipedie) je s verzí 7.7 k dispozici už také pro Linux. Jedná se o proprietární skener/debugger paměti používaný především k cheatování v počítačových hrách.

    Ladislav Hagara | Komentářů: 0
    13.6. 15:22 | IT novinky

    Vláda USA nařídila společnosti Anthropic pozastavit přístup k modelům Fable 5 a Mythos 5 pro všechny cizince, včetně zaměstnanců Anthropicu.

    Ladislav Hagara | Komentářů: 6
    13.6. 02:22 | Nová verze

    Společnost Murena představila (YouTube) novou verzi 4.0 mobilního operačního systému /e/OS (Wikipedie) založeného na Androidu a LineageOS bez aplikací a služeb od Googlu.

    Ladislav Hagara | Komentářů: 0
    12.6. 16:33 | Bezpečnostní upozornění

    V Arch User Repository (AUR) bylo kompromitováno přes 400 opomíjených balíčků (jejich seznam). Útočník do nich začlenil škodlivý npm balíček atomic-lockfile, který krade citlivá data uživatelů. Publikována byla předběžná analýza spouštěného malwaru deps.

    Ladislav Hagara | Komentářů: 11
    12.6. 11:33 | Nová verze

    Homebrew, správce balíčků nejen pro macOS, byl vydán ve verzi 6.0.0 (seznam změn). Hlavními novinkami jsou bezpečnostní mechanismus tap trust kvůli důvěryhodnosti závislostí, vylepšení sandboxingu na Linuxu, interní JSON API nebo zlepšení výkonu.

    |🇵🇸 | Komentářů: 0
    12.6. 03:33 | Bezpečnostní upozornění

    Byla nalezena a 9. června opravena kritická zranitelnost ve FreeBSD v Kernel TLS (KTLS). Pojmenována byla Bumsrakete (FreeBSD-SA-26:26.ktls, CVE-2026-45257). Lokální neprivilegovaný uživatel může přepisovat soubory, ke kterým má právo pouze pro čtení. Přepsáním setuid binárky a jejím spuštěním může získat roota. Na všech verzích od verze 13.0 vydané v dubnu 2021.

    Ladislav Hagara | Komentářů: 2
    11.6. 14:11 | Komunita

    Vývojáři open source operačního systému ReactOS (Wikipedie), jehož cílem je kompletní binární kompatibilita s aplikacemi a ovladači pro Windows, se na síti 𝕏 pochlubili, že ReactOS zvládne počítačovou hru Half-Life.

    Ladislav Hagara | Komentářů: 5
    11.6. 10:44 | Nová verze

    Byla vydána nová verze 4.8 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Využíván je Free Pascal Compiler (FPC) 3.2.2.

    Ladislav Hagara | Komentářů: 0
    11.6. 04:44 | Nová verze

    Apple container dospěl do verze 1.0.0. Jedná se o open source nástroj pro spouštění linuxových kontejnerů na macOS postavený nad containerization. Napsaný je v programovacím jazyce Swift a optimalizovaný pro Apple silicon.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1906 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: široká tabulka mysql

    16.1.2011 13:30 Matlák
    široká tabulka mysql
    Přečteno: 611×
    Dobrý den.
    Mám takový obecný "FAQ" dotaz na MySQL:

    Navrhuju databázi pro položky které mají velký počet parametrů (asi 350) a potřeboval bych, aby bylo možné podle kteréhokoli z nich vyhledávat a řadit. Je lepší použít jednu širokou tabulku s 350 sloupci, ve které bych vyhledával normálně a nebo je lepší použít uloženou proceduru, přičemž by se jednotlivé parametry (krátké řetězce či čísla) uzavíraly v "hlavní" tabulce do stringu a pomocí substring() se rozporcovávaly, přičemž by vznikala dočasná tabulka ve které by se pak vyhledávalo?

    Jde mi hlavně o časovou náročnost při velkém počtu položek (kolem 15-30 tisíc). Má vůbec cenu uvažovat nějaké uložené procedury? Děkuji předem za odpověď.

    Řešení dotazu:


    Odpovědi

    16.1.2011 13:34 FooBar
    Rozbalit Rozbalit vše Re: široká tabulka mysql
    Ta metoda pomoci substringu je silena od zacatku do konce a 15-30 tisic polozek neni moc.

    That said, pokud vsechny polozky nemaj stejnej pocet parametru (nektery/vetsina) muze bejt NULL, doporucuju zvazit navrh parametru pres EAV (entity-attribute-value, viz wikipedia nebo Google).
    16.1.2011 14:54 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: široká tabulka mysql
    Obecná poznámka (neznaje Váš případ):
    350 parametrů neznamená obvykle 350 parametrů, i když je to například měření ze spoustou vstupů, lze to rozdělit do jednotlivých tabulek a ty pak dle daného účelu spojovat a vyhledávat, protože obvykle se nechce znát všech 350 parametrů naráz, a pak i při milionech záznamů lze tato data zpracovávat velmi efektivně na běžném notebooku.
    Rovněž je možné, že se budou vyskytovat nějaké výčty reprezentované textem s omezenou množinou hodnot, ty lze chápat jako číselníky a jejich ID může mít jen bezpečný rozsah (třeba jen 1byte)
    Dlouhé komentáře málo potřebné lze vyjmout do polí typu TEXT (textový blob), kterýžto není celý součástí záznamu.
    Pokud je množství řádků omezené pouze na 30tis, tak níže zmíněná možnost EAV či podobné modely lze aplikovat i na běžném HW.
    PS: Pravděpodobně ale stejně narazíte :).
    substring doporučuji zapomenou - to pak snad už ani nedávejte do db…
    Co se týče procedur, záleží na tom jaký je vstup a jak se parsuje fo podoby SQL.
    Z mého pohledu je 15-30tis jen několik záznamů, pokud je není třeba zpracovat ve 2 sekundách :)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    17.1.2011 21:01 jekub
    Rozbalit Rozbalit vše Re: široká tabulka mysql
    všeobecná poznámka - nepoužívejte přechodníků neumíte-li to.
    17.1.2011 21:24 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: široká tabulka mysql
    Jsem rád když sesmolím větu, v které nechybí čárka či neprohodím předložku s/z, ještě abych si všímal, že jsem omylem použil přechodník a špatně. Asi narážíte na „neznaje“ asi by tam mělo být něco jako: „Píšu, neznaje Váš případ“ jestli ne, tak mi to taky nevadí…
    Sorry jestli jsem poranil Vaše gramatické oko :), připomínku jsem si přečetl a nebudu se jí řídit :)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    17.1.2011 21:39 FooBar
    Rozbalit Rozbalit vše Re: široká tabulka mysql
    ...nekritizujte gramatiku, kdyz Vam chybeji carky. :)
    Dalibor Smolík avatar 17.1.2011 14:09 Dalibor Smolík | skóre: 54 | blog: Postrehy_ze_zivota | 50°5'31.93"N,14°19'35.51"E
    Rozbalit Rozbalit vše Re: široká tabulka mysql
    Asi bych zvážil, zda některé parametry jsou důležitější než ostatní a podle nich zvolil počet sloupců. (Řadí se vždy podle jednoho nebo víc parametrů najednou?). Zbytek bych dal do pole "text" a při vyhledávání vytvořil formulář, kde by se zadal hledaný text nebo jen část řetězce, vyjely by jen řádky obsahující tento text. Něco takovéhov menším využívám také.
    Rozdíly v řeči a ve zvyklostech neznamenají vůbec nic, budeme-li mít stejné cíle a otevřená srdce.
    17.1.2011 14:32 kuka
    Rozbalit Rozbalit vše Re: široká tabulka mysql
    Je to popsane dost kuse, ale pokud ma jit o neco jako "sesit tabulkoveho procesoru", tak to pres sloupce bude nejrychlejsi. Na variantu se substring rovnou zapomen. Zalezi i na tom, jak a zda se to ma potom zobrazovat, jak se to bude plnit, kolik z tech parametru maji jednotlive polozky v prumeru vyplneno apod.
    19.1.2011 17:34 VM
    Rozbalit Rozbalit vše Re: široká tabulka mysql
    Na substring zapomente - nefunguji na nem indexy.

    Osobne bych zvolil treti moznost - tabulku se tremi sloupci - ID polozky, typem parametru a hodnotou parametru. Udelate index na typ a hodnotu, a dostanete co hledate - ID polozky.
    20.1.2011 10:33 kuka
    Rozbalit Rozbalit vše Re: široká tabulka mysql
    Jen je treba vzit v uvahu, ze z tabulky o 30 tisicich radku se nam takto stala tabulka o 10 milionech radku. Ne ze by to dnes bylo neco hrozneho. Pro nektera pouziti je tato metoda vhodna, pro jina nikoliv. Napriklad slozeny index se nad takovym modelem udela opravdu tezko, stejne tak i unikatni klic nad urcitymi skupinami parametru, constraint davajicich hodnoty parametru do souvislosti apod. Tazatel o pouziti dat neuvadi temer nic, takze s vyjimkou odmitnuti te "substringove" metody je tezke mu smysluplne poradit.

    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.