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 17:22 | Nová verze

    Byla vydána verze 0.84 telnet a ssh klienta PuTTY (Wikipedie). Podrobnosti v přehledu nových vlastností a oprav chyb a Change Logu.

    Ladislav Hagara | Komentářů: 0
    včera 19:44 | IT novinky

    Microsoft představil Azure Linux 4.0 a Azure Container Linux. Na konferenci Open Source Summit North America 2026 organizované konsorciem Linux Foundation a sponzorované také Microsoftem. Azure Linux 4.0 vychází z Fedora Linuxu. Azure Container Linux je založen na projektu Flatcar. Azure Linux (GitHub, Wikipedie) byl původně znám jako CBL-Mariner.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 165 (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Byla vydána verze 9.2 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 informačním videu.

    Ladislav Hagara | Komentářů: 5
    včera 09:33 | IT novinky

    Firefox 151 podporuje Web Serial API. Pro komunikaci s různými mikrokontroléry připojenými přes USB nebo sériové porty už není nutné spouštět Chrome nebo na Chromiu postavené webové prohlížeče.

    Ladislav Hagara | Komentářů: 7
    včera 04:44 | Nová verze

    Byla vydána nová stabilní verze 8.0 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 148. Přehled novinek i s náhledy v příspěvku na blogu.

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

    Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.

    Ladislav Hagara | Komentářů: 0
    21.5. 14:33 | IT novinky

    Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).

    Ladislav Hagara | Komentářů: 2
    21.5. 14:00 | Nová verze

    Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.

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

    Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 10.2 a 9.8. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Vypíchnout lze CLI AI asistenta goose. Podrobnosti v poznámkách k vydání (10.2 a 9.8).

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (7%)
     (3%)
     (16%)
     (26%)
    Celkem 1692 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: 605×
    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.