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:33 | IT novinky

    Po vlastních microSD kartách nabízí nově Raspberry Pi také vlastní NVMe SSD disky. Samostatně i v sadách s M.2 HAT+.

    Ladislav Hagara | Komentářů: 0
    dnes 06:11 | Zajímavý článek

    Byla zveřejněna (𝕏) Zpráva o činnosti Digitální a informační agentury (DIA) za rok 2023 (pdf). Začíná slovy ředitele: "Vznik Digitální a informační agentury (DIA) je v posledních letech možná jedním z nejvýznamnějších kroků, který dodá potřebný impuls digitalizaci státní správy."

    Ladislav Hagara | Komentářů: 6
    dnes 05:11 | Nová verze

    Vývojáři AlmaLinuxu představili AlmaLinux OS Kitten 10, tj. vývojovou verzi AlmaLinux OS 10 vycházejícího z CentOS Stream 10. Přehled novinek v poznámkách k vydání. Proč Kitten? Verze AlmaLinux OS jsou pojmenované podle kočkovitých šelem. Z kotěte vyroste další kočka.

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

    Kryptografická knihovna OpenSSL byla vydána v nové verzi 3.4. Přehled změn na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 19:00 | IT novinky

    Bylo objeveno nové největší prvočíslo. Jedná se o Mersennovo prvočíslo známé též jako M136279841. To znamená, že v binární formě je prvočíslo tvořeno 136 279 841 jedničkami. Objeveno bylo v rámci distribuovaného výpočetních projektu GIMPS (Great Internet Mersenne Prime Search). Zajímavostí je, že na rozdíl od předchozích takto objevených prvočísel nebylo objeveno pomocí CPU, ale na grafické kartě NVIDIA A100 s pomocí programu Gpuowl.

    DaBler | Komentářů: 3
    včera 16:44 | IT novinky

    Protokol MQTT (Wikipedie) dnes slaví 25 let (Mastodon, 𝕏). První publikovaná specifikace je z 22. října 1999.

    Ladislav Hagara | Komentářů: 0
    včera 15:00 | Nová verze

    Mobilní operační systém /e/OS (Wikipedie) založený na Androidu / LineageOS, ale bez aplikací a služeb od Googlu, byl vydán ve verzi 2.4. Přehled novinek na GitLabu. Z novinek lze zmínit podporu telefonu Google Pixel 7. Na stránkách Murena lze koupit Murena Pixel 7.

    Ladislav Hagara | Komentářů: 0
    včera 02:11 | Pozvánky

    Připojte se ve středu 30. 10. 2024 od 10:00 do 12:00 na náš webinář "Řízení přístupu do PostgreSQL prostřednictvím externího autentizačního providera" (registrace zdarma) a naučte se, jak nastavit ověřování pomocí GSSAPI pro bezpečný přístup k databázím (Microsoft Active Directory nebo FreeIPA). Záznam předchozího webináře "Co je nového v PostgreSQL 17" můžete zhlédnout zde.

    … více »
    Heřmi | Komentářů: 0
    21.10. 21:33 | Nová verze

    Byla vydána nová verze 0.55 open source počítačové hry Unvanquished (Wikipedie), forku počítačové hry Tremulous. Instalovat ji lze také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    21.10. 14:22 | IT novinky

    Dle plánu bylo dnes vydáno Factorio 2.0 a Factorio: Space Age, tj. aktualizace 2.0 počítačové hry Factorio (Wikipedie) oficiálně běžící také na Linuxu a velké vesmírní rozšíření Factorio: Space Age.

    Ladislav Hagara | Komentářů: 0
    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: 364×
    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.