2016-05-18 148 views
0

以下聲明表明,Azure僅在緩存端點上提供SLA,而不在數據上提供SLA。Azure Redis緩存中的數據丟失

SLA僅涵蓋與Cache端點的連接。 SLA不包括數據丟失保護。

我的問題是,在數據丟失的情況下,所有的數據都會從我的實例中丟失。或者部分數據丟失也是可能的。例如,如果我有2K個鍵值對,是否有可能丟失了一半的鍵值對。

爲什麼我很好奇,因爲在一個應用程序中,我存儲了一些處理結果(可以使用sql中存儲的數據構建)。但是這種數據處理非常耗時。現在如果發生數據丟失,我將不得不再次構建這個緩存​​。如果我可以確定每當數據丟失時,我的所有鍵值對都將消失,我可以再次從頭開始運行此過程。

如果部分丟失是可能的,那麼當訪問單個鍵值對時,如果我沒有在緩存中找到它,我將不得不構建這個鍵值對。

回答

1

聽起來好像Redis不適合您的場景,如果您更關心數據丟失而不是性能/共享狀態。說了這些之後,您總是可以看到data persistence for Redis,但這需要使用Azure中的Premium級別。

+0

感謝Simon快速回復!我的緩存數據是增量式的。我需要非常頻繁地更新這些數據。 'Redis持久'對我無用,因爲我輸不起15分鐘。數據的。 – Pragmatic

+0

鑑於此解決方案的RPO,您可能希望查看使用Azure SQL數據庫和活動地理複製(它具有您需要的大球場中的RPO)。 https://azure.microsoft.com/en-us/documentation/articles/sql-database-business-continuity/ –

+0

西蒙,當我說我不能失去15分鐘。的數據我的意思是,我不能處理陳舊的數據,但我可以肯定再次處理它(因爲我已經在我的SQL中有所有輸入)並開始工作。但問題是,我是否必須再次處理所有事情(如果完整實例丟失數據),或者數據可能丟失是零碎的,我可以將它重建爲單個鍵值對。 – Pragmatic