Загрузить файл в HDFS по частям

Я хотел бы использовать драгоценный камень «webhdfs» для загрузки файла кусками в HDFS. Я вижу в документации, что есть метод создания, но я не уверен, как его использовать и загружать большой файл кусками. Кто-нибудь пробовал это?


person Jackson    schedule 29.05.2014    source источник


Ответы (1)


Я не думаю, что вы должны разрезать его самостоятельно. Вы можете передать дескриптор файла и позволить библиотеке выполнять его потоковую передачу.

file_IO_handle = File.open('/tmp/foo.bin', 'rb')
# Straight from the documentation:
client.create('/path/to/file', file_IO_handle, :overwrite => false, :permission => 0666)
person Kimmo Lehto    schedule 29.05.2014
comment
Что такое file_IO_handle в этом случае? - person Jackson; 29.05.2014
comment
Просто любой файловый объект, например File.open('/tmp/foo.bin', 'rb') - person Kimmo Lehto; 29.05.2014
comment
Я думаю, чтобы быть более конкретным, что такое rb в этом случае? - person Jackson; 29.05.2014
comment
r для чтения, b для двоичного режима. (просто чтобы уточнить, если кто-то еще споткнется здесь) - person Kimmo Lehto; 30.05.2014