Создание файла в HDFS
Для создания файла в HDFS вы можете использовать командную строку Hadoop (CLI) или Java API HDFS. В этом разделе мы покажем, как создать файл в HDFS с помощью командной строки Hadoop.
Предварительные требования
Прежде чем вы сможете создать файл в HDFS, вам нужно иметь работающий кластер Hadoop и необходимые разрешения для взаимодействия с файловой системой. Убедитесь, что на вашей системе установлена и настроена командная строка Hadoop.
Создание файла в HDFS с помощью командной строки Hadoop
- Откройте терминал на системе Ubuntu 22.04.
- Запустите сервисы Hadoop, выполнив следующие команды:
sudo service hadoop-namenode start
sudo service hadoop-datanode start
- Используйте команду
hdfs dfs
для создания файла в HDFS. Базовый синтаксис выглядит так:
hdfs dfs -put <local_file_path> <hdfs_file_path>
Здесь <local_file_path>
- это путь к файлу на вашей локальной системе, а <hdfs_file_path>
- это путь, где вы хотите создать файл в HDFS.
Например, чтобы создать файл с именем example.txt
в директории HDFS /user/username/
, выполните следующую команду:
hdfs dfs -put /path/to/local/example.txt /user/username/example.txt
- Проверьте, что файл был создан в HDFS, выполнив следующую команду:
hdfs dfs -ls /user/username/
Это выведет список файлов и директорий в директории /user/username/
, включая только что созданный файл example.txt
.
Создание файла в HDFS с помощью Java API
В качестве альтернативы вы можете создать файл в HDFS программно, используя Java API HDFS. Вот пример фрагмента кода на Java:
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import java.io.IOException;
import java.net.URI;
public class CreateFileInHDFS {
public static void main(String[] args) throws IOException {
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(URI.create("hdfs://namenode:8020"), conf);
Path filePath = new Path("/user/username/example.txt");
fs.create(filePath).close();
System.out.println("File created in HDFS: " + filePath);
}
}
В этом примере мы создаем новый файл с именем example.txt
в директории /user/username/
кластера HDFS.