Utilizzo dello storage e dei file system - Amazon EMR

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo dello storage e dei file system

Amazon EMR e Hadoop offrono una varietà di file system che puoi utilizzare durante l'elaborazione delle fasi del cluster. È possibile specificare il file system da utilizzare in base al prefisso URI utilizzato per accedere ai dati. Ad esempio, s3://amzn-s3-demo-bucket1/path fa riferimento a un bucket Amazon S3 utilizzando. EMRFS La tabella seguente elenca i file system disponibili, con suggerimenti riguardo all'utilizzo più appropriato per ciascuno.

Amazon EMR e Hadoop in genere utilizzano due o più dei seguenti file system durante l'elaborazione di un cluster. HDFSe EMRFS sono i due file system principali utilizzati con AmazonEMR.

Importante

A partire dalla EMR versione 5.22.0 di Amazon, Amazon EMR utilizza la versione 4 di AWS Signature esclusivamente per autenticare le richieste verso Amazon S3. EMRLe versioni precedenti di Amazon utilizzano AWS Signature Version 2 in alcuni casi, a meno che le note di rilascio non indichino che viene utilizzata esclusivamente la versione Signature 4. Per ulteriori informazioni, consulta Authenticating Requests (AWS Signature Version 4) e Authenticating Requests (AWS Signature Version 2) nella Amazon Simple Storage Service Developer Guide.

File system Prefix Descrizione
HDFS hdfs:// (o nessun prefisso)

HDFSè un file system distribuito, scalabile e portatile per Hadoop. Un vantaggio HDFS è la consapevolezza dei dati tra i nodi del cluster Hadoop che gestiscono i cluster e i nodi del cluster Hadoop che gestiscono i singoli passaggi. Per ulteriori informazioni, consulta la documentazione di Hadoop.

HDFSviene utilizzato dai nodi master e core. Uno dei vantaggi è la sua rapidità, mentre ha lo svantaggio di essere uno storage temporaneo che viene recuperato quando il cluster termina. Trova il miglior utilizzo nel caching dei risultati prodotti dalle fasi intermedie del flusso di elaborazione.

EMRFS s3://

EMRFSè un'implementazione del file system Hadoop utilizzato per leggere e scrivere file normali da Amazon EMR direttamente ad Amazon S3. EMRFSoffre la comodità di archiviare dati persistenti in Amazon S3 per utilizzarli con Hadoop, fornendo al contempo funzionalità come la crittografia lato server di Amazon S3, la coerenza e la coerenza degli elenchi. read-after-write

Nota

In precedenza, Amazon EMR utilizzava i s3a file system s3n and. Sebbene entrambi funzionino ancora, ti consigliamo di utilizzare lo s3 URI schema per ottenere le migliori prestazioni, sicurezza e affidabilità.

File system locale

Il file system locale fa riferimento a un disco con connessione locale. Quando viene creato un cluster Hadoop, ogni nodo viene creato da un'EC2istanza dotata di un blocco preconfigurato di storage su disco precollegato chiamato instance store. I dati sui volumi dell'Instance Store persistono solo per la durata dell'istanza. EC2 I volumi instance store sono ideali per lo storage di dati temporanei in continua evoluzione, come buffer, cache, dati Scratch e altri contenuti temporanei. Per ulteriori informazioni, consulta Amazon EC2 Instance Storage.

Il file system locale viene utilizzato daHDFS, ma Python viene eseguito anche dal file system locale ed è possibile scegliere di archiviare file applicativi aggiuntivi nei volumi di archiviazione delle istanze.

(Legacy) File system a blocchi Amazon S3 s3bfs://

Il file system a blocchi Amazon S3 è un file storage system legacy. e ne sconsigliamo caldamente l'utilizzo.

Importante

Consigliamo di non utilizzare questo file system perché può attivare una race condition che può causare errori nel cluster. Tuttavia, può essere richiesto da applicazioni legacy.

Accesso ai file system

È possibile specificare il file system da utilizzare utilizzando il prefisso dell'Uniform Resource Identifier (URI) utilizzato per accedere ai dati. Le seguenti procedure illustrano come fare riferimento a diversi tipi di file system.

Per accedere a un locale HDFS
  • Specificare il hdfs:/// prefisso in. URI Amazon EMR risolve i percorsi che non specificano un prefisso nel localeURI. HDFS Ad esempio, entrambi i seguenti URIs verrebbero risolti nella stessa posizione in. HDFS

    hdfs:///path-to-data /path-to-data
Per accedere a un telecomando HDFS
  • Includi l'indirizzo IP del nodo master inURI, come illustrato negli esempi seguenti.

    hdfs://master-ip-address/path-to-data master-ip-address/path-to-data
Accesso ad Amazon S3
  • Utilizza il prefisso s3://.

    s3://bucket-name/path-to-file-in-bucket
Accesso al file system a blocchi Amazon S3
  • Utilizzalo solo per le applicazioni legacy che richiedono il file system a blocchi Amazon S3. Per accedere o archiviare dati con questo file system, utilizzare il s3bfs:// prefisso in. URI

    Il file system a blocchi Amazon S3 è un file system legacy che veniva utilizzato per supportare caricamenti con una dimensione maggiore di 5 GB su Amazon S3. Con la funzionalità di caricamento multiparte EMR fornita da Amazon tramite AWS JavaSDK, puoi caricare file di dimensioni fino a 5 TB sul file system nativo di Amazon S3 e il file system a blocchi Amazon S3 è obsoleto.

    avvertimento

    Poiché questo file system legacy può creare condizioni razziali che possono danneggiare il file system, dovresti evitare questo formato e utilizzarlo al suo posto. EMRFS

    s3bfs://bucket-name/path-to-file-in-bucket