On 3/22/11 11:40 AM, Ed Leafe wrote:
        I want to get some input from all of you on what you think is the best 
way to approach this problem: the RS API requires that every instance have a 
unique ID, and we are currently creating these IDs by use of an auto-increment 
field in the instances table. The introduction of zones complicates this, as 
each zone has its own database.

        The two obvious solutions are a) a single, shared database and b) using 
a UUID instead of an integer for the ID. Both of these approaches have been 
discussed and rejected, so let's not bring them back up now.

        Given integer IDs and separate databases, the only obvious choice is 
partitioning the numeric space so that each zone starts its auto-incrementing 
at a different point, with enough room between starting ranges to ensure that 
they would never overlap. This would require some assumptions be made about the 
maximum number of instances that would ever be created in a single zone in 
order to determine how much numeric space that zone would need. I'm looking to 
get some feedback on what would seem to be reasonable guesses to these 
partition sizes.

        The other concern is more aesthetic than technical: we can make the 
numeric spaces big enough to avoid overlap, but then we'll have very large ID 
values; e.g., 10 or more digits for an instance. Computers won't care, but 
people might, so I thought I'd at least bring up this potential objection.

Hmm.... If you make your id large enough, you are basically recreating option b) (uuids). As for partitioning a numeric space, that does kindof throw a wrench in the idea of attaching a child zone that knows nothing of the parent, (i.e. for bursting to a public cloud from a private one) unless the number is globally unique. (see option b again).

IMHO, the instance id probably should be prefixed with some zone identifier. Thus zone1:001234 does not conflict with zone2:001234.


-- Ed Leafe




_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp


--

--
    -Monsyne Dragon
    work:         210-312-4190
    mobile        210-441-0965
    google voice: 210-338-0336



Confidentiality Notice: This e-mail message (including any attached or
embedded documents) is intended for the exclusive and confidential use of the
individual or entity to which this message is addressed, and unless otherwise
expressly indicated, is confidential and privileged information of Rackspace.
Any dissemination, distribution or copying of the enclosed material is 
prohibited.
If you receive this transmission in error, please notify us immediately by 
e-mail
at [email protected], and delete the original message.
Your cooperation is appreciated.


_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp

Reply via email to