2010-01-05 5 views
6

저는 현업에서 많은 ETL 작업에 참여하기 시작했습니다. 그리고 모든 사람들이 SSIS에 꽤 부분적인 것처럼 보입니다. 저는 BI 스튜디오를 통해 가장 사소한 변형을 시도하는 데 어려움을 겪고 있습니다. 보통은 LINQ가있는 foreach 루프와 같습니다. 이 도구가 유용 할 수있는 유스 케이스 나 사용자가 확실치 않으며, 관리자가 내가 할 수없는 것을 확신하게 될 것입니다. 저의 경우를 결정하는 가장 좋은 방법은 무엇입니까? 더 나은 툴링을위한 권장 사항이 있다면 그 점도 인정할 것입니다.개발자에게 SSIS를 배우고 사용할 가치가 있습니까?

+1

SSIS에서 발생하는 문제점은 실제로 시스템 간 변환 (예 : 원격 FTP 서버의 플랫 파일을 다른 원격 데이터베이스 서버로로드하는 것)과 마찬가지로 대량 ETL을 처리하는 데 상당히 훌륭한 도구입니다 , 또는 데이터베이스 쿼리를 xml로 내보내고 웹 서비스를 통해 게시하는 등의 작업을 수행 할 수 있습니다. – GrayWizardx

+0

2.5 년 전 BI Studio에서도 가장 간단한 변환 작업을 수행하기 위해 노력했습니다. 그 당시 금형은 매우 미숙 한 것처럼 보였습니다. –

답변

4

몇 가지 기본 사항을 읽는 것 외에 SSIS에 대해 잘 모릅니다. 또한 나는 LINQ에 매우 익숙하며 데이터를 푸시하고 변형시키는 코드를 빨리 작성할 수 있습니다.

하지만 테이블에 4GB의 데이터가 있다면 어떻게 될까요? LINQ 코드가 정상적으로 처리 할 것이라고 생각합니까? 쉽게 처리 할 수는 없지만 특히 서로 상호 참조하는 많은 테이블이있는 경우에는 쉽게 처리 할 수 ​​있습니다. 순진한 LINQ 구현은 모든 것을 메모리에로드하고 충돌하려고 시도합니다.

또 다른 이유는 동료가 SSIS에 강하기 때문입니다. SSIS를 기반으로 회사에 제공 한 솔루션은 LINQ보다 회사에 더 가치가 있습니다. 다른 사람들이이를 받아 들여 수정하거나 확장 할 수 있기 때문입니다.

2

SSIS는 훌륭한 도구이지만 근본적인 개념을 먼저 파악해야합니다. 이를 통해 코드를 프로그래밍하고 디버깅하는 대신 ETL 프로세스에 집중할 수 있습니다. 학습 곡선이 있습니다.

Microsoft Project Real 예제를 살펴보고 foreach 루프가 이와 비슷한 것으로 표시되는지 확인하십시오.

또한 Pentaho-Kettle 및 Oracle Data Integrator를 살펴볼 수도 있지만, 내 생각에 같은 느낌을 갖습니다.

4

모든 것과 마찬가지로 SSIS는 장단점이 있습니다.

가파른 학습 곡선이 있으며 종종 단순해야한다고 생각하는 것들은 아닙니다. SSIS 및 툴링의 결함 인 경우도 있습니다. SSIS 방식으로 생각하지 않는 경우도 있습니다.

좋은 점은 서버 제품이므로 오류 처리 및 로깅과 같은 작업이 (적어도 부분적으로) 처리 되었기 때문입니다.

다른 시스템에서 복잡한 ETL 패키지를 작성하는 경우 매우 적합하고 강력한 도구이며 초기 설계 프로세스에 참여해야 할 때 특히 기술 세트에 추가하는 것이 좋습니다. 솔루션. C# 코드를 아는 사람이라면 SSIS 패키지가 올바른 솔루션 일 때도 좋습니다.

현재 SSIS가 SQL 이외의 다른 DB 제품과 어떻게 통합되는지에 대해서는 약간의 고민이 있습니다 (예 : 오라클 지원은 끔찍합니다).하지만 저는 Microsoft가 SSIS에 전념하고 개선 할 것이라고 믿습니다. Microsoft 상점에서 일하면 지금 배우는 것에 투자하는 것이 가치가 있습니다.


그리고 단점 측

, 여기 SSIS와 키 고충의 일부에 대해 이야기 post by Ayende이다.

나는 그들 모두에 동의하지 않거나 그들이 거래 차단기라고 생각하지 않지만, 나중에 당신을 해칠 수있는 것이 무엇인지 아는 것이 좋다.

  • 좋은 로깅 확장의 부족은 나에게 화가있다 -는

내가 생각합니까 진짜 고통을 수 있습니다 SSIS의

  • 구성 스키마가 아닌 다른 방법으로 로그인하는 것은 매우 어려운입니다 SSIS의 다음 버전은 모든 이들을 처리 할 것입니다. 그것은 Microsoft 세계의 일부분 일 뿐이며 점진적으로 나아 지지만 상황이 나아질 것입니다.