# Linhagem de codificação binária de KV-stores: RDB, SSTable, LevelDB, RocksDB, Memcached

Decodifica forensemente artefatos binários de armazéns chave-valor byte a byte: instantâneos RDB do Redis, registros WAL do LevelDB/RocksDB, footers de SSTable, pacotes binários do Memcached e cabeçalhos de página do BoltDB e LMDB — com diff hexadecimal do keyspace e matriz de expiração TTL.

> Página canônica: https://elysiatools.com/pt/tools/rdb-sstable-leveldb-rocksdb-memcached-binary-key-value-store-encoding-lineage

- **Categoria:** Converter

- **Palavras-chave:** decodificador redis rdb, footer sstable rocksdb, formato log leveldb, protocolo binário memcached, forense kv store, crc64, decodificador listpack, página boltdb, cabeçalho lmdb

## Visão geral

Um decodificador forense das codificações binárias da família de KV-stores.

Artefatos suportados e o que é expandido:

· Redis RDB — magic "REDIS" + versão ASCII, campos AUX (opcode 0xFA), SELECTDB (0xFE), RESIZEDB (0xFB), opcodes de expiração FD/FC, todos os tipos de valor, de strings simples (int8/16/32 e comprimidas com LZF) a list, set, zset (scores ASCII e double binário), hash, zipmap, ziplist, intset, quicklist v1 e v2, listpack hash/zset/set (tipos 16/17/18/20), com verificação do trailer CRC-64 Jones.
· WAL LevelDB / RocksDB — blocos de 32 KiB, cabeçalhos de registro de 7 bytes (CRC32C mascarado, comprimento u16, tipos FULL/FIRST/MIDDLE/LAST), trailers de zeros.
· SSTable LevelDB / RocksDB — footer legado de 48 bytes (BlockHandles metaindex/index em varint64 preenchidos até 40 bytes + magic little-endian 0xdb4775248b80fb57 / 0x88e241b785f4cff7), compressão por prefixo com pontos de reinício.
· Protocolo binário Memcached — cabeçalho de 24 bytes (magic 0x80/0x81, opcode, divisão key/extras/value, vbucket ou status, opaque, CAS), extras por opcode como flags + expiração.
· BoltDB — cabeçalho de página de 16 bytes e magic de meta página 0xed0cdaed; LMDB — flags do cabeçalho MDB_page (o formato é famoso por não ter número mágico).

Cole um segundo instantâneo RDB para obter um diff do keyspace (chaves adicionadas/removidas/alteradas/com TTL deslocado) e uma matriz de expiração TTL avaliada no tempo de referência escolhido.

O caminho RDB é verificado contra dumps reais do redis-server 7.2.4; tipos de valor de módulos e streams (6/7/15/19/21) são relatados mas não expandidos.

## Entradas

- **Instantâneo binário A (bytes hex)** (textarea): e.g. 52 45 44 49 53 30 30 31 31 … (REDIS0011…), or 80 00 00 05 … for a memcached packet
- **Formato** (select)
- **Instantâneo binário B (hex, base de diff opcional)** (textarea): Paste a second RDB snapshot here to get a keyspace diff + TTL drift matrix
- **Tempo de referência para a matriz TTL (segundos Unix)** (number): 1790000000

## Quando usar

- Ao inspecionar e validar a integridade de arquivos de dump RDB ou blocos WAL sem precisar inicializar o servidor de banco de dados.
- Ao depurar problemas de serialização ou corrupção de dados em nível de byte em sistemas de armazenamento baseados em SSTable, BoltDB ou LMDB.
- Ao auditar o tráfego de rede binário do Memcached ou comparar a evolução de keyspaces entre dois backups RDB do Redis.

## Como funciona

- Cole o dump binário em formato hexadecimal no campo principal e selecione o formato do artefato ou mantenha a detecção automática.
- O analisador processa a assinatura de bytes mágicos, disseca cabeçalhos, opcodes e contêineres internos (como listpack, quicklist e intset) e valida as somas de verificação (CRC-64 Jones ou CRC32C).
- Opcionalmente, forneça um segundo dump hexadecimal RDB e um timestamp Unix de referência para gerar a matriz de expiração de TTL e a árvore de diferenças de chaves.

## Casos de uso

- Auditoria forense e validação de consistência de backups RDB antes de processos de restauração.
- Diagnóstico de falhas de comunicação e validação de opcodes e status em tráfego do protocolo binário Memcached.
- Análise de layout de armazenamento e conferência de BlockHandles em footers de SSTable para otimização de storage engines.

## Perguntas frequentes

### Quais formatos de banco chave-valor são suportados?

Suporta dumps RDB do Redis, logs WAL e footers de SSTable do LevelDB/RocksDB, pacotes binários Memcached e cabeçalhos de página BoltDB e LMDB.

### O decodificador valida a integridade dos dados via checksum?

Sim, ele verifica somas de verificação como CRC-64 Jones em arquivos RDB e CRC32C mascarado em registros WAL.

### Quais tipos de estruturas complexas do Redis são expandidos?

Expande strings (incluindo compressão LZF), hash, set, zset, quicklist v1/v2, ziplist, intset e listpack (hash, zset e set).

### Como funciona a comparação de chaves (keyspace diff)?

Ao fornecer dois dumps RDB (A e B), o sistema compara o keyspace e lista chaves adicionadas, removidas, modificadas e com TTL deslocado.

### Tipos de dados de Redis Streams e Módulos são totalmente expandidos?

Os tipos de dados de módulos e streams (opcodes 6, 7, 15, 19 e 21) são identificados no relatório, mas seus conteúdos internos não são expandidos.

## Ferramentas relacionadas

- [Desofuscador JavaScript](https://elysiatools.com/pt/tools/javascript-deobfuscator): Desofusca e analisa código JavaScript ofuscado para melhorar legibilidade e compreensão
- [Avaliador de poda Parquet por filtros bloom, mapas de zonas, dicionários e estatísticas de colunas](https://elysiatools.com/pt/tools/parquet-bloom-filter-zonemap-dictionary-and-column-statistics-pruner-evaluator): Decodifica o footer thrift do Parquet e quantifica a poda por predicate pushdown: min/max dos mapas de zonas, filtros bloom split-block (XXH64), razões de dicionário e codificações, com estimativas de economia por grupo de linhas para cláusulas WHERE de exemplo.
- [Decodificador LTSSM e Lane Margining PCIe](https://elysiatools.com/pt/tools/pcie-link-training-linkstate-and-lane-margining-eye-decode): Decodifica um log de treinamento de link PCIe (sequência LTSSM + conjuntos TS1/TS2): linha do tempo Gen1-Gen6, velocidade/largura negociadas, bits do identificador de taxa, inversão de polaridade/lanes, fases de equalização e diagnóstico de reinícios; avalia relatórios de lane margining (CSV pcilmr) e desenha o mapa de calor do olho.
- [Formatador e minificador de SQL](https://elysiatools.com/pt/tools/sql-query-formatter): Embeleza ou minifica SQL com controle total do dialeto (PostgreSQL, MySQL, SQLite, SQL Server/T-SQL, BigQuery, Snowflake etc.), caixa de palavras-chave/identificadores/funções, estilo de recuo (padrão, tabular esquerda/direita) e linhas entre instruções. Produz um resultado realçado e pronto para copiar com estatísticas de tamanho e instruções.
- [Conversor TIFF para PDF](https://elysiatools.com/pt/tools/tiff-to-pdf): Converter imagens TIFF para formato PDF com tamanho de página, orientação e configurações de compressão personalizáveis
- [Gerador moderno de IDs únicos](https://elysiatools.com/pt/tools/uid-generator): Gera identificadores modernos: ULID, NanoID, Snowflake e CUID2. Compare formatos e decodifique o timestamp do ULID.
- [Decodificador de certificados X.509](https://elysiatools.com/pt/tools/certificate-decoder): Analisa um certificado X.509 SSL/TLS (colar PEM ou enviar .pem/.crt) e inspeciona sujeito, emissor, período de validade com status de expiração, chave pública, algoritmo de assinatura, série, SAN, uso de chave e impressão digital. Como openssl x509 -text, visualizado. Local.
- [Conversor AVIF para TIFF](https://elysiatools.com/pt/tools/avif-to-tiff): Converter imagens AVIF para formato TIFF com qualidade sem perda, opções de compressão e fluxos de trabalho profissionais

## Exemplos

- [Amostras de Conversor Hex/Unicode](https://elysiatools.com/pt/samples/text-hex-unicode-formats): Amostras de teste para conversão de sequências de escape hex e unicode
- [Exemplos de Processamento de Imagem Android Java](https://elysiatools.com/pt/samples/android-image-processing-java): Exemplos de processamento de imagem Android Java incluindo leitura/escrita, dimensionamento e conversão de formato
- [Exemplos de Processamento de Imagem Android Kotlin](https://elysiatools.com/pt/samples/android-image-processing-kotlin): Exemplos de processamento de imagem Android Kotlin incluindo leitura/escrita, dimensionamento e conversão de formato
- [Exemplos de Processamento de Imagem Web Python](https://elysiatools.com/pt/samples/web-image-processing-python): Exemplos de processamento de imagem Web Python usando PIL/Pillow incluindo leitura, salvamento, redimensionamento e conversão de formato
