0

For compliance reasons, I need to capture all database changes. I know that Change Feed stores this information (and I'm waiting for full fidelity to capture deletes). Currently, I've been reading from Change Feed via a Function trigger and copying the changes into an Azure Table.

Is this overkill? Does Change Feed maintain all activity logs as long as the Cosmos database is active or are the changes automatically removed after a certain retention period?

user246392
  • 2,661
  • 11
  • 54
  • 96

1 Answers1

2

Change Feed does not store every mutation within a container. It only stores the latest version.

If you need an opLog of every change then yes you could do this by creating an append only data store and using change feed to pick up when any change is made.

Mark Brown
  • 8,113
  • 2
  • 17
  • 21
  • can you confirm that, with full fidelity, every mutation will be stored in Change Feed? Also, you didn't answer my question on whether Change Feed has a retention policy. Is the data there always there as long as the Cosmos account exists? – user246392 Oct 13 '20 at 22:06
  • Yes full fidelity change feed will include every mutation. There is to TTL for change feed. Change Feed today is simply the LSN that is stored with the data itself. It is not stored separately from the data. – Mark Brown Oct 14 '20 at 14:21