2012-03-27 3 views
0

SQL Azure가 계층 구조 노드를 지원하는지 여부와 성능/확장 성 측면에서 SQL 2008의 계층 구조 ID와 비교할 수 있는지 여부를 확인할 수 있는지 궁금합니다.SQL Azure 계층 구조가 지원됩니까?

기본적으로 성능에 중요한 메소드에서 기존 HierarchyId를 광범위하게 사용하는 시스템을 마이그레이션하려고합니다.이 기능에 대한 지원은 프로젝트의 거대한 게임 체인저이지만, SQL Azure 데이터베이스를 사용하여 현재이를 직접 테스트 할 수 있습니다.

2010 년에 릴리스 된 SQL Azure SU3의 일부로 일부 참조가 발견되었지만 동시에 SQL Azure에서 지원되지 않는다고 Microsoft에서 모순 된 점이 있습니다 (직접적으로 공식 발표, 불행히도 내게 직접적이 아니기 때문에 내가 원했던 것처럼 질문 할 수 없었다.) ...

나는 Azure와 약간의 경험을 가진 사람이 어느 쪽이 사실인지 알 수 있기를 바랐다. 성능이 SQL Server 2008과 비교 가능한지 여부를 확인합니다.

+0

어떤 종류의 작업에 관심이 있습니까? 우리는 Azure 프로젝트에서'cast by '('/ '+ replace (Version,'. ','/ ') +'/ '를 hierarchyid와 같이)와 같은 소프트웨어 빌드 버전 정렬을위한 HierarchyId 유형을 조금만 사용합니다. 그래서 형식이 있어야하지만 당신이 그것을 할 수있는 경험이 없습니다 ... –

+0

주로 IsDescendantOf 메서드에 사용합니다 (우리가 사용하는 것이 더 있습니다 만, 여전히 작동한다면 우리는 아마도 휴식). 우리는 대용량 동적 트리 구조를 쿼리 할 때 제공하는 성능에 주로 사용합니다. – fyjham

답변

1

예, SQL Azure는 hierarchyid를 데이터 형식 및 관련 기능으로 지원합니다. 지원되는 기능에 대한 설명은 see this article입니다. 계층 구조 데이터 형식에 대한 기사 끝 부분으로 이동하십시오.

공식 문서에 관계없이 SQL Azure 데이터베이스에 대해 데이터베이스 스키마를 절대적으로 사용해보십시오. Azure 계정을 생성하는 데 몇 초가 걸리고 데이터베이스 스키마가 호환되는지 여부를 쉽게 알 수 있습니다.

그러나 "성능이 중요한 작업"을 실행하면 무슨 뜻인지 궁금합니다. 성능 관점에서 SQL Azure를 테스트하여 필요한 것을 얻고 있는지 확인해야합니다.

+0

링크를 제공해 주셔서 감사합니다. 성능이 중요한 작업으로 인해 멀티 기가 바이트 데이터베이스에서 작업하고 있으며 쿼리에서 HierarchyId IsDescendantOf 필터링은 매우 일반적입니다. 예를 들어 일부에서 재귀 CTE를 사용하면 데이터베이스 서버가 100 % CPU가 시간 초과 될 때까지 동일한 결과를 얻을 수 있습니다. 우리는 우리 자신의 퍼포먼스 테스트를 할 생각입니다. 퍼포먼스를 테스트하기에 앞서 투자를하기 전에 높은 수준의 보증을 받기를 바랍니다.이 단계에서 움직이는 것은 단지 가능한 아이디어 일뿐입니다. – fyjham