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í
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
včera 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 0
včera 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
2.12. 22:44 | Komunita

Joinup informuje, že Mnichov používá open source groupware Kolab. V srpnu byl dokončen dvouletý přechod na toto řešení. V provozu je asi 60 000 poštovních schránek. Nejenom Kolabu se věnoval Georg Greve ve své přednášce Open Source: the future for the European institutions (SlideShare) na konferenci DIGITEC 2016, jež proběhla v úterý 29. listopadu v Bruselu. Videozáznam přednášek z hlavního sálu je ke zhlédnutí na Livestreamu.

Ladislav Hagara | Komentářů: 16
2.12. 15:30 | Zajímavý projekt

Společnost Jolla oznámila v příspěvku Case study: Sailfish Watch na svém blogu, že naportovala Sailfish OS na chytré hodinky. Využila a inspirovala se otevřeným operačním systémem pro chytré hodinky AsteroidOS. Použita je knihovna libhybris. Ukázka ovládání hodinek na YouTube.

Ladislav Hagara | Komentářů: 8
2.12. 14:15 | Nová verze

Byla vydána verze 7.1.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Jedná se o první stabilní verzi nejnovější větvě 7.1. Přehled novinek v dokumentaci. Podrobnosti v ChangeLogu. K dispozici je také příručka pro přechod z PHP 7.0.x na PHP 7.1.x.

Ladislav Hagara | Komentářů: 2
2.12. 12:55 | Nová verze

Google Chrome 55 byl prohlášen za stabilní. Nejnovější stabilní verze 55.0.2883.75 tohoto webového prohlížeče přináší řadu oprav a vylepšení (YouTube). Opraveno bylo také 36 bezpečnostních chyb. Mariusz Mlynski si například vydělal 22 500 dolarů za 3 nahlášené chyby (Universal XSS in Blink).

Ladislav Hagara | Komentářů: 4
2.12. 11:55 | Pozvánky

Máte rádi svobodný software a hardware nebo se o nich chcete něco dozvědět? Přijďte na 135. sraz spolku OpenAlt, který se bude konat ve čtvrtek 8. prosince od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Sraz bude tentokrát tématický. Bude retro! K vidění budou přístroje jako Psion 5mx nebo Palm Z22. Ze svobodného hardwaru pak Openmoko nebo čtečka WikiReader. Přijďte se i vy pochlubit svými legendami, nebo alespoň na pivo. Moderní hardware má vstup samozřejmě také povolen.

xkucf03 | Komentářů: 0
2.12. 00:10 | Nová verze

Byla vydána verze 3.2 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata. Z novinek lze zmínit například podporu protokolů DNP3 a CIP/ENIP, vylepšenou podporu TLS a samozřejmě také aktualizovanou dokumentaci.

Ladislav Hagara | Komentářů: 0
1.12. 21:00 | Nová verze

Byla vydána beta verze Linux Mintu 18.1 s kódovým jménem Serena. Na blogu Linux Mintu jsou hned dvě oznámení. První o vydání Linux Mintu s prostředím MATE a druhé o vydání Linux Mintu s prostředím Cinnamon. Stejným způsobem jsou rozděleny také poznámky k vydání (MATE, Cinnamon) a přehled novinek s náhledy (MATE, Cinnamon). Linux Mint 18.1 bude podporován až do roku 2021.

Ladislav Hagara | Komentářů: 0
1.12. 16:42 | Nová verze

Byl vydán Devuan Jessie 1.0 Beta 2. Jedná se o druhou beta verzi forku Debianu bez systemd představeného v listopadu 2014 (zprávička). První beta verze byla vydána v dubnu letošního roku (zprávička). Jedna z posledních přednášek věnovaných Devuanu proběhla v listopadu na konferenci FSCONS 2016 (YouTube, pdf).

Ladislav Hagara | Komentářů: 0
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 767 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Počet sloupců - výkon DB

16.1.2012 08:22 Radeczek
Počet sloupců - výkon DB
Přečteno: 1077×
Zdravím vás, před nějakou dobou jsem přebral databázi jednoho e-shopu, který prodává oblečení. V tabulce "produkty" jsou přirozeně uložené produkty. Jenže, někdo, kdo ten e-shop dělal, pouze předělával obchod s mobily tak, aby to prostě "nějak" fungovalo. Problém je v tom, že tabulka produkty má asi 50 sloupců, kde +- 20 jsou sloupce typu "GPRS", "INFRAPORT", "BATERIE", "PAMĚŤOVÁ KARTA" atp. A tyto sloupce jsou prázdné.

Můj dotaz tedy zní: "Má počet (ač prázdných) sloupců vliv na výkon databáze? (Rychlost složitějších joinů, počítání množství produktů v daných kategoriích atp.) ??"

Děkuji za reakce.

Řešení dotazu:


Odpovědi

16.1.2012 08:42 Filip Jirsák | skóre: 66 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
Určitě to má vliv na šířku věty v databázi a tedy na to, kolik dat se musí načíst při sekvenčním čtení. Záleží samozřejmě na tom, jaké jsou to datové typy… Na dotazy, které využívají indexy, by to nemělo mít vliv.
16.1.2012 09:38 kuka
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
To asi zalezi na konkretni databazi, zda to vubec uklada a kolik to zabira mista. Napr. v Oracle se prazdne sloupce na konci radku vubec fyzicky neukladaji a pokud se prazdny sloupec uklada, zabira 1 byte. Obecne jakekoliv zbytecne nafouknuti radku vede k tomu, ze se do datoveho bloku vejde mene zaznamu a tedy se cte z disku vice bloku, mene zaznamu se vejde do cache atd., coz ma dopad na vykon (v ruznych scenarich samozrejme ruzne velky).
16.1.2012 09:56 Kit
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
Zbytečné sloupce mají sice negativní vliv na výkon databáze, ale ve většině běžných případů bude ten výkonový propad stěží měřitelný. Zejména pokud ty sloupce jsou typu VARCHAR apod.
16.1.2012 11:54 radeczek | skóre: 7
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
Abych to upřesnil... jedná se o MySQL databázi, tabulka má cca 80 sloupců z toho 25 je VARCHAR(255) a je to prázdné.

Někdo tady zmínil, že to sice zrychlí, ale nepatrně... tzn. Když mám dotaz, který trvá třeba 10s zlepší se to nějakou desetinku? Nebo třeba o sekundu?

Či bude vyřízení jednotlivých dotazů stejně rychlé, jen se db "odlehčí" - bude se méně číst z disku, více věcí se vleze do cache, ale na rychlost nějakých složitějších joinů a countů to moc extra vliv mít nebude. Je tak?
16.1.2012 12:16 Kit
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
Pokud bude zpracování dotazu na tak malém objemu dat trvat 10 sekund, svědčí to spíš o tom, že je špatně napsán nebo že je chybný datový model. V takovém případě se odstranění nadbytečných sloupců na rychlosti téměř neprojeví.

Jinými slovy: Pokud to chceš předělat, začni u nového datového modelu, udělej ho znovu a pořádně. V opačném případě bych to nechal být. Nesystémovým odebíráním sloupců si moc nepomůžeš.

Samozřejmě se v tom můžeš vrtat pro zábavu, v tom ti bránit nebudu. Bude to hezčí a něco se přitom naučíš, ale bez radikální změny nějaké zrychlení nečekej.

Také můžeš změnit databázi.
16.1.2012 12:37 radeczek | skóre: 7
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
Ok, těch 10s byl jen příklad. Jo DB je dost blbě (podle mě) udělaná, ale nějak zásadně to předělávat nebudu... je na to napojeno až moc věcí, aby to stálo za to úsilí. Objem dat je docela solidní (je tam kolem 60 000 položek, joiny jsou asi 3)

Nějak zvlášt řešit to teda nebudu. Spíš mě to jen tak zajímalo, nakolik by se to zrychlilo ;)

Dík moc.
17.1.2012 08:26 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
Jestli je těch sloupců 80, tak je ta struktura postavená na hlavu bez ohledu na to, co to udělá s výkonem.
17.1.2012 11:35 radeczek | skóre: 7
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
Jo, je to dost mizerně navržené... Prostě aby to "nějak" fungovalo bez ohledu na cokoliv jiného... Celé to předělávat nebudu, je na tom závislých několik desítek tísíc řádků opravdů _hnusného_ kódu. Je velice odstrašující případ proč kód prasit ;)

Šlo mi jen o to, zda by za minimální úsilí nešla ta DB trošku zrychlit ;)
17.1.2012 13:13 Michal Kubeček | skóre: 71 | Luštěnice
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
Ono by koneckonců bylo divné, kdyby byl zprasený jen návrh databáze a aplikace už ne. :-)
13.2.2012 10:33 Pavel Kysilka
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
zdravim,

tak predelat to muzete. Vyuzijte pohledu/VIEW. Ona aplikace moc nepozna, ze se dotazuje na pohled nez na tabulku.

Me neco podobneho ceka na jedne moji starsi aplikaci, kde jsem tak nejak kombinoval nazvy sloupcu cesky a anglicky....

gf
16.1.2012 13:34 l0gik | skóre: 22
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
Z hlediska výkonu bych to neřešil, pokud tam nebudou statisíce výrobků. Největší problém vidím v tom, že budeš chtít podle těch sloupců třeba někdy vyhledávat, což znamená padesát indexů - a to zaplácne cache databáze. Ale při dnešní ceně pamětí a očekávaný velikosti dat (předpokládám, že jde o eshop) to je asi jedno.

Spíš bych přemejšlel z hlediska architektury, jestli nestojí za to to předělat na spešl tabulku vlastnost - hodnota. Např. proto, že do týdle tabulky těžko uložíš dvě možné hodnoty, např. možnost volby dvou baterií a vůbec se s tím pracuje daleko lépe (např. výpis všech vlastností, vlastností patřících do dané skupiny, tvorba různých filtrů atd...).
10.2.2012 13:57 b0rmann | skóre: 15 | Pardubice
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
autor "databazi" je zrejme clovek z mozkem tezce poskozenym excelem, a o normalizaci zrejme neslysel ani v tramvaji.
--- Gott strafe Amerika
13.2.2012 02:09 FooBar
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
EAV je naprosto standardni metoda ukladani dat tohohle druhu, i kdyz nejde o relacni ukladani dat. Viz: http://en.wikipedia.org/wiki/Entity%E2%80%93attribute%E2%80%93value_model

Agresivni reakce je lepsi si setrit pro vetsi ulety :)
Josef Kufner avatar 21.1.2012 14:34 Josef Kufner | skóre: 66
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
Koukni na explain často používaných dotazů a udělej dobře indexy. Tím tomu asi pomůžeš nejlíp.

Pokud ty sloupečky nevyužíváš, tak je smaž. Udělej si jejich seznam, grepni zdrojáky a uvidíš sám.
Hello world ! Segmentation fault (core dumped)
27.1.2012 08:53 dzolo
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
DD,

pokud prázdné sloupce nejsou indexy, tak by to výkon nemělo ovlivnit. Problém bývá jen u indexů, které mají velký počet prázdných hodnot (NULL).
27.1.2012 20:40 Xerces
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
Tak jak jsi to popsal bych se v tom nevrtal (jak píše Kit?). 60k řádků je nic, záleží samozřejmě na čem to běhá. BTW: A o přepsání celýho systému včetně app neuvažuješ? :-) Jinak podle hesla, když něco funguje tak na to nesahej.
27.1.2012 20:54 Kit
Rozbalit Rozbalit vše Re: Počet sloupců - výkon DB
To souhlasí. Na tak malou databázi bych buď vůbec nesahal, anebo ji celou předělal. I obyčejné CSV na tak malém objemu dat často podá lepší výkon, než databáze indexovaná podle všech sloupců takto nesmyslně navržené tabulky.

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.