[openstack-dev] [Congress][Data Integration]

Rajdeep Dua rajdeep.dua at gmail.com
Thu Mar 13 18:27:26 UTC 2014


Thanks for the feedback.
Will create a design on these lines and send across for review


On Wed, Mar 12, 2014 at 3:53 PM, Tim Hinrichs <thinrichs at vmware.com> wrote:

> Hi Rajdeep,
>
> This is an great problem to work on because it confronts one of the
> assumptions we're making in Congress: that cloud services can be
> represented as a collection of tables in a reasonable way.  You're asking
> good questions here.
>
> More responses inline.
>
> Tim
>
>
> ------------------------------
>
> *From: *"Rajdeep Dua" <rajdeep.dua at gmail.com>
> *To: *openstack-dev at lists.openstack.org
> *Sent: *Wednesday, March 12, 2014 11:54:28 AM
> *Subject: *[openstack-dev] [Congress][Data Integration]
>
>
> Need some guidance on how to convert nested types into flat tuples.
> Also should we reorder the tuple values in a particular sequence?
>
> Order of tuples doesn't matter. Order of columns (values) within a tuple
> doesn't really matter either, except that all tuples must use the same
> order and the policies we write must know which column is which.
>
>
> Thanks
> Rajdeep
>
> As an example i have shown networks and ports tuples with some nested types
>
> networks - tuple format
> -----------------------
>
> keys (for reference)
>
> {'status','subnets',
> 'name','test-network','provider:physical_network','admin_state_up',
> 'tenant_id','provider:network_type','router:external',
> 'shared',id,'provider:segmentation_id'}
>
> values
> -----------
> ('ACTIVE', ['4cef03d0-1d02-40bb-8c99-2f442aac6ab0'], 'test-network', None,
> True,
> '570fe78a1dc54cffa053bd802984ede2', 'gre', False, False,
> '240ff9df-df35-43ae-9df5-27fae87f2492', 4)
>
> Here we'd want to pull the List out and replace it with an ID. Then create
> another table that shows which subnets belong to the list with that ID.
> (You can think of the ID as a pointer to the list---in the C/C++ sense.)
>  So something like...
>
> network( 'ACTIVE', 'ID1', 'test-network', None, True,
>
> '570fe78a1dc54cffa053bd802984ede2', 'gre', False, False,
> '240ff9df-df35-43ae-9df5-27fae87f2492', 4)
>
> element('ID1', '4cef03d0-1d02-40bb-8c99-2f442aac6ab0')
> element('ID1', <another subnet if one existed>)
>
> The other thing to think about is whether we want 1 table with 10 columns
> or we want 10 tables with 2 columns each. In this example, we would have...
>
>
> network('net1')
> network.status('net1', 'ACTIVE' )
> network.subnets('net1', 'ID1')
> network.name('net1', 'test-network')
> ...
>
> The period is just another character in the tablename. Nothing fancy
> happening here.
>
> The ports example below would need a similar flattening.  To handle
> dictionaries, I would use the dot-notation shown above.
>
> A single Neutron API call might populate several Congress tables.
>
> Tim
>
>
> ports - tuple format
> ----------------------------
> keys (for reference)
>
> {'status','binding:host_id', 'name', 'allowed_address_pairs',
> 'admin_state_up', 'network_id',
> 'tenant_id', 'extra_dhcp_opts': [],
> 'binding:vif_type', 'device_owner',
> 'binding:capabilities', 'mac_address',
> 'fixed_ips' , 'id', 'security_groups',
> 'device_id'}
>
> Values
>
> ('ACTIVE', 'havana', '', [], True, '240ff9df-df35-43ae-9df5-27fae87f2492',
> '570fe78a1dc54cffa053bd802984ede2', [], 'ovs', 'network:router_interface',
> {'port_filter': True}, 'fa:16:3e:ab:90:df', [{'subnet_id':
> '4cef03d0-1d02-40bb-8c99-2f442aac6ab0', 'ip_address': '90.0.0.1'}],
> '0a2ce569-85a8-45ec-abb3-0d4b34ff69ba', [],
> '864e4acf-bf8e-4664-8cf7-ad5daa95681e')
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
>
> https://urldefense.proofpoint.com/v1/url?u=http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev&k=oIvRg1%2BdGAgOoM1BIlLLqw%3D%3D%0A&r=%2FZ35AkRhp2kCW4Q3MPeE%2BxY2bqaf%2FKm29ZfiqAKXxeo%3D%0A&m=A86YVKfBX5U3g6F7eNScJYjr6Qwjv4dyDyVxE9Im8g8%3D%0A&s=0345ab3711a58ec1ebcee08649f047826cec593f57e9843df0fec2f8cfb03b42
>
>
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140313/bda3b474/attachment.html>


More information about the OpenStack-dev mailing list