Hello GoodData team. We observed fetching LDM from...
# gooddata-cn
s
Hello GoodData team. We observed fetching LDM from gooddata is an expensive call and takes few seconds everytime.. we are using python SDK and
sdk.catalog_workspace_content.get_declarative_ldm(workspace_id)
to get the LDM.. Isn't the LDM already cached at gooddata end or do we need to implement some kind of caching ourselves?
j
It's not cached. How many datasets do you have in LDM and exactly how many seconds it takes?
s
typically 10-20 ish.. it usually takes anywhere between 4-8 seconds @Jan Soubusta under heavy load it hits higher numbers sometimes 10 seconds
j
Just to be sure - do you use our GoodData cloud SaaS or do you run GoodData.CN in your premise?
s
@Jan Soubusta sorry for late response. we run GoodData.CN on our premise currently
j
We struggled similarly with performance in our GoodData cloud. I suggest to try to bump resource limits of metadata-api service.
s
bumping the resource limits might be expensive for our use case.. I wanted to check if there are any side effects to cache the ldm ourselves.. Of course we are aware that the changes in ldm won't be captured during the cache-alive time... But for our usecase we don't expect the ldm to change within 30-ish minutes of when our process runs
is there are any other improvements other than bumping resources and caching LDM ourselves, please suggest
j
Caching LDM is the only way now. I will pass your feedback to our product team. We could implement such a caching directly in our metadata-api service.
👍 1
s
do you have any ETA for the same? If there is one, we could avoid implementing it on our side
hope its configurable so that we can determine the time on how long we expect the cache to be stale
j
Our implementation will invalidate caches once anyone updates the related metadata. No ETA yet. I'll ask for it.