I want to know how I can find interesting relationships between users accounts such as the most connected, or most valuable users based on their connections to others.
Below I have the two tables I use. One has all the users, the other has the keys of the users they follow.
User
{
id,
name
}
Follows {
user_id -> user.id,
following_id -> user.id
}
What type of algorithms am I looking for?
Assuming unimportant people have little or no followers, how can I find the people in the center of the graph? I would assume they would be important because they have important people following them.
Update
As David and Steve point out, how close given nodes are, what nodes form sub communities, and which users are the most connected are all examples of useful data that can be pulled from this schema.
Since this "follower" design is used by many sites now, I've started a bounty in the hopes of getting some solid SQL or programming language implementations that might be useful to a wide variety of people.
It's worth noting that while the results of some algorithms are fascinating, others (such as finding related nodes) would have worth to the users of our sites as we can recommend things to them.