[ovs-dev] [PATCH] OVN: initial patch of datalog engine

Hui Kang kangh at us.ibm.com
Fri Jun 17 18:06:35 UTC 2016


Hi, Yusheng,
When running the datalog test_interactive program, I have some difficulty
in
generating the output of the incremental change. Could you help to check at
which
step I did something wrong?

-----------------------------------------------------------------------------
Step 1: Create a rule of joining table r(a) with an empty table as in the
        example

root at test:~/ovs/tests# ./ovstest test-datalog run
Input rules, e.g. R(a):r(a).
use EOF as end

R(a):r(a).
EOF
Input changes, e.g. +:1:tbl_name|1:f0:f1|.
use +, -, ? for add, remove, or query.
could input multiple tables. the number in table name
line indicates number of tuples to follow.
'|' stands for new line. use '.' to exit
for query, field value could be empty.


Step 2: I tried to insert one tuple to table r in order to see the change
        datalog will make to table R. Since table r has one field name as
a,
        I input the following line and I got this error message


+:1:r|1|.
Error in format
-------------------------------------------------------------------------------

Any idea? Thanks.

- Hui

Yusheng Wang <yshwang at vmware.com> wrote on 06/17/2016 04:30:02 AM:

> From: Yusheng Wang <yshwang at vmware.com>
> To: Hui Kang/Watson/IBM at IBMUS
> Cc: "dev at openvswitch.org" <dev at openvswitch.org>
> Date: 06/17/2016 04:40 AM
> Subject: Re: [ovs-dev] [PATCH] OVN: initial patch of datalog engine
>
>
> The idea is to write ovn-northd in nlog program. In order to do that,
> we need a hook to ovs-db, which is the next step I am going to do.
> Generally, a subset of ovs-db tables will be input tables to the nlog
> engine and the engine's output table will also be written to ovs-db.
>
> If we think about ovn-northd as a data converter (function) between
> north bound tables and south bound tables, it is straightforward that
> any engine that works in this way could be used.
>
> The improvement comes from incremental computation. As for the
> scalability, the paper [2] may not apply to OVN since they are of
> totally different design.
>
> In order to test the engine, we could try the interactive test case.
There
> is one combo test case in the patch and it has an interactive mode. We
> could load a nlog program and run data on it.
>
> -- Yusheng
> ________________________________________
> From: Hui Kang <kangh at us.ibm.com>
> Sent: Friday, June 17, 2016 3:28 PM
> To: Yusheng Wang
> Cc: dev at openvswitch.org
> Subject: Re: [ovs-dev] [PATCH] OVN: initial patch of datalog engine
>
> Hi, Yusheng,
> I am very intersted in testing your nice nlog implementation. Meanwhile,
I
> appreciate if you could look at some questions I have about this nlog.
>
> - Reading the early proposal of nlog [1], I understand that nlog will
> be serving as a new computation model for ovn-northd. Furthermore, Ithink
the
> plan is to replace the existing join_XXX operations (e.g., [3][4]) in
> populating tables in southbound database. Is my understanding correct?
>
> - How much performance improvement will you expect from using nlog?
> The NVP paper [2] mentioned in section 8.2 that even with nlog, the
> scalability issue still exists because Openflow in hypervisors requires
> O(N^2).
>
> Thanks in advance.
>
> - Hui
>



More information about the dev mailing list