Usa la memorizzazione nella cache dei file di Cloud Storage FUSE

La funzionalità di cache dei file di Cloud Storage FUSE è una cache di lettura basata su client che consente ripeti le letture dei file affinché vengano offerte da uno spazio di archiviazione cache più rapido di tua scelta. In questa pagina viene descritto come abilitare e utilizzare la memorizzazione nella cache dei file di Cloud Storage FUSE. Per un panoramica della memorizzazione nella cache di file, delle statistiche o dei tipi di memorizzazione nella cache, consulta Panoramica della memorizzazione nella cache.

Prima di iniziare

Per poter memorizzare i file nella cache, devi utilizzare un percorso della directory per memorizzare i file nella cache. Puoi creare una nuova directory su un file system esistente o creare un nuovo file system sullo spazio di archiviazione a cui è stato eseguito il provisioning. Se esegui il provisioning di nuovo spazio di archiviazione da utilizzare, utilizza le seguenti istruzioni per creare un nuovo file system:

  1. Per Google Cloud Hyperdisk, consulta Creare un nuovo volume Google Cloud Hyperdisk.

  2. Per Persistent Disk, consulta Creare un nuovo volume del disco permanente.

  3. Per le SSD locali, consulta Aggiungere un'unità SSD locale alla VM.

  4. Per i dischi RAM in memoria, consulta Creare dischi RAM in memoria.

Attivare e configurare il comportamento di memorizzazione nella cache

  1. Abilita e configura la memorizzazione nella cache dei file utilizzando il campo file-cache in una File di configurazione di Cloud Storage FUSE e specifica la directory della cache che desideri da utilizzare nel campo cache-dir. La cache dei file è disattivata per impostazione predefinita. Tieni presente che puoi attivare la memorizzazione nella cache dei file passando una directory al campocache-dir.

  2. (Facoltativo) Configura la memorizzazione nella cache delle statistiche e digita la memorizzazione nella cache utilizzando metadata-cache in un file di configurazione. Per scoprire di più sulle cache di tipo e di statistiche, consulta la Panoramica della memorizzazione nella cache dei tipi o la Panoramica della memorizzazione nella cache delle statistiche.

  3. (Facoltativo) Aumenta il TTL delle voci memorizzate nella cache impostando l'opzione ttl-secs su un valore basato sul tempo previsto tra le letture ripetute durante il bilanciamento le esigenze di coerenza. Ti consigliamo di impostare il valore ttl-secs su un valore alto così come ti consente il tuo carico di lavoro. Puoi configurare il TTL in una File di configurazione di Cloud Storage FUSE. Per ulteriori informazioni sull'impostazione un TTL per le voci memorizzate nella cache, consulta Durata.

    Ad esempio, il seguente file di configurazione consente la memorizzazione nella cache dei file, e digita la memorizzazione nella cache con un TTL di 3600 secondi e directory della cache impostata su /path/to/a/directory/. Tieni presente che max-size-mb è impostato su -1, che configura la cache dei file per utilizzare tutta la capacità disponibile.

    file-cache:
      max-size-mb: -1
      cache-file-for-range-read: false
    
    metadata-cache:
      stat-cache-max-size-mb: 32
      ttl-secs: 3600
      type-cache-max-size-mb: 4
    
    cache-dir: /path/to/a/directory
    
  4. (Facoltativo) Accelera le letture di file di grandi dimensioni, incluse le letture iniziali, attivando la proprietà enable-parallel-downloads che utilizza più worker per scaricare un file di grandi dimensioni in parallelo utilizzando la directory della cache dei file come buffer di prefetch. Per ulteriori informazioni sui download paralleli e su come per configurarne le proprietà di supporto, vedi Migliorare le prestazioni di lettura utilizzando i download paralleli.

  5. Esegui manualmente il comando ls -R sul bucket montato prima di eseguire carico di lavoro per precompilare i metadati per garantire che il tipo di cache venga completato in anticipo della prima lettura in un metodo batch più veloce. Per ulteriori informazioni su come migliorare il rendimento delle letture iniziali, consulta Migliorare le letture iniziali.

Scaricare più file in parallelo utilizzando i download paralleli

Puoi migliorare le prestazioni di lettura attivando e configurando la funzionalità di download parallelo, che utilizza più worker per scaricare un file in parallelo utilizzando la directory della cache dei file come buffer di prefetch. Ti consigliamo di utilizzare i download paralleli per gli scenari di lettura a thread singolo che per caricare file di grandi dimensioni, come la pubblicazione di modelli e i ripristini di checkpoint.

Prima di attivare i download paralleli, tieni presente quanto segue:

  • Se la tua applicazione esegue un parallelismo di lettura elevato su più di otto thread, potrebbe verificarsi un lieve peggioramento delle prestazioni.

  • Sconsigliamo di utilizzare i download paralleli per i carichi di lavoro di addestramento a causa del loro elevato parallelismo di lettura.

  • Per utilizzare i download paralleli, devi prima attivare e configurare la cache dei file.

  • Il file da leggere deve rientrare nelle directory della cache del file disponibili che può essere controllata utilizzando la proprietà max-size-mb.

Configurare i download paralleli

  1. In un file di configurazione di Cloud Storage FUSE, imposta la classe enable-parallel-downloads in true e, facoltativamente, configurarla le seguenti impostazioni di supporto:

    • parallel-downloads-per-file: il numero massimo di worker che è possibile generato per file per scaricare l'oggetto da Cloud Storage nella cache del file. Il valore predefinito è 16.

    • max-parallel-downloads: il numero massimo di worker che possono essere generati in un determinato momento in tutti i job di download dei file. La per impostazione predefinita è il doppio del numero di core della CPU sulla macchina. A non specificare alcun limite, inserisci il valore -1.

    • download-chunk-size-mb: le dimensioni di ogni richiesta di lettura in MiB che ogni il worker invia a Cloud Storage durante il download dell'oggetto nel file . La dimensione predefinita è 50 MiB. Tieni presente che un download parallelo viene attivato solo se il file in lettura ha le dimensioni specificate.

Passaggi successivi