Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 16499|Odpoveď: 0

[Zdroj] Stiahnite súbory priamo z Hadoop HDFS

[Kopírovať odkaz]
Zverejnené 10. 7. 2019 14:20:11 | | |
Stiahnite veľké súbory z HDFS

Dostal som veľký súbor (asi 2GB) DataInputStream z HDFS klienta a potrebujem ho uložiť ako súbor na mojom hostiteľovi.

Premýšľam, že použijem Apache Common IOUtils a spravím niečo takéto......


Hľadal som iné riešenia, ktoré sú lepšie ako toto. Hlavnou obavou je použitie bufferovania vo vstupe a IOUtils.copy.

Pre súbory väčšie ako 2GB sa odporúča použiť IOUtils.copyLarge() (ak hovoríme o rovnakých IOUtils: org.apache.commons.io.IOUtils)

Replika v IOUtils používa predvolenú veľkosť bufferu 4Kb (hoci môžete špecifikovať inú veľkosť bufferu ako parameter).

Rozdiel medzi copy() a copyLarge() je v tom, že vracia výsledok.

Pretože copy(), ak je stream väčší ako 2GB, úspešne použijete kópiu, ale výsledok je -1.

Pre copyLarge() je výsledkom počet bajtov, ktoré sú úplne skopírované.

Viac v dokumentácii nájdete tu:


Prihlásenie na hypertextový odkaz je viditeľné.



Ako skontrolovať, či je súbor úplne stiahnutý cez Spring Rest API

Vytvoril som jednoduché REST API na servírovanie súborov z hdfs (súbory sú veľké a nechcem ich lokálne kopírovať).

Chcem zaznamenať informáciu, že stiahnutie súboru bolo úspešne dokončené, teda prečítať celý stream, ale neviem ako. Môžem zaznamenať len informáciu, že sťahovanie súboru začalo.

Akákoľvek pomoc by bola veľmi ocenená.


Môžeš skúsiť vytvoriť wrapper na InputStream a spustiť niektoré príznaky na streame close(close()).

Napríklad môžete použiť ProxyInputStream ako základ:








Predchádzajúci:Podeľte sa o niekoľko meraných webových stránok na prijímanie overovacích SMS kódov online
Budúci:JS--Plugin: Príloha Tree Development and Implementation je dostupná na stiahnutie!!
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com