0
我有一個關係數據庫模型 這是我的數據-config.xml中Solr的 - 有沒有一種方法,以加快我進口
<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個選擇句子而不是3個選擇句子)
這真的沒有效率。
並且進口可以運行40小時以上()
現在,
我有哪些選擇可以更快地運行它。
- 很明顯,有一個選項可以將表格平放在一張大桌子上 - 但這樣會產生很多其他副作用。我真的想避免額外的努力,並在我的生產關係表上運行solr。
到目前爲止,它開箱即用,我在這裏搜索是否有配置調整。 - 如果我將平整的行 - 是否需要更改schema.xml嗎?或多值化的相同字段將保持多值化。
謝謝。
如果它們是單個子實體,那麼如何在表中構建一個視圖而不是發射多個查詢?這要快得多 – Jayendra
生成一個視圖將迫使我生成另一個主鍵(因爲乘法),我想盡量避免它 – Jeb