I have an index that contains 151GB data.
Now, I want to change the Max Size from 500GB to 50GB.
Will I lose some data?
If I will lose some data ,how can I get these data back when I want to search or use them.
Yes, you will lose data as the 151GB is larger than the new maximum size parameter of 50GB. Splunk will remove the oldest data until it reaches 50GB in size.
To stop the data from being deleted entirely, you would need to create an archive policy or, as referred to in Splunk terminology, move data to "frozen". Essentially, this means that any data being removed out of the index, either because it's aged out or because the index has reached its maximum size, will be archived. If no archive policy has been created, then the data will simply be deleted. Please refer to the documentation on setting a retirement and archiving policy.
You can roll data to frozen with two methods. The first is to specify a frozen directory on the server to move the data to. The second is to run a script which might move the data to a network share for example. Search for "coldToFrozenDir" and "coldToFrozenScript" within the indexes.conf documentation to find more info on this.
If you then need to search your frozen data, you have to "thaw" it. To learn how to do this, please refer to Restore Archived Data documentation.
I set a test index that max size is 50MB.
But now, its current size has been 62MB.
How can max size work correctly ?