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 12:00 | IT novinky

    Co způsobilo včerejší nejhorší výpadek Cloudflare od roku 2019? Nebyl to kybernetický útok. Vše začalo změnou oprávnění v jednom z databázových systémů a pokračovalo vygenerováním problém způsobujícího konfiguračního souboru a jeho distribucí na všechny počítače Cloudflare. Podrobně v příspěvku na blogu Cloudflare.

    Ladislav Hagara | Komentářů: 4
    včera 23:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) první RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 1
    včera 23:22 | Komunita

    Eugen Rochko, zakladatel Mastodonu, tj. sociální sítě, která není na prodej, oznámil, že po téměř 10 letech odstupuje z pozice CEO a převádí vlastnictví ochranné známky a dalších aktiv na neziskovou organizaci Mastodon.

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

    Byla vydána nová major verze 5.0 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v obsáhlých poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 14:00 | Upozornění

    Cloudflare, tj. společnost poskytující "cloudové služby, které zajišťují bezpečnost, výkon a spolehlivost internetových aplikací", má výpadek.

    Ladislav Hagara | Komentářů: 10
    včera 04:22 | Pozvánky

    Letos se uskuteční již 11. ročník soutěže v programování Kasiopea. Tato soutěž, (primárně) pro středoškoláky, nabízí skvělou příležitost procvičit logické myšlení a dozvědět se něco nového ze světa algoritmů – a to nejen pro zkušené programátory, ale i pro úplné začátečníky. Domácí kolo proběhne online od 22. 11. do 7. 12. 2025 a skládá se z 9 zajímavých úloh různé obtížnosti. Na výběru programovacího jazyka přitom nezáleží – úlohy jsou

    … více »
    SoutezKasiopea | Komentářů: 1
    včera 04:11 | Nová verze

    Byla vydána nová verze 2.52.0 distribuovaného systému správy verzí Git. Přispělo 94 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

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

    VKD3D-Proton byl vydán ve verzi 3.0. Jedná se fork knihovny vkd3d z projektu Wine pro Proton. Knihovna slouží pro překlad volání Direct3D 12 na Vulkan. V přehledu novinek je vypíchnuta podpora AMD FSR 4 (AMD FidelityFX Super Resolution 4).

    Ladislav Hagara | Komentářů: 0
    17.11. 03:11 | Nová verze

    Poštovní klient Thunderbird byl vydán v nové verzi 145.0. Podporuje DNS přes HTTPS nebo Microsoft Exchange skrze Exchange Web Services. Ukončena byla podpora 32bitového Thunderbirdu pro Linux.

    Ladislav Hagara | Komentářů: 2
    17.11. 02:33 | IT novinky

    U příležitosti státního svátku 17. listopadu probíhá na Steamu i GOG.com již šestý ročník Czech & Slovak Games Week aneb týdenní oslava a také slevová akce českých a slovenských počítačových her.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (23%)
     (15%)
     (23%)
     (15%)
     (17%)
    Celkem 369 hlasů
     Komentářů: 16, poslední 12.11. 18:21
    Rozcestník

    Dotaz: Problém s pamětí u XSLT

    7.1.2013 12:29 jeleniste | skóre: 13 | blog: Prokustovo lože
    Problém s pamětí u XSLT
    Přečteno: 401×
    Mám problém s xslt transformací velkýho xml. Zkoušel jsem Xalan-c a xsltproc a v obou případech mě to sežralo ramku (6 Gb) a pak to kernel vykopnul. Zkoušel jsem to naporcovat pomocí xml_split z twig tools, ale ani xalan, ani xsltproc neuměj ty includovaný fajly (nebo jim já neumim říct, jak s nima naložit). Já bych, ideálně potřeboval z toho xml nadělat samostatný porce, aby ale každá byla samostatně životaschopná. Jde to? Je na to nějaká finta?
    Nejsem blbý, jen se hloupě ptám

    Odpovědi

    7.1.2013 13:18 Kit
    Rozbalit Rozbalit vše Re: Problém s pamětí u XSLT
    SAXem by to mělo jít.
    7.1.2013 13:29 jeleniste | skóre: 13 | blog: Prokustovo lože
    Rozbalit Rozbalit vše Re: Problém s pamětí u XSLT
    Sax jasný. A co si mam nainstalovat/vygůglit? Mam už udělaný ty stylesheety, fungujou na menších fajlech, nerad byc to dělal znova. Dá se to nějak použít jako command line utilita?
    Nejsem blbý, jen se hloupě ptám
    9.1.2013 20:57 jeleniste | skóre: 13 | blog: Prokustovo lože
    Rozbalit Rozbalit vše Re: Problém s pamětí u XSLT
    Hm, tohle nejde. Dělám to blbě?
    jelen@gentoo ~/Dropbox/$ java -jar /usr/share/saxon-9/lib/saxon.jar dta_pha/20121231_OB_554782_UKSH.xml vymenny_format.xsl > inserty_pha.sql
    Warning: at xsl:stylesheet on line 2 column 1473 of vymenny_format.xsl:
      Running an XSLT 1.0 stylesheet with an XSLT 2.0 processor
    Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
            at net.sf.saxon.tinytree.TinyTree.ensureNodeCapacity(Unknown Source)
            at net.sf.saxon.tinytree.TinyTree.addNode(Unknown Source)
            at net.sf.saxon.tinytree.TinyBuilder.makeTextNode(Unknown Source)
            at net.sf.saxon.tinytree.TinyBuilder.characters(Unknown Source)
            at net.sf.saxon.event.Stripper.characters(Unknown Source)
            at net.sf.saxon.event.ReceivingContentHandler.flush(Unknown Source)
            at net.sf.saxon.event.ReceivingContentHandler.endElement(Unknown Source)
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:604)
            at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1759)
            at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2915)
            at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:625)
            at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:116)
            at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:488)
            at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:819)
            at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:748)
            at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:123)
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1208)
            at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:525)
            at net.sf.saxon.event.Sender.sendSAXSource(Unknown Source)
            at net.sf.saxon.event.Sender.send(Unknown Source)
            at net.sf.saxon.Controller.transform(Unknown Source)
            at net.sf.saxon.Transform.processFile(Unknown Source)
            at net.sf.saxon.Transform.doTransform(Unknown Source)
            at net.sf.saxon.Transform.main(Unknown Source)
    
    Nejsem blbý, jen se hloupě ptám
    10.1.2013 10:53 Kit
    Rozbalit Rozbalit vše Re: Problém s pamětí u XSLT
    Saxon není SAX.
    10.1.2013 10:06 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: Problém s pamětí u XSLT

    Ahoj.

    Zpracovavam "jen" zakladni sadu dat (soubory _UZSZ.xml), ale xsltproc u me (4 GB RAM) taky neprosel. Pouzivam Xalan a projde mi i soubor pro Prahu. Spoustim to z PHP skriptu pomoci exec a vystup ctu primo zpatky do skriptu.

    Na Fedore 16 (moje pracovni stanice, na ni delam import uplnych dat)

    $s = exec("Xalan \"".$ZdrojovyXMLsoubor."\" \"".$XSLTSablona."\"", $VystupniData);

    Na Debianu (virtualni server, delam jen updaty)

    $s = exec("xalan -in \"".$ZdrojovyXMLsoubor."\" -xsl \"".$XSLTSablona."\"", $VystupniData);

    Ve skriptu pak pracuji s $VystupniData.

    Napadlo me rozdelit sablonu do nekolika kroku, transformovat to postupne (na nekolik pruchodu) a do db to vkladat postupne (pri prvnim pruchodu insert, pri dalsich update podle kodu prvku).

    Dejf

    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    10.1.2013 13:45 Filip Jirsák
    Rozbalit Rozbalit vše Re: Problém s pamětí u XSLT
    Normálně si XSLT procesor vytvoří z XML dokumentu celý strom v paměti (buď DOM nebo podobnou strukturu), a nad tou pak pracuje. Pro opravdu velké XML to samozřejmě znamená enormní množství potřebné paměti. Naporcování do více souborů a skládání pomocí XInclude by vám nepomohlo, to skládání do jednoho dokumentu dělá parser a zase byste skončil s jedním obřím stromem v paměti.

    XSLT je ale záměrně navržené tak, aby se dalo používat i proudově, tj. postupně se při parsování XML rovnou aplikuje transformace a není nutné držet moc velkou část XML stromu v paměti. (Ta možnost proudového zpracování je taky důvod, proč XSLT vypadá tak divně a neintuitivně.) Samozřejmě je k tomu potřeba mít dobře navrženou XSLT šablonu, které to proudové zpracování umožní – nebude se odkazovat napříč dokumentem a pomocí absolutních cest, ale bude používat opravdu jen nejnutnější část zpracovávaného dokumentu.

    Pak je taky samozřejmě potřeba podpora na straně XSLT procesoru. Podporuje to Saxon EE (alespoň to tvrdí na webu, já verzi EE nikdy nezkoušel). O jiné implementaci nevím, na druhou stranu něco lepšího než Saxon těžko seženete (pokud ano, určitě dejte vědět).
    10.1.2013 14:38 Kit
    Rozbalit Rozbalit vše Re: Problém s pamětí u XSLT
    Stačilo chvilku hledat a našel jsem JOOST, XML::STX (Perl), STXPath a XStream. Tak si vyber.

    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.