Hadoop es un marco de software de código abierto escrito en Java junto con algunos scripts de shell y código C para realizar cálculos sobre datos muy grandes. Hadoop se utiliza para el procesamiento por lotes/fuera de línea en la red de tantas máquinas que forman un clúster físico. El marco funciona de tal manera que tiene la capacidad suficiente para proporcionar almacenamiento y procesamiento distribuidos en el mismo clúster. Está diseñado para funcionar en sistemas más económicos, comúnmente conocidos como hardware básico, en los que cada sistema ofrece su capacidad de almacenamiento y computación local.
Hadoop es capaz de ejecutar varios sistemas de archivos y HDFS es solo una implementación única de todos esos sistemas de archivos. Hadoop tiene una variedad de sistemas de archivos que se pueden implementar de manera concreta. La clase abstracta de Java org.apache.hadoop.fs.FileSystem representa un sistema de archivos en Hadoop.
sistema de archivos |
esquema URI |
Implementación de Java (todo bajo org.apache.hadoop) |
Descripción |
---|---|---|---|
Local | expediente | fs.LocalFileSystem | El sistema de archivos local de Hadoop se usa para un disco conectado localmente con suma de verificación del lado del cliente. El sistema de archivos local usa RawLocalFileSystem sin sumas de verificación. |
HDFS | hdf | hdfs.DistributedFileSystem | HDFS significa Hadoop Distributed File System y está diseñado para trabajar con MapReduce de manera eficiente. |
HFTP | hftp | hdfs.HftpFileSystem |
El sistema de archivos HFTP proporciona acceso de solo lectura a HDFS a través de HTTP. No hay conexión de HFTP con FTP. Este sistema de archivos se usa comúnmente con distcp para compartir datos entre clústeres HDFS que poseen diferentes versiones. |
HSFTP | hsftp | hdfs.HsftpFileSystem | El sistema de archivos HSFTP proporciona acceso de solo lectura a HDFS a través de HTTPS. Este sistema de archivos tampoco tiene ninguna conexión con FTP. |
HAR | har | fs.HarFileSystem | El sistema de archivos HAR se usa principalmente para reducir el uso de memoria de NameNode mediante el registro de archivos en Hadoop HDFS. Este sistema de archivos se superpone a algún otro sistema de archivos con fines de archivado. |
KFS (tienda en la nube) | kfs | fs.kfs.KosmosFileSystem | cloud store o KFS (KosmosFileSystem) es un sistema de archivos que está escrito en C++. Es muy similar a un sistema de archivos distribuido como HDFS y GFS (Google File System). |
FTP | ftp | fs.ftp.FTPFileSystem | El sistema de archivos FTP es compatible con el servidor FTP. |
S3 (nativo) | s3n | fs.s3native.NativeS3FileSystem | Este sistema de archivos está respaldado por AmazonS3 . |
S3 (basado en bloques) | s3 | fs.s3.S3FileSystem | El sistema de archivos S3 (basado en bloques) que es compatible con Amazon s3 almacena archivos en bloques (similares a HDFS) solo para superar el límite de tamaño de archivo de 5 GB del sistema de archivos S3. |
Hadoop brinda numerosas interfaces a sus diversos sistemas de archivos y, en su mayor parte, utiliza el plan URI para elegir el ejemplo de sistema de archivos correcto con el que hablar. Puede usar cualquiera de estos sistemas de archivos para trabajar con MapReduce mientras procesa conjuntos de datos muy grandes, pero son preferibles los sistemas de archivos distribuidos con características de localidad de datos, como HDFS y KFS (KosmosFileSystem).
Publicación traducida automáticamente
Artículo escrito por dikshantmalidev y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA