incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tatu Saloranta <tsalora...@gmail.com>
Subject Re: UUIDs whose alphanumeric order is the same as their chronological order
Date Tue, 22 Jun 2010 19:05:27 GMT
On Tue, Jun 22, 2010 at 9:12 AM, David Boxenhorn <david@lookin2.com> wrote:
> A little bit of time fuzziness on the order of a few milliseconds is fine
> with me. This is user-generated data, so it only has to be time-ordered at
> the level that a user can perceive.

Ok, so mostly ordered. :-)

> I have no worries about my solution working - I'm sure it will work. I just
> wonder if TimeUUIDType isn't superior for some reason that I don't know
> about. (TimeUUIDType seems so bad in so many ways that I wonder why anyone
> uses it. There must be some reason!)

I think that rationally thinking random-number based UUID is the best,
provided one has a good random number generator.
But there is something intuitive about rather using location +
time-based alternative, based on tiny chance of collision that any
(pseudo) random number based system has.
So it just seems intuitive safer to use time-uuids, I think -- it
isn't, it just feels that way. :-)

Secondary reason is probably the ordering, and desire to stay
standards compliant.
As to ordering, if you wanted to use time-uuids, comparators that do
give time-based ordering are trivial, and no slower than lexical
sorting.
Java Uuid Generator (2.0) defaults to such comparator, as I agree that
this makes more sense than whatever sorting you would otherwise get.
It is unfortunate that clock chunks are ordered in weird way by uuid
specification; there is no reason it couldn't have been made "right
way" so that hex representation would sort nicely.

-+ Tatu +-

Mime
View raw message