2012-06-26 107 views
9

是否有一個公式/估計/感覺,根據文檔種類數量,每個文檔的字段數量以及它們之間的關係數量,向我們展示RavenDB數據庫中索引的最佳數量?RavenDB中索引過多

其他注意事項:

據我瞭解(1)我們查詢索引在RavenDB,沒有文件和(二)指標都像物化視圖,這樣他們就可以多少錢。我需要知道有多少索引會損害RavenDB在更新它們的性能,並使延遲太大而無法忽略?

由於Raven/MaxNumberOfParallelIndexTasks設置爲當前機器中的處理器數量,那麼是否意味着其他索引的索引處理會阻塞,直到當前的索引任務結束?或者他們是部分更新,會反覆運行?

+0

這是一個有趣的問題。不知道我們會看到一個具體的答案,除非創作者進來,但值得+1 –

+1

@marc_s感謝您的編輯。 –

+0

@nathan gonzalez我期待着它! –

回答

3

Kaveh, 一般來說,我們更喜歡較少數量的索引,因爲索引確實具有與它們相關的不重要的成本。 也就是說,他們不花費much,尤其是因爲它們是在後臺構建的。

我們有很多用幾十個索引運行的客戶,我們有幾個運行幾百個索引的客戶。

MaxNumberOfParallelIndexTasks控制我們並行更新多少個索引,但它如何以及爲什麼會起作用是一個複雜的解釋。 從您的角度來看,它並不適用,因爲與MaxNumberOfParallelIndexTasks一起,我們還考慮了當前系統負載,IO成本等。 在大量索引中,有些索引會等待其他構建,是的,但這受到一系列限制,並且您不可能在真實世界的情況下將此視爲問題。