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 01:00 | Komunita

    Debian dnes slaví 32 let. Ian Murdock oznámil vydání "Debian Linux Release" 16. srpna 1993.

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

    Policisté zadrželi odsouzeného drogového dealera Tomáše Jiřikovského, který daroval ministerstvu spravedlnosti za tehdejšího ministra Pavla Blažka (ODS) bitcoiny v miliardové hodnotě, a zajistili i darovanou kryproměnu. Zadržení Jiřikovského může být podle ministerstva důležité k rozuzlení kauzy, která vypukla koncem května a vedla ke konci Blažka. Zajištění daru podle úřadu potvrzuje závěry dříve publikovaných právních

    … více »
    Ladislav Hagara | Komentářů: 5
    včera 13:44 | IT novinky

    Administrativa amerického prezidenta Donalda Trumpa jedná o možném převzetí podílu ve výrobci čipů Intel. Agentuře Bloomberg to řekly zdroje obeznámené se situací. Akcie Intelu v reakci na tuto zprávu výrazně posílily. Trump minulý týden označil Tana za konfliktní osobu, a to kvůli jeho vazbám na čínské společnosti, čímž vyvolal nejistotu ohledně dlouholetého úsilí Intelu o obrat v hospodaření. Po pondělní schůzce však prezident o šéfovi Intelu hovořil příznivě.

    Ladislav Hagara | Komentářů: 3
    včera 05:44 | IT novinky

    Společnost Purism stojící za linuxovými telefony a počítači Librem má nově v nabídce postkvantový šifrátor Librem PQC Encryptor.

    Ladislav Hagara | Komentářů: 9
    14.8. 18:00 | Nová verze

    VirtualBox, tj. multiplatformní virtualizační software, byl vydán v nové verzi 7.2. Přehled novinek v Changelogu. Vypíchnou lze vylepšené GUI.

    Ladislav Hagara | Komentářů: 0
    14.8. 14:11 | IT novinky

    Eric Migicovsky, zakladatel společnosti Pebble, v lednu oznámil, že má v plánu spustit výrobu nových hodinek Pebble s již open source PebbleOS. V březnu spustil předprodej hodinek Pebble Time 2 (tenkrát ještě pod názvem Core Time 2) za 225 dolarů s dodáním v prosinci. Včera představil jejich konečný vzhled (YouTube).

    Ladislav Hagara | Komentářů: 15
    14.8. 12:44 | Zajímavý software

    Byla oznámena nativní podpora protokolu ACME (Automated Certificate Management Environment) ve webovém serveru a reverzní proxy NGINX. Modul nginx-acme je zatím v preview verzi.

    Ladislav Hagara | Komentářů: 1
    14.8. 12:22 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    13.8. 11:55 | IT novinky

    Společnost Perplexity AI působící v oblasti umělé inteligence (AI) podala nevyžádanou nabídku na převzetí webového prohlížeče Chrome internetové firmy Google za 34,5 miliardy dolarů (zhruba 723 miliard Kč). Informovala o tom včera agentura Reuters. Upozornila, že výše nabídky výrazně převyšuje hodnotu firmy Perplexity. Společnost Google se podle ní k nabídce zatím nevyjádřila.

    Ladislav Hagara | Komentářů: 5
    13.8. 04:33 | Bezpečnostní upozornění

    Intel vydal 34 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20250812 mikrokódů pro své procesory řešící 6 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (52%)
     (19%)
     (4%)
     (5%)
     (3%)
     (1%)
     (1%)
     (17%)
    Celkem 396 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Dotaz: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost

    9.4.2010 13:44 Petr
    Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Přečteno: 952×
    Ahoj,
    rád bych se zeptal, na jaký systém a filesystem je nejlepší nasadit PostgreSQL.

    Hlavním kritériem je rychlost (spolehlivost je až na druhém místě, navíc jde v 99% o čtení dat).

    HW: prozatím bohužel obyčejné PC, RAM - 2GB;
    velikost DB - 4,5 GB

    Jaký systém by byl nejvhodnější (z hlediska rychlosti)? Linux, BSD, OpenSolaris? - v jaké verzi jádra, s jakým plánovačem apod?

    v kombinaci s jakým filesystémem? EXT4, ZFS, ... - s jakým nastavením? (např. vypnutí bariér není problém)

    S jakým nastavením PostgreSQL?

    Případně co dalšího ještě nastavit, aby to bylo prostě nejrychlejší?

    Předem díky za vaše tipy a zkušenosti.

    Petr

    Řešení dotazu:


    Odpovědi

    okbob avatar 9.4.2010 13:55 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Tak pokud se bude převážně číst - tak vliv filesystému, os. je mizivý - pokud pg najde data v cache - základem je mít co nejvíc RAM - tedy 64 bit O.S. a pokud možno co nejvíc paměti. Zbytek hraje relativně malou roli. Pokud dokoupíte ještě 2G RAM, tak aby byla celá db v paměti, tak se nemusíte starat o nic jiného.
    12.4.2010 10:03 Petr
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    To máte pravdu. Přidám paměť a zkusím nějak poštělovat nastavení Postgresu, aby tu paměť používal. Díky
    12.4.2010 10:15 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Přidám paměť a zkusím nějak poštělovat nastavení Postgresu, aby tu paměť používal.
    To uz samozrejme urobili za Teba ini, a boli to ludia, ktori do vnutornosti PostreSQL videli dost dobre.
    okbob avatar 12.4.2010 10:22 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Pokud tam poběží relativně jednoduché dotazy, tak stačí nastavit shared_buffers a effective_cache_size.
    12.4.2010 10:25 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    To je IMHO prilis zjednodusene. Tie parametre su sice skutocne dolezite, ale su v silnej interakcii s inymi parametrami, napr. s podcenovanym parametrom max_connections.
    okbob avatar 12.4.2010 11:25 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Ne - ono je to jednoduche. S parametrem max_connection souvisi parametr work_mem, ktery jsem zde neuvedl - s tim, ze predpokladam, ze se jedna o jednoduche dotazy a staci default - 100 (max_connection-default) * 1MB = 100MB coz je v 4GB stroji pomerne zanedbatelne.

    jinak musi platit
    max_connection * work_mem + shared+buffers < 2/3 RAM
    
    Nic slozitejsiho tam neni. PostgreSQL lze relativne dobre nakonfigurovat pomerne snadno - zaklad - server nesmi swapovat.

    ty 2/3 jsou orientační pro dedikovaný server. Vždy je potřeba server nějaký čas sledovat a pokusit se o optimalizaci.
    12.4.2010 12:57 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Suhlasim. Ale prave kvoli tomu, aby sa zabranilo swapovaniu a zaroven sa vyuzivalo vsetka dostupna pamat, treba globalne zdroje a zdroje "per session" posudzovat spolu. Odkial je ten 1MB? Hadam, ze je to defaultne nastavenie work_mem? Pokial si pamatam nase projekty, kde sme ladili PostgreSQL/EnterpriseDB, pamat "per session" bola vyrazne vyssia ako 1MB. Ono je dost rozdiel, ci sa napr. taky ORDER BY alebo JOIN urobi v pamati, alebo sa udaje musia presypat cez docastnu tabulku.

    Prave EnterpriseDB to ma pekne vyriesene: staci urobit 3 veci:

    1) Nastavit dostatocnu velkost shared memory v OS; niektore systemy maju defaultne nastavenie prilis nizke, alebo shared memory vobec nemusia mat. Nasledne zakomentovat shared_buffers v konfiguraku PostgreSQL; by default odkomentovana hodnota ja prilis nizka, aby databaza nastartovala aj na tych OS, ktore maju default limity pre zdielanu pamat nizke.

    2) Specifikovat maximalny pocet spojeni; zlate pravidlo je "as many as necessary, as few as possible". Tym sa zabezpeci maximalizacia zdrojov pouzitelnych "per session". A ak sa bavime o nejakom kontajnerovom prostredi, kde sa pristup k databaze riesi cez connection pool-y, je zistenie potrebneho poctu spojeni trivialne.

    3) Specifikovat, kolko percent fyzickej pamate sa moze pouzit pre instanciu. Podla toho sa "dopocitaju" globalne zdroje. Opat sa jedna o relativne trivialnu zalezitost, najma pokial ide o dedikovany databazovy stroj.

    Podla mojich skusenosti je vysledna konfiguracia v EnterpriseDB velmi dobra, a to prakticky bez roboty.

    Uz len dodam pre povodneho opytujuceho sa, ze to, co robi databazovu aplikaciu rychlou alebo pomalou, je zvycajne dobry resp. zly navrh udajovych struktur, nie ladenie cisel v konfiguraku. Ziadne fast=true nastavenie neexistuje.
    okbob avatar 12.4.2010 13:18 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Nástřel work_mem je dost obtížnější - a nedá se řešit "od stolu". Je potřeba se podívat na konkrétní pomalé dotazy a zjistit si kolik potřebují. Pro mne je wizard v EnterpriseDB spíš na škodu - neřeší nic víc než výše uvedenou rovnici s několika variantami výchozích proměmnných - tváří se sofistikovaně - takže se DBA nenaučí správně nastavovat paměť a ani se o to nepokoušejí. Na druhou stranu, je to pořád lepší, než když někdo používá pg s výchozím nastavením.

    Navíc se aktivuje pouze při instalaci. Méně znalí DBA při problémech a nedostatku connection pak jednoduše izolovaně zvednou max_connection bez ohledu na další parametry, čímž to totálně zazdí.

    S ostatním souhlas.
    12.4.2010 14:31 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Navíc se aktivuje pouze při instalaci.
    Tak tomuto nerozumiem. Ziadny installation-time wizard som nikdy pre EnterpriseDB nepouzil. To je nejaka novinka? Pokial viem, EnterpriseDB "odvodi" vsetky parametre, ktore nie su specifikovane v konfiguraku, pri svojom starte. Tym sa vyrovna napr. so zmenou velkosti fyzickej RAM. Jednoducho zatial co v pripade startu PostgreSQL plati "ak je to v konfiguraku zakomentovane, pouzi hardkodovanu hodnotu", tak v pripade startu EnterpriseDB plati "ak je to v konfiguraku zakomentovane, vypocitaj vhodnu hodnotu vzhladom na environment".

    okbob avatar 12.4.2010 14:58 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Je to možné - s EDB jsem si dva roky nehrál. Na druhou stranu mi to přijde dost riskantní.

    měl jsem na mysli EDB TuningWizard.
    12.4.2010 18:23 Petr
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Pánové, díky moc za tipy - byly pro mě poučné - např. EDB TunningWizard jsem vůbec neznal.
    12.4.2010 19:22 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Aha. No, ja netusim co je EDB TuningWizard. Vsetko, co som pisal, plati pre normalnu databazovu instanciu a normalnu konfiguraciu databazoveho servera.
    12.4.2010 12:29 Vskutečnosti Saýc | skóre: 7
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost

    A tomu, pratele, se rika neortogonalni navrh.

    12.4.2010 13:16 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Svet, zial, nie je cierno-biely. V realnom svete su limitovane zdroje, v tomto pripade pamat. Ta sa musi rozdelit medzi globalne zdroje a medzi "per-session" zdroje. Ak si niekto necha nastavenych defaultnych 100 pripojeni napriek tomu, ze mu bohate staci 10, bude vyuzivat iba desatinu "per-session" pamate a 10x pravdepodobnejsie jeho ORDER BY povedie k vytvoreniu docastnej tabulky, namiesto triedenia v pamati. Ak sa to "poriesi" zvysenim work_mem, obmedzia sa tym globalne zdroje, napriklad velkost cache pamate. V horsom pripade bude suma narokov prekracovat dostupnu pamat, operacny system zacne swapovat.

    Technicky vzate, tie nastavenia nie su neortogonalne. Kazde meni jednu presne definovanu vlastnost presne definovanym sposobom. Ze nejake nastavenie moze vyemergovat k tazko predikovatelnemu a manazovatelnemu stavu, je skor "chyba" operaneho systemu, ktory sa zavazuje poskytovat aplikacii viac operacnej pamate, ako ma v skutocnosti k dispozicii. Vlastne nevidim dovod, preco by na spravne nakonfigurovanom dedikovanom databazovom serveri mal byt akykolvek swap pritomny.
    okbob avatar 12.4.2010 15:26 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Ono to asi ani jinak jednoduse nejde - ani O.S. ani db nema kristalovou kouli, by bylo jasne jake SQL prikazy prijdou v nasledujicich okamzicich, a jaky bude jejich soubeh. Stavajici design je zalozen na silnem zjednoduseni - napr. se predpoklada, ze pristup ke vsem blokum souboru bude stejne rychly, random I/O je 4x pomalejsi nez sekvencni cteni, neresi se, zda-li blok v cache, ... A kupodivu to funguje - s nicim lepsim zatim nikdo neprisel.
    12.4.2010 19:19 cronin | skóre: 49
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    A kupodivu to funguje - s nicim lepsim zatim nikdo neprisel.
    Ale no tak, samozrejme, ze prisiel. To sa uz ale dostavame do kategorie tazkotonaznych rieseni ako napr. Oracle. :-)
    okbob avatar 14.4.2010 14:30 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Oracle je extrémně těžkotonážní :)
    14.4.2010 08:30 Hlípa | skóre: 13
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Par doplneni:

    1) Je treba mit i prekompilovany 64bitovy PostgreSQL pokud chcete pouzivat vice jak 3.2GB RAM (ne vsechny procesory umi adresovat 4GB), a je treba pocitat s tim, ze je nutne provest novou inicializaci databaze. 32bitovy a 64bitovy PG ma jinou On Disk Structure.

    2) 64bitova aplikace muze a nemusi byt rychlejsi. Volani funkci je rychlejsi, ale operace s pameti jsou pomalejsi, neb TLB ma vice urovni, ktere je nutne prochazet k dohledani fyzicke adresy.

    3) Vic buffer cache muze znamenat i zpomaleni. Z vlastni zkusenosti vim, ze zvednutim shared_buffers z 1GB na 2GB se databaze vyrazne zpomalila (neb se bohate vesla do tho 1GB). Projevil se efekt prochazeni delsich seznamu. Napriklad checkpoint trva dele apod.

    Zaver je, ze je nutne si to otestovat.
    14.4.2010 13:22 Petr
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    S bodem 1 a 2 jsem počítal, nicméně u bodu 3 bych si asi taky neuvědomil, že se DB může výrazně zpomalit, takže díky za tip.
    9.4.2010 16:16 Tomáš
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Jenom doplním, že výkon bude záležet hodně na disku. Pokud potřebuje opravdu rychlost, tak bych koukal po SAS discích s 15000 rpm. Na SAS budete potřebovat asi nový řadič. Možná bych taky uvažoval o RAID 0.
    9.4.2010 16:24 Tomáš
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Jo koukám, že jsem přehlédl, že Vaše DB má jen 4,5 GB. Takže beru zpět. Asi postačí pokud budete mít dostatek paměti, jak již psal P.Stěhule. Při téhle velikosti by se dala DB i nacpat na SSD disk.
    9.4.2010 17:17 Vskutečnosti Saýc | skóre: 7
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost

    Ja bych navrhly rychlost databaze ignorovat, nijak netunit souborovy system, ale upravit aplikaci aby umela pouzivat memcached. I hodne hloupe cachovani (klic = md5, hodnota = vysledek db dotazu, data se po triceti sekundach musi nacist znovu) dotaze udelat z pomale databaze neco neuveritelneho.

    9.4.2010 17:19 Vskutečnosti Saýc | skóre: 7
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost

    "navrhl". Neumim psat.

    okbob avatar 9.4.2010 17:51 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    s tím musím souhlasit - ještě před použitím db popřemýšlejte o memcached.
    12.4.2010 16:52 mecheche
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    nebo jeste lepe MemcacheDB :-)
    12.4.2010 09:57 Petr
    Rozbalit Rozbalit vše Re: Vhodný podvozek pro PostgreSQL - důležitá je pouze rychlost
    Díky, s Memcached zkušenosti nemám, podívám se na to, ale pokud budu mít dostatek paměti, tak si říkám, že by cache Hibernatu mohla udělat stejnou službu.

    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.