Hello,
I have to read large quantity of statistics from confd, something defined like
container counters
{
tailf:info “The container holds the specific statistic of all proccesor threads”;
tailf:cdb-oper;
config false;
list counter
{
tailf:info “Specific statistic”;
config false;
tailf:cdb-oper;
key id;
leaf id
{
type uint16
{
range 0..16383;
}
config false;
tailf:cdb-oper;
tailf:info "Counter id";
}
leaf value
{
type uint64;
default 0;
tailf:info "Counter total value";
config false;
tailf:cdb-oper;
}
leaf version
{
type uint16;
default 0;
tailf:info "Counter-version";
config false;
tailf:cdb-oper;
}
}
}
I am using C++ API and the list could contain ~15000 counters or a bit more.
I used the cdb_get_values C++ function and time for retrieving entire list is ~1 second.
Reading 1000 counters takes ~ 70 milliseconds.
Reading 15000 takes ~ 1 sec, so the time is proportional with the number of counters I try to read, so I see that reading bunch of counters is not a solution.
Anyone could suggest an optimal way to read this large quantity of data?
Thanks in advance,
Cris