[cc: Ben + Dmitry]

Hi folks,

I'm looking at some conversion code in ovn-org/ovn-kubernetes where we replace 
the ovn-nbctl wrapper with the libovsdb library ( ovn-org/libovsdb ). Since we 
are mostly doing this to make it faster (besides reducing the memory 
footprint), using the "Where" syntax [1] will greatly benefit operations on 
logical-router [2] and logical-switch [3] tables if they were indexed by name. 
Similar to what we already have for the logical-router port and logical-switch 
port tables.

After listening to episode 72 of OVS Orbit [4], I would like to ask: does 
anyone have objections to adding "indexes": [["name"]],  to the logical-router 
[2] and logical-switch [3] tables? I understand Ben's point on making the 
implementation of the locally-cached tables have these types of optimizations, 
but at the same time, I see these 2 tables as low-hanging fruits when scaling 
deployments with lots of lr's and ls's. Unless there is an implementation that 
use nameless rows for these tables, I cannot think of a usage case where 
duplicate names are useful. Do you?

Depending on your answers, I can propose a tweak to the schema to have these 
changes... or not. ;)

Thanks,

-- flaviof

[1]:  https://github.com/ovn-org/libovsdb/pull/209 
<https://github.com/ovn-org/libovsdb/pull/209>
[2]:  
https://github.com/ovn-org/ovn/blob/d08f89e219e1fa45583757bd2804783cf0630179/ovn-nb.ovsschema#L306
[3]:  
https://github.com/ovn-org/ovn/blob/d08f89e219e1fa45583757bd2804783cf0630179/ovn-nb.ovsschema#L41
 
<https://github.com/ovn-org/ovn/blob/d08f89e219e1fa45583757bd2804783cf0630179/ovn-nb.ovsschema#L41>
[4]: https://ovsorbit.org/ <https://ovsorbit.org/> ==> Episode 72: The OVSDB 
Query Optimizer and Key-Value Interface, with Dmitry Yusupov from NVIDIA (Feb 
27, 2021)

Attachment: signature.asc
Description: Message signed with OpenPGP

_______________________________________________
discuss mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to