gpt4 book ai didi

python - 将id值存储在字典中还是重新查询数据库是否更有效

转载 作者:行者123 更新时间:2023-11-29 16:31:26 25 4
gpt4 key购买 nike

我有一个脚本,可以重新填充大型数据库,并在需要时从其他表生成 id 值。

示例是仅在给出客户姓名时记录订单信息。我会检查客户是否存在于 CUSTOMER 表中。如果是这样,SELECT 查询以获取他的 ID 并插入新记录。否则,我将创建一个新的 CUSTOMER 条目并获取 Last_Insert_Id()

由于这些值重复很多,而且我并不总是需要生成新的 ID - 我最好存储 ID => CUSTOMER关系作为字典,在到达数据库之前进行检查,还是应该让脚本不断地重新查询数据库?我认为第一种方法是最好的方法,因为它减少了数据库的负载,但我担心 ID 字典会变得有多大及其影响。

该脚本与数据库在同一台机器上运行,因此网络延迟可以忽略不计。

最佳答案

“效率更高吗”?

嗯,字典将值存储在哈希表中。这对于查找值来说应该非常有效。

主要缺点是维护字典。如果您知道数据库不会更新,那么您可以加载它一次,并且应用程序内的内存操作可能比您使用数据库执行的任何操作都要快。

但是,如果数据正在变化,那么您就会面临真正的挑战。如何保持内存版本与数据库版本保持一致?这可能非常棘手。

我的建议是将工作保留在数据库中,使用字典键的索引。这对于您的应用程序来说应该足够快了。如果您需要进一步提高速度,那么使用字典是提高应用程序性能的一种可能性 - 但毫无疑问,这是众多可能性中的一种。

关于python - 将id值存储在字典中还是重新查询数据库是否更有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53842401/

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