【问题标题】:How best to store a 512 bit Data object in MySQL如何最好地在 MySQL 中存储 512 位数据对象
【发布时间】:2011-07-05 20:56:45
【问题描述】:

我想在 mysql 中存储一个 512 位的数据。

我想知道将它存储为 char(64) 还是 8 列 bigint 或其他什么更好?

我的首要任务是最大限度地提高比较速度(我可以用较慢的更新、插入、删除来换取较快的比较速度)

(我知道简单地将其存储为 char(64) 可能会花费最少的开发时间,但是尽管这非常重要,但它目前在我的优先级集中排名最后)

【问题讨论】:

标签: mysql


【解决方案1】:

准备好你的反对票,我刚刚阅读了一些 Daily WTF,所以这将是一个有点疯狂的答案......

按你喜欢的方式存储 (char, bigints..) 并添加一个散列值 (md5? part of md5?) 值,然后在选择后过滤掉误报。

【讨论】:

  • 512位实际上是SHA-512哈希结果。
【解决方案2】:

你可能应该使用char;字符类型将编码规则应用于数据,这在数据为文本时非常有意义,但对于二进制数据则根本不起作用。你应该使用binary

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-22
    • 2010-10-01
    • 2019-09-15
    相关资源
    最近更新 更多