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 14:44 | IT novinky

    Google kupuje společnost Wiz za 32 miliard dolarů.

    Ladislav Hagara | Komentářů: 0
    dnes 13:00 | Komunita

    Byly zpracovány a na YouTube zveřejněny videozáznamy jednotlivých přednášek z letošního Installfestu.

    Ladislav Hagara | Komentářů: 0
    dnes 12:11 | IT novinky

    Společnost Bambu Lab spustila na Kickstarteru kampaň CyberBrick: Beyond Bricks. Jedná se o modulární systém programovatelných a dálkově ovládaných hraček. Objednat si lze jenom moduly s čipy a hračky si vytisknout na 3D tiskárně.

    Ladislav Hagara | Komentářů: 0
    dnes 01:22 | IT novinky

    Mikrokontroléry RP2350A a RP2350B jsou již volně v prodeji. Představeny byly v srpnu loňského roku společně s Raspberry Pi Pico 2.

    Ladislav Hagara | Komentářů: 0
    včera 20:33 | Nová verze Ladislav Hagara | Komentářů: 7
    včera 16:11 | Komunita

    Od 6. do 19. dubna proběhne volba vedoucího projektu Debian (DPL, Wikipedie) na další funkční období. Kandidují Gianfranco Costamagna, Julian Andres Klode, Andreas Tille a Sruthi Chandran.

    Ladislav Hagara | Komentářů: 6
    včera 01:55 | Pozvánky

    Korespondenční seminář z programování (KSP) pražského Matfyzu pořádá i letos jarní soustředění pro začátečníky. Zváni jsou všichni středoškoláci a starší základoškoláci, kteří se chtějí naučit programovat, lépe uvažovat o informatických úlohách a poznat nové podobně smýšlející kamarády. Úplným začátečníkům bude určen kurz základů programování a kurz základních algoritmických dovedností, pokročilejším nabídneme různorodé

    … více »
    Vladimir Sklenár | Komentářů: 0
    16.3. 17:33 | Zajímavý článek

    Joe Brockmeier z Linux Weekly News vyzkoušel různé forky webového prohlížeče Mozilla Firefox: především GNU IceCat, Floorp, LibreWolf a Zen. V článku shrnuje, v čem se liší od výchozí konfigurace Firefoxu, co mají za vlastní funkcionalitu, jak a kým jsou udržované atd.

    Fluttershy, yay! | Komentářů: 9
    15.3. 19:22 | Nová verze

    Byl vydán Debian 12.10, tj. desátá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    15.3. 18:22 | Nová verze

    Byla vydána nová verze 4.5 svobodného notačního programu MuseScore (Wikipedie). Představení novinek v oznámení v diskusním fóru a také na YouTube.

    Ladislav Hagara | Komentářů: 0
    Jaké je vaše preferované prostředí?
     (27%)
     (1%)
     (1%)
     (1%)
     (1%)
     (2%)
     (65%)
     (2%)
    Celkem 156 hlasů
     Komentářů: 5, poslední 13.3. 11:45
    Rozcestník

    Dotaz: postgres ukladani binarniho souboru

    11.11.2011 12:08 jirkamailto | skóre: 31
    postgres ukladani binarniho souboru
    Přečteno: 756×
    Dobry den, potreboval bych ukladat do databaze POSTGRES nahrane soubory. V javovske aplikaci muze uzivatel nahrat soubor, pdf, obrazek a dalsi, uzivatel v tomto neni omezen. Mam napad, ze bych vsechny tyto soubory prevedl na retezec a pote je ukladal do databaze jako "text". Nezkousel jsem to, a nevim jak to pujde. Co jsem hledal, existuje v databazi i specialni datovy typ na soubory. Tusim ze bytea. Potreboval bych se zeptat, jaky zpusob je lepsi, jestli soubor prevest na retezec a ulozit nebo pouzit ten specialni datovy typ a to i z hlediska pouzitelnosti v ramci javovskeho ovladace k postgres databazi. Predem dekuji za odpovedi.

    Odpovědi

    11.11.2011 12:31 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    Obecně bych binarní data na nic nepřeváděl a BYTEA datový typ nevím jak je vhodný na soubory a třeba 10MiB velké (jestli se nepletu tak i proces je limitován na všech vrstvách dostupnou či přidělenou pamětí).
    Spíše použít BLOB.
    O propojení s Javou asi tady.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    okbob avatar 11.11.2011 13:13 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    Plete te se. Velikost Bytea je limitovana 1G a nijak nesouvisi s limity, ktere jsou v PostgreSQL pro pamet.Jelikoz se ale s Bytea nepracuje proudove, jako s BLOBem, tak se pri zpracovani alokuje cca dvojnasobek az trojnasobek RAM co je delka hodnoty - coz pro velikostech nad 50MB uz muzete byt poznat. Coz je duvod proc se s Bytea a dalsimi varlena typy konci nekdy do 10-50MB.

    Pro 10MB bych klidne pouzil Bytea, nad pak spis BLOB. Fakticky velke Bytea polozky a BLOBy se pak v db ulozi velice podobne - rozdil je hlavne v tom jak je dostat z/do db.
    11.11.2011 14:51 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    Jsem to nedostatečně popsal, nevěděl jsem jaký je limit BYTEA sloupce.
    Myslel jsem tím, že ten přenos do tabulky je omezen na všech vrstvách a to právě tím, že se přenáší jako klasický SQL dotaz a vstupují do toho limity, jak serveru (když ho máte třeba na 512MiB RAM), tak i limity (a přidělené zdroje) aplikace či použitého „providera“ k přístupu do DB.
    Takže dík za upřesnění.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    15.11.2011 14:43 Radim Kolář | skóre: 11
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    Hlavne ty bloby nefunguji v auto commit modu a to ani pro cteni. To rozbije dost Java aplikaci. Dokonce ani hibernate to neumi zaridit aby to slo transparentne pro aplikaci kdyz uz to neemuluje driver.
    19.11.2011 21:53 jirkamailto | skóre: 31
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    Jak to tak vypada, tak nakonec pouziju prevedeni do retezce, protoze pouzivam knihovnu MyBatis3 na ORM.
    11.11.2011 18:20 jirkamailto | skóre: 31
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    Dekuji za nazor, zkusim tu byteu. Ty soubory hodlam prilozit k mailu, tak budu muset nejak limitovat velikost souboru, protoze spravci mail serveru limituji velikost mailu ruzne, tak abych tam mel rezervu a mail v drtive vetsine pripadu prosel.
    19.11.2011 21:46 Justas
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    A bude se s tím souborem v databázi nějak pracovat (vyhledávání, třídění, ...)? Pokud ne, doporučím ten soubor uložit do separátního adresáře, a do databáze si zavést jen informaci, který soubor to je. Výhodou by měla být podstatně větší rychlost.
    19.11.2011 21:52 jirkamailto | skóre: 31
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    Se souborem pracovat nebudu. Kdyby to byla ciste webova aplikace, tak bych jiste volil ukladani na disk, ale bude to klient server aplikace, a tudiz kvuli privetivosti ke sprave a zalohovani ukladani na disku nechci.
    Heron avatar 20.11.2011 00:05 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    Výhodou by měla být podstatně větší rychlost.

    A nevýhodou omezený počet takových souborů ve filesystému a neexistence transakcí, což znamená, že se to (vazba na DB) rozpadne při nejbližší příležitosti.

    20.11.2011 00:37 l0gik | skóre: 22
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    Omezenej počet souborů ve filesystému? Eh? Samozřejmě, některý filesystémy nemaj rádi hodně souborů v jednom adresáři, ale to se snadno vyřeší např. ukládáním do adresářů např. po tisících. - To s transakcema je pravda, ale vzhledem k tomu, že jde dělat copy on write plus garbage collection (soubor na disku bez záznamu v db s datem vytvoření starším, než nejstarší transakce v db) tak i to je snadno řešitelný.
    Heron avatar 20.11.2011 12:24 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru

    Tak samozřejmně záleží o jakém počtu se bavíme. Já mám praktické zkušnosti se stovkami milionů, kde FS (jakýkoliv) šel do kolen a DB o ničem neveděla. Nakonec i na mailling listech systémů souborů posílají tazatele s dotazem na ukládání mnoha souborů do databáze.

    že jde dělat copy on write plus garbage collection (soubor na disku bez záznamu v db s datem vytvoření starším, než nejstarší transakce v db) tak i to je snadno řešitelný.

    Ano, existují způsoby jak to vyřešit, ale o toto se bude muset vždy starat vrstva (program) nad fs i db. A já osobně si myslím, že o související data (referenční integrita) by se měla starat jen jedna vrstva, v tomto případě databázová.

    20.11.2011 13:45 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    To je nekonečná otázka, která nemá asi jednoduchý závěr.
    Přírůstkové zálohování se bez speciálních nástrojů zas lépe dělá na filesystému.
    Praktickou zkušenost z takovým počtem nemám, ale přes 70 mil. maličkých souborů jsem testoval na běžném nijak neladěném ext3 na běžném disku, ID ukládané v 64-kové soustavě dvě písmena tři úrovně (tedy na adresář 4096 položek) a nezaznamenal jsem žádný problém.

    V případě dokumentu jako externích dat, postačuje očekávat, že tam dokument je, což lze zařídit docela spolehlivě nadřazenou aplikační transakcí (stejně takových transakcí probíhá spoustu, o tom to programování je :-)). A i databáze se musí sem tam kontrolovat (<joke>viz dohledávání zásilky PPL celý tento víkend</joke>), tak lze také kontrolovat i externí úložiště a jeho integritu vůči db. Jediné co se musí zajistit je, aby možný přístup do úložiště byl jen jeden (přes jedno rozhraní).
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    20.11.2011 00:53 l4m4
    Rozbalit Rozbalit vše Re: postgres ukladani binarniho souboru
    Pokud se bavíme o velkých souborech, jak diskuse naznačuje, tak by omezení počtu (typicky alespoň 2^31) takový problém být neměl: místo dojde mnohem dřív než počet. Transakce samozřejmě problém jsou (což je smutné, protože db na ukládání gigových blobů není efektivní backend).

    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.