Presentation is loading. Please wait.

Presentation is loading. Please wait.

Game Data Anywhere Using Xbox LIVE Cloud Storage Michael Alyn Miller Data Storage Architect Microsoft Corporation.

Similar presentations


Presentation on theme: "Game Data Anywhere Using Xbox LIVE Cloud Storage Michael Alyn Miller Data Storage Architect Microsoft Corporation."— Presentation transcript:

1

2 Game Data Anywhere Using Xbox LIVE Cloud Storage Michael Alyn Miller Data Storage Architect Microsoft Corporation

3 Console only One device at a time Saved Games Difficult to share across platforms Limited file size Legacy Cloud Storage APIs Cross-device pause and resumeCompanion gamesWeb experiences What we have today What we want to enable Storage Technologies CLOUD STORAGE

4 Cloud Storage Goals & Challenges Standard HTTPS requests Unified authentication model Consistency across Xbox LIVE Broad Platform Support Problem: Not all platforms (for example, the web) support Xbox LIVE Title Ids Solution: Two types of platforms (Verified and Unverified) with different sharing semantics Multiple Security Models Fine-grained data sharing across titles, platforms Cross-Title Sharing

5 Title Groups First-Class Concept Title Group Storage is Shared Title Group IDs are an integral part of the API Owned by a publisher, not a title Many titles can access the same Title Group Storage Access control list for granting permissions to titles

6 Title Groups Example Read/Write Read-Only Title Group 123 Title Group 456 Kinectimals launches and uses Title Group Storage for its Saved Games. Kinectimals for Windows Phone, iOS is released and gets read/write access to the Kinectimals Title Group Storage area so that cubs can be shared between devices. A few years later Kinectimals 2 comes out and uses Title Group Storage for its saved games. Kinectimals 2 also gets read-only access to the Kinectimals Title Group Storage area in order to import your saved games.

7 Data Stores Readable by all users, writable by the publisher Game configuration, updateable assets, tuning data, and others 5 GB quota, 5000-file maximum, no max file size Global Data One store per-user, per-Title Group Writable by the owning user (and publisher) Saved games, statistics, preferences, and others 1 GB quota, 5000-file maximum, no max file size User Data

8 Cloud Storage API  User Data APIs  GET, PUT, DELETE data: /users/xuid(xuid)/storage/titlestorage/titlegroups/titleGroupId/data/...  GET user-level statistics (quota): /users/xuid(xuid)/storage/titlestorage/titlegroups/titleGroupId  Multi-User GET: (POST) /users/batch/storage/titlestorage/titlegroups/titleGroupId/data/...  Global Data APIs  GET, PUT, DELETE data: /media/titlegroups/titleGroupId/storage/data/...  GET global data statistics (quota): /media/titlegroups/titleGroupId/storage  The “...” is a blob name or directory of blobs

9 Cross-Title Pause & Resume sample OverviewCross-Title SharingCross-Platform CompanionsGlobal ConfigWrap Up

10 Pause on Windows 8, Resume on Windows Phone CLOUD STORAGE

11

12

13

14 Cloud Storage Access Control Lists PrefixRequired ClaimsPermissions /saves/titleId=9401931,4891894 user=me read,write Access control list Title Group: 6DC49566-9750-4ACB-AD3E-2E17860D39D5

15 Cloud Storage Access Control Lists PrefixRequired ClaimsPermissions /ghostReplays/titleId=9401931,4891894 user=me read,write /saves/titleId=9401931,4891894 user=me read,write Access control list Title Group: 6DC49566-9750-4ACB-AD3E-2E17860D39D5 PrefixRequired ClaimsPermissions /ghostReplays/titleId=9401931,4891894 user=me read,write /ghostReplays/titleId=9401931,4891894 user=anyone read /saves/titleId=9401931,4891894 user=me read,write

16 Recap: Binary Blobs Read/Write large blocks of data Full support for HTTP Range header Full support for HTTP ETag header (and If-Match/If-None-Match) Features Not safe for sharing from unverified platforms to verified platforms Limitations Unverified platforms can only write blobs to /unverified Verified platforms cannot read Binary Blobs from /unverified Mitigation

17 Smart Blobs Design concept Same API Same access control list Different types of Smart Blobs can do different things Smart Blob type identified by a Blob type in the URL Types of Smart Blobs Binary Blobs JSON Blobs Config Blobs

18 JSON Blobs Features “JSON object in the cloud” Validate incoming data, regardless of platform type Provide a way to return only parts of the JSON object Use them for Player statistics Preferences Schematized saved games Ideally use them for everything but images and videos

19 Cross-Platform Companions sample OverviewCross-Title SharingCross-Platform CompanionsGlobal ConfigWrap Up

20 Sharing Data from Web to Phone Card EditorToolbox

21

22

23

24 Cloud Storage Access Control Lists PrefixRequired ClaimsPermissions /saves/titleId=9401931,4891894 user=me read,write /unverified/user=meread,write Access control list Title Group: 6DC49566-9750-4ACB-AD3E-2E17860D39D5

25 Restrictions & Guidance on /unverified /unverified has a 32MB quota (configurable) Restrictions Copy data from /unverified and delete the source blob Unverified platforms read from the copy and write to /unverified Prune unknown blobs from /unverified at startup time Best Practices for Verified Platforms Prune unknown blobs from /unverified at startup time Best Practices for Unverified Platforms Users can only break themselves, not other users! Important Note

26 Config Blobs in Global Data sample OverviewCross-Title SharingCross-Platform CompanionsGlobal ConfigWrap Up

27

28

29 UnicornCard.png,binary

30

31

32

33 Recap: Config Blobs Another “JSON object in the cloud” Enables A/B testing, localized config, etc. Random User, Random Request, Locale, Title ID Or even a game-provided string Features Can only be stored in Global Storage Config Blobs cannot currently be larger than 64 KB Limitations

34 Game Data Anywhere Using Xbox LIVE Cloud Storage Q & A OverviewCross-Title SharingCross-Platform CompanionsGlobal ConfigWrap Up

35


Download ppt "Game Data Anywhere Using Xbox LIVE Cloud Storage Michael Alyn Miller Data Storage Architect Microsoft Corporation."

Similar presentations


Ads by Google