SlideShare une entreprise Scribd logo
1  sur  32
Télécharger pour lire hors ligne
CouchDB at Microsoft
We’re running it in Azure, and so can you
Will Perry
@willpe
willpe@microsoft.com
Windows Azure Group
Brian Benz
@bbenz
bbenz@microsoft.com
Microsoft Open Tech
 An app we’ve built
 How we built it. Some tips and tricks
 Share some experience on helping folks get used to non-relational databases.
 Open Source at Microsoft
 Running CouchDB in Windows Azure
the app.
 Daylight – a test automation system for the cloud
 Stores metadata about every revision of every test case in our product
 About 10k tests updated about 6 times a day
 Stores details of test runs and results
 About 5k results stored 6 times a day
 100% in the cloud
the database.
Must haves:
 Scale to millions/billions of documents
 Fairly loose schema
 Not a single point of failure
 Multiple indexes – really fast access to docs
Nice to haves:
 Web friendly
 Aggregate oriented
 Http Interface
 Easily partitionable
SQL
TABLE
COUCH
CouchDB was the most natural fit
for the data we had
and the app we were building
…and the Apache 2.0 license helped keep the lawyers happy
the architecture.
Multi-node deployment with application server and couch db running on each node
and replicating across the deployment
Node 0
Load Balancer
Node 1 Node 2
VHD VHD VHD
time-partitioned data.
Mar-2013 Feb-2013Apr-2013 Jan-2013
Test data becomes exponentially less useful over time. Part of our scale strategy is
deleting old data in a ‘sliding-window’ fashion.
semi-static typing.
[JsonProperty("attributes")]
public JObject Attributes { get; set; }
[JsonProperty("full_name", Required = Required.Always)]
public string FullName { get; set; }
[JsonProperty("priority")]
public int Priority { get; set; }
Strong typing when we want it, loose typing when we don’t
http.
using (var httpClient = new HttpClient(couchBaseUri))
{
return await httpClient.GetAsync(resultId);
}
We didn’t feel the need to use a client library, and just extended the built-in http stack to
encapsulate some of our conventions
design documents.
 In the source tree
 Used a directory tree to map to the json tree
 Compile into a json document at start-up
 Compare to existing design doc and overwrite
if different
culture shock.
Map/Reduce != T-SQL
Help out SQL junkies by talking in terms of the index.
experience.
We really like CouchDB. It’s been really reliable, simple to manage and reduced our
implementation costs.
Sometimes indexing can slow us down and there’s a reasonable ramp-up required for
new devs on the project.
Overall, we’re confident we made the right choice.
Wholly owned subsidiary of Microsoft
To advance Microsoft’s investment
in openness
Interoperability
Open source
Open standards
Windows Azure: What It Is
Flexible
Windows Azure
Virtual Machines
Windows Server 2008 R2
Windows Server 2012
OpenSUSE 12.1
CentOS 6.2
Ubuntu 12.04
SUSE Linux Enterprise Server SP2
VM Depot
http://vmdepot.msopentech.com
 Call to action: Developers can use VM Depot to reach new
audiences!
Windows Azure: What It Is
Deployment
Complexity
Operational
Responsibility Flexibility OS Security
IaaS Some High High
Linux or
Windows
Custom
PaaS Some Low High
Windows
only
Built-in
SaaS Low/none
None
Limited N/A Built-in
What’s the Difference?
Virtual Machine Sizes
VM Size
CPU
Cores
Memory
Bandwidth
(Mbps)
# Data
Disks
Extra
Small
Shared 768 MB 5 1
Small 1 1.75 GB 100 2
Medium 2 3.5 GB 200 4
Large 4 7 GB 400 8
Extra
Large
8 14 GB 800 16
Supported Web Frameworks
Supported Publishing Methods
Windows Azure Developer Center
 Open-source SDKs for
popular programming
languages, to get you
up and running quickly
 Choice of popular IDEs
such as Visual Studio
and Eclipse
 Consistent REST protocols and APIs across Windows Azure
services
http://www.windowsazure.com/en-us/develop/overview/
.NET driver
Node.js driver
Java driver
PHP driver
Python driver
Driver download page
azure topic verb options
Command Line Syntax Overview
prompt>
account
account location
account affinity-group
vm
vm disk
vm endpoint
vm image
service
service cert
site
config
download
import
list
show
delete
start
restart
shutdown
capture
create
attach
detach
browse
set
username
password
dns-prefix
vm-name
lb-port
target-image-name
source-path
disk-image-name
size-in-gb
thumbprint
value
-v
-vv
Example: Provisioning a Cluster
azure vm create couchsd "OpenLogic__OpenLogic-CentOS-62-20120531-
en-us-30GB.vhd" username password -l "West US" -e
azure vm create couchsd "OpenLogic__OpenLogic-CentOS-62-20120531-
en-us-30GB.vhd" username password -l "West US" -e 23 -c
azure vm create couchsd "OpenLogic__OpenLogic-CentOS-62-20120531-
en-us-30GB.vhd" username password -l "West US" -e 24 -c
azure vm endpoint create couchsd 27017 27017
azure vm endpoint create couchsd-2 27018 27018
azure vm endpoint create couchsd-3 27019 27019
Getting Started
http://www.windowsazure.com/en-us/pricing/free-trial/
http://channel9.msdn.com/Events/WindowsAzureConf/2012/KEY01
Sign up for a free trial
Learn about the latest features
Will Perry
@willpe
willpe@microsoft.com
Windows Azure Group
Brian Benz
@bbenz
bbenz@microsoft.com
Microsoft Open Tech

Contenu connexe

Tendances

Developing serverless applications with azure functions
Developing serverless applications with azure functionsDeveloping serverless applications with azure functions
Developing serverless applications with azure functionsJeff Chu
 
Azure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App PlatformAzure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App Platformgiventocode
 
Azure and web sites hackaton deck
Azure and web sites hackaton deckAzure and web sites hackaton deck
Azure and web sites hackaton deckAlexey Bokov
 
Cnam cours azure web sites
Cnam cours azure web sitesCnam cours azure web sites
Cnam cours azure web sitesAymeric Weinbach
 
Azure fundamental -Introduction
Azure fundamental -IntroductionAzure fundamental -Introduction
Azure fundamental -IntroductionManishK55
 
Infrastructure as Code for Azure: ARM or Terraform?
Infrastructure as Code for Azure: ARM or Terraform?Infrastructure as Code for Azure: ARM or Terraform?
Infrastructure as Code for Azure: ARM or Terraform?Katherine Golovinova
 
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data FactorTechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data FactorErwin de Kreuk
 
Durable Azure Functions
Durable Azure FunctionsDurable Azure Functions
Durable Azure FunctionsPushkar Saraf
 
Intro to Azure Static Web Apps
Intro to Azure Static Web AppsIntro to Azure Static Web Apps
Intro to Azure Static Web AppsMoaid Hathot
 
Azure PaaS (WebApp & SQL Database) workshop solution
Azure PaaS (WebApp & SQL Database) workshop solutionAzure PaaS (WebApp & SQL Database) workshop solution
Azure PaaS (WebApp & SQL Database) workshop solutionGelis Wu
 
Azure DevOps Multistage YAML Pipelines – Top 10 Features
Azure DevOps Multistage YAML Pipelines – Top 10 FeaturesAzure DevOps Multistage YAML Pipelines – Top 10 Features
Azure DevOps Multistage YAML Pipelines – Top 10 FeaturesMarc Müller
 
Securing an Azure full-PaaS architecture - Data saturday #0001 Pordenone
Securing an Azure full-PaaS architecture - Data saturday #0001 PordenoneSecuring an Azure full-PaaS architecture - Data saturday #0001 Pordenone
Securing an Azure full-PaaS architecture - Data saturday #0001 PordenoneMarco Obinu
 
TechEvent Infrastructure as Code on Azure
TechEvent Infrastructure as Code on AzureTechEvent Infrastructure as Code on Azure
TechEvent Infrastructure as Code on AzureTrivadis
 
Stephane Lapointe, Frank Boucher & Alexandre Brisebois: Les micro-services et...
Stephane Lapointe, Frank Boucher & Alexandre Brisebois: Les micro-services et...Stephane Lapointe, Frank Boucher & Alexandre Brisebois: Les micro-services et...
Stephane Lapointe, Frank Boucher & Alexandre Brisebois: Les micro-services et...MSDEVMTL
 
Windows Azure Web Sites - Things they don’t teach kids in school - Comunity D...
Windows Azure Web Sites- Things they don’t teach kids in school - Comunity D...Windows Azure Web Sites- Things they don’t teach kids in school - Comunity D...
Windows Azure Web Sites - Things they don’t teach kids in school - Comunity D...Maarten Balliauw
 
Azure sql introduction
Azure sql  introductionAzure sql  introduction
Azure sql introductionManishK55
 
The Essentials of Building Cloud-Based Web Apps with Azure
The Essentials of Building Cloud-Based Web Apps with AzureThe Essentials of Building Cloud-Based Web Apps with Azure
The Essentials of Building Cloud-Based Web Apps with AzureIdo Flatow
 

Tendances (20)

Developing serverless applications with azure functions
Developing serverless applications with azure functionsDeveloping serverless applications with azure functions
Developing serverless applications with azure functions
 
Azure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App PlatformAzure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App Platform
 
Cnam cours azure iaas
Cnam cours azure iaasCnam cours azure iaas
Cnam cours azure iaas
 
Azure and web sites hackaton deck
Azure and web sites hackaton deckAzure and web sites hackaton deck
Azure and web sites hackaton deck
 
Azure fundamentals 03
Azure fundamentals 03Azure fundamentals 03
Azure fundamentals 03
 
Cnam cours azure web sites
Cnam cours azure web sitesCnam cours azure web sites
Cnam cours azure web sites
 
Azure fundamental -Introduction
Azure fundamental -IntroductionAzure fundamental -Introduction
Azure fundamental -Introduction
 
Infrastructure as Code for Azure: ARM or Terraform?
Infrastructure as Code for Azure: ARM or Terraform?Infrastructure as Code for Azure: ARM or Terraform?
Infrastructure as Code for Azure: ARM or Terraform?
 
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data FactorTechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
TechnoramaNL Azure Key Vault, Azure Dev Ops and Azure Data Factor
 
Durable Azure Functions
Durable Azure FunctionsDurable Azure Functions
Durable Azure Functions
 
Intro to Azure Static Web Apps
Intro to Azure Static Web AppsIntro to Azure Static Web Apps
Intro to Azure Static Web Apps
 
Azure PaaS (WebApp & SQL Database) workshop solution
Azure PaaS (WebApp & SQL Database) workshop solutionAzure PaaS (WebApp & SQL Database) workshop solution
Azure PaaS (WebApp & SQL Database) workshop solution
 
Azure DevOps Multistage YAML Pipelines – Top 10 Features
Azure DevOps Multistage YAML Pipelines – Top 10 FeaturesAzure DevOps Multistage YAML Pipelines – Top 10 Features
Azure DevOps Multistage YAML Pipelines – Top 10 Features
 
Securing an Azure full-PaaS architecture - Data saturday #0001 Pordenone
Securing an Azure full-PaaS architecture - Data saturday #0001 PordenoneSecuring an Azure full-PaaS architecture - Data saturday #0001 Pordenone
Securing an Azure full-PaaS architecture - Data saturday #0001 Pordenone
 
TechEvent Infrastructure as Code on Azure
TechEvent Infrastructure as Code on AzureTechEvent Infrastructure as Code on Azure
TechEvent Infrastructure as Code on Azure
 
Stephane Lapointe, Frank Boucher & Alexandre Brisebois: Les micro-services et...
Stephane Lapointe, Frank Boucher & Alexandre Brisebois: Les micro-services et...Stephane Lapointe, Frank Boucher & Alexandre Brisebois: Les micro-services et...
Stephane Lapointe, Frank Boucher & Alexandre Brisebois: Les micro-services et...
 
Windows Azure Web Sites - Things they don’t teach kids in school - Comunity D...
Windows Azure Web Sites- Things they don’t teach kids in school - Comunity D...Windows Azure Web Sites- Things they don’t teach kids in school - Comunity D...
Windows Azure Web Sites - Things they don’t teach kids in school - Comunity D...
 
Azure web apps
Azure web appsAzure web apps
Azure web apps
 
Azure sql introduction
Azure sql  introductionAzure sql  introduction
Azure sql introduction
 
The Essentials of Building Cloud-Based Web Apps with Azure
The Essentials of Building Cloud-Based Web Apps with AzureThe Essentials of Building Cloud-Based Web Apps with Azure
The Essentials of Building Cloud-Based Web Apps with Azure
 

Similaire à Experiences using CouchDB inside Microsoft's Azure team

Normalizing x pages web development
Normalizing x pages web development Normalizing x pages web development
Normalizing x pages web development Shean McManus
 
GWAB 2015 - Data Plaraform
GWAB 2015 - Data PlaraformGWAB 2015 - Data Plaraform
GWAB 2015 - Data PlaraformMarcelo Paiva
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressGeorge Kanellopoulos
 
Windows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan WongWindows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan WongSpiffy
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Emerson Eduardo Rodrigues Von Staffen
 
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...Amazon Web Services
 
Understanding the Windows Azure Platform - Dec 2010
Understanding the Windows Azure Platform - Dec 2010Understanding the Windows Azure Platform - Dec 2010
Understanding the Windows Azure Platform - Dec 2010DavidGristwood
 
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...Paulo Condeça 🌐
 
Mix Tech Ed Update No Video
Mix Tech Ed Update No VideoMix Tech Ed Update No Video
Mix Tech Ed Update No VideoAllyWick
 
Experience sql server on l inux and docker
Experience sql server on l inux and dockerExperience sql server on l inux and docker
Experience sql server on l inux and dockerBob Ward
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Osconvijayrvr
 
Modern Development with Microsoft
Modern Development with MicrosoftModern Development with Microsoft
Modern Development with MicrosoftJoshua Drew
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAmazon Web Services
 
Building Cloud-Native Applications with Microsoft Windows Azure
Building Cloud-Native Applications with Microsoft Windows AzureBuilding Cloud-Native Applications with Microsoft Windows Azure
Building Cloud-Native Applications with Microsoft Windows AzureBill Wilder
 
Just another Wordpress weblog, but more cloudy
Just another Wordpress weblog, but more cloudyJust another Wordpress weblog, but more cloudy
Just another Wordpress weblog, but more cloudyMaarten Balliauw
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Bluegrass Digital
 
2014.10.22 Building Azure Solutions with Office 365
2014.10.22 Building Azure Solutions with Office 3652014.10.22 Building Azure Solutions with Office 365
2014.10.22 Building Azure Solutions with Office 365Marco Parenzan
 
Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)湯米吳 Tommy Wu
 

Similaire à Experiences using CouchDB inside Microsoft's Azure team (20)

Normalizing x pages web development
Normalizing x pages web development Normalizing x pages web development
Normalizing x pages web development
 
GWAB 2015 - Data Plaraform
GWAB 2015 - Data PlaraformGWAB 2015 - Data Plaraform
GWAB 2015 - Data Plaraform
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy Wordress
 
Windows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan WongWindows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan Wong
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
 
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
 
Understanding the Windows Azure Platform - Dec 2010
Understanding the Windows Azure Platform - Dec 2010Understanding the Windows Azure Platform - Dec 2010
Understanding the Windows Azure Platform - Dec 2010
 
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...
 
Mix Tech Ed Update No Video
Mix Tech Ed Update No VideoMix Tech Ed Update No Video
Mix Tech Ed Update No Video
 
Experience sql server on l inux and docker
Experience sql server on l inux and dockerExperience sql server on l inux and docker
Experience sql server on l inux and docker
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Oscon
 
Modern Development with Microsoft
Modern Development with MicrosoftModern Development with Microsoft
Modern Development with Microsoft
 
Microsoft Azure
Microsoft AzureMicrosoft Azure
Microsoft Azure
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for Government
 
Building Cloud-Native Applications with Microsoft Windows Azure
Building Cloud-Native Applications with Microsoft Windows AzureBuilding Cloud-Native Applications with Microsoft Windows Azure
Building Cloud-Native Applications with Microsoft Windows Azure
 
Just another Wordpress weblog, but more cloudy
Just another Wordpress weblog, but more cloudyJust another Wordpress weblog, but more cloudy
Just another Wordpress weblog, but more cloudy
 
Windows azure overview for SharePoint Pros
Windows azure overview for SharePoint Pros Windows azure overview for SharePoint Pros
Windows azure overview for SharePoint Pros
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015
 
2014.10.22 Building Azure Solutions with Office 365
2014.10.22 Building Azure Solutions with Office 3652014.10.22 Building Azure Solutions with Office 365
2014.10.22 Building Azure Solutions with Office 365
 
Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)
 

Plus de Brian Benz

Azure Virtual Machines Deployment Scenarios
Azure Virtual Machines Deployment ScenariosAzure Virtual Machines Deployment Scenarios
Azure Virtual Machines Deployment ScenariosBrian Benz
 
Big App Workloads on Microsoft Azure - TechEd Europe 2014
Big App Workloads on Microsoft Azure - TechEd Europe 2014Big App Workloads on Microsoft Azure - TechEd Europe 2014
Big App Workloads on Microsoft Azure - TechEd Europe 2014Brian Benz
 
Tech Ed North America 2014 - Java on Azure
Tech Ed North America 2014 - Java on AzureTech Ed North America 2014 - Java on Azure
Tech Ed North America 2014 - Java on AzureBrian Benz
 
Tech ED 2014 Running Oracle Databases and Application Servers on Azurev1
Tech ED 2014   Running Oracle Databases and Application Servers on Azurev1Tech ED 2014   Running Oracle Databases and Application Servers on Azurev1
Tech ED 2014 Running Oracle Databases and Application Servers on Azurev1Brian Benz
 
Mongo db world 2014 nyc mongodb on azure - tips tricks and examples
Mongo db world 2014 nyc   mongodb on azure - tips tricks and examplesMongo db world 2014 nyc   mongodb on azure - tips tricks and examples
Mongo db world 2014 nyc mongodb on azure - tips tricks and examplesBrian Benz
 
NoSQL on microsoft azure april 2014
NoSQL on microsoft azure   april 2014NoSQL on microsoft azure   april 2014
NoSQL on microsoft azure april 2014Brian Benz
 
Node.js on microsoft azure april 2014
Node.js on microsoft azure april 2014Node.js on microsoft azure april 2014
Node.js on microsoft azure april 2014Brian Benz
 
Ruby on microsoft azure april 2014
Ruby on microsoft azure   april 2014Ruby on microsoft azure   april 2014
Ruby on microsoft azure april 2014Brian Benz
 
Build 2014 - Running Java and Oracle Applications on Microsoft Azure
Build 2014 - Running Java and Oracle Applications on Microsoft AzureBuild 2014 - Running Java and Oracle Applications on Microsoft Azure
Build 2014 - Running Java and Oracle Applications on Microsoft AzureBrian Benz
 
Java on Microsoft Azure
Java on Microsoft AzureJava on Microsoft Azure
Java on Microsoft AzureBrian Benz
 
Solr on Microsoft Azure
Solr on Microsoft AzureSolr on Microsoft Azure
Solr on Microsoft AzureBrian Benz
 
Eclipse Development with Microsoft Azure
Eclipse Development with Microsoft Azure Eclipse Development with Microsoft Azure
Eclipse Development with Microsoft Azure Brian Benz
 
Working with Chef on Microsoft Windows and Microsoft Azure
Working with Chef on Microsoft Windows and Microsoft AzureWorking with Chef on Microsoft Windows and Microsoft Azure
Working with Chef on Microsoft Windows and Microsoft AzureBrian Benz
 

Plus de Brian Benz (13)

Azure Virtual Machines Deployment Scenarios
Azure Virtual Machines Deployment ScenariosAzure Virtual Machines Deployment Scenarios
Azure Virtual Machines Deployment Scenarios
 
Big App Workloads on Microsoft Azure - TechEd Europe 2014
Big App Workloads on Microsoft Azure - TechEd Europe 2014Big App Workloads on Microsoft Azure - TechEd Europe 2014
Big App Workloads on Microsoft Azure - TechEd Europe 2014
 
Tech Ed North America 2014 - Java on Azure
Tech Ed North America 2014 - Java on AzureTech Ed North America 2014 - Java on Azure
Tech Ed North America 2014 - Java on Azure
 
Tech ED 2014 Running Oracle Databases and Application Servers on Azurev1
Tech ED 2014   Running Oracle Databases and Application Servers on Azurev1Tech ED 2014   Running Oracle Databases and Application Servers on Azurev1
Tech ED 2014 Running Oracle Databases and Application Servers on Azurev1
 
Mongo db world 2014 nyc mongodb on azure - tips tricks and examples
Mongo db world 2014 nyc   mongodb on azure - tips tricks and examplesMongo db world 2014 nyc   mongodb on azure - tips tricks and examples
Mongo db world 2014 nyc mongodb on azure - tips tricks and examples
 
NoSQL on microsoft azure april 2014
NoSQL on microsoft azure   april 2014NoSQL on microsoft azure   april 2014
NoSQL on microsoft azure april 2014
 
Node.js on microsoft azure april 2014
Node.js on microsoft azure april 2014Node.js on microsoft azure april 2014
Node.js on microsoft azure april 2014
 
Ruby on microsoft azure april 2014
Ruby on microsoft azure   april 2014Ruby on microsoft azure   april 2014
Ruby on microsoft azure april 2014
 
Build 2014 - Running Java and Oracle Applications on Microsoft Azure
Build 2014 - Running Java and Oracle Applications on Microsoft AzureBuild 2014 - Running Java and Oracle Applications on Microsoft Azure
Build 2014 - Running Java and Oracle Applications on Microsoft Azure
 
Java on Microsoft Azure
Java on Microsoft AzureJava on Microsoft Azure
Java on Microsoft Azure
 
Solr on Microsoft Azure
Solr on Microsoft AzureSolr on Microsoft Azure
Solr on Microsoft Azure
 
Eclipse Development with Microsoft Azure
Eclipse Development with Microsoft Azure Eclipse Development with Microsoft Azure
Eclipse Development with Microsoft Azure
 
Working with Chef on Microsoft Windows and Microsoft Azure
Working with Chef on Microsoft Windows and Microsoft AzureWorking with Chef on Microsoft Windows and Microsoft Azure
Working with Chef on Microsoft Windows and Microsoft Azure
 

Dernier

(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...Escorts Call Girls
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...singhpriety023
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxellan12
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)Damian Radcliffe
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...tanu pandey
 
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.soniya singh
 
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...SofiyaSharma5
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Standkumarajju5765
 
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...Diya Sharma
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Servicesexy call girls service in goa
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663Call Girls Mumbai
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersDamian Radcliffe
 

Dernier (20)

(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
 
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
 
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
 
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
 
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
 
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
 
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
 
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
✂️ 👅 Independent Andheri Escorts With Room Vashi Call Girls 💃 9004004663
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
 

Experiences using CouchDB inside Microsoft's Azure team

  • 1. CouchDB at Microsoft We’re running it in Azure, and so can you
  • 2. Will Perry @willpe willpe@microsoft.com Windows Azure Group Brian Benz @bbenz bbenz@microsoft.com Microsoft Open Tech
  • 3.  An app we’ve built  How we built it. Some tips and tricks  Share some experience on helping folks get used to non-relational databases.  Open Source at Microsoft  Running CouchDB in Windows Azure
  • 4. the app.  Daylight – a test automation system for the cloud  Stores metadata about every revision of every test case in our product  About 10k tests updated about 6 times a day  Stores details of test runs and results  About 5k results stored 6 times a day  100% in the cloud
  • 5.
  • 6. the database. Must haves:  Scale to millions/billions of documents  Fairly loose schema  Not a single point of failure  Multiple indexes – really fast access to docs Nice to haves:  Web friendly  Aggregate oriented  Http Interface  Easily partitionable SQL TABLE COUCH
  • 7. CouchDB was the most natural fit for the data we had and the app we were building …and the Apache 2.0 license helped keep the lawyers happy
  • 8. the architecture. Multi-node deployment with application server and couch db running on each node and replicating across the deployment Node 0 Load Balancer Node 1 Node 2 VHD VHD VHD
  • 9. time-partitioned data. Mar-2013 Feb-2013Apr-2013 Jan-2013 Test data becomes exponentially less useful over time. Part of our scale strategy is deleting old data in a ‘sliding-window’ fashion.
  • 10. semi-static typing. [JsonProperty("attributes")] public JObject Attributes { get; set; } [JsonProperty("full_name", Required = Required.Always)] public string FullName { get; set; } [JsonProperty("priority")] public int Priority { get; set; } Strong typing when we want it, loose typing when we don’t
  • 11. http. using (var httpClient = new HttpClient(couchBaseUri)) { return await httpClient.GetAsync(resultId); } We didn’t feel the need to use a client library, and just extended the built-in http stack to encapsulate some of our conventions
  • 12. design documents.  In the source tree  Used a directory tree to map to the json tree  Compile into a json document at start-up  Compare to existing design doc and overwrite if different
  • 13. culture shock. Map/Reduce != T-SQL Help out SQL junkies by talking in terms of the index.
  • 14. experience. We really like CouchDB. It’s been really reliable, simple to manage and reduced our implementation costs. Sometimes indexing can slow us down and there’s a reasonable ramp-up required for new devs on the project. Overall, we’re confident we made the right choice.
  • 15. Wholly owned subsidiary of Microsoft To advance Microsoft’s investment in openness Interoperability Open source Open standards
  • 16. Windows Azure: What It Is Flexible
  • 17. Windows Azure Virtual Machines Windows Server 2008 R2 Windows Server 2012 OpenSUSE 12.1 CentOS 6.2 Ubuntu 12.04 SUSE Linux Enterprise Server SP2
  • 18. VM Depot http://vmdepot.msopentech.com  Call to action: Developers can use VM Depot to reach new audiences!
  • 20.
  • 21. Deployment Complexity Operational Responsibility Flexibility OS Security IaaS Some High High Linux or Windows Custom PaaS Some Low High Windows only Built-in SaaS Low/none None Limited N/A Built-in What’s the Difference?
  • 22. Virtual Machine Sizes VM Size CPU Cores Memory Bandwidth (Mbps) # Data Disks Extra Small Shared 768 MB 5 1 Small 1 1.75 GB 100 2 Medium 2 3.5 GB 200 4 Large 4 7 GB 400 8 Extra Large 8 14 GB 800 16
  • 25. Windows Azure Developer Center  Open-source SDKs for popular programming languages, to get you up and running quickly  Choice of popular IDEs such as Visual Studio and Eclipse  Consistent REST protocols and APIs across Windows Azure services http://www.windowsazure.com/en-us/develop/overview/ .NET driver Node.js driver Java driver PHP driver Python driver Driver download page
  • 26.
  • 27.
  • 28. azure topic verb options Command Line Syntax Overview prompt> account account location account affinity-group vm vm disk vm endpoint vm image service service cert site config download import list show delete start restart shutdown capture create attach detach browse set username password dns-prefix vm-name lb-port target-image-name source-path disk-image-name size-in-gb thumbprint value -v -vv
  • 29. Example: Provisioning a Cluster azure vm create couchsd "OpenLogic__OpenLogic-CentOS-62-20120531- en-us-30GB.vhd" username password -l "West US" -e azure vm create couchsd "OpenLogic__OpenLogic-CentOS-62-20120531- en-us-30GB.vhd" username password -l "West US" -e 23 -c azure vm create couchsd "OpenLogic__OpenLogic-CentOS-62-20120531- en-us-30GB.vhd" username password -l "West US" -e 24 -c azure vm endpoint create couchsd 27017 27017 azure vm endpoint create couchsd-2 27018 27018 azure vm endpoint create couchsd-3 27019 27019
  • 30.
  • 32. Will Perry @willpe willpe@microsoft.com Windows Azure Group Brian Benz @bbenz bbenz@microsoft.com Microsoft Open Tech