gpt4 book ai didi

mysql - 存储美国电话号码的最佳方式 (NANP)

转载 作者:行者123 更新时间:2023-11-30 22:44:46 25 4
gpt4 key购买 nike

我有存储 NANP(北美编号计划)号码的要求。这意味着我不在乎也不需要为国际号码操心。

编号计划是这样的:NPA-NXX-XXXX

我会过滤并去除多余的空格或破折号 (-) 以生成 10 位数字的正确格式。目前我们将 MySQL 和 CouchDB 用于其他一些东西,但更愿意将 MySQL DB 作为首选存储系统。我正在寻找快速读取操作以在运行时匹配数字,并且写入可能会有点慢,因为大多数插入/更新将在下类时间发生。

既然 NPA 和 NXX 永远不会以 0 开头,那么如果我们可以分开它们可以用作整数类型以备不时之需。

对于NoSQL的情况,可以为每个区号生成单独的文档,然后进一步隔离NXX & XXXX。对于 RDBMS 情况,可以将完整数字存储为索引整数,以便快速访问。

存储这些数字的最佳数据库设计是什么?

提前致谢。

最佳答案

I'm looking for fast read operation to match numbers during runtime

使用 CouchDB,您可以将每个数字存储为文档的 ID,例如

{
_id: "NPA-NXX-XXXX",
_rev: "1-..."
}

要匹配任何你发送轻量级的数字

HEAD path/to/CouchDB/dbname/NPA-NXX-XXXX

它会返回状态码 200(已匹配)或 404(不匹配)。

写操作可以大批量完成(/dbname/_bulk_docs)。

因为数字存储为 id,CouchDB 的主索引可用于 HEAD 请求(如上所述)——这意味着每次写入都立即可用于读取。

关于mysql - 存储美国电话号码的最佳方式 (NANP),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29949846/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com