Well, thanks for suggestion, but I don't think dividing up operational data into multiple daemons is suitable for us.
First of all, there are too many show commands in one logic module, eg. 100 show commands, suppose 10 callpoints a daemon, we'll have 10 daemons which will be as many as 10 * 10 = 100 callpoints.
Second, all the resources, such as list, memory pool, trees, and any other data structure needed to perform some tasks have to be together in one logic module, if we show them in different daemons, we must add interfaces to fetch the show data.
And last, as the picture(in section 6.7 of confd user guide) of even sequence showing the transactions finish() calls won't be invoked util user exit the CLI, If we execute all the show commands, but don't exit the cli, we'll occupy large memories.