I could not find anything related to this in documentation. Does redis cache only include data that has already been written to Database (disk) or does it also cache data that have not yet been written to database ?
If redis is run without persistence and were to crash then will there be data loss ?
Neither nor. It e.g. caches file locking in memory. This information isn’t written to the database at all nor is there a requirement to backup this data because it will automatically renewed. See the Redis chapter in the documentation for further information.
From the Memory caching section :
You can significantly improve your Nextcloud server performance with memory caching, where frequently-requested objects are stored in memory for faster retrieval.
And after some lines in same section :
Data caching is supplied by the user (APCu), Memcached or Redis.
Cache used for locking is set by
'memcache.locking' in config.php but what is the function of
'memcache.local' in config.php ?