首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Solr -有办法加快我的进口吗?

Solr -有办法加快我的进口吗?
EN

Stack Overflow用户
提问于 2013-06-27 07:01:48
回答 1查看 154关注 0票数 0

我有一个关系数据库模型--这是我的数据-config.xml的基础

代码语言:javascript
复制
<entity name="MyMainEntity" pk="pID" query="select ... from [dbo].[TableA] inner join TableB on ...">
    <entity name="Entity1" pk="Id1" query="SELECT [Text] Tag from [Table2] where ResourceId = '${MyMainEntity.pId}'"></entity>
            <entity name="Entity1" pk="Id2" query="SELECT [Text] Tag from [Table2] where ResourceId2 = '${MyMainEntity.pId}'"></entity>
    <entity name="LibraryItem" pk="ResourceId" 
            query="select SKU
                    FROM [TableB] 
                    INNER JOIN ...
                    ON ...
                    INNER JOIN ...
                    ON ...
                    WHERE ... AND ...'">
    </entity>
</entity>

这需要很长时间。

在第一个查询中获取10000行,然后再获取彼此的内部实体(每行约10行)。

如果我使用db分析器,我会看到三个内部实体的查询一遍又一遍地运行(3个select语句比3个select语句一遍又一遍)

这实在是没有效率。

进口时间可超过40小时()

现在,

我有什么办法让它跑得更快。

  1. 显然,可以选择将表平放到一个大表上--但这会产生许多其他副作用。我非常希望避免额外的工作,并在我的生产关系表上运行solr。 到目前为止,它的工作方式非常出色,如果有配置调整,我将在这里搜索。
  2. 如果我要平平- schema.xml也需要更改的行吗?或者相同的多值字段将继续被多值化。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-27 07:20:25

在不改变DB模式的情况下,首先要尝试的是缓存。如果内部实体缓存良好,收益将是可观的。

也许wiki并不是最新的,所以您应该检查jira问题,即solr-2382,也许还可以看看solr-2948

第二条路径可能是尝试多线程DIH,但它更棘手。在某种程度上,这是可选的,但后来被删除了,因为它是错误的,我认为现在有一些jira问题试图重新实现它,尝试查找它,但我建议先进行缓存。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17336613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档