Formato de Arquivos
Nesta página é destinada a compreensão do conceito de formato de arquivos
Atualizado
Isto foi útil?
Nesta página é destinada a compreensão do conceito de formato de arquivos
Atualizado
Isto foi útil?
Escrito por
Os formatos de arquivos são essenciais na área de dados, uma vez que, como existem diversos sistemas produtores de dados, precisamos nos adaptar a essa realidade. O formato de arquivo estará diretamente relacionado ao tipo de dado, conforme discutido no .
Vale salientar que os formatos de arquivos são divididos em dois subgrupos: abertos e proprietários.
Os arquivos de formato aberto são definidos como aqueles que podem ser usados, compartilhados e desenvolvidos livremente por qualquer pessoa, em qualquer lugar, para qualquer finalidade. Para isso, existem princípios fundamentais, como:
Liberdade: Os dados são livres para serem usados, compartilhados e desenvolvidos.
Disponibilidade: Os dados são acessíveis e podem ser baixados.
Esses tipos de arquivos seguem, basicamente, os mesmos princípios de projetos open-source, que são desenvolvidos com contribuição global de pessoas que se identificam com o projeto.
Os formatos mais comuns são: CSV, TXT, XML, JSON, ORC, Avro e Parquet.
Por outro lado, os formatos proprietários são aqueles que podem ser usados e compartilhados, mas são característicos de um sistema específico ou exigem uma licença, estando cobertos por uma patente ou direitos autorais(copyright).
Alguns exemplos de formatos proprietários incluem: XLS/XLSX (Excel), MDF/LDF (SQL Server), DBF/ORA (Oracle).
A seguir, são apresentados os principais tipos de formatos de arquivos abertos:
Esse tipo de arquivo possui uma estrutura simples e compacta, sendo ideal para volumes não tão grandes de dados. Geralmente, os dados são separados por vírgulas, embora outros delimitadores, como pipe (|) ou ponto e vírgula (;), possam ser usados. No entanto, esse tipo de arquivo pode ser ineficiente para processamento de dados em grande escala, devido à falta de metadados e ao problema de "small-files".
A extensão desses arquivos são .csv
Assim como o CSV, o arquivo de texto é simples e compacto, sendo ideal para volumes moderados de dados. No entanto, ele não possui uma definição clara quanto ao delimitador de colunas. Pode usar delimitadores como pipe (|), ponto e vírgula (;), vírgula (,) ou até mesmo tabulações (tab). Também não contém metadados e, assim como o CSV, pode ser ineficiente para grandes volumes de dados devido ao problema de "small-files".
A extensão desses arquivos são .txt
Esse formato é delimitado por tags e foi um dos pioneiros na interoperabilidade e comunicação entre sistemas. Ele possui uma estrutura dinâmica, permitindo a inferência de tipos de dados através das tags. Além disso, o XML é compreensível tanto por humanos quanto por máquinas.
A extensão desses arquivos são .xml
O JSON é um formato leve de intercâmbio de dados, similar ao XML, e possui uma estrutura bem definida. É fácil de ler e escrever tanto para humanos quanto para máquinas. O JSON pode ser utilizado em diversas linguagens de programação modernas, como Java e Python. Ele é construído com duas estruturas principais: uma coleção de pares nome/valor e uma lista ordenada de valores.
A extensão desses arquivos são .json
Esse tipo de arquivo é projetado para armazenar grandes volumes de dados de forma compactada. Desenvolvido em 2013, o ORC armazena dados em formato de colunas, otimizando a leitura e permitindo que apenas as colunas necessárias sejam recuperadas. O ORC inclui metadados, o que melhora o desempenho em operações de leitura seletiva.
A extensão desses arquivos são .orc
O formato Parquet é projetado para o armazenamento eficiente de grandes volumes de dados, especialmente em cenários de análise de dados. Assim como o ORC, ele organiza os dados em colunas, otimizando a leitura seletiva. Parquet também inclui metadados, permitindo compressão eficiente e maior desempenho nas operações analíticas.
A extensão desses arquivos são .parquet
O AVRO é outro formato direcionado para grandes volumes de dados, assim como o ORC e o Parquet. Ele serializa os dados em formato binário compacto e utiliza JSON para definir os esquemas de dados. É especialmente útil em ambientes de streaming e processamento distribuído, sendo eficiente tanto para armazenamento quanto para transmissão de dados.
A extensão desses arquivos são .avro
CSV - Comma-separated values
JSON - JavaScript Object Notation
ORC - Optimized Row Columnar
TXT - Text
XML - Extensible Markup Language