Pergunta

Eu preciso armazenar um número muito grande (dezenas de milhões) de 512-bit SHA-2 hashes em uma tabela MySQL. Para economizar espaço, eu gostaria de armazená-los em forma binária, em vez de um feitiço String Um dígitos. Eu estou usando um ORM ( DBIx :: Class ) para que os detalhes específicos do armazenamento será captada a partir do código, que pode inflá-los a qualquer objeto ou estrutura que eu escolher.

tipo BIGINT do MySQL é 64 bits. Então eu poderia, teoricamente, dividir o hash-se entre oito colunas BIGINT. Isso parece bastante ridículo embora. Meu outro pensamento estava apenas usando uma única coluna BLOB, mas eu ouvi que eles podem ser lento para acesso devido a MySQL de tratá-los como campos de comprimento variável.

Se alguém pudesse oferecer algum widsom que vai me salvar algumas horas de análise comparativa de vários métodos, eu aprecio isso.

Nota: Automático -1 a quem diz "basta usar postgres!" :)

Foi útil?

Solução

Você considerou 'binário (64)'? Consulte MySQL binário tipo.

Outras dicas

Use o tipo BINÁRIO (64)?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top