Pls, Dojo - quick follow up from:
Cassandra DB: “grace seconds” default value and related custom tuning
What's the usage of the GC_grace_seconds in DMAs with local Cassandra DB only (no Cassandra cluster)?
Still
In case the local Cassandra goes down, am I correct that data is temporarily written to a local file in the DMA and it will be transferred back to the Cassandra DB later (data failover mode of the node)?
Thanks
Hello Alberto,
The gc_grace_seconds is a configuration setting that specifies how long tombstones (markers for deleted data) should be kept before being eligible for removal by compaction. The primary purpose of this setting is to ensure that data deletions are propagated correctly on a single node or across all replica nodes before the tombstones are removed by compaction.
The usage is the same for both local Cassandra and Cassandra cluster setup.
Regarding the second question, when the local Cassandra database node goes down and DataMiner detects connectivity issues with the database, the data destined for the database will be written to Offload folder (located in "C:\Skyline DataMiner\Offload") until the connection is restored.
If the database has recovered again and when the connection to the database is restored, DataMiner will first process the files in the offload folder and update the database at the startup. It is only once this process is complete then DMA starts up. The more data is contained in the offload folder, the longer DataMiner will take to startup.
Hope this answers your question.
Hello Alberto, you are correct that a value that is higher than "0" for gc_grace_seconds does not serve a purpose in single Cassandra node.
From my side, I do not recall what is the gc_grace_seconds per table for single Cassandra with the single DMA setup.
I will update you again once I encounter the setup.
Hi Alberto, Min,
I can confirm that the gc_grace seonds is the same for a single node as it is for any other configuration (i.e. 4 hours or 1 day).
For performance reasons on fast-writing databases, we should indeed set it "0" in single node configurations.
Thank you Laurens for the update.
Maybe an interesting additional note to the previous response thread: for Cassandra single, the user can change the gc_grace_seconds value if he so desires without DataMiner overwriting it. For a dedicated clustered storage (Cassandra cluster) we have now created a software change that allows DataMiner users to do the same (though we do not yet know in which version it will be released).
Thanks for your feedback, Min
With reference to the single node, what's the benefit of having a value that is higher than "0" for gc_grace_seconds?
I understand there is no replication, so keeping tombstones for longer serves no synchronization purpose – am I correct?
Trying to better understand as it seems the settings will change in upcoming versions of DataMiner, thus allowing admins to have a value that doesn't default to higher than "0" – is it known if the feature will distinguish between single node and Cassandra cluster?