[openstack-dev] [Solum] Solum database schema modification proposal
Paul Montgomery
paul.montgomery at RACKSPACE.COM
Mon Feb 3 16:22:37 UTC 2014
Solum community,
I notice that we are using String(36) UUID values in the database schema as primary key for many new tables that we are creating. For example:
https://review.openstack.org/#/c/68328/10/solum/objects/sqlalchemy/application.py
Proposal: Add an int or bigint ID as the primary key, instead of UUID (the UUID field remains if needed), to improve database efficiency.
In my experience (I briefly pinged a DBA to verify), using a relatively long field as a primary key will increase resource utilization and reduce throughput. This will become pronounced with the database will no longer fit into memory which would likely characterize any medium-large Solum installation. This proposal would relatively painlessly improve database efficiency before a database schema change becomes difficult (many pull requests are in flight right now for schema).
In order to prevent the auto-incrementing ID from leaking usage information about the system, I would recommend using the integer-based ID field internally within Solum for efficiency and do not expose this ID field to users. Users would only see UUID or non-ID values to prevent Solum metadata from leaking.
Thoughts?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140203/31689666/attachment.html>
More information about the OpenStack-dev
mailing list