Format Atlas

Confronta

Differenze tra Arrow e Zarr

Apache Arrow specifica un formato colonnare in memoria indipendente dal linguaggio e la serializzazione per lo scambio di dati. Zarr archivia array N-dimensionali in blocchi con metadati.

Quale formato scegliere?

Scegli Arrow per passare dati tabellari in memoria tra processi analitici, anche senza copia se supportato. Valuta Zarr per mantenere grandi array e leggere solo i blocchi necessari. Arrow IPC e formato memoria Arrow sono concetti correlati ma distinti.

Adatto per Apache Arrow IPC

Scambiare dati tabellari colonnari tra programmi e linguaggi compatibili · Trasferire insiemi di dati analitici tra strumenti compatibili con Arrow

  • Spostare dati tipizzati tra librerie Arrow e motori analitici
  • Accedere in modo casuale ai record batch nel formato file IPC

Adatto per Zarr

Memorizzare e scambiare grandi array multidimensionali a blocchi · Usare dati scientifici nell’object storage cloud

  • Leggere in modo efficiente regioni selezionate di array
  • Condividere dati suddivisi tra strumenti compatibili

Informazioni di base

VoceApache Arrow IPCZarr
Estensione.arrow, .feather, .arrows.zarr
Tipo MIMEapplication/vnd.apache.arrow.file, application/vnd.apache.arrow.stream
Usi comuniScambiare dati tabellari colonnari tra programmi e linguaggi compatibili · Trasferire insiemi di dati analitici tra strumenti compatibili con ArrowMemorizzare e scambiare grandi array multidimensionali a blocchi · Usare dati scientifici nell’object storage cloud
Come aprireLeggi il file con una libreria Apache Arrow o uno strumento analitico compatibile con Arrow IPC. .arrow indica di solito il formato file e .arrows il formato stream, ma verifica la modalità IPC attesa dallo strumento ricevente e i codec supportati. Per i file Feather controlla anche la compatibilità con il precedente Feather V1.Usa una libreria o uno strumento compatibile con Zarr. Controlla versione, forma, griglia dei blocchi, codec e attributi. Conserva l’intera directory o le chiavi richieste e consulta la documentazione del creatore.
Esportare o convertireParquet può essere adatto all’archiviazione e distribuzione di dati analitici; CSV al semplice scambio di tabelle. La conversione può modificare o eliminare tipi specifici di Arrow, strutture annidate, codifica a dizionario o impostazioni di compressione. Verifica i tipi e la precisione necessari e conserva i dati sorgente.Convertendo da netCDF o HDF5, verifica dimensioni, tipi, blocchi, attributi e coordinate. Conserva l’originale e convalida i valori dopo la conversione.

Scegli in base all'uso

Spostare dati tipizzati tra librerie Arrow e motori analitici

Scambiare dati tabellari colonnari tra programmi e linguaggi compatibili · Trasferire insiemi di dati analitici tra strumenti compatibili con Arrow

Apache Arrow IPC

Accedere in modo casuale ai record batch nel formato file IPC

Scambiare dati tabellari colonnari tra programmi e linguaggi compatibili · Trasferire insiemi di dati analitici tra strumenti compatibili con Arrow

Apache Arrow IPC

Leggere in modo efficiente regioni selezionate di array

Memorizzare e scambiare grandi array multidimensionali a blocchi · Usare dati scientifici nell’object storage cloud

Zarr

Condividere dati suddivisi tra strumenti compatibili

Memorizzare e scambiare grandi array multidimensionali a blocchi · Usare dati scientifici nell’object storage cloud

Zarr

Punto chiave 1

Arrow definisce layout colonnari in memoria e serializzazione o trasporto; Zarr definisce nodi di array, forma, tipo, griglia, codec, metadati e archiviazione dei blocchi.

Approfondisci le differenze

Punto chiave 2

Arrow usa buffer e array figli adatti alla condivisione della memoria; Zarr salva blocchi codificati indipendentemente per accesso parziale.

Approfondisci le differenze

Approfondisci le differenze

Usa Arrow per lo scambio colonnare in memoria e flussi IPC compatibili. Usa Zarr per array persistenti a blocchi. Scegli esplicitamente il contenitore persistente e verifica tipi, timestamp, dimensioni e modalità di accesso.

  • Arrow riguarda principalmente rappresentazione in memoria e serializzazione; Zarr descrive metadati di array e blocchi memorizzati separatamente.
  • Gli array Arrow usano buffer e array figli annidati; i blocchi Zarr si codificano e leggono separatamente.
  • Per persistenza o conversione specifica Arrow IPC o un altro formato file e controlla tipi, null, unità e fusi orari dei timestamp, forma e significato degli assi, codec e accesso ai blocchi.

Domande frequenti

Un array Arrow è di per sé un archivio persistente come Zarr?

No. Arrow riguarda memoria e serializzazione e richiede un contenitore IPC o altro per persistere; Zarr archivia blocchi e metadati in uno store.

Scopri di più

Riferimenti e specifiche