tisdag, december 20, 2011

LEAP – Lead Enterprise Architect Program

The Lead Enterprise Architect Program (LEAP) is a program that aims to give understanding of the strategic core components of the Microsoft platform.
LEAP consists of five master class training sessions as well as three days of sessions at Microsoft headquarters in Redmond, Seattle.
LEAP Sweden 2012 - Invitation
Vill du lära dig mer om Microsofts plattform? Då är LEAP-programmet för dig!
Under fem Master Classes kommer vi att gå igenom olika delar av vår plattform. Programmet avslutas med en resa till Redmond där talare från Microsoft Corporation fördjupar ytterligare inom olika ämnen.

Schema

15:e februari (halvdag inklusive middag)
Application architecture on the Microsoft Platform
16:e februari
Cloud computing for Architects
8:e mars
Identity & Access Management
4:e april
Integration on premises and in the cloud
3:e maj
Business Intelligence and Enterprise Search
29:e – 31:a maj
Tre heldagar med sessioner på Microsofts huvudkontor i Redmond samt evenemang!

Registrering

Kostanden för programmet är SEK 19.900. Deltagaren är själv ansvarig för alla kostnader relaterat till resa och uppehälle, både för Master Classes i Stockholm samt för dagarna i Redmond. Mat och transporter ingår i Redmond.
Sista dag för anmälan är den 31:a januari och anmälan sker genom mail till beriksen@microsoft.com
Här finns en presentation med all information!

tisdag, december 13, 2011

SQL Azure Federations

I den stora uppdatering av Windows Azure kom även många intressanta uppdateringar till SQL Azure. Den som sticker ut för mig som mest intressant är att vi nu har släppt SQL Azure Federations. Med hjälp av SQL Azure Fedrations kan man bygga in möjligheten att skala ut en databas till flera instanser för att dela på last.

Här kommer ett SQL Script går igen olika steg för att visa på användning av SQL Azure Federation.

Observera att detta script endast går att köra i SQL Azure och kommer att skapa två databaser. Självklart blir du därför debiterad för två databaser. I SQL Azure Federations ugår ingen extra kostnad för federeringen men man får betala för varje databas som skapas. Ett exempel är om man har 6GB data i en databas blir man debiterad för en 10GB databas. Om man väljer att skapa en federation och dela upp dessa databaser på tio 1GB federations members blir man debiterad för elva 1 GB databaser. En för varje federation member plus en för en federation root.

-- Skapa en ny databas. Det blir automatiskt en Web Edition med maxstorlek på 1GB
CREATE DATABASE Sales
GO

-- Skapa en Federation
-- Eftersom att SQL Azure inte har stöd för use måste du manuellt ändra din connection

-- use Sales
-- Ge din federation ett lämpligt namn och välj vilken datatyp du ska federera på.
-- Datatypen måste överensstämma med datatypen i den tabell som du sedan vill federera
CREATE FEDERATION CustomerFederation(customerId BIGINT RANGE)
GO

-- Använd kommandot USEFEDERATION för att dirigera trafik till den federation som innehåller det
--
CustomerId som skickas in
-- FILTERING=OFF kommer att reutnera alla rader i den federationen
USE FEDERATION CustomerFederation(customerId =0)WITH RESET,FILTERING=OFF
GO

-- Skapa en tabell i denna, än så länge enda federation
-- Observera raden FEDERATED ON, det är det som visar vilken kolumn tabellen ska federeras på.
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE
[dbo].[Customer](
  
[CustomerID] [bigint] NOT NULL,
  
[FirstName] [nvarchar](50) NOT NULL,
  
[LastName] [nvarchar](50) NOT NULL,
CONSTRAINT[PK_Customer] PRIMARY KEY CLUSTERED
(
  
[CustomerID] ASC
)
)
FEDERATED ON(customerId =CustomerID)
GO

-- Lägg till ett par kunder i tabellen
insert into Customer values(1,'Jules','Winnfield')
insert into Customer values(2,'Vincent','Vega')
insert into Customer values(3,'Butch','Coolidge')
insert into Customer values(4,'Marsellus','Wallace')
insert into Customer values(5,'Mia','Wallace')
insert into Customer values(6, 'Esmeralda', 'Villalobos')
insert into Customer values(7, 'Captain', 'Koons')

-- Skapa en referenstabell. Referenstabeller kopieras till varje federation när man gör en split.
-- För att skapa en referenstabell låter utesluter man bara DEDERATED ON
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE
[dbo].[SomeReferenceTable](
   
[ReferenceID] [bigint] NOT NULL,
   
[SomeData] [nvarchar](8) NULL,
CONSTRAINT [PK_SomeReferenceTable] PRIMARY KEY CLUSTERED
(
   
[ReferenceID] ASC
)
)
GO --Note the lack of the FEDERATED ON keyword.

Insert into SomeReferenceTable values(1, 'Hello');
Insert into SomeReferenceTable values(2, 'SQL');
Insert into SomeReferenceTable values(3, 'Feds');

-- För att visa vilka federations som finns kan man ställa en fråga mot federation_member_distributions
USE FEDERATION ROOT WITH RESET
GO
SELECT
* FROM sys.federation_member_distributions ORDER BY federation_id, range_low;
GO

-- Be om en connection till den federation som innehåller CustomerId = 1
-- Med FILTERING=OFF kommer alla rader att returneras från den federation

USE FEDERATION CustomerFederation(customerId=1) WITH RESET, FILTERING=OFF
GO
SELECT
* FROM Customer

-- Be om en connection till den federation som innehåller CustomerId = 1
-- Med FILTERING=ON kommer bara de rader som har CustomerId = 1 att returneras.

USE FEDERATION CustomerFederation(customerId=1) WITH RESET, FILTERING=ON
GO
SELECT
* FROM Customer

-- Nu kommer magin! Med hjälp av ALTER FEDERATION kan man göra en online split för federatioen.
-- Här väljer vi att slita vid CustomerId = 5.
-- Det innebär att med CustomerId < 5 kommer att hamna en federation member
-- medan CustomerId >= 5 kommer att hamna i en annan federation member
 
USE FEDERATION ROOT WITH RESET
GO
ALTER
FEDERATION CustomerFederation SPLIT AT (customerId=5)
GO

-- Det tar ett tag för federations att skapas men under hela tiden kommer din databas att vara tillgänlig.
-- Ställ regelbundet frågor mot federation_member_distributions för att se när det kommer in en ny rad i tabllen.

USE FEDERATION ROOT WITH RESET
GO
SELECT
* FROM sys.federation_member_distributions ORDER BY federation_id, range_low;
GO

-- Ställ ytterligare några frågor mot olika Federations för att se hur data har blivit fördelat på två databaser.
-- Referenstabeller ligger kopierat lokalt till varje databas.

USE FEDERATION CustomerFederation(customerId=1) WITH RESET, FILTERING=OFF
GO
SELECT
* FROM Customer
select * from SomeReferenceTable

USE FEDERATION CustomerFederation(customerId=5) WITH RESET, FILTERING=OFF
GO
SELECT
* FROM Customer
select * from SomeReferenceTable

federations

Från den det nya administrationsverktyget kan man nu också se en visuell bild av federationerna i databasen och där kan man även splitta en federation.


-- För att droppa databasen måste man koppla upp sig mot master databasen
-- Vid drop av Federation Root droppas också alla Federations Members.
-- use master
Drop DATABASE Sales

Scott Guthrie, Dave Campbell, and Mark Russinovich in the line up!

Om du läser det här idag, den 13 december, missa då inte vårt live online event om Windows Azure som startar kl 18.00: http://LearnWindowsAzureEvent.com

Läser du det här senare kan du kolla på alla sessioner online:
http://ch9.ms/lwa

måndag, december 12, 2011

Ny release av Windows Azure!

Tidigare idag släppte vi ett antal uppdateringar och förbättringar till Windows Auzre. Dessa syftar mycket till att utvecklare enklare ska komma igång med Cloud Computing i allmänhet och Windows Azure i synnerhet.

I den här releasen är det stort fokus på att det ska bli enklare att komma igång. Hela sign up-processen är omgjord och innefattar nu bara tre steg. Förutsatt att du har ett Live ID så kan du logga in på http://www.windowsazure.com och direkt ta del av ett erbjudande som ger dig gratis användning av Windows Azure i tre månader. För varje månad kan du konsumera tjänster enligt följande:

  • Compute: 750 hours of a Small Compute Instance* (can run one small instance full-time or other sizes at their equivalent ratios)
  • Storage: 20GB with 50k Storage transactions
  • Data Transfers: 20GB outbound / Unlimited inbound data transfer
  • Relational Database: 1GB Web Edition SQL Azure database
  • Access Control: 100k transactions
  • Service Bus: Free through March 31, 2012
  • Caching: 128MB cache

För samtliga konton som inkluderar resurser (gratis eller via t ex MSDN) har vi nu också gränser för hur mycket man kan spendera. För gratiskonton är den satt till $0. Det innebär att om man använder upp sin gratistid under en månad kommer kontot att spärras tills nästa period faktueringspåbörjas. Det fungerar ungefär som ett kontantkort till en mobiltelefon (förutom att man inte kan ta emot “samtal” när resurserna har tagit slut).

Om du har ett MSDN-konto knutet till ditt Live ID kommer vi att märka det när du signar up och automatiskt få ta del av det som ingår i ditt MSDN-konto. Det är fortfarande så att du behöver ange ett kreditkort eftersom att om du väljer att ta bort spärren och spendera mer än det som ingår kommer du att få betala allt överskjutande enligt listpriser.

En av de vanligaste frågorna jag möter när jag träffar kunder och individuella utvecklare som vill in på Windows Auzre är hur man kan vara säker på att man inte får en räkning på sitt kreditkort vid slutet av månaden som inte är så trevlig. “Tänk om jag startar upp tio instanser och glömmer att ta ner dem?” Well, you can stop worry and start to love Windows Auzre!

Mer om nyheterna finns att läsa här: http://blogs.msdn.com/b/windowsazure/archive/2011/12/12/improved-developer-experience-interoperability-and-scalability-on-windows-azure.aspx

Scott Guthrie, Dave Campbell, and Mark Russinovich in the line up!

Om du läser det här idag, den 13 december, missa då inte vårt live online event om Windows Azure som startar kl 18.00: http://LearnWindowsAzureEvent.com

Läser du det här senare kan du kolla på alla sessioner online:
http://ch9.ms/lwa