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í
×
    včera 17:22 | Nová verze

    Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | Komunita

    Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.

    Ladislav Hagara | Komentářů: 0
    8.5. 19:22 | Nová verze

    Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    8.5. 18:00 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.

    Ladislav Hagara | Komentářů: 0
    8.5. 01:22 | Nová verze Ladislav Hagara | Komentářů: 0
    8.5. 00:55 | Zajímavý projekt

    PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.

    vlk | Komentářů: 0
    7.5. 19:44 | Nová verze

    Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    7.5. 17:33 | Nová verze

    Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-05-06. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Pravděpodobně se jedná o poslední verzi postavenou na Debianu 12 Bookworm. Následující verze by již měla být postavena na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    7.5. 05:33 | Komunita

    Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.

    Ladislav Hagara | Komentářů: 17
    7.5. 03:55 | Komunita

    sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.

    Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (8%)
     (22%)
     (4%)
     (2%)
     (2%)
     (1%)
     (1%)
     (3%)
    Celkem 569 hlasů
     Komentářů: 26, poslední 8.5. 09:58
    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.