본문 바로가기
728x90

분류 전체보기334

[Data] 데이터 관리, 마스터 데이터와 MDM(Master Data Management) 1. 마스터 데이터란? 마스터 데이터는 비즈니스 운영에 필수적인 모든 데이터 일반적으로 모든 비즈니스 데이터 중에서 작은 비율이지만, 조직 내에서 가장 복잡하고 중요한 데이터 중 일부 비즈니스 주체 또는 비즈니스가 수행되는 객체(고객, 공급업체, 직원, 제품, 비용센터 등)에 관한 데이터 트랜잭션 데이터와 비교되는 맥락에서 사용 일반적으로 다양한 스프레드시트, 애플리케이션, 물리적 미디어에 분산 사람(고객, 직원, 공급업체), 장소(사무실, 사업장), 사물(제품, 설비자산)과 같은 데이터 마스터 데이터의 예시 고객 마스터 데이터: 이름에서 알 수 있듯이, 고객 마스터 데이터에는 연락처 정보부터 구매 이력, 지급 조건에 이르기까지 고객과의 거래에 필요한 모든 핵심 데이터가 포함 ERP, CRM 및 기타 시.. 2023. 2. 12.
[Hive] 분산 처리에서의 Skew 와 Distinct count의 성능 과의 관계 이번 포스트에는 Skew와 Skew의 개념에 대해서는 아래의 링크를 참조해주세요. 2021.10.05 - [BigData/Hive] - [Hive] Hive의 성능(테이블) (3) bucketing(버켓팅),skew(스큐), serde(서데), join type(맵 조인, 셔플 조인, 정렬-병합 조인)정리 [Hive] Hive의 성능(테이블) (3) bucketing(버켓팅),skew(스큐), serde(서데), join type(맵 조인, 셔플 조인, 정 이번 포스트에는 이전 포스트에서 전부 다루지는 못했던, Hive의 성능에 관한 것들을 위주로 다루어 보겠습니다. *Hive의 개념을 모르신다면 아래를 참조해주세요 2021.07.12 - [BigData] - [Hive] Hive란?(1) spidywe.. 2023. 2. 12.
[AWS] VPC 정리 2. AWS VPC와 연관된 개념(gateway, VPC endpoint, VPC Peering, traffic mirroring, VPN 연결, EIP + Direct Connect) 이번 포스트에서는 VPC와 연관된 용어와 개념을 정리해보겠습니다. VPC 포스트 1편 ↓ https://spidyweb.tistory.com/465 1. NAT 게이트웨이, NAT 인스턴스 NAT 게이트웨이 및 NAT 인스턴스는 IPv4에만 적용되고 IPv6에는 적용되지 않으므로 인바운드 차단에는 올바르지 않습니다. 이러한 두 구성 요소는 프라이빗 서브넷의 EC2 인스턴스가 인터넷에 통신하고 인바운드 트래픽을 방지할 수 있지만 IPv6이 아닌 IPv4 주소를 사용하는 인스턴스로만 제한 됩니다. 1) NAT 게이트웨이 Private subnet이 인터넷과 통신하기 위한 outbound instance Private network가 외부에서 요청되는 inbound는 필요 없더라도 인스턴스의 펌웨어나 혹은 주.. 2023. 2. 8.
[AWS] VPC 정리 1. AWS VPC 개념 및 용어 정리 이번 포스트에는 VPC와 관련된 용어, 개념을 정리하고 2편에서는 관련된 용어와 사용 예시에 대해 정리하겠습니다. 3편에서는 직접 VPC를 만들고 확인해보는 실습을 해보겠습니다. VPC 2편 link ↓ https://spidyweb.tistory.com/442 함께 보면 좋을 public, private subnet 나누기 페이지는 아래의 링크를 참조해주세요. 2022.11.01 - [Network & Server] - [Network] Bastion Server(Host)란? 아키텍처 및 특징,실습하기 (feat. VPC) [Network] Bastion Server(Host)란? 아키텍처 및 특징,실습하기 (feat. VPC) 1. Bastion Server(Host)란? Bastion(수호자, 보.. 2023. 2. 8.
[Data Enginnering] 파일 형식 .parquet vs .csv vs .avro vs .orc 내부 구조와 읽는 방식에 따른 성능차이 1. csv 주요 특징 행 기반(Row based) plain text 기반 파일 형식(바이너리가 아님) human-readable(사람이 알아 볼 수 있는 데이터) flat하고 단순한 스키마 거의 모든 애플리케이션에서 처리 가능 2. parquet 주요 특징 열 기반(Columnar) binary format 내장된 스키마 3. orc(optimized row columnar) 주요 특징 Columnar binary format 내장된 스키마 4. avro 주요 특징 row based binary format 내장된 스키마 Schema Evolution support가 매우 좋음 5. 파일 형식 비교 csv parquet orc avro 저장 방식 row based column based column .. 2023. 2. 6.
[SQL] SQL 성능확인, Query Plan 보는 법 (Oracle, MySQL) 1. Query Plan이란? SQL 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터 접근에 사용되는 순서가 있는 단계별 집합 엑세스 플랜의 관계형 모델 개념의 특화된 경우 SQL이 선언형이기 때문에 주어진 쿼리를 실행하기 위해 수많은 방법이 존재하는 것이 일반적이며 이에 따라 다양한 성능 차이를 보임 Query Optimizer는 Query 실행을 위한 각기 다른 가능성 있는 올바른 플랜 중 일부를 평가한 다음 최적의 옵션을 고려할 때 반환 2. Query Plan 보는 법, 요소(Oracle) 1) Query Plan 보는 법 위에서 아래로 내려가면서 제일 먼저 읽을 위치 찾기 내려가는 과정에서 같은 들여쓰기가 있으면, 무조건 위에서 아래 순으로 읽기 같은 레벨에 들여쓰기된 하위 스텝이 존재하면.. 2023. 1. 31.
[AWS] Landing Zone과 AWS Control Tower 정리 1. Landing Zone 1) 개념 랜딩존의 개념적인 의미는 모래 밭이 아닌 탄탄하고 안전한 착륙 지점 클라우드 사용 환경 또는 학장 가능하고 유연한 아키텍처 설계를 위한 시작점 multi account 환경과 보안적으로 안전하게 설계된 클라우드 아키텍처 컨셉 또는 패턴 → 자동화,표준화된 계정 생성 2) 필요한 이유 서비스 계정, 공통계정, 관리계정, 네트워크 계정 등의 분할이 필요 IT 운영환경에 의해 다중 계정이 필요 → 개발, 프로덕션 분리해야 함 비용 감사 / 통제 서비스 네트워크 보안 공통적으로 사용하는 기능은 표준화와 자동화에 따른 공통 기능 재사용이 필요 2. AWS Control Tower 1) 개념 AWS 랜딩존 솔루션을 사용하기 쉽도록 서비스화한 상품, 랜딩 영역의 설정을 자동화 .. 2023. 1. 31.
[AWS] IAM vs Lakeformation 권한 관리 차이 정리 1. 프로젝트를 하면서 생긴 이슈 + 해결 IAM user에 아래와 같이 athena 및 glue 권한을 다 받았는데 database 및 table list 조회 불가 1) 기존에 받은 IAM 권한 [권한 및 정책] lakeformation:GetDataAccess lakeformation:GetMetadataAccess athena:* "glue:CreateDatabase", "glue:UpdateDatabase", "glue:DeleteDatabase", "glue:GetDatabase", "glue:GetDatabases", "glue:CreateTable", "glue:UpdateTable", "glue:DeleteTable", "glue:GetTable", "glue:GetTables", "gl.. 2023. 1. 31.
[Spark Tuning] CSV vs Parquet(columnar format) in spark 성능비교하기 [File 크기] 컬럼 수: 21개의 컬럼 레코드 수: 총 3,647,595 rows(records) csv: 578MB parquet: 44.7MB (gz.parquet: 34.6MB) [비교 관점] spark에서의 성능이란 file을 스캔할 때 스캔한 양(읽어들인 양)과 스캔시간이 중요 [CSV vs Parquet 특징 비교] (json은 덤ㅎㅎ) 1. CSV csv는 일반적인 text, 즉 row단위로 읽는 file format 1) 1개의 column select df_csv.select(F.col("Exam_No")).show(100000) Physical plan == Physical Plan == CollectLimit (3) +- * Project (2) +- Scan csv (1) (1).. 2023. 1. 25.
728x90