> > In your first email, you get a request and seem to shove it and a user in > generating the ids which means that user never generates a request ever > again??? If a user sends multiple requests in, how are you looking up his > TimeUUID row key from your first email(I would do the same in my > implementation)? >
Actually, I don't get it from Cassandra. I am using Cassandra for the writes, but to find the userId I look on a pre-indexed structure, because I think the reads would be faster this way. I need to find the userId by some key fields, so I use an index like this: user ID 5596 -> { name -> "john denver", phone -> "5555 5555", field3 -> "field 3 data"...., field 10 -> "field 10 data"} The values are just examples. This part is not implemented yet and I am looking for alternatives. Currently we have some similar indexes in SOLR, but we are thinking in keeping the index in memory and replicating manually in the cluster, or using Voldemort, etc. I might be wrong, but I think Cassandra is great for writes, but a solution like this would be better for reads. > If you had an ldap unique username, I would just use that as the primary > key meaning you NEVER have to do reads. If you have a username and need > to lookup a UUID, you would have to do that in both implementationsÅ not a > real big deal thoughÅ a quick quick lookup table does the trick there and > in most cases is still fast enough(ie. Read before write here is ok in a > lot of cases). > > That X-ref table would simple be rowkey=username and value=users real > primary key > > Though again, we use ldap and know no one's username is really going to > change so username is our primary key. > In my case, a single user can have thousands of requests. In my userCF, I will have just 1 user with uuid X, but I am not sure about what to have in my requestCF. -- Marcelo Elias Del Valle http://mvalle.com - @mvallebr