Microsoft and PHP
@joshholmes
Josh Holmes@joshholmes
[email protected]://www.joshholmes.com
excited about the cloud
In House or Hosted Servers
TIME
IT C
APA
CIT
Y
Actual Load
Allocated IT-
capacities
“Waste“ of capacities
“Under-supply“ of capacities
Fixed cost of IT-capacities
Load Forecast
Barrier forinnovations
Cloud Computing
Actual Load
Allocated IT capacities
Reduction of initial
investments
Reduction of “over-
supply“
No “under-supply“
Possible reduction of IT-capacities
in case of reduced load
Time
IT C
APA
CIT
YLoad
Forecast
Private(On-Premise)
Types of Hosting Solutions
Storage
Server HW
Networking
Servers
Databases
Virtualization
Runtimes
Applications
Security & Integration
You
man
age
Platform(as a
Service)
Storage
Server HW
Networking
Servers
Databases
Virtualization
Runtimes
Applications
Security & Integration M
anaged by vendor
You
man
age
Runtimes
Infrastructure
(as a Service)
Storage
Server HW
Networking
Servers
Databases
Virtualization
Applications
Security & Integration
Managed by vendor
You
man
age
The Microsoft Cloud~100 Globally Distributed Data Centers
Quincy, WA Chicago, IL San Antonio, TX Dublin, Ireland Generation 4 DCs
Data Storage
Windows Azure Data Storage
Account
Queue
Blob
Tables
Drives
Azure Platform Data Storage Options
• Windows Azure Data Storage• Blobs
• Unstructured data storage• Tables
• Semi-structured or tabular data storage• Queues
• Buffered delivery data storage• Drives
• Durable NTFS volumes that Windows Azure applications can use. See: http://microsoftpdc.com/Sessions/SVC14
• SQL Azure• Relational data storage
Windows Azure Data Storage - Tables• Semi-Structured data• Tables contain entities• Entities contain properties• May be partitioned across
thousands of servers.• Support ACID transactions
over single entities• Queries over entire table• .NET and REST interfaces
Windows Azure Data Storage – Tables (Terms Part 1)• Table
● Contains a set of entities. • Entity (Row)
● Basic data items stored in a table. • Property (Column)
● Single value in an entity. • RowKey
● Unique ID of the entity within a partition• Timestamp
● Time it was created
Windows Azure Data Storage – Tables (Terms Part 2)• Partition
● Entities in a table with the same partition key• PartitionKey
● Segments entities in to partitions to automatically distribute the table’s entities over many storage nodes.
• Sort Order● There is a single index provided for the CTP,
where all entities in a table are sorted by PartitionKey and then RowKey
Key Example – Blog Posts
• Getting all of dunnry’s blog posts is fast● Single partition
• Getting all posts after 2008-03-27 is slow● Traverse all partitions
Partition KeyAuthor
Row KeyPermalink
Property 3ChangedO
nProperty 4
Title
smarx i-love-tables 2009-07-04 I Love Tables!
smarx tables-are-awesome 2009-07-12 Tables are
Awesome!
dunnry cheetos 2008-03-27 I Love Cheetos
dunnry blogging-again 2009-07-15 Finally Blogging
Again
dunnry phluffyfotos 2008-04-09 PhluffyFotos!
Partition 1
Partition 2
SQL Azure
SQL Azure Features
• Supported● Tables, Indexes, Views● Stored Procedures● Triggers● Constraints● Table Variables● Temp Tables (#Name)
• Not Supported● Physical Server Access ● Catalog DDL● Common Language
Runtime● Service Broker● Reporting Services● Analysis Services● Distributed
Transactions and Queries
Microsoft WebsiteSpark
10 people shops 3 copies of VS 2 copies of Expression Web 1 copy of Expression Studio 4 procs of SQL Server 4 procs of Windows Server
Resources Web Platform Installer
http://www.microsft.com/web/gallery How WinCache makes PHP run faster
http://blogs.iis.net/ksingla/archive/2009/09/19/how-wincache-make-php-run-faster.aspx
Using WinCache Extensions for PHP http://learn.iis.net/page.aspx/678/using-window
s-cache-extension-for-php/
PHP 5.3 Changes to Support Windows http://
docs.php.net/manual/en/migration53.windows.php
ResourcesSQL Server PHP Blog
http://blogs.msdn.com/sqlphp Josh Holmes’ Blog
http://www.joshholmes.com
Top Related