postgresql - 如何在 Postgres 中存储一个大数组?
问题描述
印度有大约 19100 个密码。对于一个应用程序,我想计算并存储任意两个密码之间的距离(这不是挑战,将使用谷歌地图 API 来找到它)。计算时大约有 1.82 亿条记录(使用了 n 个数字的总和公式)。
如何以易于检索和优化存储的方式存储这些数据?
我能想到的一个选择是将它存储为一个大约有 8500 列和 8500 行的表,但这对我来说似乎是错误的。我可以使用更好的方法或库吗?
我使用 python 和 postgresql。
解决方案
我将从保持超级简单开始,创建一个包含 start_pin、end_pin 和距离的表。在开始和结束处组合索引。
(如果存储我们一个大问题,可能通过使用 smallint 来表示每个 pin 码并将其存储在查找表中进行优化......但首先检查这是必要的)
推荐阅读
- c# - Protobuf-net 错误序列化枚举值的集合
- javascript - HTML/CSS JavaScript 中的水平菜单滚动条
- firebase - 无需部署云功能即可修改firestore数据的简便方法
- javascript - 离开或刷新页面时如何弹出自定义模态?
- ios - 按钮 onclick 适用于 android 但不适用于 ios
- javascript - 在不修改原始数组的情况下将数组复制和计算到另一个数组
- keyboard - AQTime 重新映射标准键盘快捷键?
- android - 在 Android Auto 中镜像现有的 android 应用程序
- java - 尝试从 Saucelabs 中的 android 模拟器调用 chrome 浏览器时无法创建新会话?
- elasticsearch - Python elasticsearch-dsl doctype 更新超时