Deploy specific netlify blob store takes longer to get data

Hi there,

I was excited to learn recently that Netlify rolled out the blob store feature as it was a replacement for Azure Blob storage for me. My dashboard websites allow the users to reload the data that drives them by fetching new data from google sheets.

What my users have noticed is that in my deploy branches where I test and experiment changes with the users, the time to fetch the data for branch deploy specific blob stores is much longer than the non-deploy specific one (production basically). I used console.time and console.timeEnd to measure the time between completing various steps in my function.

Below are the logs for my deploy function that uses a deploy specific blob store:

Feb 29, 11:11:20 AM: a06f1d2c INFO   headers: 0.082ms
Feb 29, 11:11:20 AM: a06f1d2c INFO   params: 0.005ms
Feb 29, 11:11:20 AM: a06f1d2c INFO   get store: 0.497ms
Feb 29, 11:11:21 AM: a06f1d2c INFO   get data: 989.225ms
Feb 29, 11:11:21 AM: a06f1d2c INFO   func: 991.122ms
Feb 29, 11:11:21 AM: a06f1d2c Duration: 1245.15 ms	Memory Usage: 112 MB	Init Duration: 248.90 ms	

x-nf-request-id: 01HQS6MXCRBXFZ49110N3BSY5G
get store is the time to call store = getDeployStore()
get data is the time to call data = await store.get(id)

These are the logs for my function in the production environment NOT using a deploy specific blob store:

Feb 29, 11:24:45 AM: 27484eb7 INFO   headers: 0.088ms
Feb 29, 11:24:45 AM: 27484eb7 INFO   params: 0.006ms
Feb 29, 11:24:45 AM: 27484eb7 INFO   get store: 0.391ms
Feb 29, 11:24:45 AM: 27484eb7 INFO   get data: 173.465ms
Feb 29, 11:24:45 AM: 27484eb7 INFO   func: 175.302ms
Feb 29, 11:24:46 AM: 27484eb7 Duration: 428.45 ms	Memory Usage: 113 MB	Init Duration: 257.28 ms

x-nf-request-id: 01HQS7DGBXVK1Y60JTPTGBE2KE
get store is the time to call store = getStore('data')
get data is the time to call data = await store.get(id)

func measures the time from the start of the function to just before returning a response to the request. My understanding of the Duration log below it being higher includes the Init time as the function had to spin up, subsequent requests don’t show the init time as they are in memory?
I’ve also included the request ids for any support engineers to look into if they’re curious.

In case you’re thinking it might be to do with different data sizes. The deploy store had no data stored in it at the time of testing (returned null when store.get was called), and my previous testing has found that doesn’t seem to matter how much data is stored in the store.

I’m currently refactoring my function to use getStore for both production and branch deploys because i’m seeing my requests fetching data taking 2-3 seconds just for 4kB of data.
See below a screenshot from devtools showing the request/response timing for a function using a deploy specific blob store.

So I guess my question is why does the deploy store take longer to fetch the same amount of data? I didn’t read this caveat in the docs, is this just how the deploy store works? I’ve also deployed the function to the closest region for myself and my users, Sydney Australia. And the difference to query the store doesn’t change compared to us-east.

Thanks!

Hi, my sincerest apologies for missing this thread. Can you let me know if you are still in need of assistance?