Deployment Architecture

How to evict buckets from smartstore cache?

szymonledzinski
New Member

I'm testing Smartstore feature and I would like to test search performance when all buckets have to be downloaded from remote storage. To do this I would like to evict all the buckets from cache. Is there any command for this?

0 Karma

saravanan90
Contributor

Incase you want to delete a particular bucket and check how long it takes to download. Use the below.

curl -ku admin:changeme https://XX.XX.XX.XX:8089/services/admin/cacheman/$$bucketid$$/evict -X POST

To get the bucket id(| dbinspect index=indexname). This query result will shows the original path of the data present in splunk. Check the before and after evicting the buckets. Once it is evicted, run search which includes the search results available in the bucket. The buckets will be downloaded in the original path. Index=indexname component=cachemanager action=download bucketid shows it is downloaded.

0 Karma

dxu_splunk
Splunk Employee
Splunk Employee
curl -ku admin:changeme "https://localhost:8089/services/admin/cacheman/_evict" -d path=/path_to_cache/ -d mb=99999999999

you didn't ask for it, but the reverse is:

curl -ku admin:changeme "https://localhost:8089/services/admin/cacheman/_localize" -X POST
NOTE - triggering this endpoint will prevent normal evictions from occurring on the indexer afterwards until it restarts - thanks @tonguyen 

splunker686
Explorer

For the manual localize endpoint mentioned:

curl -ku admin:changeme "https://localhost:8089/services/admin/cacheman/_localize" -X POST

 Will it be localizing of all the buckets, of all the smartstore enabled indexes?  What are the specific endpoints for localizing an individual bucket or index?

0 Karma

anz_leycurav
Explorer

in real life, what does "/path_to_cache/" correspond to? is it the root of an index folder (ie the one containing "db" and "summary") or per bucket?

Thanks Vincent.

0 Karma

krishnasrinivas
Engager

Did you find out the answer for this?

0 Karma

Bselberg
Explorer

It's the volume name where the cache/hot buckets is located.

so if you have volume
/path/hotIndexVolume
/path/coldMountVolume/

Pass it /path/hotIndexVolume

0 Karma

tonguyen_splunk
Splunk Employee
Splunk Employee

Note: If you hit the _localize endpoint, you will not be able to evict any additional buckets until a restart occurs.

0 Karma

gjanders
SplunkTrust
SplunkTrust

@dxu excellent answer as always, do you know when cacheman will be added to the REST API reference manual? I cannot see it documented there...

0 Karma

dxu_splunk
Splunk Employee
Splunk Employee

there are some notes here https://docs.splunk.com/Documentation/Splunk/latest/Indexer/TroubleshootSmartStore#Troubleshoot_with... , not sure when these endpoints will be documented on the REST api

0 Karma

dxu_splunk
Splunk Employee
Splunk Employee

good call, we should doc it! i'll leave some feedback on the REST docs page (bottom of the page!)

0 Karma
Get Updates on the Splunk Community!

New This Month in Splunk Observability Cloud - Metrics Usage Analytics, Enhanced K8s ...

The latest enhancements across the Splunk Observability portfolio deliver greater flexibility, better data and ...

Alerting Best Practices: How to Create Good Detectors

At their best, detectors and the alerts they trigger notify teams when applications aren’t performing as ...

Discover Powerful New Features in Splunk Cloud Platform: Enhanced Analytics, ...

Hey Splunky people! We are excited to share the latest updates in Splunk Cloud Platform 9.3.2408. In this ...