Develop/DevCourseTIL

Develop/DevCourseTIL

Zookeeper란

Zookeeper Apache에서 개발한 오픈 소스 분산 형상 관리 시스템으로, 분산 어플리케이션을 위한 분산 코디네이터라고 할 수 있다. 한 노드 안에서 프로그램이 수행될 때는 걱정하지 않아도 될 요소인 네트워크를 통해서 메세지가 전송되는 부분이 종종 문제가 된다. 특히 메세지를 전송하고 네트워크가 끊겼을 때 송신자는 수신자가 메세지를 성공적으로 수신 했는지 조차 알 수 없게 된다. 메세지를 받고 처리까지 했는데 응답을 못 준 걸 수도 있고, 메세지 전송 자체가 실패한 걸 수도 있다. 작업이 성공했는지 실패했는지 여부 조차 알 수가 없는 것이다. zookeeper는 이러한 부분 실패(Partial Failure)를 처리하기 위한 분산 처리 도구를 제공한다. zookeeper는 분산 어플리케이션을 만들기..

Develop/DevCourseTIL

05.26 데이터 엔지니어링 35일차 - 시각화 툴

시각화 툴이란? 대시보드 혹은 BI툴이라고 부르기도 함 KPI, 지표, 중요한 데이터 포인트들을 데이터를 기반으로 계산/분석/표시해주는 툴 결정권자들로 하여금 데이터 기반 의사결정을 가능하게 함 현업 종사자들이 데이터 분석을 쉽게 할 수 있도록 해줌 시각화 툴 종류 Excel, Google Spreadsheet Python: 데이터 특성 분석(EDA)에 더 적합 Looker (구글) LookML이 자체언어로 데이터 모델을 만드는 것으로 시작 한 번 만들어 놓으면 변경하기 쉬움 한 사람이 템플릿만 잘 만들면 다른 사람도 응용할 수 있음 Tableau (세일즈포스) 다양한 제품군 보유, 일부는 사용이 무료 한 번 만들어 놓으면 변경하기 어려움 Power BI (마이크로소프트) Apache Superset (..

Develop/DevCourseTIL

분산 시스템의 이해

분산 시스템이란? 분산 시스템은 여러 컴퓨터 또는 장치들이 네트워크로 연결되어 작업을 분산하고 협력하여 동작하는 컴퓨팅 환경을 말한다. 이러한 시스템은 컴퓨터 자원과 작업 부하를 여러 노드에 분산시켜 성능을 향상 시킬 수 있으며, 높은 가용성, 확장성, 신뢰성을 제공할 수 있다. 분산 시스템은 중앙 집중식 시스템과 달리 분산된 자원을 활용하여 작업을 처리하므로, 여러 개의 컴퓨터나 서버에 응용 프로그램, 데이터 또는 서비스를 분산시킬 수 있다. 이러한 분산 시스템은 대규모 데이터 처리, 병렬 컴퓨팅, 실시간 시스템, 클라우드 컴퓨팅 등 다양한 분야에서 사용된다. 분산시스템의 구성요소는 여러 개의 노드로 구성되며, 이 노드들은 네트워크를 통해 통신하고 작업을 협력하여 수행한다. 이러한 노드들은 동일한 작업..

Develop/DevCourseTIL

05.24 데이터 엔지니어링 33일차 - Redshift (2)

사용자별 테이블 권한 설정 일반적으로 사용자별 테이블별 권한 설정은 하지 않음 너무 복잡하고 실수의 가능성이 높음 역할(Role) 혹은 그룹(Group) 별로 스키마별 접근 권한을 주는 것이 일반적 사용자 집합: 그룹, 테이블 집합: 스키마 그룹의 수나 스키마의 수는 사용자나 테이블의 수보다 훨씬 적음 요즘은 RBAC(Role Based Access Control)가 새로운 트렌드: 그룹 보다 더 편리 계승 구조를 만들 수 있음 여러 역할에 속한 사용자의 경우는 각 역할의 권한을 모두 갖게 됨(Inclusive) 개인정보와 관련한 테이블들이라면 별도 스키마 설정 극히 일부 사람만 속한 역할에 접근 권한을 줌 컬럼 레벨 보안 (Column Level Security) 테이블 내 특정 컬럼(들)을 특정 사용..

Develop/DevCourseTIL

05.23 데이터 엔지니어링 32일차 - Redshift

Redshift 특징 AWS에서 지원하는 데이터 웨어하우스 서비스 SQL 기반 관계형 데이터베이스 2PB의 데이터까지 처리 가능 최소 160GB로 시작해서 점진적으로 용량 증감 가능 단, 이 때는 SSD를 사용하기 때문에 속도가 빠름 Still OLAP 응답속도가 빠르지 않기 때문에 프로덕션 데이터베이스로 사용불가 컬럼 기반 스토리지 레코드 별로 저장하는 것이 아니라 컬럼별로 저장함 컬럼별 압축이 가능하며 컬럼을 추가하거나 삭제하는 것이 아주 빠름 벌크 업데이트 지원 (모든 데이터 웨어하우스의 특징) 레코드가 들어있는 파일을 S3로 복사 후 COPY 커맨드로 Redshift로 일괄 복사 고정 용량/비용 SQL 엔진 최근 가변 용량 옵션도 제공 데이터 공유 가능 (Datashare) 다른 AWS 계정과 특..

Develop/DevCourseTIL

05.22 데이터 엔지니어링 31일차 - data engineering (1)

데이터 조직의 비전은? 신뢰할 수 있는 데이터를 바탕으로 부가 가치 생성 데이터를 바탕으로 개인화를 통해 추천을 잘 해주면서 본업을 더 잘 할 수 있도록 부가 가치를 생성 데이터의 중요성을 강조하니 데이터 팀도 회사에서 인정을 받는다? (x) 데이터 조직이 하는 일 고품질 데이터를 기반으로 의사 결정권자에게 입력 제공 결정 과학 (Decision Science)라고 부르기도 함. 데이터를 고려한 결정(data informed dicisions)을 가능하게 해줌 : 새로운 혁신을 하고 싶을 때 vs 데이터 기반 결정(data driven decisions) 예를 들면 데이터 기반 지표 정의, 대시보드와 리포트 생성 등을 수행 어떻게 해야할지 방향을 제시해줌 고품질 데이터를 기반으로 사용자 서비스 경험 개선..

향식이
'Develop/DevCourseTIL' 카테고리의 글 목록 (3 Page)