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 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ářů: 0
    včera 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
    včera 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ářů: 2
    včera 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ářů: 0
    včera 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
    13.8. 04:22 | Nová verze

    Byla vydána nová verze 1.25 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    12.8. 13:44 | Nová verze

    Byla vydána beta verze Linux Mintu 22.2 s kódovým jménem Zara. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze novou XApp aplikaci Fingwit pro autentizaci pomocí otisků prstů nebo vlastní fork knihovny libAdwaita s názvem libAdapta podporující grafická témata. Linux Mint 22.2 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 0
    12.8. 13:00 | IT novinky

    Provozovatel internetové encyklopedie Wikipedie prohrál v Británii soudní spor týkající se některých částí nového zákona o on-line bezpečnosti. Soud ale varoval britského regulátora Ofcom i odpovědné ministerstvo před zaváděním přílišných omezení. Legislativa zpřísňuje požadavky na on-line platformy, ale zároveň čelí kritice za možné omezování svobody slova. Společnost Wikimedia Foundation, která je zodpovědná za fungování

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

    Dotaz: postgres ukladani binarniho souboru

    11.11.2011 12:08 jirkamailto | skóre: 31
    postgres ukladani binarniho souboru
    Přečteno: 758×
    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.