abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 0
    dnes 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    dnes 12:44 | Nová verze

    Byla vydána nová stabilní verze 6.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 124. Přehled novinek i s náhledy v příspěvku na blogu. Vypíchnout lze Spořič paměti (Memory Saver) automaticky hibernující karty, které nebyly nějakou dobu používány nebo vylepšené Odběry (Feed Reader).

    Ladislav Hagara | Komentářů: 0
    dnes 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

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

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 10
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

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

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 748 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: postgres ukladani binarniho souboru

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