Hi,
Tables are partitioned to support load balancing across storage nodes. A table's entities are organized by partition. A partition is a consecutive range of entities possessing the same partition key value. The partition key is a unique identifier for the
partition within a given table, specified by the PartitionKey property.
Accroding to your description, i think different partitionKey does not mean they "must" splitted into seperate nodes/servers. The different partition keys may stored in the same server, but the same partitionKey rows were maintained by partitionKey server
to improve query performance.
More details:
http://msdn.microsoft.com/en-us/library/windowsazure/dd179338.aspx
In your situation, I think if you set the "eventID" as the partitionKey of "user" table, it's beneficial of query the users who attend in this event (via EventID), but if you need query how many events a user attend, the "eventID" partitionKey
may not efficiently (here userId may a good potential partitionKey), so i think partitionKey is decide by your design, you can observe with query method is the most common one, and set the appropriate partitionKey.
Hope this helps.
Please mark the replies as answers if they help or unmark if not. If you have any feedback about my replies, please contact
msdnmg@microsoft.com
Microsoft One Code Framework