Microsoft Azure PlayFab logo
    • Multiplayer
    • LiveOps
    • Data & Analytics
    • Add-ons
    • For Any Role

      • Engineer
      • Designer
      • Executive
      • Marketer
    • For Any Stage

      • Build
      • Improve
      • Grow
    • For Any Size

      • Solo
      • Indie
      • AAA
  • Runs on PlayFab
  • Pricing
    • Blog
    • Forums
    • Contact us
  • Sign up
  • Sign in
  • Ask a question
  • Spaces
    • PlayStream
    • Feature Requests
    • Add-on Marketplace
    • Bugs
    • API and SDK Questions
    • General Discussion
    • LiveOps
    • Topics
    • Questions
    • Articles
    • Ideas
    • Users
    • Badges
  • Home /
  • General Discussion /
avatar image
Question by Brendan · Oct 07, 2015 at 05:13 AM ·

CloudScript hard/soft limits

johntube
started a topic on Mon, 21 September 2015 at 4:50 AM

I have been looking at AWS DynamoDB's best practices and limits documents (also Item Collection Size limit).

Without the need to know the whole architecture behind PlayFab, guessing what SharedGroups/TitleData/UserData/PublisherData really represent is important in order to have an idea about their limits.

I might be wrong but SharedGroups/TitleData/UserData/PublisherData are "Tables" and their entries are "Items". I think PlayFab chose string as the DataType for all Items except UserStatistics entries which are Numbers. So PlayFab is only using "Attributes" for the predefined items in their built-in systems like Inventory, Characters, Currency etc.

Here is what I know right now:

SharedGroupDataRecord, UserDataRecord and other data records:

  • max size of key, max bytes, type string ==> max characters,

  • max size of value, max bytes == 400KB, type string ==> max characters

  • I think the 400KB is max key+value combined.

  • "For attribute values that are of type binary, the application must encode the data in base64 format before sending it to DynamoDB. Upon receipt of the data, DynamoDB decodes it into an unsigned byte array and uses that as the length of the attribute." from DynamoDB Limits doc....so we should not take into consideration the Base64 overhead?

  • max # of records (SharedGroup/User/Title/Publisher): infinite? "No practical limit in number of bytes or items." or "For a table with local secondary indexes [...] The maximum size of any item collection is 10 GB" from DynamoDB Limits doc.

  • max # of SharedGroups per publisher/title/user : infinite?

I'm waiting for PlayFab to release their limits per Plan. All that I know right now is:

  • max API calls per RunCloudScript call (<10 according to this video) "Maximum concurrent CreateTable/UpdateTable/DeleteTable API requests" from DynamoDB Limits doc.

  • max API call response size (<1MB according to this video), payload only? "The result set is limited to 1 MB per API call." from DynamoDB Limits doc.

  • max returned GetXData items/size: "BatchGetItem item maximum per operationUp to 100 items retrieved. The total size of all the items retrieved cannot exceed 16 MB." from DynamoDB Limits doc.

  • max API calls frequency (Parse: up to 30req./s free) ?

Comment

People who like this

0 Show 0
10 |1200 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
Best Answer

Answer by Brendan · Oct 20, 2015 at 06:50 AM

1 Comment
Brendan Vanous said on Tue, 06 Oct at 10:24 PM

Hi Hamza,

Sorry for the delay on this - we have our initial pass on the limits internally, and will be posting them to the site as soon as we can.

Please bear in mind that the DynamoDB limits (or any other Amazon limits) are not the same thing as the PlayFab limits. We are making sure that our limits will be generous enough for the vast majority of titles, and we'll have the option to adjust those limits on a per-title basis if there's a necessity. Our limits are based on ensuring a sustainable platform that developers can use at minimum cost to them, in order to give them as much freedom as possible.

And it's worth noting that the Parse limit of 30 requests per second is for the application, meaning that you must add together all calls made by all users to determine what your call rate is. So if you have 300 concurrent users, which usually translates to something like 3,000 total DAU, that would mean that a client could only make one call to the service every 10 seconds. Our limits are on a per user basis, so for 300 concurrent users, if we say you can make 1 call per second, that would be 300 requests per second for the application. Since most developers are aiming to get more than 3,000 DAU, I would definitely describe our limits as being more generous.

Brendan

Comment

People who like this

0 Show 0 · Share
10 |1200 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Navigation

Spaces
  • General Discussion
  • API and SDK Questions
  • Feature Requests
  • PlayStream
  • Bugs
  • Add-on Marketplace
  • LiveOps
  • Follow this Question

    Answers Answers and Comments

    No one has followed this question yet.

    PlayFab

    • Multiplayer
    • LiveOps
    • Data & Analytics
    • Runs on PlayFab
    • Pricing

    Solutions

    • For Any Role

      • Engineer
      • Designer
      • Executive
      • Marketer
    • For Any Stage

      • Build
      • Improve
      • Grow
    • For Any Size

      • Solo
      • Indie
      • AAA

    Engineers

    • Documentation
    • Quickstarts
    • API Reference
    • SDKs
    • Usage Limits

    Resources

    • Forums
    • Contact us
    • Blog
    • Service Health
    • Terms of Service
    • Attribution

    Follow us

    • Facebook
    • Twitter
    • LinkedIn
    • YouTube
    • Sitemap
    • Contact Microsoft
    • Privacy & cookies
    • Terms of use
    • Trademarks
    • Safety & eco
    • About our ads
    • © Microsoft 2020
    • Anonymous
    • Sign in
    • Create
    • Ask a question
    • Create an article
    • Post an idea
    • Spaces
    • PlayStream
    • Feature Requests
    • Add-on Marketplace
    • Bugs
    • API and SDK Questions
    • General Discussion
    • LiveOps
    • Explore
    • Topics
    • Questions
    • Articles
    • Ideas
    • Users
    • Badges