Just a follow-up on this discussion in case anybody else comes across it in their search.
http://www.25hoursaday.com/weblog/2009/09/10/BuildingScalableDatabasesDenormalizationTheNoSQLMovementAndDigg.aspx *"Fixing data inconsistency is now the job of the application. Let's say each user has a list of the user names of all of their friends. What happens when one of these users changes their user name? In a normalized database that is a simple UPDATE query to change a single piece of data and then it will be current everywhere it is shown on the site. In a denormalized database, there now has to be a mechanism for fixing up this name in all of the dozens, hundreds or thousands of places it appears. Most services that create denormalized databases have "fixup" jobs that are constantly running on the database to fix such inconsistencies."* On Fri, Mar 12, 2010 at 5:50 PM, Brandon Williams <dri...@gmail.com> wrote: > On Fri, Mar 12, 2010 at 7:46 PM, Peter Chang <pete...@gmail.com> wrote: > >> Yes, I can update that one entry. But what if that subcolumn key is used >> across many different places? >> >> ['Jones-Bob']['connections'] >> ['Hacker-Alyssa-1ab54760-2ca8-11df-aabd-005056c00001'] >> ['Crabtree-Sam']['connections'] >> ['Hacker-Alyssa-1ab54760-2ca8-11df-aabd-005056c00001'] >> ['Rice-Brown']['connections'] >> ['Hacker-Alyssa-1ab54760-2ca8-11df-aabd-005056c00001'] >> ... >> >> I can update every single entry but now I need to keep track of them >> (which I guess I'm doing anyway). I was wondering if there was a more >> elegant solution but it seems unlikely based on the given constraints. >> > > You have to update them all and track them, correct. What you're looking > for sounds like transaction support, which Cassandra does not have. On the > bright side, writes are cheap. > > -Brandon >