세미나 신청은 http://onoffmix.com/event/3671 에서 부탁드립니다.

Windows Azure Cafe (http://cafe.naver.com/wazure)에서는 지난해에 이어 올해부터는 매월 다양한 주제를 통하여 개발자, IT 전문가들에게 Windows Azure 기반의 실전 개발에 대한 이야기를 전할 수 있또록 Boot Camp 세미나를 준비하였습니다. 클라우드 컴퓨팅에 관심이 있는 분들을 모시고, 세미나 전/후로는 클라우드 컴퓨팅과 최신 기술 동향에 대한 자유로운 토론도 같이 진행할 수 있도록 하겠습니다. 이번달에는 SQL Azure에 대한 내용을 다루어봅니다.

카페 방문하기: http://cafe.naver.com/wazure

제목: SQL Azure 실무에 도입하기
일시: 2011년 9월 7일 수요일 / 오후 7시
장소: 포스코센터 서관 5층 한국 마이크로소프트 SYNERGY 룸
대상: 소프트웨어 개발자 및 웹 개발자
발표: 남정현 (Windows Azure MVP 2011)

세션 소개

(1) SQL Azure가 SQL Server와 다른 점
SQL Azure는 Microsoft SQL Server를 클라우드 환경에서 사용할 수 있도록 서비스화하여 제공하고 있는 클라우드 서비스로, 기본 기능들은 Microsoft SQL Server와의 호환성을 유지하기 위하여 작성되었지만, 실제 동작 환경이나 여러 가지 제약 사항들이 또 한편으로는 존재합니다. SQL Azure를 이용하여 데이터베이스 프로그래밍을 어떻게 시작할 수 있고, SQL Server와의 차이점이 어떤 것들이 있는지 첫 세션에서 살펴보고자 합니다. 그리고 각 프로그래밍 언어별로 SQL Azure를 활용하는 방법도 살펴봅니다.
- 30일 Trial로 SQL Azure 계정 신청하기
- SQL Azure의 구조 살펴보고 이해하기
- Desktop 및 Server에서 SQL Azure 활용하기
- PHP나 Java에서 SQL Azure 활용하기
- Visual C++과 OLE DB를 이용하여 SQL Azure 활용하기

(2) SQL Azure 좌절방지위원회
SQL Azure는 공유 환경에서 실행되는 클라우드 데이터베이스로, 흔히 생각하는 이상적인 클라우드 컴퓨팅 서비스보다 사실 더 엄격하고 정책적입니다. 이러한 차이점을 숙지하지 못하고 이용했을 때 벌어질 수 있는 문제점들을 진단해보고 프로그래밍 코드 상에서 개선할 점은 없는지 검토해봅니다.
- 백업을 해야할 만큼 중요한 데이터라면...
- Connection Throttling (연결 차단)에 대한 정확한 이해
- 지원되지 않는 몇 가지 옛날 기술들과 그 솔루션
- 방화벽 설정에 대한 정확한 이해
- 문자열, 시간대에 관한 주의 사항

진행 순서
- 19:00 ~ 19:50 (1) SQL Azure가 SQL Server와 다른점
- 19:50 ~ 20:00 휴식
- 20:00 ~ 20:50 (2) SQL Azure 좌절방지위원회
- 20:50 ~ 21:00 질문/답변

경품 안내

당일 추첨을 통하여 "Pro SQL Azure 입문" 도서 3권과 Microsoft Arc Wireless Keyboard 1대를 나누어드릴 예정입니다.

알립니다: 본 세미나는 커뮤니티가 주최하는 비영리 세미나이며, 당일 주차권은 별도로 제공되지 않으니 가급적 대중 교통을 이용하여 주시면 감사하겠습니다.

세미나 신청은 http://onoffmix.com/event/3671 에서 부탁드립니다.

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Windows Azure MVP 남정현 (rkttu.com)

안녕하세요. 남정현입니다. 그간 날씨가 여러모로 좋지 않았는데 다들 별 일 없으셨는지 모르겠습니다. :-)

이번에 저는 APRESS사의 Pro SQL Azure를 번역하여 프로 SQL 애저 입문이라는 책을 준비하였고 현재 예약 판매 중입니다. 이달 말 즈음에 서점에 정식으로 출간될것 같네요. 이 책에 대해서 간단히 소개드리면, Microsoft의 클라우드 서비스인 Windows Azure Platform에서 관계형 데이터베이스에 대한 부분인 SQL Azure의 기술적 접근, 활용 전략 등을 다루는 책입니다.

드리는 말씀

클라우드 기반 인터넷 서비스에 대해 설명하는 책이다보니 책에서 언급하는 내용은 원서보다 미래의 시점에서 언급되는 것들이 많아 변동된 사항도 있을 수 있습니다.

그리고 이 책이 번역될 당시와 비교해 역시 현재 달라진 사항도 많이 있을 것입니다. 이러한 부분들에 관해서 자세한 정보가 필요하시다면 언제든 저자 E-MAIL 주소로 문의해주시거나 Windows Azure Cafe (http://cafe.naver.com/wazure) - 또는 - 개인 블로그 (http://www.rkttu.com/)을 통해서 의견 주시면 최대한 많은 정보를 나눌 수 있도록 하겠습니다.

감사합니다.

책에 대한 정보

책 구입하기

페이스북 페이지 보러가기

저작자 표시 비영리 변경 금지
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Windows Azure MVP 남정현 (rkttu.com)

최근 Windows Azure 기반 Social App을 개발하면서 한 가지 문제에 봉착했었습니다. 인위적으로 생성해낸 수십만건의 레코드를 어떤 방법으로 SQL Azure에 Throttling 현상 없이 (SQL Azure 스스로가 성능 향상을 목적으로 과도한 부하를 일으키는 연결이나 불필요하게 장시간 연결되어있는 연결을 임의로 cut하는 동작) 안전하게 모든 데이터를 게시할 수 있는지에 관한 문제였습니다. 그러던 중 SQL Bulk Copy 클래스를 SQL Azure에서 사용하기 위하여 여러가지 시도를 해보던 끝에 아래와 같은 기본적인 지침을 얻을 수 있었습니다.

1. 최상의 결과를 내기 위해서는 SQL Azure 대상 테이블과 원본 테이블 사이의 정의를 가능한한 일치시켜야 한다.

저의 경우, 인위적으로 생성한 수십만건의 레코드를 SQL Azure의 테이블에 게시하기 위하여 여러가지 시도를 해보았지만 데이터 중복에 관한 처리를 정확히 할 수 없어 상당한 시행착오를 겪었습니다. 결국 찾게 된 방법은 ADO.NET이 기본으로 제공하는 In-Memory RDBMS 시스템을 활용하는 것으로, SQL Azure에 게시하면서 유효성 검사를 하지 않고 In-Memory RDBMS에서 미리 유효성 검사를 한 후 최종적으로 산출된 데이터만을 게시하도록 하는 것이었습니다.

아래의 코드는 history_id, template_id, parameter_id, parameter_value라는 4개의 column을 정의하는 테이블로, history_id, template_id, parameter_id column을 한 번에 primary key로 지정하는 방법을 C# 코드로 보여주고 있습니다.

DataTable table = new DataTable();
table.Columns.Add("history_id", typeof(int)).AllowDBNull = false;
table.Columns.Add("template_id", typeof(string)).AllowDBNull = false;
table.Columns.Add("parameter_id", typeof(string)).AllowDBNull = false;
table.Columns.Add("parameter_value", typeof(string)).AllowDBNull = false;
table.Constraints.Add("history_id_pk",
    new DataColumn[] { table.Columns["history_id"], table.Columns["template_id"], table.Columns["parameter_id"] },
    true);

SQL Azure에도 위와 비슷한 형태의 테이블이 이미 게시되어있는 상황에서, SQL Azure에 데이터를 삽입하거나 업데이트 - 또는 - 삭제하면서 유효성 검사가 일어나도록 기다리지 않고 로컬에서 간단한 유효성 검사를 미리 수행하여 네트워크 부하를 최소화하고 작업 속도를 개선할 수 있었습니다.

2. Windows Server 2003 SP2 사용자 필독

클라이언트 - 혹은 - 관리 도구 차원에서 SqlBulkCopy 클래스를 사용하려는 PC의 환경이 Windows Server 2003 SP2인 경우 SQL Azure로의 연결이 아무런 까닭없이 성립되지 않는 이상한 현상을 보일 수 있습니다. 이 경우, 시스템에 KB977291 Hotfix (http://support.microsoft.com/kb/977291/en-us)가 설치되어있는지 확인하시고, 설치되어있지 않은 경우 해당 핫 픽스를 설치한 후 다시 시도해야 합니다.

3. SqlBulkCopy 유틸리티를 사용할 때는 가능한한 명시적으로 사용할 것

애석하게도, 자동화 도구는 편의를 위하여 제공되는 것이지만 편의를 사용자에게 제공하기 위해서는 적정한 설정이 뒷받침되어야만 합니다. SqlBulkCopy 클래스가 그런 유형인데, ColumnMappings 속성, BatchSize 속성, BulkCopyTimeout 속성, DestinationTableName 속성을 정확히 이해하고, WriteToServer 메서드를 호출하기 전에 설정해야 합니다.

SqlBulkCopy bulkCopy = new SqlBulkCopy(conn);
bulkCopy.ColumnMappings.Add("history_id", "history_id");
bulkCopy.ColumnMappings.Add("template_id", "template_id");
bulkCopy.ColumnMappings.Add("parameter_id", "parameter_id");
bulkCopy.ColumnMappings.Add("parameter_value", "parameter_value");

bulkCopy.BatchSize = 100;
bulkCopy.BulkCopyTimeout = 100;
bulkCopy.DestinationTableName = "tb_design_image_history";

bulkCopy.SqlRowsCopied += new SqlRowsCopiedEventHandler(bulkCopy_SqlRowsCopied);
bulkCopy.WriteToServer(table);

위 코드에서 특별히 중요한 것은 ColumnMappings, BatchSize, DestinationTableName 속성에 관한 부분입니다. ColumnMappings를 사용하여 원본 데이터 소스에서 대상 데이터 소스로 복사할 때의 위치를 결정해야 합니다. 그리고 BatchSize는 SQL Azure가 수용할 수 있는 범위의 값을 사용해야 하며 개인적인 테스트 결과로는 100이 안전한 값인듯합니다. 기본값을 사용하려고 하면 SQL Azure가 연결을 거부할 수 있습니다. 그리고 DestinationTableName 속성에서 대상 테이블 이름이 정확히 지정되어야 올바르게 작동합니다.

마지막으로 WriteToServer 메서드는 상당히 유연한 것입니다. 이미 로컬에 캐시된 데이터 테이블과 그 행의 배열은 물론, 아직 연결이 열린 상태인 다른 데이터 소스에 대한 IDataReader 객체의 사용을 허용합니다. 정의만 서로 정확히 일치하고 맞아떨어진다면 동기화를 비교적 손쉽고 간편하게 할 수 있습니다.

4. 결론

SqlBulkCopy는 개별적으로 INSERT 명령어를 SQL Azure에 실행하는 것보다 훨씬 빠르게 동작했습니다. 덕분에 40여만건 이상의 레코드를 무사히 모두 복제할 수 있었습니다. 하지만 한 가지 중요한 점이 있는데, 개별적으로 INSERT 명령어를 실행하는 것과 달리 SqlBulkCopy 클래스는 중간에 발생하는 데이터베이스 오류를 핸들링할 수 있는 capability가 없으며 문제가 발생하면 작업이 중간에 끊기게 되므로 이를 예방하려면 Transaction을 사용하여 처리 전후 과정을 보완하는 것이 필요합니다.

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Windows Azure MVP 남정현 (rkttu.com)
저 개인적으로는 오래된 명령줄 인터페이스 기반의 툴을 매우 사랑합니다. 가끔 GUI로 채워지지 않는 부족함을 명령줄 인터페이스 기반의 툴을 통하여 채울 수 있기 때문입니다. 비유하자면 효자손과 같은 존재이지요. :-)

오늘은 그 중에서도 SQL Azure를 관리하기 위한 목적으로 OSQL 도구를 사용하는 방법을 설명하고자 합니다. 요즈음은 SQL Management Studio 덕분에 그 수요가 많이 줄어들었지만, 아직 OSQL 도구가 유용하게 사용될 수 있는 여지는 매우 많습니다. 저의 경우, Sync Framework와 SQL Server Agent를 사용하여 쉽게 동기화할 수 있는 상황이 아닌 이기종 데이터베이스간 데이터 마이그레이션 시나리오에서 매우 유용하게 사용하고 있습니다. C#을 이용하여 실제 데이터를 insert하는 구문을 SQL 스크립트로 덤프를 생성하여 이것을 OSQL 도구에 매개 변수로 전달하는 방법을 선호합니다. BLOB이나 CLOB, 개행 문자를 포함하지 않는 데이터로 구성되어있는 경우 이 방법은 매우 유용한 것 같습니다.

그렇다면 OSQL을 통해서 SQL Azure에 접속하려면 어떻게 해야 할까요? 방법은 다음과 같습니다.

osql -S<your_server>.database.windows.net -U<your_database_id>@<your_server> -P<your_password> -d<database_name>

SQL Azure에 접속하는 방법은 일상적으로 우리가 사용했던 SQL Express Edition이나 SQL Server에 접속하는 방법과 조금 다릅니다. 각 스위치별로 필요한 항목들을 하나씩 살펴보겠습니다.

  • -S 스위치: 접속 대상 서버를 지정합니다. SQL Azure의 호스트 이름은 주로 xxxx.database.windows.net과 같은 형태로 되어있고, 이 부분의 정확한 주소는 SQL Azure Portal에서 확인할 수 있습니다.
  • -U 스위치: 사용자 ID를 지정합니다. 통상 사용하는 SQL Server와는 다르게, 사용자 이름 뒤에 서버 이름을 명시적으로 @ 기호와 함께 지정해야 합니다. 예를 들어, <your_server>에 들어가는 식별자가 abcd라고 한다면 <your_database_id>@abcd가 이 스위치에 지정되어야 합니다.
  • -P 스위치: 사용자 비밀 번호를 지정합니다. 띄어쓰기가 있는 비밀 번호의 경우 -P"<your_password>"와 같은 형식으로 따옴표를 이용하여 비밀 번호 문자열 주변을 포장하여 인수로 전달합니다.
  • -d 스위치: -D 스위치가 아닌 -d 스위치로, 대/소문자 구분에 유의합니다. 이 부분에서는 사용하려는 데이터베이스 이름을 지정해야합니다. SQL Azure의 특성 상 한번 연결이 완료되면 다른 데이터베이스로는 문맥 전환을 할 수 없으며, 따라서 USE 문의 사용은 허용되지 않습니다.

위와 같이 지정하여 성공적으로 접속하였다면 프롬프트가 나타날 것입니다. 하지만 대부분의 경우 방화벽 설정에 의하여 연결이 차단될 수 있습니다. 이 때에는 SQL Azure Portal로 접속하여 현재 여러분이 접속을 시도하는 IP 주소를 SQL Azure에서 접속할 수 있도록 허용해야 합니다. 여기서 주의할 것은, NAT나 인터넷 공유기와 같이 하나의 외부 IP 주소를 여러 PC가 공유하는 환경에서 SQL Azure를 접속하려는 경우 보안 상 위험이 발생할 수 있다는 점입니다.

이제 대량의 query문을 실행하기 위한 스위치를 하나 더 알아보겠습니다. 바로 -i 스위치입니다. 이 스위치를 이용하여 실행하려는 SQL 문장이 포함된 스크립트 파일을 지정하고, -o 스위치를 사용하여 실행 결과를 텍스트 파일로 갈무리할 수도 있습니다.

전체 사용 예시는 다음과 같습니다.

osql -Sabcdefghi0.database.windows.net -Urkttu@abcdefghi0 -Pmypassword -dmydatabase -itest.sql -ooutput.txt

위와 같이 명령어를 실행하면 test.sql 파일의 내용을 모두 실행하고 그 결과를 output.txt에 써내려갈 것입니다.

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Windows Azure MVP 남정현 (rkttu.com)
Windows Azure Platform Training Kit의 2010년 12월 버전이 새로 출시되었습니다. 다운로드는 카페 대문에 걸려있는 링크 - 또는 - http://www.microsoft.com/downloads/en/details.aspx?FamilyID=413E88F8-5966-4A83-B309-53B7B77EDF78&amp;displaylang=en 에서 다운로드하실 수 있습니다.

[Updated] All demos were updated to the Azure SDK 1.3 / 모든 DEMO들이 SDK 1.3 버전에 맞추어졌습니다.

  • [New demo script] Deploying and Managing SQL Azure Databases with Visual Studio 2010 Data-tier Applications / Visual Studio 2010 데이터 계층 응용프로그램에서 SQL Azure 데이터베이스를 배포하고 관리하는 프레젠테이션이 추가 되었습니다.

  • [New presentation] Identity and Access Control in the Cloud / 클라우드 환경에서의 아이덴티티와 액세스 제어에 관한 프레젠테이션이 추가되었습니다.

  • [New presentation] Introduction to SQL Azure Reporting / SQL Azure 레포팅에 대한 프레젠테이션이 추가되었습니다.

  • [New presentation] Advanced SQL Azure / SQL Azure의 고급 기능 및 상세 정보에 대한 프레젠테이션이 추가되었습니다.

  • [New presentation] Windows Azure Marketplace DataMarket / 이전 버전인 Codename: Dallas의 정식 버전인 Windows Azure Marketplace DataMarket에 대한 프레젠테이션이 추가되었습니다.

  • [New presentation] Managing, Debugging, and Monitoring Windows Azure: Windows Azure 응용프로그램을 관리, 디버깅, 모니터링하는 방법을 소개하는 프레젠테이션이 추가되었습니다.

  • [New presentation] Building Low Latency Web Applications: 빠른 응답 속도를 구현하기 위하여 웹 응용프로그램에서 취해야 할 가이드라인을 소개하는 프레젠테이션이 추가되었습니다.

  • [New presentation] Windows Azure AppFabric Service Bus: AppFabric Service Bus에 대한 새 프레젠테이션이 추가되었습니다.

  • [New presentation] Windows Azure Connect: 이전 버전인 Codename: Sydney의 정식 버전인 Windows Azure Connect에 대한 새 프레젠테이션이 추가되었습니다.

  • [New presentation] Moving Applications to the Cloud with VM Role: 기존의 응용프로그램을 VM Role 환경으로 이식하는 방법에 대한 새 프레젠테이션이 추가되었습니다.

이 내용들 중 VM Role에 관한 것은 이전에 제가 같이 게시하였던 VM Role 관련 Step-by-step 문서와 더불어서 보실 것을 권합니다. 감사합니다. :-)
저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Windows Azure MVP 남정현 (rkttu.com)
출처: http://blogs.msdn.com/b/jmeier/archive/2010/10/31/windows-azure-code-samples-collection.aspx

Windows Azure 코드 샘플을 한 곳에 모아서 찾아보기 쉽게 만든 블로그 아티클이 있어서 올려봅니다. Windows Azure 실전 예제에 관심있으신 분들께 도움이 되셨으면 합니다. :-)

예제 응용프로그램

아키텍처 및 디자인 예제

  • 코드 갤러리
    • 동적 스케일링 샘플 - 처리량에 대응하여 동적으로 인스턴스의 수가 늘어나고 줄어드는 것을 보여주는 다중 역할 샘플입니다: http://code.msdn.microsoft.com/azurescale
  • 본사 DPE 부서에서 작성한 예제
    • Project Riviera - 동적 스케일링 샘플에서 더 확장된 예제로, 윈도 애저 스토리지, Windows Workflow, 액티브 디렉터리 페더레이션 서비스, Patterns & Practices Enterprise Library 캐싱 및 로깅 응용프로그램 블럭, 윈도 라이브 ID 인증 등 엔터프라이즈 및 아키텍처에서 등장하는 기술들이 골고루 사용된 고급 샘플입니다: http://code.msdn.microsoft.com/riviera
  • Patterns & Practice - Windows Azure Platform을 위한 아티클이 새로 업데이트되고 있는 중입니다.

클레임 / 아이덴티티 예제

환경 설정

데이터 액세스 및 스토리지 예제

응용프로그램 배포

일반적인 내용들

로깅 및 운영 전략

기존 응용프로그램을 클라우드로 마이그레이션
서비스 버스 (AppFabric)
서비스 관리 API
SQL 애저
WCF (Windows Communication Foundation)
윈도 애저 스토리지
저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Windows Azure MVP 남정현 (rkttu.com)

PDC2010이 미국 시간으로 2010년 10월 28일 목요일 오전 9시부터, 우리나라 시간으로 2010년 10월 29일 금요일 새벽 1시부터 이틀간 열립니다. 아래는 이번 PDC2010에서 소개되는 라이브 세션 및 사전 녹화 세션들의 요약 내용을 정리한 것으로, PDC2010 행사 종료 이후에 블로그에 관련 내용, 강의 자료, 동영상 등을 하나씩 소개하며 업데이트해나갈 예정입니다.

이번 PDC 2010에서 클라우드 컴퓨팅에 관하여 언급되는 세션의 수는 라이브 세션 총 13개와 사전 녹화 세션 8개로, 총 21개 세션에 걸쳐서 클라우드 컴퓨팅 전반에 대한 내용을 언급하게 됩니다. 아래의 세션들 중에서 굵은 글씨에 밑줄로 표시한 항목은 On-Demand 서비스로 제공될 때, 블로그 아티클 등의 형태로 추가적인 내용을 게시하거나, 한국어로 번역하여 내용을 공유할 예정입니다.

[2010.10.27 Update]: 한국 Microsoft 박중석 대리님의 Blog Posting을 일부 인용하여 세션 요약을 추가하였습니다. http://blogs.msdn.com/b/eva/archive/2010/10/26/pdc10-13.aspx

PDC2010 Key Note
- 발표: Steve Ballmer and Bob Muglia
- 미국 시간: 2010년 10월 28일 목요일 오전 9시
- 한국 시간: 2010년 10월 29일 금요일 오전 1시
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/6f853fa2-06f6-45e5-ac25-18c31cc4ba32
- 세션 요약: 첫째 날은 먼저 Bob Muglia와 Steve Ballmer가 진행하는 키 노트에서 Microsoft의 Cloud 와 관련한 놀라운 소식들을 들으실 수 있을 것으로 생각 합니다. 실제 클라우드 플랫폼을 이용하는 데 있어서 보다 성숙된 서비스들로 예상되며 클라우드 플랫폼을 고려한 업체라면 고민했을 만한 것들이 될 것 입니다. 다른 세션들을 보실 시간이 없더라도 이 키 노트만큼은 보실 것을 추천 드립니다.

** Live Sessions **

Building Windows Phone 7 applications with the Windows Azure Platform
- 발표: Steve Marx (Kodiak Room)
- 미국 시간: 2010년 10월 28일 목요일 오전 11시 30분
- 한국 시간: 2010년 10월 29일 금요일 오전 3시 30분
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/58d670be-bd26-4ee3-9db1-5f2767eba4f8
- 세션 요약: Windows Azure 플랫폼과 함께 Windows Phone 7 용 애플리케이션을 개발하는 세션으로 Windows Azure 전문가로 많이 알려진 Steve Marx가 진행을 합니다. 윈도우 폰 7이 화두가 되고 있는 만큼 특정 Device가 이용하는 서비스를 클라우드에 올리는 시나리오로서 도움이 될 것으로 생각 합니다.
Learn how to build Windows Phone 7 applications that are backed by scalable cloud components hosted in Windows Azure. This demo-heavy session will cover best practices relating to communication, authentication, and data synchronization between phone applications and cloud components.

Building, Deploying, and Managing Windows Azure Applications
- 발표: Jim Nakashima (Hood Room)
- 미국 시간: 2010년 10월 28일 목요일 오전 11시 30분
- 한국 시간: 2010년 10월 29일 금요일 오전 3시 30분
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/19c4c834-3cae-408c-96f0-e87bfad92cff
- 세션 요약: 이전 컨퍼런스에서 실제 데모를 엮은 좋은 발표를 보여줬던 Jin Nakashima의 발표로서, 실제적으로 Windows Azure를 개발 및 배포하는 과정을 보여줄 것으로 보입니다.
In order to take full advantage of Windows Azure and SQL Azure, you need to know more than just how to write the code. You need to know how to incorporate your application in a team environment, deploy, monitor, manage and retrieve diagnostic information back from the cloud. In this session, you will learn everything you need to know to be successful with a project that utilizes Windows Azure and SQL Azure including setting up your development environment, automating build, unit test and deployments to different deployment environments from staging to production, and managing credentials and user roles using the Windows Azure Portal.

Migrating and Building Apps for Windows Azure
- 발표: Mohit Srivastava (McKinley Room)
- 미국 시간: 2010년 10월 28일 목요일 오후 2시
- 한국 시간: 2010년 10월 29일 금요일 오전 6시
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/94694704-1b10-49fd-a09d-574c8bb364b8
- 세션 요약: 키노트에서 발표할 기술을 이용해서 기존 애플리케이션들을 윈도우 애저에 올리는 것에 대한 내용이 다루어 집니다. 기존의 애플리케이션 이동이 얼마나 쉬운지 여부가 Windows Azure와 같은 Cloud 플랫폼에서는 가장 중요한 이슈가 되겠지요.
In this session you will learn how to run your existing applications on Windows Azure using some of the new features that we’ll announce during the keynote.

Composing Applications with AppFabric Service
- 발표: Karandeep Anand (Kodiak Room)
- 미국 시간: 2010년 10월 28일 목요일 오후 3시 15분
- 한국 시간: 2010년 10월 29일 금요일 오전 7시 15분
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/c3c5f2d9-0481-4be1-9742-4dfa4de184d0
- 세션 요약: Service Bus와 Access Control의 기능이 있는 Windows Azure AppFabric 서비스에 대한 세션 입니다. 새로 출시되는 서비스도 같이 소개가 될 것 같네요.
AppFabric provides a rich set of application platform services as part of the Windows Azure Platform to enable developers to create line of business applications that span multiple tiers and technologies. Learn how to create scalable web-based & hosted applications in the cloud, compose them with other cloud services (such as SQL Azure Database and other forthcoming new services) and integrate them with on-premises systems using Windows Azure AppFabric technologies like Service Bus and Access Control services. This session will also cover the roadmap of AppFabric Services and demonstrate how developers will get richer application building blocks, development tools & management capabilities to compose and manage a distributed application using the Windows Azure Platform. Come and see how AppFabric Services can be integrated in to your application development & management lifecycle to reduce time & cost.

Enabling New Scenario and Applications with Data in Cloud
- 발표: Dave Campbell (Hood Room)
- 미국 시간: 2010년 10월 28일 목요일 오후 4시 30분
- 한국 시간: 2010년 10월 29일 금요일 오전 8시 30분
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/64f43e11-f88f-4e59-954b-fadeaf5f3537
- 세션 요약: 달라스와 같은 데이터를 클라우드를 이용해서 새롭게 활용할 수 있는 방법에 대한 세션이며, 역시 새로 출시되는 서비스에 대한 이야기가 나올 것 같네요.
The cloud enables new scenarios for sharing and consuming data. In this session you will learn how to differentiate your applications by building them on top of Windows Azure platform and leveraging visualization and access to private, public and premium content available through Microsoft Codename “Dallas”. You will also learn how to use some of the new services and features announced at the PDC.

Connecting Cloud & On-Premises Apps with the Windows Azure Platform
- 발표: Yousef Khalidi (McKinley Room)
- 미국 시간: 2010년 10월 29일 금요일 오전 9시
- 한국 시간: 2010년 10월 30일 토요일 오전 1시
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/fe7e140b-de62-4768-9306-23d0bdcabc5c
- 세션 요약: 온프레미스 애플리케이션과 클라우드 애플리케이션의 연동이라는 화두로 진행되는 세션으로 Windows Azure AppFabric이 중심이 될 것 같네요.
Not every application or service can be hosted entirely in the cloud. Cloud services often need to provide a combination of cloud-based data access as well as connectivity to on-premises assets in a variety of geographies. Getting access to your on-premises or partner hosted assets securely has never been easier. In this session, learn how to securely connect applications today that span the cloud to on-premises world using Windows Azure AppFabric Service Bus and SQL Azure Data Sync Service. Also, gain insight into future scenarios and technologies for assembling these types of services.

Open in the Cloud: Windows Azure and Java
- 발표: Vijay Rajagopalan (Cascade Room)
- 미국 시간: 2010년 10월 29일 금요일 오전 9시
- 한국 시간: 2010년 10월 30일 토요일 오전 1시
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/6ae95ba0-c185-4546-9d66-2604ac6b6cef
- 세션 요약: 오픈 클라우드로서 여러 개발 플랫폼들이 동작할 수 있는 Windows Azure의 모습을 Java 개발로서 보여주는 세션.
The Windows Azure Platform is an open and interoperable platform which supports development using many programming languages and tools. In this session, you will see how to build large-scale applications in the cloud using Java, taking advantage of new Windows Azure Platform features. You will learn how to build Windows Azure applications using Java with Eclipse, Apache Tomcat, and the Windows Azure SDK for Java.

Identity & Access Control in Cloud
- 발표: Vittorio Bertocci (McKinley Room)
- 미국 시간: 2010년 10월 29일 금요일 오전 10시 15분
- 한국 시간: 2010년 10월 30일 토요일 오전 2시 15분
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/0099d03d-bbc4-4612-87e1-f7d4da8b8a78
- 세션 요약: 보안이 클라우드에서 매우 중요한 이슈가 될 것이므로, 이를 위해서 필요한 Windows Identity Foundation 및 Windows Azure AppFabric의 Access Control 확인 할 수 있는 세션
Signing users in and granting them access is a core function of almost every cloud-based application. In this session we will show you how to simplify your user experience by enabling users to sign in with an existing account such as a Windows Live ID, Google, Yahoo, Facebook, or on-premises Active Directory account, implement access control, and make secure connections between applications. You will learn how the AppFabric Access Control Service, Windows Identity Foundation, and Active Directory Federation Services use a claims-based identity architecture to help you to take advantage of the shift toward the cloud while still fully leveraging your on-premises investments.

Windows Azure Storage Deep Dive
- 발표: Jai Haridas (Kodiak Room)
- 미국 시간: 2010년 10월 29일 금요일 오전 10시 15분
- 한국 시간: 2010년 10월 30일 토요일 오전 2시 15분
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/1c6f9726-11c6-4ed1-97e6-0bcaf7ee6660
- 세션 요약: 클라우드로 애플리케이션 옮길 때 가장 먼저 고려할 것중의 하나인 Storage 에 대해서 좀 더 깊이 있게 알아보는 세션
Windows Azure Storage is a scalable cloud storage service that provides the ability to store and manipulate blobs, structured non-relational entities, and persistent queues. In this session you will learn tips, performance guidance, and best practices for building new applications or migrating an existing applications that use Windows Azure Storage.

Inside Windows Azure
- 발표: Mark Russinovich (McKinley Room)
- 미국 시간: 2010년 10월 29일 금요일 오전 11시 30분
- 한국 시간: 2010년 10월 30일 토요일 오전 3시 30분
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/18a38105-520f-486a-9e04-d956736e506d
- 세션 요약: 애저 개발 팀에서 이야기 하는 Windows Azure가 동작하는 하부 단의 이야기를 들려 줍니다. 매우 관심 가는 세션 입니다.
Join Mark Russinovich, now working on Windows Azure, for an under the hood tour of the internals of Microsoft’s new cloud OS. Topics will include datacenter architecture, cloud OS architecture, and what goes on behind the scenes when you deploy a service, a machine fails or comes online and a role fails

Building Scale-Out Database Solutions on SQL Azure
- 발표: Lev Novik (McKinley Room)
- 미국 시간: 2010년 10월 29일 금요일 오후 2시
- 한국 시간: 2010년 10월 30일 토요일 오전 6시
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/591d586f-3732-4bff-8ee2-857f27d74df4
- 세션 요약: 현재 SQL Azure의 경우는 최대 50G사이즈이지만, 보다 더 큰 용량이 필요한 서비스를 위한 세션
SQL Azure provides an information platform that you can easily provision, configure, and use to power your cloud applications. In this session we will explore the patterns and practices that help you develop and deploy applications that can exploit the full power of the elastic, highly available, and scalable SQL Azure Database service. The talk will detail modern scalable application design techniques such as sharding and horizontal partitioning and dive into future enhancements to SQL Azure Databases.

Building High Performance Web Applications with the Windows Azure Platform
- 발표: Matthew Kerner (McKinley Room)
- 미국 시간: 2010년 10월 29일 금요일 오후 3시 15분
- 한국 시간: 2010년 10월 30일 토요일 오전 7시 15분
- ICS 파일: http://player.microsoftpdc.com/Schedule/AddToOutlook/1b08b109-c959-4470-961b-ebe8840eeb84
- 세션 요약: 보다 고성능으로 서비스를 운영할 수 있도록 CDN서비스를 이용하거나 최적화를 하는데 필요한 기술을 전달하는 세션
Windows Azure Platform enables developers to build dynamically scalable web applications easily. Come and learn how forthcoming new application services in conjunction with services like the Windows Azure Content Delivery Network (CDN) can help you build high-performance web applications in Azure while lowering your total costs by reducing the pressure on the data-tier. In this session, we’ll take some real world scenarios & design patterns to showcase how existing or new web applications can be quickly built to leverage these capabilities. We’ll also share some tips & tricks to improve performance when using web & worker roles in Azure and optimizing your overall application for maximum performance. Developers will be able to make their applications match increasing demand with increasing throughput by using caching and CDN will enable better performance & user experience for users who are farther from the source of the content.

** Pre-recorded **

Building Business Applications in the Cloud with CRM Online
- 발표: Andrew Bybee
Microsoft Dynamics CRM Online is all about providing compelling business applications to your customer and accelerating development of your applications in the cloud. The upcoming 2011 release has a wide array of new development capabilities such as Solution Packaging, Sandboxed Code, Built-in Dashboards, and much more. Watch this session to understand the innovation behind this new CRM Online release powered by .NET 4.0. Specifically, we’ll cover how to build a CRM Online Solution, take advantage of native SharePoint & Office integration and deploy your application to Dynamics Marketplace to reach a broader customer base.

Developing PHP Applications on the Windows Azure Platform
- 발표: Vijay Rajagopalan
Microsoft’s Windows Azure Platform provides a comprehensive set of services for building and running scalable PHP applications targeting cloud. In this session we go on a coding tour using open source development tools (Eclipse, Command line), SDKs and applications (Drupal, WordPress) on the Windows Azure platform. On this tour, see how PHP web applications can use the scalable compute and storage services with Windows Azure, secure connectivity and data service techniques in the cloud using OData and Microsoft SQL Azure.

Integrating SharePoint with Windows Azure
- 발표: Steve Fox
SharePoint 2010 provides many ways to integrate with Windows Azure. From simple SQL Azure data-centric applications to complex workflow that leverages custom Azure services, there is great potential to integrate these two growing technologies. This session will provide a code-centric view of the ways in which you can integrate with Azure, covering areas such as web part development, data programmability, service consumption, and Business Connectivity Services integration. If you’re looking to take your SharePoint solutions into the cloud with Azure, then you can’t miss this session.

Building Offline Applications using the Sync Framework and SQL Azure
- 발표: Nina Hu
In this session you will learn how to build a client application that operates against locally stored data and uses synchronization to keep up-to-date with a SQL Azure database. See how Sync Framework can be used to build caching and offline capabilities into your client application, making your users productive when disconnected and making your user experience more compelling even when a connection is available. See how to develop offline applications for Windows Phone 7 and Silverlight, plus how the services support any other client platform, such as iPhone and HTML5 applications, using the open web-based sync protocol.

Management of your Access Control Service (ACS) Namespace
- 발표: Justin Smith
The Windows Azure AppFabric Access Control Service provides a simple way to add enterprise and web Single Sign On into your applications. In this session, we will discuss how you can configure ACS for a variety of scenarios. Topics covered include: ACS entity overview, namespace partitioning, credential management, federation management, and rule management. Basic knowledge of the Windows Azure AppFabric Access Control Service is a suggested pre-requisite.

Microsoft BizTalk Server 2010 and Roadmap
- 발표: Sreeram Nivarthi
Learn how BizTalk Server 2010 and AppFabric together help you create composite applications (building on Windows Azure, Windows Server and SharePoint) which connect to existing line-of-business (LOB) systems. Understand future plans of how you will be able to compose applications using integration services – for applications running on Windows Azure, connecting to other services in the cloud, and with line-of-businesses & business partners in future. You will also learn future plans on how business users can get visibility into services built on AppFabric.

SharePoint in the Cloud: Developing Solutions for SharePoint Online
- 발표: Chris Mayo
With the most recent release of SharePoint comes the ability to build and deploy applications of many types and flavors. Using SharePoint Server 2010, you can develop a wide variety of applications for the enterprise using .NET, Silverlight, JavaScript, and much more. But with the release of SharePoint Online on our horizon, what are the possibilities and the boundaries here? And how is the design and development process different? If you want to develop for SharePoint Online, but are unsure about the boundaries then you’ll not want to miss watching this demo-heavy session.

Taking High Performance Computing to the Cloud - Windows HPC and Azure
- 발표: Richard Ciapala
Scale-out or conveniently parallel HPC applications are well suited to running in Windows Azure. Windows HPC Server 2008 R2 SP1 provides a gateway for running existing HPC applications seamlessly on Azure. Learn how to develop Windows HPC Cluster SOA WCF-based applications, parametric sweep and MPI applications to run on Azure or a cluster. Different alternatives to handle data, storage, security, and troubleshooting these applications will be discussed. This session will also show developers how to set up a single box development environment for HPC Server applications, and how to provision compute nodes and Azure and monitor applications.

공식 홈페이지 바로 가기: http://www.microsoftpdc.com/
상세 정보 보기: http://player.microsoftpdc.com/

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Windows Azure MVP 남정현 (rkttu.com)

이른 아침이고, 월요일임에도 불구하고 열린 세션임에도 불구하고 강의장을 가득 채워주신 청중 여러분들께 진심으로 감사의 말씀을 올리며, 최종 수정 버전의 강의 자료를 올립니다. 이 강의 자료에 있는 샘플들에 대한 원본 링크는 아래에 같이 적어두었으니 관심있으신 분들께서는 참조하여 주십시오.

아울러서, 15일에 오디토리움 101에서 저녁 5시부터 6시까지 진행되는 VSTS 2010 팀의 최흥배 MVP님의 세션도 많은 참석 부탁드립니다. 이 세션에서는 Visual C++ 10.0 (마케팅 버전 2010)에서의 주요 변경 사항과 향상된 디버깅 기법에 대한 내용이 소개될 예정입니다. 실무에서 C++ 기반의 프로그래밍을 활용하시는 분들의 경우, Visual C++ 2010의 향상된 언어 기술과 더불어서 64비트 컴파일 기술, 그리고 오늘 세션에서 소개해드렸던 것과 같이 클라우드 위에 입주시킬 수 있는 Native Application Server를 제작하신다면 훌륭한 성능의 소프트웨어 서비스를 구현하실 수 있을 것입니다.

   

감사합니다. :-)

저작자 표시 비영리 동일 조건 변경 허락
이 장소를 Daum지도에서 확인해보세요.
서울특별시 강남구 삼성1동 | 코엑스 오디토리움
도움말 Daum 지도
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Windows Azure MVP 남정현 (rkttu.com)

안녕하세요. Visual C# MVP 남정현입니다. 오랫만에 들려오는 Windows Azure Platform의 업데이트 소식을 전하기 위하여 블로그 포스팅을 해봅니다. 요즈음 월드컵 때문에 전국이 후끈 달아올라있네요.

기존에는 SQL Azure에서 추가할 수 있는 데이터베이스가 1GB, 10GB 단위로 제공되었습니다만 SQL Azure에 대한 수요가 지속적으로 증가하면서 1GB 데이터베이스는 5GB 데이터베이스 단위로, 10GB 데이터베이스는 50GB 데이터베이스 단위로 상품이 확대됩니다. 기존과 동일한 방식으로 과금되지만 추가되는 용량만큼 더 많은 금액이 과금된다는 점만 유의하시면 될 것 같습니다.

그리고 8월 1일부터는 SQL Azure Development Accelerator Core 프로모션 상품이 추가됩니다. SQL Azure Business Edition 상품을 기반으로 하지만, 이 프로모션 상품을 통하여 서비스를 이용할 경우 매달 10GB당 74.95$가 과금되며 일반 요금제보다 25% 저렴합니다. 이에 대한 자세한 내용은 http://www.microsoft.com/windowsazure/offers/popup.aspx?lang=en&locale=en-US&offer=MS-AZR-0013P 에서 참고하실 수 있습니다.

날씨가 점점 더워지고 있습니다. 뜨거운 월드컵 열기를 바탕으로 우리 대한민국 축구팀이 16강에 진출할 수 있었으면 좋겠습니다. 그리고 저희 이매진컵 소프트웨어 설계 부문 한국 대표팀 WeRain에게도 많은 관심과 응원 부탁드립니다. 감사합니다. :-)

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Windows Azure MVP 남정현 (rkttu.com)

이제 Microsoft는 데스크 톱 컴퓨터나 서버 컴퓨터를 위한 운영 체제와 소프트웨어만을 취급하지 않습니다. 최근 각광받는 Cloud Computing에 다방면으로 대응 가능한, 그리고 신뢰할 수 있고 다년간 검증 받은 경험을 바탕으로 여러 고객들에게 Microsoft의 Cloud Computing 전략을 어필하고 있는데요, Microsoft의 주요 제품군이 모두 Cloud Computing에 어떻게 대비하고 있는지 잠시 살펴보겠습니다. 아래의 동영상은 Microsoft의 CEO인 Steve Ballmer의 Microsoft Cloud Computing 전략에 대한 발표회 현장을 녹화한 것입니다. (출처: http://www.microsoft.com/showcase/en/US/details/120eb97f-e7f8-4485-91dc-f6ada8e759e3)


Windows Azure: Windows Azure Platform의 일부로 제공되며, 64비트 컴퓨터를 기반으로 여러분의 고유한 .NET, Java, PHP 응용프로그램들을 24시간 365일 사용 가능하면서도, 항상 최고의 성능을 낼 수 있으며, 비용 대비 성능에 최적화된 Cloud 기반 응용프로그램을 호스팅할 수 있는 강력한 플랫폼입니다. (http://www.microsoft.com/windowazure)

Windows Live ID: 이미 여러 해 동안, 일반 사용자들에게는 Windows Live Messenger (또는 MSN Messenger)의 로그인 수단으로 인지되어왔던 Passport의 새로운 이름입니다. 그러나, 이제는 Microsoft의 주요 웹 서비스와 클라우드 기반 응용프로그램을 위한 최고의 수단으로 자리잡았으며, 응용프로그램의 종류에 관계없이 손쉽게 통합할 수 있는 다양한 SDK와 개발 방법론을 제공하는 인증 체계로 자리 잡았습니다. (http://dev.live.com/liveid/)

SQL Azure: Windows Azure Platform의 일부로 제공되며, 64비트 컴퓨터를 기반으로 호스팅되는 SQL Server가 제공됩니다. Transact SQL의 기능을 바탕으로 뛰어난 호환성과 강력한 성능을 통하여 신뢰할 수 있는 데이터베이스 시스템을 Cloud에서 이용하실 수 있습니다. (http://www.microsoft.com/windowsazure/sqlazure/)

Exchange Online, SharePoint Online, Dynamic CRM Online: Microsoft Online Service의 일부로 제공되며, Microsoft Exchange Server의 강력한 통합 메시징 기능을 이제는 Cloud 기반으로 누구나 손쉽고 빠르게 이용할 수 있습니다. Exchange Online의 안티바이러스 기능과 보안에 대해서 걱정되시나요? http://www.microsoft.com/forefront/online-protection-for-exchange/en/us/default.aspx 페이지에 게시된 내용이 궁금증을 풀어줄 것입니다. 또한, SharePoint, Dynamic CRM 역시 누구나 손쉽고 빠르게 이용할 수 있게 됩니다. (http://www.microsoft.com/online/exchange-online.mspx, http://www.microsoft.com/online/sharepoint-online.mspx, http://www.microsoft.com/online/dynamics-crm-online.mspx)

Microsoft Office Live Meeting, Microsoft Office Communications Online: 언제 어디서나 사용 가능한 맞춤형 온라인 협업 시스템을 경험해 보세요. 단지 메모나 파일을 공유할 수 있는 스토리지 공간이 아닌, 실시간 화상 회의, 팀 단위 인스턴트 메시징 (Windows Live의 인스턴트 메시징이 아닙니다)을 사용하고 싶은 만큼 24시간 365일 사용할 수 있습니다. (http://www.microsoft.com/online/office-live-meeting.mspx, http://www.microsoft.com/online/office-communications-online.mspx)

Office Web Apps: 세간에 많은 이슈를 뿌리며 Google Docs의 경쟁 상대로 지목받으며 한창 주가를 달리고 있는 주인공입니다. :-) Office Web Apps는 향후 Cloud 환경에 맞게 개선되어 제공되거나, 혹은 Windows Azure Platform 위에 설치될 수 있는 형태로 확장할 수 있으므로 여러분의 기호에 맞는 웹 버전의 Office를 가져가실 수 있습니다. (http://technet.microsoft.com/en-us/office/ee815687.aspx)

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by Windows Azure MVP 남정현 (rkttu.com)