IndyCodeCamp SDS May 16th 2009
Upcoming SlideShare
Loading in...5
×
 

IndyCodeCamp SDS May 16th 2009

on

  • 1,103 views

 

Statistics

Views

Total Views
1,103
Views on SlideShare
1,081
Embed Views
22

Actions

Likes
0
Downloads
0
Comments
1

2 Embeds 22

http://www.aaronstanleyking.com 21
http://aaronstanleyking.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

11 of 1

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Organizations often face challenges in managing their IT infrastructure when they are growing rapidly. In such situations, they may need to increase their data storage capabilities. Consequently, a large amount of time is spent in ramping up server capacity. This leads to increased installation and maintenance costs. SDS is a Software as a Service (SaaS) product, which helps organizations overcome these challenges.
  • Cross container queries are not supported. When specifying JOIN all the entities being joined must be in one container.The queries don't support projection. This means you cannot return The query result always returns entire entities.You can non-equijoin. That is the join condition can use operators other than equality operator. If you don't sepcify the join condition, you get cartesian product. That is all possible combination of the two sets.
  • Cross container queries are not supported. When specifying JOIN all the entities being joined must be in one container.The queries don't support projection. This means you cannot return The query result always returns entire entities.You can non-equijoin. That is the join condition can use operators other than equality operator. If you don't sepcify the join condition, you get cartesian product. That is all possible combination of the two sets.
  • TDS stands for Tabular Data Stream and it's the published protocol that clients use to communicate with SQL Server. SDS has always been built on the SQL Server technology foundation and it just made sense to allow our users to access their data via TDS. Azure will still use ACE for it’s Azure Storage but if your are just using SDS it will not be supported.
  • SQL Data Services (SDS) is the relational database offering for the Azure Services Platform. SDS exposes these relational capabilities through the existing network protocol, Tabular Data Stream (TDS). TDS is the underlying protocol used by all SQL Server client libraries such as ADO.NET, ODBC and all other third party and open source access libraries. The use of the existing protocol enables the service to extend the SQL data platform to the cloud while maintaining symmetry with the existing SQL Server applications models.SDS offers friction-free provisioning allowing customers to create databases without having to worry about hardware and software procurement, setup or maintenance. SDS also ensures high availability and fault tolerance. The pay as you grow model provides unlimited scale at low cost.TDS access to the database services allows customer applications to communicate with the service using existing client libraries (such as ADO.NET, ODBC or JDBC). The relational model described in this topic replaces the SDS ACE (Authority, Container and Entity) model. The current SDS CTP participants have the following options: Migrate existing applications to use the SDS relational service. Customers can optionally host their applications in Azure Compute. Use Windows Azure Storage for applications that don’t need relational capabilitiesThe SDS ACE model, with SOAP and REST interfaces, is being phased out.
  • TDS stands for Tabular Data Stream and it's the published protocol that clients use to communicate with SQL Server. SDS has always been built on the SQL Server technology foundation and it just made sense to allow our users to access their data via TDS. Azure will still use ACE for it’s Azure Storage but if your are just using SDS it will not be supported.
  • TDS stands for Tabular Data Stream and it's the published protocol that clients use to communicate with SQL Server. SDS has always been built on the SQL Server technology foundation and it just made sense to allow our users to access their data via TDS. Azure will still use ACE for it’s Azure Storage but if your are just using SDS it will not be supported.
  • ACIDAtomicity - all parts of a transaction succeed or none of then succeed. Integrity.Consistency - Nothing in your transaction will violate the rules of the database. Integrity.Isolation - Each transaction operates independently of every other transaction.Durability - Once the database says that data is committed there is no opportunity for that to be undoneBASE is Basically Available, Soft state, Eventually consistent. (An Amazon Machine Image (AMI) is just a linux virtual machine running on a server somewhere. )

IndyCodeCamp SDS May 16th 2009 IndyCodeCamp SDS May 16th 2009 Presentation Transcript

  • Aaron Stanley King SQL Data Services May 16th, 2009
  • Microsoft SQL Data Services:
  • :
  • Our Goals for Today •Benefits of SDS •Features of SDS •SDS object model •SSDS Explorer •Demos, Demos, Demos! •How to query in SDS •More Demos! •Recent News •SDS Future •Questions and Answers •BASE vs. ACID ( time permitting ) •Don’t you just love CTP? ( time permitting )
  •  “SQL Data Services is a scalable and cost- effective on-demand data storage and query processing service. SDS is a hosted application build on robust Microsoft SQL Server database and Windows Server technologies.”
  •  SDS is your data hosted by Microsoft with a strong service level agreement (SLA). The SLA not only ensures high availability but also performance and protection.
  • “SDS is built on robust SQL Server database technologies. Therefore, it benefits from the advantages of SQL Server, which is a broad data platform that can handle all types of data, from creation to archival.”
  • “SDS facilitates application development. It uses Web-based application programming interfaces (APIs), which support faster development of Windows applications. SDS uses protocols such as REST and SOAP with XML to communicate with applications. Its flexible data model supports any programming language.”
  • “The SDS database structure is flexible and scales according to business needs. The service is supported by multiple servers. Therefore, it has the ability to provide any required storage capacity. Also, there is no time delay due to server provisioning. The data is partitioned to meet these requirements.”
  • “Because SDS is accessible via the Internet, it ensures the availability of data to users in any geographic location. Further, SDS uses enterprise-grade hardware and program code, which are optimized for high throughput.”
  • “SDS provides organizations with secure data access and confidentiality. It is built on a relational database architecture that includes data protection. With SDS, multiple copies of data that you create or modify are stored across geographically distributed data centers. This ensures the safety of your data in the event of any disaster.”
  • “SDS provides you with a strong SLA that assures high availability, guaranteed performance, data protection, compliance, enterprise-level security features, and real-time mirrored database replication.”
  • “You can upload and query structured data, semi-structured data, and unstructured data. You can associate entities with large unstructured data objects called binary large objects (BLOBs). These BLOBs can be accessed through a URL.”
  • •Robust SQL Server support •Ease of application development •Scalability •Availability •Security •Strong SLA •Flexible data storage
  •  WEB-base APIs facilitate faster development of Windows applications.  SDS provides UNLIMITED data storage capacity.  SDS uses a PAY-AS-YOU-GROW pricing strategy.  SDS supports encryption through SSL.
  • SDS vs. SQL Server SDS •Anytime from Any place •Failure of one server will not impact performance •Unlimited amount of data SQL Server •On-premise data platform •Single point of failure •Data is restricted by the software and hardware
  •  You will discover: ◦ The ACE concept ( Yes, I know ) ◦ Uniform Resource Identifiers (URIs) ◦ Authorities ◦ Containers ◦ Entities ◦ Entity properties ◦ SQL Data Services RDBMS Model ◦ Recent News ◦ BASE vs. ACID
  • Authorities Containers Entities
  • <s:Authority xmlns:s=quot;http://schemas.microsoft.com/sitka/2008/03/quot;> <s:Id>heroes</s:Id> </s:Authority>
  • <s:Container xmlns:s=quot;http://schemas.microsoft.com/sitka/2008/03/quot;> <s:Id>people</s:Id> </s:Container>
  • <Entity xmlns:xsi=quot;http://www.w3.org/2001/XMLSchema-instancequot; xmlns:x=quot;http://www.w3.org/2001/XMLSchemaquot; xmlns:s=quot;http://schemas.microsoft.com/sitka/2008/03/quot;> <s:Id>id234985798</s:Id> <kind xsi:type='x:string'>customer</kind> <firstname xsi:type='x:string'>Jens</firstname> <surname xsi:type='x:dateTime'>Jensen</surname> <status xsi:type='x:string'>Gold member<status/> </Entity>
  • Or <customer xmlns:s='http://schemas.microsoft.com/sitka/2008/03/' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:x='http://www.w3.org/2001/XMLSchema' > <s:Id>id234985798</s:Id> <kind xsi:type='x:string'>customer</kind> <firstname xsi:type='x:string'>Jens</firstname> <surname xsi:type='x:dateTime'>Jensen</surname> <status xsi:type='x:string'>Gold member<status/> </customer>
  • C:Program FilesMicrosoft SQL Server Data Services SDKSsdsExplorer.exe SELECT | INSERT | UPDATE / INSERT | DELETE
  • https://<authority-id>.data.database.windows.net/v1/<container-id>/<entity-id> Comparison Operators >, >=, <, <=, ==, != Logical operators && (and), || (or),! (not) from e in entities select e from e in entities where e.<property> == “<value>quot; select e Syntax difference - mandatory system entity metadata vs entity properties: from e in entities where e.Id == quot;id234985798quot; select e or from e in entities where e[quot;firstnamequot;] == quot;Jensquot; select e
  • Ofkind(): from e in entities.OfKind(”customer”) select e Take(): (from e in entities where e*“firstname”+ == “Jensquot; select e).Take(10) Take(from e in entities.OfKind(“customer“) select e, 10) Join support: from c in entities.OfKind(“customer“) where c*“firstnamequot;+ == “Jensquot; from o in entities.OfKind(“order“) where o*“customerIdquot;] == c.Id select o
  • https://comics.data.database.windows.net/v1/Heroes from e in entities where e[quot;Teamquot;] == quot;Justice League of Americaquot; select e https://comics.data.database.windows.net/v1/Heroes/10 from e in entities where e[quot;Teamquot;] == quot;Justice League of Americaquot; && e[quot;Locationquot;] == quot;New York Cityquot; select e https://comics.data.database.windows.net/v1/Villains from h in entities where h[quot;Locationquot;] == “Gotham Cityquot; from v in entities where v[quot;Namequot;] == h[quot;MainVillainsquot;] select v
  • https://heroes.data.database.windows.net/v1/people from h in entities where h.Kind == quot;Heroquot; where h[quot;Locationquot;] == quot;New York Cityquot; from v in entities where v.Kind == quot;Villainquot; where v[quot;Namequot;] == h[quot;MainVillainquot;] select v
  • On March 10th, Microsoft announced the details of the plans to accelerate the delivery of core relational database features as part of SDS. They are phasing our ACE and the current model for a more direct interface to TDS ( Tabular Data Stream ). This means symmetric SQL Server functionality and behavior combined with compatibility with the existing tools you are familiar with. Tables?...Check Stored Procedures?...Check Triggers?...Check Views?...Check Indexes?...Check Visual Studio Compatibility?...Check ADO.Net Compatibility?...Check ODBC Compatibility?...Check
  • SQL Data Services RDBMS Model
  • Reporting Data Mining Reference Data ETL
  •  Website - http://perptech.com  Twitter – http://twitter.com/perpetualtech  Phone – (317) 824-0393  Toll free – (800) 538-0453  Blog – http://aaronstanleyking.com  Twitter – http://twitter.com/trendoid
  • Basically Available, Soft state, Eventually consistent vs. Atomicity , Consistency, Isolation, Durability