-
데이터 엔지니어링 수명 주기 전체에 걸친 기술 선택Data Engineer 2023. 9. 17. 23:48728x90
데이터 기술 : 오픈 소스, 관리형 오픈 소스, 독점 소프트웨어, 독점 서비스 등 거의 모든 방식으로 사용할 수 있는 Turn-Key 제품으로 제공
"수명 주기 전체에 걸쳐 데이터를 운반하고, 최종 사용자의 요구에 따라 이를 제공하는 견고하고 신뢰성 높은 시스템 설계"
- 아키텍처 : 비즈니스의 전략적 목표를 충족하는 데이터 시스템의 고수준 설계, 로드맵 및 청사진
데이터 엔지니어링 수명 주기 전반에 걸쳐 데이터 기술 선택 고려사항
- 팀의 규모와 능력
- 단순한 기술부터 복잡한 기술에 이르기까지 팀의 규모에 따라 솔루션에 할애할 수 있는 역량의 규모가 대략적으로 결정
- Cargo-cult engineering : 소규모 데이터 팀이 대기업의 최첨단 기술에 관한 블로그 포스팅을 참고하여 모방하는 사례
- 소규모 팀이나 기술력이 약한 팀이라면 가능한 한 많은 관리형 도구와 SaaS 도구를 사용해 직접적으로 가치를 부여
- 팀에 이미 익숙한 기술과 워크플로를 계속 사용할 것을 권장
- 시장 출시 속도
- 고품질의 표준과 보안을 유지하면서 기능과 데이터를 더 신속하게 제공할 수 있는 적절한 기술 선택
- 느린 의사결정과 그에 따른 산출물은 데이터 팀에 치명적
- 신속하게, 신뢰성 있게, 안전하게, 보안에 위배되지 않게 작업할 수 있도록 도와주는 도구 선택
- 상호 운용성
- 다양한 기술 또는 시스템이 어떻게 연결되고, 정보를 교환하며, 상호 작용하는가?
- Seamless(매끄러운) vs Time-Intensive(시간 집약적인)
- 데이터 수집 도구는 CRM, 회계 소프트웨어 등 여러 일반적인 API 및 서비스와 통합
- 대부분의 DB는 JDBC, ODBC 연결을 통한 연결을 허용함
- 비용 최적화 및 비즈니스 가치
- 실제 환경에서 예산과 시간은 한정되며, 비용은 적절한 데이터 아키텍처와 기술을 선택하는 데 있어 큰 제약 조건
- 총소유 비용(CTO)
- 활용되는 제품 및 서비스의 직접비용과 간접비용을 포함한 이니셔티브의 전체 추정비용
- 직접비용 : 이니셔티브에서 작업하는 팀의 급여 또는 소비되는 모든 서비스에 대한 AWS 청구서 등의 직접 귀속 비용
- 간접비용 : 어디에 귀속되는지와 관계없이 지불해야 하는 비용
- 설비투자비용, CAPEX : 투입된 노력과 비용에 관해 긍정적인 ROI를 달성하기 위한 장기 계획에 따른 상당한 자본 지출
- 운영비용, OPEX : 종량제 또는 유사한 방식으로 구성되며, 점진적이자 시간이 지남에 따라 분산되는 비용
- 총소유 기회비용(TOCO)
- 기술, 아키텍처 또는 프로세스 선택 시 발생하는 기회상실비용
- 유연성이 떨어지는 데이터 기술은 덫
- 핀옵스(FinOps)
- 시스템을 모니터링하고 동적으로 조정하는 DevOps의 방식을 적용해 재무적 책임과 비즈니스 가치를 완전 운용
- 현재 vs 미래 : 불변의 기술과 일시적 기술 비교
- 현재와 가까운 미래에 가장 적합한 기술을 선택하되, 미래 미지의 영역과 진화에 대응할 수 있는 방식으로 선택
- 미래의 목표가 무엇인가?
- 무엇이 변화할 가능성이 높고, 무엇이 동일하게 유지되는 경향이 있는지를 이해해야
- 불변의 기술
- 클라우드의 기반이 되는 컴포넌트 혹은 오랜 언어와 패러다임
- 클라우드 - 객체 스토리지, 네트워킹, 서버, 보안 / 언어 - SQL, Bash
- 일시적 기술
- 등장했다가 곧 사라지는 기술
- 자바스크립트 프런트엔드 분야(Backbone.js -> React, Vue.js -> ?)
- 도구와 모범 사례의 빠른 변화 속도 고려 2년마다 도구들을 평가할 것을 권장
- 장소 : 온프레미스 / 클라우드 / 하이브리드 클라우드 / 멀티 클라우드
- 온프레미스
- 기본적으로 하드웨어 소유 : 자사 소유 데이터 센터 혹은 임대 코로케이션 공간
- 기업은 하드웨어와 하드웨어에서 실행되는 소프트웨어에 대한 운영상의 책임 존재
- 하드웨어의 신뢰성 저하 대비 업그레이드 주기 관리
- 부하 급증에 대응할 충분한 용량 호스팅 가능 하드웨어 확보
- 하드웨어를 계속 실행하면서 컨테이너, 쿠버네티스, 마이크로서비스, 지속적 배포와 같은 새로운 데브옵스 방식을 채택 포함
- 클라우드
- 하드웨어 구입 대신 AWS, Azure, GCP와 같은 클라우드 제공업체로부터 하드웨어와 관리형 서비스 임대
- 단기간으로 예약할 수 있으며, 온프레미스 서버에서는 상상할 수 없던 자원의 동적 확장 실현 가능
- 하드웨어 계획 걱정 없이 빠른 프로젝트 시작 및 실험 가능
- IaaS(VM, 가상 디스크 등 서비스형 인프라) -> PaaS (Amazon RDS, GC의 SQL, Amazon Kinesis, AKS 등 서비스형 플랫폼)-> SaaS(세일즈포스, 구글 워크스페이스, 마이크로소프트 365 등) 형태로 성장
- 온프레미스
* PaaS : 개별 머신을 관리하고 분산 시스템 전체에 프레임워크를 배포하는 운영 세부 사항 무시 가능 -> 운영 O/H 최소화 및 복잡한 자동 계산 시스템에 대한 턴키 접근 제공
* SaaS : 운영 관리가 거의 필요없는 완전한 기능을 갖춘 엔터프라이즈 소프트웨어 플랫폼 제공
- 구축과 구매 비교
- 모놀리식과 모듈식 비교
- 서버리스와 서버 비교
- 최적화, 성능, 벤치마크 전쟁
- 데이터 엔지니어링 수명 주기의 드러나지 않는 요소
728x90'Data Engineer' 카테고리의 다른 글
Airflow 연결 오류 (0) 2023.11.08 Spark Structured Streaming_1 (1) 2023.10.29 DMBOK (0) 2023.09.03 Airflow 사용해보기 (0) 2023.08.21 <Kafka 발제 자료> (0) 2023.08.20 - 팀의 규모와 능력