2017-07-04 96 views
3

我需要在服務結構中的可靠字典中存儲大量數據。我們正在實施一個活動商店作爲一些可靠的字典,因此域發出的每個事件最終在商店。我想知道在以下兩個場景在性能上的差異:服務結構可靠集合性能

  • 使用一個(非常大的)可靠的字典來存儲所有的事件一定聚合類型:這導致少數字典,每片含數以百萬計的事件
  • 使用小可靠的字典存儲單個聚集實例的事件:這導致小字典的很多(認爲百萬)每個都包含幾個事件

在複製的光狀態和讀寫性能,最有效的方式是什麼?

回答

2

聽起來像你應該使用有狀態演員,你可以有數百萬演員持有數據。

如果您需要閱讀大量的總結(彙總)從所有參與者的信息,請參閱https://github.com/Azure-Samples/service-fabric-dotnet-data-aggregation/blob/master/README.md

這裏是我的想法,如果你想要去的狀態服務: 對於第一種情況下,你會必須使用分區,對於第二個應該建立多個數據服務,以便您的數據分佈在節點之間。

第二個場景的優點是可以更快地訪問其數據,但需要額外的目錄服務才能保存事件聚合的名稱,以便查找正確的目標字典。

這兩種情況下的複製不應該不同。