ZSTD - Um algoritmo de compressão de dados rápido usado pelo Facebook
- 969
- 31
- Maurice Champlin
Zstandard (também conhecido como zstd) é um programa de compactação de dados em tempo real e de código aberto gratuito com melhores índices de compressão, desenvolvido por Facebook. É um algoritmo de compressão sem perdas escrito em C (há uma reimplementação em Java) - É assim um programa de Linux nativo.
Leia também: 10 7ZIP (Data Comperssion) Exemplos de comando no Linux
Quando necessário, ele pode negociar a velocidade de compressão por taxas de compressão mais fortes (velocidade de compressão vs troca de compressão pode ser configurada por pequenos incrementos), vice-versa. Possui um modo especial para pequena compactação de dados, conhecida como compactação de dicionário, e pode criar dicionários a partir de qualquer conjunto de amostras fornecido. Ele vem com um utilitário de linha de comando para criar e decodificar .zst, .gz, .xz e .LZ4 arquivos.
Importante, Zstandard Tem uma rica coleção de APIs, suporta quase todas as linguagens de programação populares, incluindo Python, Java, JavaScript, Nodejs, Perl, Ruby, C#, Go, Rust, Php, Switft e Loty More More.
É usado ativamente para comprimir grandes volumes de dados em vários formatos e casos de uso em Facebook; Serviços como Amazon Redshift armazenamento de dados; bancos de dados como Hadoop e Redis; a rede Tor e muitos outros aplicativos, incluindo jogos.
Os resultados a seguir são obtidos fazendo vários testes de algoritmos de compressão rápida em um servidor executando o Linux Debian usando o Lzbench, uma ferramenta de referência na memória de código aberto.
Teste de compressão de ZstandardComo instalar a ferramenta de compactação Zstandard no Linux
Para instalar Zstandard Em uma distribuição Linux, você precisa compilá -la de fontes, mas antes disso primeiro você precisa instalar as ferramentas de desenvolvimento necessárias em seu sistema usando seu gerenciador de pacotes de distribuição, conforme mostrado.
$ sudo apt update && sudo apt install build-essencial #ubuntu/debian #yum grupo instalação "desenvolvimento+
Depois de todas as ferramentas de desenvolvimento necessárias instaladas, agora você pode baixar o pacote de origem, mudar para o diretório de repositório local, construir o binário e instalá -lo como mostrado.
$ cd ~/downloads $ git clone https: // github.com/facebook/zstd.git $ cd zstd $ make $ sudo make install
Uma vez Zstandard instalado, agora podemos avançar ainda mais para aprender algum uso básico de Zstd Exemplos de comando na seção a seguir.
Aprenda 10 exemplos de uso do comando zstd no Linux
A sintaxe da linha de comando de Zstd é geralmente semelhante à de gzip e xz ferramentas, com algumas diferenças.
1. Para criar um .zst
arquivo de compactação, basta fornecer um nome de arquivo para comprimi -lo ou usar o -z
Flag também significa compactar, que é a ação padrão.
$ zstd etcher-1.3.1-x86_64.Appimage ou $ zstd -z etcher -1.3.1-x86_64.Appimage
2. Para descomprimir a .zst
arquivo de compressão, use o -d
bandeira ou o unzstd utilidade como mostrado.
$ zstd -d etcher -1.3.1-x86_64.Appimage.zst ou $ unzstd etcher-1.3.1-x86_64.Appimage.zst
3. Para remover o arquivo de origem após uma operação, por padrão, o arquivo de origem não é excluído após compressão ou descompressão bem -sucedida, para excluí -lo, use o --rm
opção.
$ ls etcher-1.3.1-x86_64.Appimage $ zstd-rm etcher-1.3.1-x86_64.Appimage $ ls etcher-1.3.1-x86_64.Appimage
4. Para definir um nível de compressão, o ZSTD possui vários modificadores de operação, por exemplo, você pode especificar um nível de compressão como -6
(Um número 1-19, o padrão é 3) como mostrado.
$ zstd -6 -rm etcher -1.3.1-x86_64.Appimage
5. Para definir uma velocidade de compressão, o ZSTD tem uma taxa de velocidade de compressão 1-10, A velocidade de compressão padrão é 1. Você pode negociar uma taxa de compressão para a velocidade de compressão com o --rápido
opção, quanto maior o número, mais rápida a velocidade de compressão.
$ ZSTD--Fast = 10 Etcher-1.3.1-x86_64.Appimage
6. Para exibir informações sobre um arquivo comprimido, use o -eu
Flag, que é usado para exibir informações sobre um arquivo compactado, por exemplo.
$ zstd -l etcher -1.3.1-x86_64.Appimage.zst
7. Para testar a integridade de arquivos compactados, use o -t
bandeira como mostrado.
$ zstd -t etcher -1.3.1-x86_64.Appimage.zst
8. Para ativar o modo detalhado, use o -v
opção.
$ zstd -v -5 etcher -1.3.1-x86_64.Appimage
9. Para usar outros formatos de compactação de arquivo ou descompressão, como GZIP, XZ, LZMA e LZ4, usando o --formato = formato
como mostrado.
$ zstd -v - -format = gzip etcher -1.3.1-x86_64.AppImage $ zstd -v - -format = xz etcher -1.3.1-x86_64.Appimage
10. Para definir uma prioridade do processo ZSTD para o tempo real, você pode usar a opção -prioridade = rt como mostrado.
$ zstd --priority = rt etcher-1.3.1-x86_64.Appimage
O -r
A bandeira instrui o ZSTD a operar recursivamente em dicionários. Você pode encontrar muitas opções úteis e avançadas, como ler ou criar dicionários consultando a página do Zstd Man.
$ MAN ZSTD
Repositório do Zstandard Github: https: // github.com/facebook/zstd
Zstandard é um algoritmo de compressão de dados sem perdas e em tempo real e sem perdas e uma ferramenta de compressão, que oferece altas taxas de compressão. Experimente e compartilhe seus pensamentos sobre isso ou faça perguntas através do formulário de feedback abaixo.
- « TIGER - A Ferramenta de Auditoria de Segurança e Detecção de Intrusão Unix
- Peixe - um shell interativo inteligente e fácil de usar para Linux »