Hoped to clarify conflicting information between AWS DynamoDB best practices and what is seen in the cloud gems. According to [DynamoDB Users Best Practices],(https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-general-nosql-design.html) it clearly states
You should maintain as few tables as possible in a DynamoDB application. Most well designed applications require only one table.**
I have seen this exact same suggestion made on countless other forums and blogs. Yet, however, the actual sample cloud gems provided, such as Leaderboard, contains tons of tables.
I guess my question is two-fold. We are creating a massive multiplayer experience where each user may have multiple characters/avatars they can choose from. Would I be best served by using the PlayerAccounts Cloud gem as a base (since it has the Cognito authorization already running) and then build upon that same table to add additional attributes that each player will need, or should I create a completely separate table to access additional player data after the user has already logged in through the sample playeraccount cloud gem?
What have been your experiences with player account table design in DynamoDB and LY?