2017-07-13 25 views
3

我正在尋找EvenStalk和CQRS系統的EventStore,我正在考慮在neares的未來發展。我已經開始熟悉CockroachDB並且對可擴展性印象深刻,同時擁有所有保證,這對於Event Store和查詢來說都很好。CockroachDB作爲Eventstore一個好主意?

我在想這裏,我想事件的一(?)表。一些外觀類似這樣:

表中的列

  • AggregateId [的Guid]
  • 數據[斑點]
  • 的SequenceNumber [龍]
  • 版本[INT]

所以我有兩個問題:

  1. CockroachDB是一個很好的選擇嗎?
  2. 它是否符合我在這種情況下的表現和規模擴張。例如,隨着時間的推移,它會隨着數據的增加而按預期擴展,並且會讀取更多的流量/操作數據
+0

看看我的回答可以是有用的:https://stackoverflow.com/questions/43408599 /選擇-a-nosql-database-for-stored-events-in-a-cqrs-designed-application/43409269#43409269 –

+0

你問它是否會匹配你的表現和規模extentations,但你還沒有說過它們是什麼。 –

+0

@MichalBorowiecki - 基本上,蟑螂數據庫表明一個非常好的縮放屬性,並且增加的節點的數量是平均數。所以基本上我問一個大事件表是否會破壞CockroachDB的假設。 – aholbreich

回答

1

Cockroachdb是一個很好的選擇作爲事件存儲。有一點需要注意的是你如何選擇主鍵。例如,如果使用時間戳作爲主鍵,則會看到所有寫入命中同一個節點,因此最好選擇一個密鑰,以便在時間上接近完成的寫入均勻分佈在所有節點上。選擇一個隨機數作爲eventID並將其用作關鍵字將起作用。

CockroachDB不一樣的,但(即將推出)支持通知上更改數據庫中使用它時,作爲事件存儲

+0

非常感謝您使用PrimaryKey提示!是的,如果通知不是內置的,我需要自己做。但是他們比我更快到達;) – aholbreich

相關問題