omezení škálovatelnosti postgresql a mysql
<p>slyšel jsem, že výkon nestřežené relační databáze, jako je mysql nebo postgresql, se „zlomí“ nad 10 tb.</p><p>mám podezření, že limity jako takové existují, protože člověk by nepřišel s netezzou, greenplumem nebo vertica atd., chtěl bych se však zeptat, zda má někdo zde odkaz na nějaký výzkumný dokument nebo formální případové studie, kde jsou tyto limity kvantifikovány.</p>
<p>na vaši otázku neexistuje jednoduchá odpověď, ale zde je několik věcí, na které byste se měli zamyslet.</p><p>zaprvé, měřítko není jediná věc, o kterou se musíme starat. co děláte s vašimi daty je. pokud máte 500 tabulek 30 tb dat a děláte jednoduché oltp s velmi malým počtem hlášení), nemyslím si, že budete mít příliš mnoho problémů "tam jsou 32tb databáze na postgresql tam venku. zároveň se však výkon poněkud sníží, protože to musí zasáhnout disk na všechno. podobně, pokud máte 50 tb, pokud data, ale mají běžně zasaženou sadu asi 100 gb, pak můžete postavte server s dostatečným množstvím ram), abyste tuto část db udrželi v paměti a jste zlatí.</p><p>na druhou stranu, pokud se pokoušíte režim (nejběžnější hodnotu) z 1tb dat, nezáleží na tom, jaký systém používáte, bude to <em> bolestivé </em> s nebo bez střepů. (edit: sharding může ve skutečnosti tento problém zhoršit <em>. </em>)</p><p>mezi hlavní problémy, s nimiž se setkáte s obrovskými db na mysql a postgresql, patří skutečnost, že ani nepodporuje paralelismus dotazování. jinými slovy, dotaz je spuštěn jako jeden blok jedním vláknem a nelze jej rozdělit na kousky a spustit samostatně. toto je nejčastěji problém při spouštění velkých analytických dotazů na velké množství dat. to je místo, kde postgres-xc a green plum přicházejí k záchraně, protože oddělují úložiště od provádění, a mohou tak učinit na úrovni koordinátora. všimněte si, že postgres-xc a green plum v zásadě používají střepiny interně, ale koordinátoři prosazují veškerou konzistenci globálně.</p><p>s paralelizací dotazování můžete dotaz rozdělit, mít různé procesory/diskové i/o kanály spouštět jeho části a vykazovat zpětné části sady výsledků, které mají být sestaveny, a předány zpět do aplikace. to je opět velmi užitečné při analytickém namísto zpracování transakcí.</p><p>druhou věcí je, že některé systémy, například vertica nebo greenplum, uchovávají sloupce informací společně. to ztěžuje použití systému z perspektivy oltp) a snižuje tam výkon, ale drasticky zvyšuje výkon pro velké analytické pracovní zatížení. jedná se tedy o kompromis specifický pro pracovní vytížení.</p><p>odpověď je, že jakmile se dostanete nad 1-2 tb ve velikosti, kterou můžete <em>, můžete </em>, ocitnout se tváří v tvář číslu kompromisů mezi systémy a pracovním zatížením. opět je to specifické pro databáze, velikost pracovních sad atd. nicméně v tomto bodě musíte opravdu jít se systémy sněhové vločky, tj. systémy jedinečné a přizpůsobené vašemu pracovnímu zatížení.</p><p>to samozřejmě znamená, že limity nejsou obecně kvantifikovatelné.</p><p><strong>pravit</strong>: nyní jsem pracoval s 9tb databází, která zpracovává směs pracovní podpory při rozhodování a transakčního zpracování v postgresql. jedinou největší výzvou je, že pokud máte otázky, které zasáhly velkou část sady dat, budete muset chvíli počkat na odpověď.</p><p>nicméně s pečlivou pozorností k základům (včetně indexů, autovaku, jak tyto fungují na nízké úrovni atd.) a dostatečným výpočetním prostředkům, jsou zcela zvládnutelné (a odhaduji, že by dobře zvládnutelné do rozsahu 30tb v pg).</p><p><strong>edit2</strong>: jakmile se vydáte na 100 tb, i když to, co bude fungovat, bude záviset na vašem datovém souboru. momentálně pracuji na jednom, který se do tohoto rozsahu nevejde, protože to nejprve zasáhne limit 32 tb v tabulce v postgresql.</p>
Záleží na kapacitě, patrně budeš limitovaný součtem 2 TB (tedy tím, od kdy bude potřeba EFI modul). U tehle rychlosti uz je docela narocne to spravne merit, takze zalezi na kterem serveru to meris.No a pak se deji i zazraky. Klidne je mozne, ze te tvuj poskytovatel spatne omezuje.Za me je uz doma cokoli nad 100Mbps jedno a zalezi uz jen na technologii kvuli odezve. 50GB a občas 1T neni možné zálohovat přez vDSL. 50 000MB je 400 000Mb a to bude tak 55 hodin ... tak že uvažovat o cloudu nebo nas někde v internetu nemá absolutně cenu. Tak že jsou tři možnosti:1. pořídit externí disk a ten si nosit pryč. Obava z krádeže disku a nebo jeho potracení se nechá eliminovat pomocí TrueCrypt.2. nechat si zabudovat trezor do kterého povede LAN a elektrika a NAS tam schovat.3. NAS umístit někde jinde v budově a nebo areálu am dosáhne LAN a nebo optika.... docela mě překvapuje že firma co potřebuje zálohovat 1TB dat má rozpočet na zálohovací zařízení 10K??? Možná vymazat filmy. 2x 2 GB může být jen oficiální maximální hodnota. Klidně bych tam těch 2x 4 GB Dual Rank zkusil. Otázkou je, zda to má smysl. Powerline ani omylem, tam je limit maximálně desítky metrů. V úvahu přichází jedině technologie na způsob xDSL. Ale mám trochu obavy, že koncová zařízení na něco takového možná vyjdou dráž, než to optické vlákno. V současné době jsou v kurzu SQL dartabáze. Takže pokud se chceš uplatnit, tak MS-SQL, Interbase, ORACLE, popř. nějaké ty internetové jako např. MySQL, PostgreeSQL apod. Každá databáze má vlastní programovací jazyk pro uložené procedury, vlastní datové typy apod.Program, ve kterém budeš vyvíjet soft je opět něco jiného. Ten většinou je univerzální a umí přistupovat k jakékoliv databázi.V současné době, pokud bych začínal, tak bych se orientoval směrem .NET a C#. Použito v malém rozsahu pro evidenci ve vlastním podnikání. Vyzkoušej, je trochu jiný než Acces ale nemá špatné možnosti. Pokud chceš ještě více funkcionality, můžeš zkusit lokální instalaci mysql serveru a LOB použít jako klienta. souhlas , není mě jasné jak 60 Mb může být ztěžující pro moderní stroj. Pokud to ate jen na zalohy, tak bych to videl trosku predimenzovano. Stredni podniky je spis mysleno, ze by se na tom provozovali i aplikace. Abyste na jedno mistozalohoval par dat a mel pristup na souboru, k tomu moc nepotrebujete. Kolko PC je v koliznej domene?  
MS napr. definuje max. dobu ustalenia NetBIOS komunikacie az na 43min. Zavisi to od toho ako casto sa jednotlive PC odhlasuju, prihlasuju (restartuju) a pod.  
Tento problem sa vyskytuje v sietach kde neexistuje suborovy server (alebo stale zapnuty pocitac), ktory by drzal zoznam zdielanych prostriedkov na sieti tzv.LMB - Local Master Browser. Ked sa PC, ktory drzi tento zoznam vypne nastava v sieti volba o to, ktore PC bude tento zoznam nadalej poskytovat. To trva urcitu dobu a ta doba moze byt az 43min. Podla rozsahu siete.