neptune-client
neptune-client copied to clipboard
Feature Request: fetch runs table with selected fields only
In my project I have 800 runs each of which has 18000 hyperparameters. In result,
project.fetch_runs_table()
takes 51 seconds.
I rarely need all those parameters. Usually, I need just run_ids or a few selected columns. Maybe you also do not need additional traffic ;). I wish I had sth like:
project.fetch_runs_table(columns=['sys/run_id', 'node/param1'])
Hey @wjaskowski
Prince here,
Thank you very much for bringing this up!
I will pass it to the engineering team.
I did some work for you, guys. Here is the profiler results on fetching the leaderboard. I leave the interpretation to you but it seems to me that the performance issues are on the client side and depend on the number of objects sent.

@Herudaio
It already takes 1 minute and 15 seconds to call fetch_runs_table for my project...
Hi Wojciech
Thank you very much for such detailed profiling💯 ,
I have contacted the engineering team.
So either they will reach out soon or I will let you know of their comments and path forward
Today it takes 1 min 46 seconds for fetch_runs_table. It is getting completely unusable...
My dataframe obtained by fetch_runs_table() takes 1.4GB. Are you planning to do anything about this issue?

At the same time the object from which the pandas dataframe is converted from takes >7GB:

Simply unusable.
Hey @wjaskowski, filtering the results by column names should be available soon. Optimistically within 2 weeks, but may be up to 4 - it's already in the short dev queue.
Hello @wjaskowski, Sorry for the delay in communication here.
We introduced this feature in neptune-client release 0.16.7.
You can use the columns parameter of the fetch_runs_table() method to filter the columns you need. More information is available in our API reference here: https://docs.neptune.ai/api/project/#fetch_runs_table.
I am closing this feature request for now, however, please feel free to reach out in case you have any other questions. We appreciate your feedback and feature requests :)