- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 Hibernate 域对象,它由应用程序的不同部分加载。有时,延迟加载每个关联是有利的,而其他关联则最好在一个连接中加载整个事物。作为一个希望令人满意的妥协,我发现:
使用批量获取,如果访问一个代理,Hibernate 可以加载多个未初始化的代理。批量抓取是惰性选择抓取策略的优化。
hibernate.default_batch_fetch_size
:
Using batch fetching, Hibernate can load several uninitialized proxies if one proxy is accessed. Batch fetching is an optimization of the lazy select fetching strategy.
我还看到:
hibernate.jdbc.fetch_size
:
A non-zero value determines the JDBC fetch size (calls Statement.setFetchSize()).
Hibernate 是否足够智能,可以在批量获取时查看二级缓存?即,对关联的初始调用进行一次提取,然后接下来的 X 个调用会命中缓存吗?这样我就可以实现我想要的延迟加载,而且还可以经常访问缓存以进行更多类似批量的事务。
如果集合的全部内容已经包含在缓存中,它仍然会在访问集合时执行获取查询吗?
谢谢。
最佳答案
我今天做了很多研究,并找到了对我自己的问题的答案。我查看了 Hibernate 代码,流程如下所示:
集合是否已初始化?
因此,如果在缓存中找到您要查找的集合中的项目,则不会发生批量提取。如果在二级缓存中没有找到该项目,则会进行批量提取,但无论批量项目是否在缓存中,它都会提取批量项目。
<小时/>----- 示例 1 -----
优点:
(集合中的三项 - 批量大小为 3)第一个:
现在,在其他地方,稍后:
----- 示例 2 -----
坏处:
(集合中的三项 - 批量大小为 3)
在这种情况下,索引 0 处的项目已从缓存中删除,因为可能缓存已满并且该项目已被删除,或者该项目已过时或空闲。
因此,这里的权衡是,由于批处理,您的 SQL 调用会减少,但您会更频繁地丢失缓存。有一个打开的票证,可以在二级缓存中进行批处理,然后再将其发送到数据库。
http://opensource.atlassian.com/projects/hibernate/browse/HHH-1775
投票吧!
关于 hibernate :batch_size?二级缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1329555/
我有形状为 (batch_size, 200, 256) 的 LSTM 层的输出,其中 200 是标记序列的长度,256 是 LSTM 输出维度。我还有另一个形状为 (batch_size) 的张量,
尝试在 MNIST 数据集上运行 CNN 示例,批量大小 = 64, channel = 1,n_h = 28,n_w = 28,n_iters = 1000。程序运行前 500 次交互,然后出现上述
尝试在 MNIST 数据集上运行 CNN 示例,批量大小 = 64, channel = 1,n_h = 28,n_w = 28,n_iters = 1000。程序运行前 500 次交互,然后出现上述
自十一月以来,我一直在自学这一点,对此的任何帮助将非常感激,感谢您的关注,因为我似乎在兜圈子。我正在尝试使用与 Mnist 数据集一起使用的 Pytorch CNN 示例。现在我正在尝试修改CNN以进
我正在 Pytorch 中构建一个神经网络,它应该对 102 个类进行分类。 我有以下验证函数: def validation(model, testloader, criterion): t
我有一个可以放入主机内存的大型数据集。但是,当我使用 tf.keras 训练模型时,它会产生 GPU 内存不足问题。然后我查看 tf.data.Dataset 并希望使用它的 batch() 方法来批
我有一个 Hibernate 域对象,它由应用程序的不同部分加载。有时,延迟加载每个关联是有利的,而其他关联则最好在一个连接中加载整个事物。作为一个希望令人满意的妥协,我发现: 使用批量获取,如果访问
作为这个问题的后续: Concatenate input with constant vector in keras 我正在尝试使用建议的解决方案: constant=K.variable(np.on
我是 tensorflow 的新手,我试图了解什么大小应该是 batch。 我的数据形状 (119396, 12955)。如何为我的数据选择最佳 batch_size?batch_size 与数据形状
嗨,我不了解 keras fit_generator 文档。 我希望我的困惑是理性的。 有一个batch_size还有分批训练的概念。使用 model_fit() ,我指定一个 batch_size
我将 adonet.batch_size 设置为 10,但是当我对对象图进行保存时,它会将对象及其所有子对象保存在单独的数据库调用中。 我可以使用 NHProf 工具看到这一点。 -- stateme
我正在使用 Keras(使用 Python 3.6)来预测数组 (x_test) 的输出,但我得到了一个 TypeError 作为返回。 这是我的预测代码: x_test = [[8],[6],[0]
我有一个目前在 tensorflow 中实现的神经网络,但我在训练后进行预测时遇到问题,因为我有一个 conv2d_transpose 操作,并且这些操作的形状取决于批量大小。我有一个层需要 outp
假设我在 Pytorch 中有一个 CNN 模型和以下大小的 2 个输入: 输入_1: [2, 1, 28, 28] 输入_2: [10, 1, 28, 28] 备注 : 重申一下,input_1 是
对于我的论文,我目前正在研究Elasticsearch和MongoDB的速度(低至毫秒)。 我注意到,与MongoDB相比,Elasticsearch在返回数据的速度和找到的总项目数方面非常一致。在其
如hibernate documentation表示在进行批量插入/更新时,当对象数量等于 jdbc 批量大小(hibernate.jdbc.batch_size)时,应刷新并清除 session 。
是否可以在Grails hibernate插件中覆盖hibernate.jdbc.batch_size? (Grails 2.4.x /休眠3) 如果是,怎么办? 最佳答案 如果查看documenta
有没有办法打印配置sessionFactory的 hibernate 属性时设置的batch_size?例如,在我的代码中我可以说:sessionFactory.getCurrentSession()
我有一个名为 tensor 的 rank-3 张量,形状为 [batch_size, axis_1, axis_2] 并想将其拆分为 batch_size 切片像这样沿着第一个轴: batch_siz
我正在运行 LSTM 代码,我想将其设为双向 LSTM。我该怎么办? 我正在使用 https://github.com/brunnergino/JamBot.git 中的代码。名为polyphonic
我是一名优秀的程序员,十分优秀!