본문으로 바로가기

SQL 서버 2005, 그 변화 속으로

category Development/MsSql 2010. 7. 27. 12:08
마이크로소프트의 차세대 DBMS인 SQL 서버 2005가 그 모습을 드러내고 있다. SQL 서버 2000이 출시된 지로부터 5년이 지난 후에 출시되는 SQL 서버 2005. 닷넷과 통합된 모습을 보면 IT 엔지니어들도 개발과 관리를 아우르는 컨버전스를 해야 하는 시대란 생각이 든다. IT 컨버전스 시대에 우리도 해야 할 게 갈수록 늘어나고 있다는 것은 기뻐해야 할 일인지 슬퍼해야 할 일인지 모르지만, 이번 기사를 본 독자들은 하나는 느낄 수 있을 것이다. “닷넷을 해야 되겠군” 필수는 아니지만 SQL 서버 2005를 파워풀하게 사용하기 위해서는 어쩔 수 없는 일이 되었다. 누구의 말처럼 SQL 서버 2005를 스포츠카에 비유한다면 닷넷을 사용하지 않으면 스포츠카를 타고 시속 60km로 달리는 것과 마찬가지이기 때문이다.

코드명 ‘유콘(Yucon)’으로 명명됐던 마이크로소프트의 SQL 서버 2000의 차기 버전인 SQL 서버 2005에 대해 어떠한 개선이 이루어졌는지 또한 어떤 기능이 새로 추가되었는지 궁금하게 여기는 사람들이 많다. 현재 SQL 서버 2005는 베타2 이후 Commutiy Technology Preview까지 나와 있으며 필자도 CTP 버전을 가지고 이 기사를 작성하고 있다.
SQL 서버 2005는 CLR(Common Language Runtime) 통합, 새로운 통합 관리도구, 새로운 비즈니스 인텔리전스(이하 BI) 지원도구 등의 기능이 포함된 DBMS이다. 이것은 갈수록 높아지는 기업의 데이터베이스 활용 방향, 즉 데이터웨어하우스와 BI에 대응하기 위함이라고 볼 수 있다. 과연 SQL 서버 2005가 SQL 서버 2000까지 일부 개발자나 DBA에게 인식되던 한계점, 아직까지 대용량의 민감한 기업 환경에서 사용되기에는 약간 부족하다는 인식을 불식시킬 수 있을 것인지 이번 기사를 통하여 조금이나마 알아보기로 한다. 우선 SQL 서버 2005에 대한 설명은 개발적 측면, 관리적 측면 그리고 더욱 강화된 BI 기능으로 분류해서 진행하도록 하겠다.

SQL 서버 매니지먼트 스튜디오

SQL 서버 2005의 새로운 관리도구인 ‘SQL 서버 매니지먼트 스튜디오’는 이전 버전의 관리도구인 엔터프라이즈 매니저, Analysis Services를 통합하였다. 따라서 SQL 서버 매니지먼트 스튜디오는 자연히 많은 도구들의 종합세트처럼 되었는데 먼저 객체 익스플로러(Object Explorer)의 사용을 알아보자.
객체 익스플로러는 OLAP와 DTS, 리포팅 서비스(Reporting services), Notification Service와 보안관리, SQL 서버 에이전트, SQL 메일 등을 사용하게 하는 도구이다. 그리고 이전에 있던 데이터베이스 Maintenance Plan을 더욱 발전시켜 원래 있던 백업, 인덱스 관리 기능뿐만 아니라 DTS 디자이너를 데이터베이스 유지관리에도 포함시켰다.
또한 SQL 서버 매니지먼트 스튜디오 솔루션이라는 새로운 쿼리 실행도구가 추가되었다. 여기서는 마치 비주얼 스튜디오 닷넷을 사용할 때처럼 프로젝트 생성을 통하여 SQL 서버 스크립트나 MDX, DMX, XMLA 등을 생성하고 저장하게 하는 Analysis 스크립트, 그리고 모바일과 연동되는 SQL 쿼리를 생성하는 SQL 모바일 스크립트를 작성할 수 있다.

<화면 1> SQL 서버 매니지먼트 스튜디오에서 객체 브라우저를 사용하는 모습


<화면 2> SQL 서버 매니지먼트 스튜디오 솔루션 생성 장면



개발 측면의 개선사항

SQL 서버 2005에서는 개발자를 위한 지원으로 닷넷을 포함시켰다. 또한 SQL의 핵심인 Transact-SQL(이하 T-SQL)의 기능도 개선시켜 개발자들이 더욱 쉽게 데이터베이스 애플리케이션을 개발할 수 있게 하고 있다. 다음은 SQL 서버 2005에서 개선이 이루어지거나 새로이 추가된 개발자적 측면의 기능이다.

◆ SQL 서버 2005의 개선 사항과 개발자 측면의 추가된 기능

1. 닷넷 프레임워크 호스팅 : SQL 서버 2005에서 개발자는 비주얼 C# 닷넷이나 비주얼 베이직 닷넷(이하 VB.NET)과 같은 언어를 통하여 저장 프로시저, 사용자 정의 데이터 유형, 사용자정의 함수와 같은 데이터베이스 객체를 개발할 수 있다.

2. XML 기술 : XML(eXtensible Markup Language)은 네트워크나 인터넷을 통하여 이기종 데이터를 통합할 수 있는 언어이다. SQL 서버 2005는 XML 쿼리와 저장을 지원한다.

3. ADO.NET 버전 2.0 : ADO.NET은 SQL 서버 2005에 데이터세트를 액세스하고 조작하는 기능을 부여해준다.

4. 보안 개선 : SQL 서버 2005는 사용자와 객체를 분리하여 사용할 수 있게 한다. 이를 통하여 개발자는 객체에 대한 보안 관리를 보다 쉽게 할 수 있다.

5. 보안 개선 : SQL 서버 2005는 사용자와 객첼르ㅡ 분리하여 사용할 수 있게 한다. 이를 통하여 개발자는 객체에 대한 보안 관리를 보다 쉽게 할 수 있다.

6. T-SQL 개선 : SQL 서버의 핵심인 T-SQL도 개선이 이루어졌다. 에러 핸들링과 재귀 쿼리, 피봇(Pivot), APPLY, ROW_NUMBER 등의 개선이 이루어졌다.

7. 서비스 브로커 : 서비스 브로커(Service Broker)는 분산되고 비동기화된 애플리케이션간의 메시지 전달을 제공하는 새로운 기능이다.

8. 리포팅 서비스 : SQL 서버 2005의 리포팅 서비스는 비주얼 스튜디오 2005(코드명 Whidvey)와 함께 사용되는 리포팅 솔루션이다.

닷넷과 SQL 서버 2005

SQL 서버 2005에서 가장 중점을 둔 부분은 바로 VB.NET이나 C#과 같은 CLR 기반 언어를 이용하여 T-SQL이 취약했던 프로그램 객체 형성을 통한 복잡한 처리를 할 수 있게 해준다는 점이다. 이는 예전부터 여러 프로그래머들이 계속 요구해왔던 점으로서 SQL 서버 2005에서 이러한 요구를 수용하고 T-SQL을 더욱 발전시켰다고 볼 수 있다. SQL 서버 2005는 CLR과 통합되어서 어떤 데이터베이스 객체, 예를 들어 트리거, 프로시저, 사용자정의 함수, 사용자정의 형식 등을 닷넷 언어로서 정의하고 실행할 수 있다.
간단하게 CLR을 이용하는 닷넷 코드의 배포를 설명한다면 우선 개발자가 VB.NET이나 C#과 같은 언어를 이용하여 코드를 작성하고 나서 닷넷 컴파일러를 통하여 어셈블리를 만들고, 그 후에 Create Assembly와 같은 T-SQL 문장을 이용하여 SQL 서버에 등록하면 되는 것이다.
그러면 지금부터 간단하게 저장 프로시저를 C# 코드를 이용하여 생성하고 이를 적용하는 장면을 보자. 필자는 이를 위하여 SQL 서버 2005 Community Preview 버전과 비주얼 스튜디오 닷넷 2005 Community Preview를 사용했다.

<화면 3> VS.NET 2005에서 C#으로 저장 프로시저 작성



예를 들어 특정 데이터베이스의 쿼리 결과를 XML 형태로 파일에 저장하게 하는 저장 프로시저를 작성해보자. 이를 위해서는 우선 <화면 3>처럼 비주얼 스튜디오 닷넷 2005를 이용하여 저장 프로시저를 작성하는 프로젝트를 작성하기로 한다. C# 코드로서 데이터를 XML에 저장하는 코드를 작성한다.

[SqlProcedure(Name = “SaveXML”)]
public static void SaveXML (SqlXml XmlData,
SqlString FileName)

XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(XmlData.Value);
xmlDoc.Save(FileName.Value);


이렇게 작성한 다음 이것을 빌드한다. 다음은 SQL 서버 매니지먼트 스튜디오에서 작성하는 것이다. 여기서는 AdventureWorks라는 데이터베이스를 이용하는 것으로 한다. 참고로 AdventureWorks는 SQL 서버 2005를 설치하면 기본으로 생성되는 예제 데이터베이스이다.

USE AdventureWorks
GO

CREATE ASSEMBLY ManagedCode
FROM ‘C:\Program Files\Microsoft SQL 서버\Stored Procedure\ManagedCode.dll’
WITH PERMISSION_SET = EXTERNAL_ACCESS
GO

CREATE PROCEDURE dbo.SaveXML (@XmlData xml,
@FileName nvarchar(20))
AS EXTERNAL NAME
ManagedCode.[FileUtilities.StoredProcedures].SaveXML


앞의 코드에서 보는 바와 같이 Create Assembly를 이용하여 VS.NET에서 생성한 어셈블리를 등록하고 이를 프로시저에서 사용하도록 지정해 주면 된다. SaveXML 프로시저를 이용하면 다음과 같이 테스트할 수 있다. 특히 SQL 서버에서 CLR을 사용할 수 있게 하려면 다음과 같이 SQL 서버 옵션을 정해주면 된다.

sp_configure ‘clr_enabled’ , 1
Go
DECLARE @productList xml
SET @productList = (SELECT ProductID, Name, ListPrice
FROM Production.Product Product
FOR XML AUTO, ROOT(‘Catalog’), TYPE)
EXEC dbo.SaveXML @productList, ‘C:\Catalog.xml’


<화면 4> 저장 프로시저의 결과물인 XML파일



T-SQL 개선

T-SQL 부분에서는 피봇과 언피봇(Unpivot) 기능 지원, CTE(Common Table Expression), 재귀 쿼리 기능 등이 추가되었다. 이 기사에서 이런 기능들의 상세 부분을 알아볼 수는 없고, 피봇과 언피봇 정도만 살펴보기로 하겠다.

<그림 1> T-SQL의 피봇, 언피봇 연산



SQL 서버 2005에서는 피봇 연산자를 사용하여 행을 컬럼으로 변환하거나 이에 따른 집계도 할 수 있다. 예를 들어 주문 테이블에서 고객이 주문한 생산자와 주문한 수량을 알고 싶으면 피봇 연산자를 사용하여 원하는 생산자를 지정하면 된다.

SELECT * FROM Sales.Order
PIVOT (SUM(Qty) FOR Prod IN ([Bike],[Chain])) PVT


만약 반대로 컬럼들을 행으로 변환시키려면 언피봇을 수행하면 된다.

SELECT Cust, Prod, Qty
FROM Sales.PivotedOrder
UNPIVOT (Qty FOR Prod IN ([Bike],[Chain])) UnPVT

이전 버전에서는 이러한 결과를 얻기 위해서는 좀 더 복잡한 연산을 해야만 했지만 이제는 한결 간편해졌다는 것을 알 수 있다.

SQL 서버 2005의 관리적 측면

지금부터는 SQL 서버 2005에서 관리 측면에서의 이루어진 개선점과 새로운 기능을 간략히 설명하겠다. 관리적 측면에서는 우선 데이터베이스 미러링과 온라인 복구 기능이 눈에 띈다. 이 기능으로 SQL 서버 2005에서는 한층 가용성이 높아지게 되었다. 또한 SQL 서버 매니지먼트 스튜디오라는 도구를 제공하여 Query Analyzer, 엔터프라이즈 매니저 등으로 분산 사용되던 관리도구를 통합하여 관리자가 더욱 쉽게 데이터베이스 시스템을 관리할 수 있게 하고 있다. 다음은 SQL 서버의 관리적 측면에서의 개선되거나 추가된 기능이다.

◆ SQL 서버 2005의 관리적 측면

1. 데이터 미러링 : SQL 서버 2000의 로그 전달 기능을 더욱 개선시킨 데이터베이스 미러링 기능을 추가했다. 미러링 기능으로 대기 서버의 자동 복구 기능을 활용할 수 있다.

2. 온라인 복구 : SQL 서버 2005에서는 데이터베이스가 온라인 상태에서도 복구 가능하다. SQL 서버 2000에서는 온라인 상태에서의 데이터베이스 복구는 가능하지 않았다.

3. 온라인 인덱싱 작업 : 인덱싱 작업 중에도 업데이트, 삭제, 삽입과 같은 데이터 수정 작업이 가능하다. 예를 들어 클러스터 인덱스를 작성하거나, 재작성하는 중에 데이터의 업데이트가 가능하다는 말이다.

4. 개선된 보안 : SQL 서버 2005는 보안에서의 개선점을 이루어냈다. 예를 들어 로그인 암호정책 사용이나 소유주와 스키마 분리 등의 기능이 추가되었다.

5. SQL 서버 매니지먼트 스튜디오 : SQL 서버 매니지먼트 스튜디오라는 통합 관리 도구가 등장했다. 이 도구를 통해 개발자와 관리자는 T-SQL 작성, 백업, 프로필러 사용, 각종 마법사 사용 등을 할 수 있다.

6. 관리자 전용 연결(Dedicated Administrator Connection) : SQL 서버 2005에서는 관리자에게 전용 관리 연결을 제공한다. 이것은 데이터베이스가 어떤 이유에서 잠겨 있더라도 관리자의 관리 활동을 위해 전용 연결 접속을 계속할 수 있게 하는 기능이다.

7. 스냅샷 격리 : 스냅샷 격리는 데이터베이스 레벨에서 제공하는 새로운 트랜잭션 격리 수준이다. 스냅샷 격리를 통하여 사용자는 쓰기 중인 데이터에도 접근하여 조회할 수 있다.

8. 데이터 파티셔닝 : 데이터 파티셔닝을 통하여 대용량의 테이블이나 인덱스를 효율적으로 관리할 수 있게 한다.

9. 복제 개선 : 분산 데이터를 위한 기능으로 SQL 서버에서는 오라클에서 SQL 서버로 복제하는 데이터를 https를 통하여 가능하게 했다. 추가적으로 일대일 트랜잭션 복제 기능을 더욱 개선시켰다.

데이터베이스 미러링

SQL 서버 2005의 관리적 측면에서 가장 강조하는 개선점은 데이터베이스 미러링 기능이다. 데이터베이스 미러링 기능은 이전 버전에서의 로그 전달 기능을 더욱 개선시킨 것이다. 데이터베이스 미러링을 이용하여 원본 서버의 트랜잭션 로그를 스트리밍으로 대상 서버에 전달하고, 이를 대상 서버에서 적용시켜 원본 서버 장애시 신속한 대체를 할 수 있게 한다. 데이터베이스 미러링을 구현하려면 3대의 SQL 서버가 필요한데, 각 서버는 ‘Principal’, ‘’Mirror’, ‘witness’라는 각각의 역할을 구성하게 된다.

<그림 2> 데이터베이스 미러링 개요도



우선 원본(Principal) 서버는 트랜잭션이 수행되는 서버를 말하며, 미러링 서버는 트랜잭션 로그가 동기화되어 적용될 대상 서버를 말한다. 미러링 서버에서 사용자는 바로 데이터를 읽을 수는 없다. 트랜잭션 로그는 원본 서버에서 생성되어 미러링 서버로 지속적으로 전달되어 적용된다. 이렇게 하면 결과적으로 거의 동시에 서버는 복제되는 데이터를 갖게 되는 것이다. 목격자(Witness) 서버는 원본 서버와 미러링 서버 사이에서 감시 역할을 수행하고 있는 서버라고 보면 된다. 만약에 원본 서버에 장애가 발행한다면 목격자 서버는 자동으로 미러링 서버로 하여금 장애복구를 수행하게 한다. 무엇보다 데이터베이스 미러링의 장점은 지연시간이 거의 없이 서버의 장애복구를 수행하게 하는 점이라고 할 수 있다.

스냅샷 격리

스냅샷 격리(Snapshot Isolation)는 SQL 서버 2005에서 새롭게 추가된 트랜잭션 격리 레벨이다. 스냅샷 격리를 이용하면 데이터에 쓰기 작업을 하고 있더라도 데이터를 읽을 수 있게 된다. SQL 서버 2000에서는 쓰기 작업 중인 데이터에는 자동적으로 Exclusive Lock이 걸리게 되어 해당 데이터를 다른 사용자가 읽을 수 없게 되어 있었다. SQL 서버 2005에서는 스냅샷 격리가 시행되고 있는 데이터의 쓰기 작업이 된 데이터를 tempd에 위치시키고 이를 읽게 하는 방식으로 스냅샷 격리를 수행한다.
물론 기본으로 스냅샷 격리가 해당 서버에서 실행되는 것은 아니다. 이것은 데이터베이스 옵션을 바꾸어서 실행하게 할 수 있다. 예를 들어 Adventure Works라는 데이터베이스에서 스냅샷 격리를 사용하게 하려면 다음과 같이 데이터베이스 옵션을 바꾸면 된다.

Alter Database AdventureWorks
Set Allow_Snapshot_Isolation = ON


앞의 문장처럼 하면 데이터베이스 레벨에 적용되는 것이지만 이것을 해당 연결 세션에만 적용하고 싶으면 다음과 같이 해서 적용한다.

Set Transaction Isolaiton Level Snapshot


SQL 서버를 조금만 공부해본 사용자라면 앞의 두 문장의 형태가 눈에 익을 것이다.

SQL 서버 2005 보안

SQL 서버 2005에서 가장 큰 보안상의 변화는 사용자 스키마 분리 기능이다. 데이터베이스에서 하나의 스키마에 두 개의 테이블 이름이 같다면 이것은 절대 같이 있을 수 없다. 하나의 스키마에서 객체는 반드시 이름이 구분되어야만 한다. 예를 들어 SQL 서버에서 테이블을 만들게 되면 자연히 만들 때의 사용자가 소유주가 된다. 대부분 우리는 DBO 사용자 권한으로 테이블을 만들게 되고, 이렇게 되면 dbo가 소유주인 테이블, 즉 dbo.tablename으로 이루어지고 이를 좀 더 구체적으로 서술하면 servername.dbname.dbo.tablename이라는 형태로 구성된다. 이렇게 하면 데이터베이스를 액세스하는 사용자들은 모두 쿼리를 할 때 dbo 스키마를 기본으로 사용한다.

<그림 3> SQL 서버 보안 아키텍처



예를 들어 <그림 4>를 보자. 일반적인 사용자들은 dbo 스키마를 기본 스키마로 하기 때문에 Select * From orders라고 질의했을 경우에 자연적으로 Select * From servername.dbname.dbo.table라는 문맥으로 실행된다. 항상 dbo를 기본 스키마로 사용하는 것이다.

<그림 4> 사용자 스키마 분석



Bill(no default schema) SELECT * FROM Orders SELECT * FROM Products
Ted(Default schema = sales) SELECT * FROM Orders SELECT * FROM Products
dbo products sales Orders

그렇지만 Ted라는 사용자를 생성하여 그 사용자에게 디폴트 스키마로 sales를 정해주면 Ted가 조회하는 스키마는 기본적으로 Select * From orders라고 하면 Select * From servername.dbname. dbo.orders가 된다. 우선은 sales라는 스키마를 만들어서 이 스키마에 테이블을 만들어 주게 된다.

CREATE SCHEMA sales
CREATE TABLE orders
(OrderID INT, SalesPersonID INT, OrderDate DATETIME)
GRANT SELECT ON orders TO Ted

다음은 Ted의 기본 스키마로 sales를 지정하는 구문이다.

ALTER USER Ted
WITH DEFAULT_SCHEMA = sales

이렇게 하면 Ted의 기본 스키마는 sales가 되고 Ted는 특별하게 dbo.orders라고 명시하지 않는 이상은 sales.orders를 조회하게 된다.
그리고 SQL 서버 2005에서는 로그인 계정을 생성할 때 윈도우의 계정 정책을 적용할 수 있게 되었다. 이는 이전버전까지의 SQL 로그인이 특별한 계정 암호에 대한 제한이 없어 비교적 간단한 암호를 설정할 수도 있었기 때문에 추가된 기능이다. 예를 들어 Tom이라는 새로운 로그인을 만들어 보자.

CREATE LOGIN [서버name\Tom]
FROM WINDOWS
WITH DEFAULT_DATABASE = AdventureWorks

앞의 구문을 실행하면 Tom이라는 로그인이 만들어지고, 기본 데이터베이스로 AdventureWorks가 지정된다. 그런 후 만들어진 계정에 암호를 주고, 윈도우에서 사용하는 암호정책을 적용하는 구문을 실행할 수 있다.

ALTER LOGIN Tom
WITH PASSWORD = ’P@ssw0rd’,
DEFAULT_DATABASE = AdventureWorks,
CHECK_EXPIRATION = ON,
CHECK_POLICY = ON

이와 같이 실행하면 Tom에게는 윈도우의 암호 만료 기간과 암호정책이 적용되어 사용된다.

비즈니스 인텔리전스 측면

갈수록 요구사항이 증가되는 기업의 BI 솔루션에 대하여 SQL 서버 2000에서는 Analysis 서비스와 리포팅 서비스를 통하여 이에 대한 솔루션을 제공하고 있다. 다음은 SQL 서버 2005에서 제공하는 주요 BI 솔루션 기능이다.

◆ SQL 서버 2005에서 제공하는 주요 BI 솔루션 기능

1. Analysis Services : SQL 서버 2005에서 Anaysis 서비스는 BI 솔루션 개발을 위한 확장된 기능을 제공하고 있다.

2. Business Intelligence development Studio : 새로이 추가된 도구이다. 이 도구를 사용하여 개발자는 큐브, 차원, 마이닝 구조 등의 Analysis 구성요소를 개발할 수 있다.

3. DTS(Data Transformation Services) : 네이티브 코드와 관리되는 코드에 대한 지원이 추가되어 더욱 용이하게 DTS를 디자인할 수 있다.

4. 데이터 마이닝 : 4개의 새로운 마이닝 알고리즘이 추가되어 대용량의 데이터에서 더욱 쉽게 데이터를 마이닝할 수 있게 되었다.

5. 리포팅 서비스 : 리포팅 서비스를 이용하여 OLAP 등의 데이터를 사용자에게 용이하게 리포팅할 수 있는 기능이 추가되었다. 리포팅 서비스는 원래 SQL 서버 2005에 처음 탑재될 예정이었으나 앞당겨서 SQL 서버 2000에서도 사용할 수 있게 출시된 상태다.

6. Clustering Support : Analysis 서비스에서도 장애 복구 클러스터링을 이용하여 고가용성을 보장하게 되었다.

<화면 5> Business Intelligence Development Studio 를 통하여 BI 솔루션을 생성하는 장면



BI 측면에서 SQL 서버 2005의 눈에 띄는 사항을 보면 ‘Business Intelligence Development Studio’라는 새로운 통합 개발 환경을 제공한다는 점이다. 이 도구를 이용하여 BI 개발자는 큐브를 생성하거나 데이터 원본에 대한 뷰, 리포트, 변환 패키지 등을 생성할 수 있게 되었다. 이전 버전에서는 ‘Analysis Services manager’라는 도구에서 단순히 큐브나 차원 등을 생성하고 이를 DTS 등과 통합해서 사용해야만 했었다.
BI Development Studio는 4개의 윈도우를 사용하는데, 먼저 솔루션 탐색기에서 객체에 대한 뷰나 디자인을 볼 수 있게 한다. Tool Box Window는 사용 가능한 BI 프로젝트의 각종 컨트롤 목록을 보게 한다.
그리고 Business Intelligence Development Studio에서는 Analysis 서비스, Data Transformation 서비스, 그리고 리포팅 서비스 등의 3개의 프로젝트를 생성할 수 있게 한다.

“개발과 관리도 컨버전스로 간다”

SQL 서버 2005를 보면 갈수록 개발자와 DBA가 통합되어 가고 있다는 점을 느낄 수 있다. 예를 들면 Business Intellience Studio라든지 SQL 서버 매니지먼트 스튜디오라는 통합도구만 봐도 그렇다. 마치 2002 월드컵 당시에 히딩크가 중시했던 멀티플레이어의 존재가 SQL 서버에서도 중시된다는 생각이 든다. 개발자와 관리자가 따로 담당하던 영역이 갈수록 융합되고 개발과 관리를 다 전문적인 지식으로 무장해야 SQL 서버를 제대로 다룰 수 있기 때문이다.
이는 필자가 생각하기에 요즘의 IT 흐름과 일맥상통한다. 가전제품에서만 디지털 컨버전스가 이루어지고 있는 것이 아니라, IT 엔지니어들도 개발과 관리를 아우르는 컨버전스를 해야 하는 시대이기 때문이다. IT 컨버전스 시대에 우리도 해야 할 게 갈수록 늘어나고 있다는 것은 기뻐해야 할 일인지 슬퍼해야 할 일인지 모르지만, 이번 기사를 본 독자들은 하나는 느낄 수 있을 것이다. “닷넷을 해야 되겠군”
필수는 아니지만 SQL 서버 2005를 파워풀하게 사용하기 위해서는 어쩔 수 없는 일이 되었다. 누구의 말처럼 SQL 서버 2005를 스포츠카에 비유한다면 닷넷을 사용하지 않으면 스포츠카를 타고 시속 60km로 달리는 것과 마찬가지이기 때문이다.

제공 : DB포탈사이트 DBguide.net

출처 : 마이크로소프트웨어 [2004년 12월호]

'Development > MsSql' 카테고리의 다른 글

Clustered Index & Non-Clustered Index  (0) 2012.02.27
LINKED SERVERS SUMMARY  (0) 2010.08.06
테이블 수정  (0) 2010.07.21
페이징 쿼리  (0) 2008.10.30
쿼리분석기(Query Analyzer) 단축키  (0) 2008.10.30