gpt4 book ai didi

java - DB 机器 CPU 周期与中端机器 CPU 周期

转载 作者:行者123 更新时间:2023-12-02 00:48:54 25 4
gpt4 key购买 nike

我有一个带有大量 IF 条件的 SELECT 查询,我可以在查询本身中执行此操作(占用数据库计算机的 CPU),也可以将其放入我的 java 代码中(占用服务器计算机的 CPU)。

这里有没有任何首选方法(将条件放入中间层的数据库中)?

更新:我的查询是对 2 个以上表的联接,我使用左连接进行组合,有些行在第二个表中有相应的行,有些则没有。当第二个表中没有相应的行时,我需要为这些列设置一些默认值。

SElECT CASE WHEN t2.col1 is null
then 'default' else t2.col1
END
FROM table1 t1
LEFT JOIN table2 t2 ON t1.id = t2.id

最佳答案

如果数据库确实无法比应用程序服务器更快地完成某些操作,并且如果移动到应用程序服务器,这实际上会减少数据库服务器上的负载,那么我会将其移动到应用服务器。

原因:如果达到硬件限制,拥有多个应用服务器比拥有集群数据库容易得多。

但是,应该彻底测试上面的第二个条件:如果远离数据库,许多东西不会减少(甚至增加)数据库负载。

更新:对于你需要的那种东西,我怀疑第一个条件是否满足 - 你测试过吗?一个简单的 CASE 是完全没有意义的,除非条件或分支包含一些非常昂贵的计算。

关于java - DB 机器 CPU 周期与中端机器 CPU 周期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4021059/

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