我希望为以下对象创建SQLite数据库的数据:
(ID_1, 0, 0)
(ID_2, 0, 0)
(ID_3, 1, 1)
(ID_1, 1, 1)
(ID_2, 1, 1)
(ID_3, 2, 2)
...
三个ID,然后是两个整数。可能重复多次的大约200M+ID,每个ID可能与1到>10,000,000个不同的两个整数对相关联。
我有两个操作要执行:
1.经常添加到这个数据库中。每隔几秒钟大约有1000个新的数据点(ID、第一个整数、第二个整数),这需要相当快地完成。
1.查找类似ID_1
的id,并获得与其关联的所有整数对的列表--在本例中为(0,0)和(1,1)。这是主要的查找操作,我希望它快一点。
我正在努力弄清楚一对多的关系。如何设计我的表以使这两个操作运行良好?
1条答案
按热度按时间j0pj023g1#
我很想帮你,但我不确定你有没有试过什么。对于像您这样的简单问题(这里唯一的问题是大小,而不是复杂性),您只需要一个表和一个索引
我创建了一个类似上面的数据库,并使用随机int为
pair1
和pair2
插入了13M行。选择随机ID只需要几毫秒,这就满足了您的标准:非常快祝好运