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 08:11 | Komunita

    Firma X zaslala předžalobní výzvu vývojáři projektu Nitter (Wikipedia), open-source alternativního frontendu k sociální síti X (ex-Twitter), a provozovatelům instancí jako XCancel, které umožňovaly číst příspěvky bez přihlášení, reklam a javascriptu. Údajně se dopouštějí „sběru dat“. Zdrojový kód Nitteru vývojář archivoval. Vývoj již dříve přerušil v roce 2024 po tehdejším omezení API X. X je dceřiná společnost SpaceXAI Elona Muska, provozující mj. kontroverzního chatbota Grok.

    |🇵🇸 | Komentářů: 13
    včera 02:22 | Nová verze

    Bylo vydáno Ubuntu 26.04.1 LTS, tj. první opravné vydání Ubuntu 26.04 LTS s kódovým názvem Resolute Raccoon. Přehled novinek a oprav na Discourse.

    Ladislav Hagara | Komentářů: 1
    včera 02:11 | Zajímavý článek

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) vydal Zprávu o stavu kybernetické bezpečnosti ČR za rok 2025 (pdf). Incidentů ubylo, sofistikovanost útočníků roste.

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

    Open source softwarový stack AMD ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán v nové major verzi 10.0. S ROCm.AI. Přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    27.8. 22:11 | Bezpečnostní upozornění

    Finanční skupina Partners se stala minulou neděli obětí kybernetického útoku, při kterém se útočníci dostali k některým osobním údajům klientů. Společnost o tom informovala ve čtvrtek. Ujišťuje, že peníze klientů nejsou v ohrožení. „Kybernetický útok zasáhl část IT infrastruktury naší společnosti. Ihned po zjištění útoku jsme s pomocí externích bezpečnostních odborníků začali intenzivně pracovat na minimalizaci škod. Útočníci se

    … více »
    Ladislav Hagara | Komentářů: 0
    27.8. 03:55 | IT novinky

    Americká technologická společnost Meta Platforms se dohodla, že zaplatí až zhruba 18 miliard dolarů (asi 373 miliard Kč) za mimosoudní urovnání sporu o závislosti dětí na sociálních sítích a provede významné změny pro jejich používání mladistvými. Téměř tři desítky států USA firmu v roce 2023 obvinily z toho, že sítě Facebook a Instagram vědomě navrhla tak, aby u dětí vyvolávaly závislost, a zatajovala tyto dopady před veřejností. Firma se

    … více »
    Ladislav Hagara | Komentářů: 3
    27.8. 02:55 | Komunita

    Byl publikován aktuální přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Blíží se vydání podporující čipy M3. Vývojáře lze podpořit na GitHub Sponsors a Open Collective.

    Ladislav Hagara | Komentářů: 0
    26.8. 16:55 | Nová verze

    Kancelářský balík LibreOffice byl vydán ve verzi 26.8. Mimo jiné vylepšuje typografii a kompatibilitu s formáty MS Office, více v poznámkách k vydání.

    |🇵🇸 | Komentářů: 0
    26.8. 14:55 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 26.8. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 7
    26.8. 11:44 | Nová verze

    Byla vydána nová verze 23.1.0, tj. první stabilní verze z nové řady 23.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools, Libc++, Polly a Flang.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (29%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2510 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: 200 GB txt subor a sort -u

    7.7.2018 18:52 tutanchamon
    200 GB txt subor a sort -u
    Přečteno: 3188×
    Chcem dostat unikatne slova z 260 GB suboru. Ako na to casovo aj datovo co najefektivnejsie? Mam iba starsie dvojjadro s 4GB RAM a prepoctom idem k 80 hodinam triedenia a cca 500 GB na temp subory + vysledny subor... Dakujem za postrehy...

    Řešení dotazu:


    Odpovědi

    7.7.2018 19:32 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Podle mě záleží, jak hodně se ta slova opakují. Naivním přístupem bych načetl slovo po slově a vkládal do Setu ve vhodném programovacím jazyce a ten Set nakonec serializoval. Výběrem vhodné implementace Setu by šlo docílit optimálního výkonu, asi na to budou i specializované knihovny. Šlo by to řešit po částech, aby se všechna aktuálně zpracovávaná data vešla do RAM - rozdělit soubor, zpracovat po částech, získané mezivýsledky zpracovat v druhém průchodu. Možná by stejnou úlohu zajistila i nějaká databáze (třeba MapDB a podobné).
    -- OldFrog
    7.7.2018 19:33 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Nacpal bych ta slova jako klíče do databáze DB4 a vypsal její obsah.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.7.2018 12:09 Lazar
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Co rozdělit soubor na desítky(stovky?) menších, stanovit unikátní seznam pro každý z nich a pak stanovit seznam unikátních slov pro sloučené dílčí seznamy? Těch unikátních slov snad bude relativně konečné množství, ne?
    8.7.2018 14:15 Dikobraz Fik
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Příloha:
    ^^^^^^^^^^^^^^ pozrite si progress... poriesil som to takto - hadam to niekomu niekedy pomoze...
    pv $1 | parallel --tmpdir tmp --pipe --files sort -u -T tmp -S512M  --parallel=2 | parallel --tmpdir tmp -Xj1 sort -u -T tmp -S1024M --parallel=2  -m {} ';' rm {} > $2
    
    nutne definovat --tmpdir (u mna v aktualnom adresari) inac si zabijete /tmp (ak tam nemate dost miesta)
    9.7.2018 12:25 uniq
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Preco si nepouzil program uniq?
    9.7.2018 16:24 R
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Lebo pred jeho pouzitim sa musia aj tak data usporiadat programom sort?
    9.7.2018 18:48 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Jo klíč by měl být OK. Ono těch slov zas tolik není:
    # cat /usr/share/dict/words  | wc -l
    38619
    # cat /usr/share/dict/words  | wc -c
    352846
    
    Pokud by vyhledání klíče bylo rychlý (třeba hash), tak by to mohlo číst až rychlostí blízkou disku. Můj naivní kód v perlu, co parsuje asi 3.5GB lisp-like zdroják to zvládne na c2d asi za 30 minut, ale kromě hledání klíče to dělá i inserty do tisíců spojových seznamů apod (což je mnohem náročnější).
    9.7.2018 19:25 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Pokud ovšem jde o slova z normálního „lidského“ jazyka...
    -- OldFrog
    10.7.2018 14:45 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Hmm to je vlastně pravda. Ale i tak ty klíče samozřejmě pomohou, jen to bude trvat dýl a sežere to víc času.
    9.7.2018 22:47 Rockhopper
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    V prvé řadě je potřeba soubor zkomprimovat a řadit zkomprimovaný. Hrubý odhad bez znalosti typu dat cca. do 10 hodin. Na velikosti RAM víceméně nezáleží, stačí 16 MB, záleží na druhu komprese.
    10.7.2018 09:08 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    N=100000
    split --lines=$N  vstup
    for file in x*
    do 
      cat $file | tr ' ' '\n' | sort -u > $file.usorted
      mv $file.usorted $file
    done
    cat x* | sort -u > vystup
    
    Hodnotu N upraviť podľa potreby. To 'tr' je také neotesané riešenie, čo neberie do úvahy bodky, čiarky, atď. Možno by sa dalo nahradiť nejakým šikovnejším sed-om.
    10.7.2018 09:22 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Myslím, že pokud bude těch x* hodně, zahlásí bash u cat příliš dlouhý seznam parametrů. Ale to lze snadno vyřešit třeba přes find.

    Jsou dvě jádra, tak by se to procházení x* mohlo obalit funkcí a xargsem spouštět dva procesy.
    10.7.2018 11:01 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Keď urobíš "wc -l vstup" a vydelíš výsledok 200, tak dostaneš počet riadkov na jeden súbor ktorý bude mat +- 1GB. Ten počet dáš split-u, a budeš mať 200 súborov. Aj keby si to delil 2000 tak budeš mať 2000 súborov po 100MB. To by nemuselo byť moc. Podstatné je, že každý ten kúsok sa tým "sort -u" značne zredukuje, takže aj ich spojenie na konci bude relatívne malé.
    10.7.2018 11:07 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Jasně, jen jsem upozorňoval, že bývá dobré na max. počet souborů přes wildcard myslet, je to pak nepříjemná chyba. I když, v bashi je každé ladění nepříjemné :-)
    10.7.2018 10:01 〹
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Kolik unikátních slov očekáváš? Bavíme se o lidském jazyce?
    Řešení 1× (cronin)
    10.7.2018 12:46 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    Chtělo by to vzorek toho souboru. A nabízí se vyhlásit soutěž o nejrychlejší řešení a udělat porovnání použití různých technologií :-)
    -- OldFrog
    17.7.2018 07:55 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    A také dost záleží na tom, jestli to má být jednorázová akce nebo jestli je cílem napsat program, který se bude na podobně velkých souborech spouštět opakovaně. V prvním případě bude stačit něco, co bude přijatelně rychlé, a nemělo by smysl trávit hodinu práce navíc optimalizací, která zrychlí běh o hodinu (nebo třeba i čtyři). Ve druhém už by stálo zamyslet se nad datovou strukturou, která umožní rychlý insert a walkthrough (RB tree?).
    12.7.2018 16:09 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    rozhodně bych netřídil původní soubor. použil bych algoritmus typu
    setrideny-seznam-unikatnich-slov="prázndný seznam"
    
    slovo=prectu-slovo()
    while (slovo!=null){
      if (slovo "je v" setrideny-seznam-unikatnich-slov){ # náročnost operace O(log(N))
         zaradit(slovo, setrideny-seznam-unikatnich-slov) # pro balancované seznam to je tuším také O(log(N)), navíc v předchozím vyhledávání už bylo nalezeno, kde v tom seznamu by tohle slovo mělo být a není takže by ty operace mohly být i rychlejší než log protože není třeba hledat.
      }
    }
    
    pak v setrideny-seznam-unikatnich-slov je pořád setříděno a pokud to není těch slov fakt moc tak se to možná i vejde do paměti.
    22.7.2018 20:04 python
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u
    pokud se slova vejdou do RAM, tohle v pythonu bude svizne :
    uniq = set()
    with open('README.md') as f:
        for line in f:
            words = line.strip().split()
            for w in words:
                uniq.add(w)
    print(len(uniq))
    
    DaBler avatar 25.7.2018 01:15 DaBler | skóre: 17 | blog: dabler | Brno
    Rozbalit Rozbalit vše Re: 200 GB txt subor a sort -u

    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.