Creación de archivos en HDFS usando Python Snakebite

Hadoop es un marco popular de big data escrito en Java. Pero no es necesario usar Java para trabajar en Hadoop. También se pueden usar otros lenguajes de programación como Python , C++ . Podemos escribir código C++ para Hadoop usando API de tuberías o tuberías de Hadoop. Las tuberías de Hadoop permiten el seguimiento de tareas con la ayuda de sockets.

Python también se puede usar para escribir código para Hadoop. Snakebite es una de las bibliotecas populares que se utiliza para establecer comunicación con HDFS . Usando la biblioteca de cliente de python proporcionada por el paquete Snakebite, podemos escribir fácilmente código de python que funcione en HDFS. Utiliza mensajes protobuf para comunicarse directamente con NameNode. La biblioteca de cliente de python funciona directamente con HDFS sin realizar una llamada del sistema a hdfs dfs .

Requisito previo: la biblioteca Snakebite debe estar instalada.

Asegúrese de que Hadoop se esté ejecutando, de lo contrario, inicie todos los demonios con el siguiente comando.

start-dfs.sh             // start your namenode datanode and secondary namenode

start-yarn.sh            // start resourcemanager and nodemanager

Tarea: Cree directorios en HDFS usando el paquete Snakebite usando el método mkdir() .

Paso 1: Cree un archivo en su directorio local con el nombre create_directory.py en la ubicación deseada .

cd Documents/        # Changing directory to Documents(You can choose as per your requirement)

touch create_directory.py      # touch command is used to create file in linux enviournment.       

Paso 2: escriba el siguiente código en el   archivo python create_directory.py .

Python

# importing the package
from snakebite.client import Client
  
# the below line create client connection to the HDFS NameNode
client = Client('localhost', 9000)
  
# create directories mentioned in mkdir() methods first argument i.e. in List format
for p in client.mkdir(['/demo/demo1', '/demo2'], create_parent=True):
            print p

El mkdir() toma una lista de la ruta de los directorios que queremos hacer. create_parent=True garantiza que si no se crea el directorio principal, debe crearse primero. En nuestro caso, el directorio de demostración se creará primero y luego se creará demo1 dentro de él.

Paso 3: Ejecute el archivo create_directory.py y observe el resultado.

python create_directory.py   // this will create directory's as mentioned in mkdir() argument.

En la imagen de arriba, ‘resultado’: True indica que hemos creado correctamente el directorio.

Paso 4: podemos verificar que los directorios se creen o no, ya sea visitando manualmente o con el siguiente comando.

hdfs dfs -ls /       // list all the directory's in root folder

hdfs dfs -ls /demo   // list all the directory's present in demo folder

En la imagen de arriba, podemos observar que hemos creado con éxito todos los directorios.

Publicación traducida automáticamente

Artículo escrito por dikshantmalidev y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *