2009-11-13 2 views
0

나는 현재 5 억 가지 상당의 시계열 레코드를 보유하고있는 SQL Server 데이터베이스를 보유하고 있습니다. 각 레코드는 시계열을 구성하는 datetime 및 double 데이터 값과 두 개의 다른 datetime 값을가집니다. 데이터웨어 하우스 경로를 사용하지 않고도 쿼리 성능을 향상시킬 수있는 방법을 모색 중입니다.HierachyID를 사용하여 시계열 데이터 저장

데이터 및 시간을 DateTime으로 저장하는 대신 SQL Server 2008에서 새로운 HierachyID를보고 있었고 날짜 및 시간을 저장하는 데이 방법을 사용할 수 있는지 궁금해했습니다. 나는 hierachy가 년, 월, 일, 시간, 분이 될 것이라고 상상할 것이다.

성능 향상과 색인 생성 작동 방식을 제공합니까?

+0

HierachyID 컬럼을 유지 보수하는 것이 더 큰 고통이 될 것입니다. 재귀 적으로 발생하는 계층 구조의 상위 레코드를 업데이트하려면 트리거가 필요합니다. 간단한 데이터웨어 하우징 솔루션이 더 좋을 수도 있습니다. – Stewy

답변

0

나는 의심 스럽다. 게다가 프로그래밍을 훨씬 더 복잡하게 만들 것입니다. datetime 열에 클러스터 된 인덱스가 있습니까? 어떤 종류의 쿼리 성능이 좋지 않습니까? 또한 분 단위 정밀도가 필요하지 않으므로 SMALLDATETIME으로 이동하면 행당 4 바이트 씩 인덱스 페이지의 크기를 줄일 수 있습니다. 낮은 I/O = 성능 향상.

+0

감사합니다. 좋은 성능을 제공하는 기본 datetime 열에 클러스터 된 인덱스가 있습니다. 나는 내가 색인을 생성하고 질문을했을 때 이것들을 생각하고있는 두 개의 다른 datetime 값을 가지고 있다고 언급 했어야했다. – Stewy

관련 문제