안녕하세요. 코난 김대우 입니다.

클라우드 환경에서의 데이터 서비스는 역시 네트워크 응답 속도에 많은 영향을 받게됩니다.

 

SQL Azure 역시 클라우드 기반 관계형 데이터베이스 서비스이기 때문에 네트워크 응답속도(Latency)를 충분히 고려한 구조 설계가 필요합니다. 즉, 라운드트립을 줄이는 형태로 호출 빈도를 줄이거나, 중계 Queue나 Batch성으로 쿼리 호출 구조를 변경해 가능한 응답속도 확보가 그 관건이 되겠지요.

 

다행히도, SQL Azure는 이런 Latency 이슈에 대한 보조적인 장치로 SQL Azure Federation 을 제공하고 있습니다.

 

fed02.jpg

 

SQL Azure Federation:

With Federation, databases can be elastically scaled out using the sharding database pattern based on database size and the application workload.  This new feature will make it dramatically easier to set up sharding, automate the process of adding new shards, and provide significant new functionality for easily managing database shards.

http://social.technet.microsoft.com/wiki/contents/articles/2281.aspx 

 

fed01.jpg

 

SQL서버에서 분산분할 뷰나 샤딩(Sharding)에 대해 이해하고 계신 분이라면 이해가 빠를 듯 합니다. SQL Azure의 Federation 방식은 여러 형태가 제공되나 데이터의 분산이라는 구조적 개념에서 볼때 완전히 새로운 기술은 아닙니다. 클라우드에서 쉽게 구축, 사용하기 위한 패턴이라는 부분이 클라우드 환경에서 데이터 서비스를 위한 더 좋은 장점이 되겠지요.

 

How to Shard with SQL Azure
http://social.technet.microsoft.com/wiki/contents/articles/how-to-shard-with-sql-azure.aspx

 

SQL Azure Federations: Building Scalable, Elastic, and Multi-tenant Database Solutions
http://social.technet.microsoft.com/wiki/contents/articles/2281.aspx

 

Vertical Partitioning in SQL Azure: Part 1
http://blogs.msdn.com/b/sqlazure/archive/2010/05/17/10014011.aspx

 

SQL Azure Horizontal Partitioning: Part 2
http://blogs.msdn.com/b/sqlazure/archive/2010/06/24/10029719.aspx


SQL서버 : Partitioned Table and Index Concepts
http://msdn.microsoft.com/en-us/library/ms190787.aspx

There’s an older concept called Partitioned Views, where a view will knit together logically separate tables.  These are supported in both SQL Azure and on-prem.

 

SQL서버 : Using Partitioned Views
http://msdn.microsoft.com/en-us/library/ms190019.aspx

And Distributed Partitioned Views, where the separate tables are in separate databases on separate servers.  These are not supported in SQL Azure, as they depend on Linked Servers.


SQL서버 : Creating Distributed Partitioned Views
http://msdn.microsoft.com/en-us/library/ms188299.aspx





profile

부족하지만, SQLER의 누군가와 함께한 나눔을 통해 제가 더 많이 즐거웠습니다.
SQLER와 함께 즐거워 할수록, 그 나눔을 통해 더 많은 기회와 가치를 발견하게 되었습니다.
나눔의 생각이 앞으로도 계속, SQLER를 움직일 것입니다.

코난, 김대우 / SQLER 운영자 / 골라먹는 SQLER RSS 정보 구독 / 실시간 SQLER 소식 uxkorea 트위터