0

我有 3 亿条联系人详细信息记录。我打算将这些数据存储在 MySQL 数据库中。我将开发一个接受手机号码并显示与此手机号码匹配的人的详细信息的 Android 应用程序。如果我将整个数据存储在单个表中,仅在手机号码字段上建立索引就足够了吗?或者根据手机号码将数据拆分为多个表会更好吗?我正在考虑将数据拆分为多个表:


Table1 将包含手机号码以 91 开头的

记录 Table2 将包含手机号码以 92 开头的

记录 Table3 将包含手机号码以 93 开头的记录

.
.

如此等等。
我这样想是因为我们可以减少近 70% 以上的比较。
请就此提出宝贵意见和建议。提前致谢。

4

2 回答 2

0

似乎用关键字创建单独的表会很有效。此外,您可以参考此线程以获取详细信息,

搜索拥有超过 10 亿条记录的数据库的最有效方法是什么?

于 2013-10-22T12:12:23.620 回答
0

300 M 的记录 - 可以和平地存在于 1 个表中。在计划拆分数据之前 - 在您的硬件上尝试并检查结果。如果 1 个表的性能不足 - 您也可以尝试在 mysql Db 内部进行“分区”,这将简化您的应用程序并为您提供单独表的性能。

于 2013-10-22T12:53:27.543 回答