What is a cold storage and what is it used for? I'm not sure if I should use cold storage in my game. I heard it can be used for chat logs, however I'd rather someone here answer all my questions.
The "temperature" of different data storage layers usually refers to how fast that data can be accessed. Different levels of "temperature" from hottest to coldest are:
- In the gameserver's memory
- In an in-memory database or in-memory caching layer
- In a ssd-backed database
- In a hdd-backed database
- In a flatfile
- In a compressed flatfile
- Offsite Backup
Note that these are just examples. Not every game will use exactly these tiers of data storage. There might also be sub-layers like indexed vs. non-indexed and denormalized vs. normalized data structures.
When you have data which you need to access very frequently, like the data of characters which are currently on-line, you would want to move them to a "hotter" storage layer. When you have data which you need to access very rarely, you will want to move them to a "colder" layer.
Old chatlogs are data which you usually archive just in case you need to investigate some reported TOS violation at a later date. Most of your chatlogs won't be accessed ever, and in those cases where you do need to access them, performance isn't very important. So they are a usually a candidate for colder storage layers (if you want to archive them at all).