Hadoop - клиент командной строки Python Snakebite, его использование и ссылки на команды
Python Snakebite поставляется с клиентом CLI (интерфейс командной строки), который представляет собой клиентскую библиотеку на основе HDFS. Имя хоста или IP-адрес NameNode и RPC-порт NameNode должны быть известны для использования интерфейса командной строки python snakebite. Мы можем перечислить все эти значения портов и имя хоста, просто создав наш собственный файл конфигурации, который содержит все эти детали NameNode, такие как имя хоста Localhost и порт RPC (Remote Procedure Call). В нашей демонстрации мы будем использовать более простой способ использования snakebite CLI, напрямую передав значения этого порта и хоста самой команде. Удаленный вызов процедур или RPC - это способ динамического распределения порта, который используется для серверов и приложений удаленного администрирования.
Значения, которые мы здесь используем для имени хоста и значения порта, можно найти в файле hadoop / etc / hadoop / core-site.xml в свойстве fs.default.name в вашей системе. Мы можем посетить документацию Snakebite CLI, чтобы получить дополнительную информацию о конфигурации Snakebite CLI.
Мы также можем проверить значение свойства fs.default.name с помощью следующей команды.
hdfs getconf -confKey fs.defaultFS # Мы также можем использовать fs.default.name, но fs.defaultFS наиболее подходит
Давайте посмотрим значение свойства fs.default.name вручную в файле core-site.xml в нашей системе, чтобы узнать хост или порт.
Мы видим, что наш хост по умолчанию - localhost или порт - 9000 .
Использование интерфейса командной строки Snakebite
С помощью python snakebite CLI мы можем легко реализовать большинство команд, которые мы используем с hdfs dfs, такие как ls, mv, rm, put, get, du, df и т. Д. Итак, давайте выполним некоторые базовые операции, чтобы понять, как Snakebite CLI работает.
Использование Snakebite CLI по пути в командной строке - например: hdfs: // namenode_host: port / path
1. Список всех доступных каталогов в корневом каталоге HDFS.
Синтаксис:
змеиный укус ls hdfs: // локальный: 9000 / <путь>
Пример:
snakebite ls hdfs: // локальный: 9000 /
2. Удаление файла из HDFS
Синтаксис:
snakebite rm hdfs://localhost:9000/<file_path_with_name>
Пример:
snakebite rm hdfs: // локальный: 9000 / data.txt
3. Создание каталога (в моем случае имя каталога / sample)
Синтаксис:
snakebite mkdir hdfs: // localhost: 9000 / <путь_с_имя_каталога>
Пример:
snakebite mkdir hdfs: // localhost: 9000 / образец
4. Удаление каталога (в моем случае имя каталога / sample)
snakebite rmdir hdfs: // localhost: 9000 / образец
Теперь, используя приведенный выше пример, мы получаем представление о том, как мы можем реализовать и использовать интерфейс командной строки snakebite. Важное различие между Snakebite CLI и HDFS ДФСОМ является то , что укус змеи является полной библиотекой Python клиента и не использует библиотеку Java для взаимодействия с HDFS. Команда библиотеки snakebite быстрее взаимодействует с HDFS, чем с hdfs dfs .
Справочник команд интерфейса командной строки
Библиотека Python Snakebite предоставляет множество возможностей для работы с HDFS. Все переключатели и команды для справки могут быть перечислены с помощью простой команды snakebite.
укус змеи
Мы можем заметить, что все команды, доступные в аналогичных командах hdfs dfs , также доступны в интерфейсе командной строки snakebite. Давайте сделаем еще несколько, чтобы лучше понять интерфейс командной строки snakebite.
Проверьте версию snakebite с помощью следующей команды
укус змеи
1. cat: используется для печати данных файла.
Пример:
змеиный кот hdfs: // localhost: 9000 / test.txt
2. copyToLocal (или) get: для копирования файлов / папок из хранилища hdfs в локальную файловую систему.
Синтаксис:
snakebite copyToLocal <источник> <место назначения>
Пример:
snakebite copyToLocal hdfs: // localhost: 9000 / test.txt / home / dikshant / Картинки
3. touchz: Создает пустой файл.
Синтаксис:
snakebite touchz hdfs: // localhost: 9000 / <имя_каталога>
Пример:
snakebite touchz hdfs: // локальный: 9000 / demo_file
4. du: отображение статистики использования диска
snakebite du hdfs: // localhost: 9000 / # показать использование диска в корневом каталоге snakebite du hdfs: // localhost: 9000 / Hadoop_File # показать использование диска в каталоге / Hadoop_File, т.е. уже доступно
5. stat: будет указано время последнего изменения каталога или пути. Короче говоря, он даст статистику каталога или файла
snakebite stat hdfs: // localhost: 9000 / snakebite stat hdfs: // localhost: 9000 / Hadoop_File
6 setrep: Эта команда используется для изменения коэффициента репликации файла / каталога в HDFS. По умолчанию это 3 для всего, что хранится в HDFS (как установлено в hdfs core-site.xml).
snakebite setrep 5 hdfs: // локальный: 9000 / test.txt
На изображении ниже мы видим, что мы изменили коэффициент репликации с 1 на 5 для файла test.txt.
Точно так же мы можем выполнять несколько операций с HDFS с помощью интерфейса командной строки python snakebite.
Внимание компьютерщик! Укрепите свои основы с помощью базового курса программирования Python и изучите основы.
Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS. А чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень.