Apache Arrow IPC (Colunar em Memoria)
Apache Arrow IPC e um formato de dados colunares em memoria concebido para transferencia de dados sem copia entre processos e linguagens de programacao. Permite troca de dados a velocidade zero-copy entre Python, R, Java e outras linguagens.
Tipo MIME
application/vnd.apache.arrow.file
Tipo
Binรกrio
Compressรฃo
Sem perdas
Vantagens
- + Zero-copy data sharing between languages and processes
- + Optimized for SIMD and vectorized computation
- + Standard memory layout for modern data tools (DuckDB, Polars, Pandas)
Desvantagens
- โ Not designed for persistent storage โ use Parquet for that
- โ Files are larger than compressed Parquet or CSV
- โ More complex than CSV for simple data exchange
Quando usar .ARROW
Use o Arrow IPC para transferencia de dados de alto desempenho entre processos, comunicacao entre linguagens e como formato intermediario em pipelines de dados.
Detalhes tรฉcnicos
O Arrow IPC utiliza o formato de serializacao Arrow Flatbuffers com schemas fortemente tipados. Suporta IPC de streaming (mensagens ilimitadas) e IPC de ficheiro (acesso aleatorio com rodape). Os dados sao alinhados a 64 bytes para operacoes SIMD.
Histรณrico
O Apache Arrow foi criado em 2016 por Wes McKinney (criador do pandas) e outros contribuidores. O formato IPC permite que os dados Arrow sejam persistidos em disco ou enviados entre processos sem serializacao.