- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在编写一些代码,必须级联删除某个数据库中的记录,我注意到性能下降,因为数据库中有更多记录。当我刚填充数据库时,填充开始和填充结束之间的性能似乎没有大的下降,但是当我执行级联删除时,性能会随着数据库的增大而下降。我假设它需要为级联进行大量连接才能找到其他表中的所有相关记录,这会导致它在更大的数据集上变慢。但是当我只添加一条记录时,它是否还必须测试已经存在的主键和其他唯一约束,并且在更大的数据集中这也不会更慢,或者与删除过程相比速度如此之快在填充数据库时很难注意到性能下降?还是级联速度很慢,因为我没有专门为它级联到的表编制索引?
那么其次,如果这些表已经有一个生成的 id 作为主键,是否会索引它级联的表以加速级联?从更一般的意义上讲:主键是否自动编入索引?
最佳答案
I'm assuming that it would need to make a lot of joins for the cascade to find all the related records in other tables, which causes it to slow down on bigger datasets.
不要假设。打开 Hibernate 的日志记录(特别是 org.hibernate.SQL
的记录器)以查看 确切 Hibernate 执行了哪些 SQL 语句。然后根据事实而不是假设做出决定并采取行动。
In a more general sense: are primary keys automatically indexed?
是的。
关于java - 级联删除在更大数据集上的性能下降,这可能是由于缺乏索引造成的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4070226/
我不明白为什么我的 Java 代码没有出现错误。我有一个使用泛型类型的类: import java.util.*; // For ArrayList public class Hat { pub
我正在 Pygame 中开发一款射击类游戏供我自己娱乐,在创建玩家的基本 Action 的过程中我遇到了一些疑问,“Dash”和“Switch”均未按预期工作。 ... def switch(self
当我加载一个显示的网页时,为什么我要为每个图像的 HTTP 请求打开一个新的 TCP 连接?为什么在页面加载期间不重复使用单个 TCP 连接? 最佳答案 我认为浏览器通常会打开多个连接,以便它可以并行
我一直在谷歌搜索,只能找到 a trivial example Compute Capability 3.0 中的新动态并行性在其链接的其中一份技术简报中介绍 from here .我知道 HPC 专
我使用 Telerik 和 Microsoft CDN,分别用于它们各自的 AJAX 工具包。两者在 99% 的情况下都工作得很好。然而,我最近在两家不同的咖啡馆工作并访问了我的网站:第一家咖啡馆不允
我在一家从事网络托管的 IT 公司工作,而且我个人对 SQL 非常缺乏经验*。 *看起来很糟糕 我的一个客户正在尝试将 Epos 系统与其 magento 网站集成,在 Epos 集成过程中,他们遇到
我的代码现在有一个循环,它调用蒙特卡洛函数来计算多个样本的简单积分(y=x,从 0 到 1),并将总时间和积分值写入文本文件。然后循环增加线程数并继续前进。现在大约有 8 个线程,时间峰值约为 2.6
所以 HTTP/2 增加了我想要利用的性能。出于各种原因,我不喜欢连接我的 javascript,而 HTTP/2 无论如何都会使它变得不必要。 但是。我正在开发一个将部署在客户本地网络中的网络应用程
我写了一个非常简单的 Haskell 程序: main = print $ sum $ map read ["55", "99", "101"] 鉴于我过去的经验,我预计会得到一个“歧义类型”错误,因
我是一名优秀的程序员,十分优秀!