A couple of thoughts here:

- is removing of friends a common event? similarly, is adding of
friends a common event? (All relative, relative to "reads" of the news
feed)
- From what I remember, the only way to make heavy reads scale is to
write the data multiple times in peoples' streams. Twitter does this,
from what I remember, using a "eventually consistent" model. This is
why your feed will not update for several minutes when they are under
heavy load. The general consensus, though, is that a relational,
normalized model simply will not work.
- the Jaiku engine is open source for your study:
http://code.google.com/p/jaikuengine. This runs on App Engine

Hope these help when you're considering a design.

On Mon, Mar 15, 2010 at 5:32 AM, PEZ <[email protected]> wrote:
> We first modeled publish-subscribe "fan out" using conventional RDBMS
> thinking. It seemed to work at first, but then, since the IN operator
> works the way it does, we quickly realized we couldn't continue on
> that path. We found Brett Slatkin's presentation from last years
> Google I/O and we have now watched it a few times and also played some
> with the http://pubsub-test.appspot.com/ example but it isn't clear to
> us how to  do it with "dynamic" recipient lists.
>
> We want to implement a "News feed" where a user can see messages
> broadcasted by her friends, sorted with newest message first. But the
> feed should reflect changes in her friends list. (If she adds new
> friends, messages from those should be included in the feed, and if
> she removes friends their messages should not be included.) If we use
> the pubsub-test example and attach a recipient list to each message
> this means a lot of manipulation of the recipient lists when users
> connect and disconnect friends.
>
> What we need are some hints on how to "think" when modeling this. Does
> this description even make sense?
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Google App Engine" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to 
> [email protected].
> For more options, visit this group at 
> http://groups.google.com/group/google-appengine?hl=en.
>
>



-- 
Ikai Lan
Developer Programs Engineer, Google App Engine
http://googleappengine.blogspot.com | http://twitter.com/app_engine

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to