Your SlideShare is downloading. ×
Ing. Eduardo Castro Martínezecastro@grupoasesor.nethttp://tinyurl.com/comunidadwindows
ARC306. Open Data For The Enterprise.Jonathan CarterDEV323. Best Practices: Creating ODataServices using WCF Data Servic. ...
Microsoft SQL AzureInformation Platform as a Service  Managed Service                    Scale on Demand               Inn...
Subscription   Used to map service usage to the billing instrument   Users may have many subscriptionsLogical Server   Aki...
A relational DB in the cloud                                                                SQL Azure Database            ...
Single Logical Multiple Physical  Database         Replicas                      Repli                      ca 1          ...
Reference     Data Sync                    Data Symmetric Programming Model           Data Hub Aggregation• Initial servic...
Clear Feedback: “I want a database in the Cloud”Familiar SQL Server relational modelUses existing APIs & toolsBuilt for th...
Application                                              Application                            Application               ...
SQL Azure Database                                                     Others (Future)                               SQL A...
SQL Azure Database                            Database                     TDSApplication                                 ...
SQL Azure Database                     DatabaseApplication                                     Max database               ...
Applications use standard SQL client libraries:                                                                           ...
Subscription  Coordinated across all Azure services  Executed in parallel w/retriesServer  May occur between data centers ...
Live DNS Cluster             Customer                                                      Live DNS             Browser   ...
1                                       TDS Gateway                                         Front-end Node                ...
AccountServerDatabase
Build a custom OData Service?Configure and Deploy your OData Service?Reach your audience?Share only what you want?Plan for...
OData is the easiest way to share dataDo it wrong and it will cost youMobile and JavaScript clients are importantSharing t...
“Open Data”
The “Open DataProtocol”
1.      Based on HTTP & ATOM2.      Open Specification Promise     HTTP/ATOM     + QUERY     + JSON     + METADATA
 HTTP Reach (devices and    platforms)   Metadata   Formats (ATOM & JSON)   Semantics(GET/PUT/POST/    DELETE)   Uri...
HTTPSuitable for devicesSimplePowerfulEco-system  Platforms:  Javascript, PHP, Java, .NET, Silverlight, Ruby, i  OS etc  P...
For development you need:  Windows Azure SDK and Windows Azure  Tools for VS  Azure account with at least:    One Storage ...
Options   Use SSIS   Script Database and run script in new   database   Code in your app to initialize database(Coming Soo...
.getJSON(..)     <script>       {“x”:1}          callback({“x”:1})
Authentication & Authorization       Authenticates and sets: HttpContext.Current.User
AuthN  Windows Auth – simple for in the enterprise  services  Basic Auth – maximum reach  Forms Auth – purely for integrat...
authentica                   tes                   Gives                   consent                                        ...
Try to Authenticate      someone@mycorp.c      om                                             someone@mycorp.comAuthentica...
need to access       x@y.com‟s data           token: x@y.com                                             token: x@y.com ca...
WithDataServiceContext.IgnoreMissingProperties:   You can safely       Add a new optional property       Remove a property...
You just learned how to:  The easiest way to build a web-api  The easiest way to host a web-api  How to do it the right wa...
Windows Azure SDK and Windows Azure Tools forMicrosoft Visual Studio http://bit.ly/mMcoc3JSONP component (with recent bug ...
http://www.odata.orghttp://msdn.microsoft.com/odata                     http://odata.codeplex.comhttp://odata.msteched.com...
http://www.microsoft.com/visualstudiohttp://www.microsoft.com/visualstudio/en-us/lightswitchhttp://www.microsoft.com/expre...
http://northamerica.msteched.comwww.microsoft.com/teched                 www.microsoft.com/learninghttp://microsoft.com/te...
Sql azure data services OData
Sql azure data services OData
Sql azure data services OData
Sql azure data services OData
Sql azure data services OData
Sql azure data services OData
Upcoming SlideShare
Loading in...5
×

Sql azure data services OData

1,896

Published on

In this presentation we explore SQL Azure and OData.

Best Regards,

Eduardo Castro
http://tinyurl.com/comunidadwindows

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,896
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Sql azure data services OData"

  1. 1. Ing. Eduardo Castro Martínezecastro@grupoasesor.nethttp://tinyurl.com/comunidadwindows
  2. 2. ARC306. Open Data For The Enterprise.Jonathan CarterDEV323. Best Practices: Creating ODataServices using WCF Data Servic. AlexJamesDEV325. Best Practices for BuildingCustom Open Data Protocol (OData)Services with Windows Azure. Alex James
  3. 3. Microsoft SQL AzureInformation Platform as a Service Managed Service Scale on Demand Innovate Faster Platform capabilities delivered as a service (Database, Data Database as a utility with Innovate with new data Sync, Reporting…) pay as you grow scaling application patterns Reduced complexity, greater Rely on Business-ready Build cloud-based data flexibility SLAs solutions on a familiar relational model Easy provisioning and Enable multi-tenant deployment solutions Build on existing developer skills and familiar Transact- Auto High availability and Manage multiple servers SQL syntax fault tolerant
  4. 4. Subscription Used to map service usage to the billing instrument Users may have many subscriptionsLogical Server Akin to SQL Server Instance Unit of Geo-Location & Billing 1:1 Subscription & serverUser Database Restricted T-SQL surface area Additional catalog views provided e.g. sys.billing, sys.firewall_rules, etc
  5. 5. A relational DB in the cloud SQL Azure Database Data Hub Others (Future) .NET Services SQL Services Applications Relational database as a service Live Services Windows Azure Highly available, automatically maintained Extension of the SQL Server Data Platform Applications Windows Windows Windows Others Server Vista/XP Mobile
  6. 6. Single Logical Multiple Physical Database Replicas Repli ca 1 Repli D ca 2 B Repli ca 3
  7. 7. Reference Data Sync Data Symmetric Programming Model Data Hub Aggregation• Initial services – core RDBMS capabilities with SQL Azure Database, Data Sync• Future Offerings • Additional data platform capabilities: Reporting, BI • New services: Reference Data
  8. 8. Clear Feedback: “I want a database in the Cloud”Familiar SQL Server relational modelUses existing APIs & toolsBuilt for the Cloud with availability and scaleAccessible to all from PHP, Ruby, and JavaFocus on combining the best features of SQL Server running at scale with low friction
  9. 9. Application Application Application Browser Browser ODBC, OLEDB, Application Application REST Client REST Client SQL Client* ADO.Net PHP, Ruby, … Cloud Cloud Evolves HTTP+REST HTTP+REST HTTP HTTP TDS Windows Azure Windows AzureData Center Data Center Web App REST (Astoria) Web App REST Client ADO.Net + EF SQL Client* REST/SOAP + ACE Model TDS + TSQL Model SDS Current SDS Next * Client access enabled using TDS for ODBC, ADO.Net, OLEDB, PHP-SQL, Ruby, …
  10. 10. SQL Azure Database Others (Future) SQL AzureApplications Windows Azure AppFabricWindows Azure Applications Windows Others
  11. 11. SQL Azure Database Database TDSApplication Database DatabaseSQL Azure Database Others (Future)
  12. 12. SQL Azure Database DatabaseApplication Max database Database size is 50 GB DatabaseApplication Database
  13. 13. Applications use standard SQL client libraries: ODBC, ADO.Net, PHP, … Application Internet Azure Cloud TDS (tcp) Security Boundary Load balancer forwards „sticky‟ sessions to TDS LB protocol tier TDS (tcp) Gateway Gateway Gateway Gateway Gateway Gateway Gateway: TDS protocol gateway, enforces AUTHN/AUTHZ policy; proxy to CloudDB TDS (tcp)L SQL SQL SQL SQL Scalability and Availability: Fabric, Failover, Replication, and Load balancing
  14. 14. Subscription Coordinated across all Azure services Executed in parallel w/retriesServer May occur between data centers Point where Geo-location is establishedDatabase Always occurs within a single data center Cross node operations executed during this process e.g. add new db to sys.databases on the master
  15. 15. Live DNS Cluster Customer Live DNS Browser Svc 1 Datacenter (Sub-Region) 5 Portal LB Gateway LB 2 4 3 6Front-end Node Front-end Node Front-end Node Front-end NodeAdmin Portal Admin Portal Gateway Gateway 7 Backend Node Backend Node Backend NodeSQL Server SQL Server SQL Server Mgmt. Mgmt. Mgmt. Services Fabric Services Fabric Services Fabric
  16. 16. 1 TDS Gateway Front-end Node TDS Session Protocol Parser 2 3 Gateway Logic Master Cluster Master Node 4 Master Node Components 7 5 8 6Backend Node 1 Backend Node 2 Backend Node 3 SQL Instance SQL Instance SQL Instance SQL DB SQL DB SQL DB Scalability and and Availability: Fabric,Failover,Replication, and Load balancing Scalability Availability: Fabric, Failover, Replication, and Load balancing
  17. 17. AccountServerDatabase
  18. 18. Build a custom OData Service?Configure and Deploy your OData Service?Reach your audience?Share only what you want?Plan for the future?
  19. 19. OData is the easiest way to share dataDo it wrong and it will cost youMobile and JavaScript clients are importantSharing too much can hurt your careerThings change.
  20. 20. “Open Data”
  21. 21. The “Open DataProtocol”
  22. 22. 1. Based on HTTP & ATOM2. Open Specification Promise HTTP/ATOM + QUERY + JSON + METADATA
  23. 23.  HTTP Reach (devices and platforms) Metadata Formats (ATOM & JSON) Semantics(GET/PUT/POST/ DELETE) Uri Conventions & Query Language
  24. 24. HTTPSuitable for devicesSimplePowerfulEco-system Platforms: Javascript, PHP, Java, .NET, Silverlight, Ruby, i OS etc Producers: SharePoint, DataMarket, CRM, StackOverflow, Netflix etc.
  25. 25. For development you need: Windows Azure SDK and Windows Azure Tools for VS Azure account with at least: One Storage Account One Hosted Service Registered Certificate SQL Azure Database
  26. 26. Options Use SSIS Script Database and run script in new database Code in your app to initialize database(Coming Soon)http://www.sqlazurelabs.com/ImportExport.aspx (EXPORT) DacImportExportCli.exe -s serverName -d databaseName -f C:filePathexportFileName.bacpac -x -e (IMPORT) DacImportExportCli.exe -s serverName.database.windows.net -d databaseName -f C:filePathexportFileName.bacpac -i
  27. 27. .getJSON(..) <script> {“x”:1} callback({“x”:1})
  28. 28. Authentication & Authorization Authenticates and sets: HttpContext.Current.User
  29. 29. AuthN Windows Auth – simple for in the enterprise services Basic Auth – maximum reach Forms Auth – purely for integration OAuth – most flexible – but needs custom code OAuth HttpModule Custom client code to acquire credentials
  30. 30. authentica tes Gives consent someone@facebook.com someone@facebook .comAuthenticates and sets: HttpContext.Current.User
  31. 31. Try to Authenticate someone@mycorp.c om someone@mycorp.comAuthenticates and sets: HttpContext.Current.User
  32. 32. need to access x@y.com‟s data token: x@y.com token: x@y.com canread canreadAuthenticates and sets: HttpContext.Current.User
  33. 33. WithDataServiceContext.IgnoreMissingProperties: You can safely Add a new optional property Remove a property – Read Only Add unrelated new types But lots of things can go wrong. Add a required property or navigation Remove a property – Read/Write Rename a property (fail). Remove a type / feedRealistic Solution V1/service.svc/ V2/service.svc/
  34. 34. You just learned how to: The easiest way to build a web-api The easiest way to host a web-api How to do it the right way: Configuration Security & Reach VersioningYou know how to create a REAL service…
  35. 35. Windows Azure SDK and Windows Azure Tools forMicrosoft Visual Studio http://bit.ly/mMcoc3JSONP component (with recent bug fix)http://bit.ly/mbk04cUsing ASP.NET Output Caching with WCF Data Serviceshttp://bit.ly/gXmbdEAuthentication posts on the OData team bloghttp://bit.ly/gXmbdEThe New Hands-on Lab on ACS + WP7 + OAuth2.0OData Service http://bit.ly/h8gcJV
  36. 36. http://www.odata.orghttp://msdn.microsoft.com/odata http://odata.codeplex.comhttp://odata.msteched.com/tena2011/sessions.svc
  37. 37. http://www.microsoft.com/visualstudiohttp://www.microsoft.com/visualstudio/en-us/lightswitchhttp://www.microsoft.com/expression/http://blogs.msdn.com/b/somasegar/http://blogs.msdn.com/b/bharry/http://www.microsoft.com/sqlserver/en/us/default.aspxhttp://www.facebook.com/visualstudio
  38. 38. http://northamerica.msteched.comwww.microsoft.com/teched www.microsoft.com/learninghttp://microsoft.com/technet http://microsoft.com/msdn

×