Пономаренко Роман
@rerand0m
rerandom@ispras.ru
$ hdfs dfs -ls / Found 6 items drwxr-xr-x - hdfs supergroup 0 2021-12-29 12:56 /data drwxr-xr-x - hdfs supergroup 0 2020-12-22 14:07 /datasets drwxr-xr-x - hbase hbase 0 2022-12-17 18:20 /hbase drwxr-xr-x - hdfs supergroup 0 2021-03-11 20:43 /opt drwxrwxrwx - hdfs supergroup 0 2023-04-01 13:44 /tmp drwxrwxr-x - hdfs supergroup 0 2023-03-30 09:47 /user $ hdfs dfs -ls -h /data/wiki/en_articles/ Found 1 items -rw-r--r-- 3 hdfs supergroup 11.5 G 2017-07-03 19:21 /data/wiki/en_articles/articles $ hdfs dfs -du -h /data/wiki/en_articles/ 11.5 G 34.4 G /data/wiki/en_articles/articlesman
$ hdfs dfs -mkdir <dir> $ hdfs dfs -put <local_file> <hdfs_file> # Копирование файла с mipt-client.atp-fivt.org $ hdfs dfs -cat <file> # Вывод на экран $ hdfs dfs -text <file> # Вывод на экран (распознаёт кодировку и декодирует файл) $ hdfs dfs -tail <file> # Вывод последнего килобайта $ hdfs dfs -mv <file1> <file2> $ hdfs dfs -cp <file1> <file2> # Лучше разобраться с hadoop distcp $ hdfs dfs -setrep <rep> <file> # Задать фактор репликации, -w для ожидания завершения $ hdfs dfs -rm <file> # Перемещает в /.Trash/ для удаления флаг --skipTrash $ hdfs dfs -rm -r <folder>
$ hdfs fsck /data/wiki/en_articles/articles -files -blocks -locations Connecting to namenode via http://mipt-master.atp-fivt.org:50070 FSCK started by PonomarenkoRE (auth:SIMPLE) from /93.175.29.107 for path /data/wiki/en_articles/articles at Sun Apr 02 00:19:15 UTC 2023 /data/wiki/en_articles/articles 12328051927 bytes, 92 block(s): OK 0. BP-1135830572-93.175.29.106-1493426010892:blk_1073971213_230460 len=134217728 Live_repl=3 [DatanodeInfoWithStorage[93.175.29.109:50010,DS-3b63d425-0f0e-45be-b954-f090a313119d,DISK], DatanodeInfoWithStorage[93.175.29.111:50010,DS-0618707d-c00c-4563-b7d8-ec217f4c972c,DISK], DatanodeInfoWithStorage[93.175.29.108:50010,DS-e6145908-c576-4b13-b0b0-7222d3355fc9,DISK]] 1. BP-1135830572-93.175.29.106-1493426010892:blk_1073971222_230469 len=134217728 Live_repl=3 [DatanodeInfoWithStorage[93.175.29.111:50010,DS-0618707d-c00c-4563-b7d8-ec217f4c972c,DISK], DatanodeInfoWithStorage[93.175.29.110:50010,DS-ea163d39-5f3c-41e6-9281-aa2013a5ba38,DISK], DatanodeInfoWithStorage[93.175.29.113:50010,DS-0577ca31-8450-4384-a540-cd4f83eb1bbf,DISK]] ... $ hdfs fsck -blockId blk_1073971213 Connecting to namenode via http://mipt-master.atp-fivt.org:50070 FSCK started by PonomarenkoRE (auth:SIMPLE) from /93.175.29.107 at Sun Apr 02 00:25:04 UTC 2023 Block Id: blk_1073971213 Block belongs to: /data/wiki/en_articles/articles No. of Expected Replica: 3 No. of live Replica: 3 No. of excess Replica: 0 No. of stale Replica: 0 No. of decommissioned Replica: 0 No. of decommissioning Replica: 0 No. of corrupted Replica: 0 Block replica on datanode/rack: mipt-node01.atp-fivt.org/default is HEALTHY Block replica on datanode/rack: mipt-node04.atp-fivt.org/default is HEALTHY Block replica on datanode/rack: mipt-node02.atp-fivt.org/default is HEALTHY # Вообще должно работать: sudo -u hdfsuser ssh hdfsuser@mipt-node01.atp-fivt.org find /dfs -name "blk_1073971213" $ ssh hdfsuser@mipt-node01.atp-fivt.org find /dfs -name "blk_1073971213" hdfsuser@mipt-node01.atp-fivt.org's password: hdfsuser /dfs/dn/current/BP-1135830572-93.175.29.106-1493426010892/current/finalized/subdir3/subdir128/blk_1073971213
curl -i -L "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=OPEN [&offset=<LONG>][&length=<LONG>][&buffersize=<INT>]" curl -L -i "http://mipt-master.atp-fivt.org:50070/webhdfs/v1/data/wiki/en_articles_part/articles-part?op=OPEN&length=100" HTTP/1.1 307 TEMPORARY_REDIRECT Cache-Control: no-cache Expires: Sun, 02 Apr 2023 00:36:56 GMT Date: Sun, 02 Apr 2023 00:36:56 GMT Pragma: no-cache Expires: Sun, 02 Apr 2023 00:36:56 GMT Date: Sun, 02 Apr 2023 00:36:56 GMT Pragma: no-cache Content-Type: application/octet-stream X-FRAME-OPTIONS: SAMEORIGIN Location: http://mipt-node05.atp-fivt.org:50075/webhdfs/v1/data/wiki/en_articles_part/articles-part?op=OPEN&namenoderpcaddress=mipt-master.atp-fivt.org:8020&length=100&offset=0 Content-Length: 0 Server: Jetty(6.1.26.cloudera.4) HTTP/1.1 200 OK Access-Control-Allow-Methods: GET Access-Control-Allow-Origin: * Content-Type: application/octet-stream Connection: close Content-Length: 100 12 Anarchism Anarchism is often defined as a political philosophy which holds the state to bmore
Может быть доступен напрямую:
http://mipt-master.atp-fivt.org:50070А можно пробросить порт:
ssh -L 50070:mipt-master.atp-fivt.org:50070 MY_USER@mipt-client.atp-fivt.org # вместо MY_USER введите свой логин (`par***`)
Заходить тогда через localhost:50070
Ref
Нужно создать файл ~/.hdfscli.cfg с содержимым:
[global] default.alias = default [default.alias] url = http://mipt-master.atp-fivt.org:50070 user = <my_user> # например, velkerr
Затем можно работать:
Docs

Нужно пробросить порт:
ssh -L 8888:mipt-node03.atp-fivt.org:8888 MY_USER@mipt-client.atp-fivt.org # вместо MY_USER введите свой логин (`par***`)
Заходить через localhost:8888
Логин: hue_user
Пароль: hue_password
Для HDFS ёмкостью 2PB, c размером блока 64MB и фактором репликации 3, оценить минимальный объем RAM на Namenode. Считаем, что метаинформация о каждом блоке (независимо от числа реплик) занимает в памяти NameNode 600B.
2PB / 64MB - число блоков.
Разных блоков будет: 2PB / 64MB / 3
Требуемая память:
(2PB / 64MB / 3) * 600B = 6.25GB
На кластере используются HDD с характеристиками: seek time - 12мс, скорость линейного чтения - 210 MB/c. Какой минимальный размер блока в HDFS стоит выбрать, чтобы время поиска блока составляло не больше 0.5% от времени чтения блока?
0.5% от времени чтения блока размера Х должен быть не меньше 12мс:
X / 210 MB/c * 0.005 >= 0.012 c
X >= 0.012 * 210 / 0.005 = 504 MB