본문 바로가기

SW LAB

AWS CloudFront : Log 만들기 AWS CloudFront Log 만들기 CF Log 테스트 자료를 만들기 위해 동일한 필드로 구성하여 생성할 수 있습니다. 천만건 까지 생성해봤고, 로는 BearTrail 같은 상용도구로 열어서 볼 수 있습니다. 라인 수가 너무 많으면 일반적인 에디트 도구 (notepad++) 로 열리지 않습니다. 언어는 JAVA 입니다. 로그를 생성하는 CfLogMakeService 클래스 정의입니다. import java.io.File; import java.io.FileWriter; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.List; import java.util... 더보기
AWS Athena : 성능 테스트 AWS Athena Performance Test 본 내용은 Athena 를 이용하여 로그를 분석하기 위한 최적화 내용과 수행에 사용한 SQL Script, 그리고 성능 측정 자료 로 구성되어 있습니다. Overview Prerequisite Optimization SQL Script 중요 자료, 성능 측정 테스트파일 정보 및 변환 소요시간 Select (단건 파일 대용량 측면에서 측정) Select (다중 파일 대용량 측면에서 측정) Prerequisite Bucket 생성 kjham-athena 각 로그파일이 위치하는 Bucket 내 디렉토리는 다음과 같습니다. s3://kjham-athena ㄴcust_idx=value ㄴdist_idx=value ㄴyear=value ㄴmonth=value ㄴda.. 더보기
AWS Athena : 최적화 AWS Athena Optimization CloudFront AccessLog Analysis 웹 사이트, 비디오 및 API 작업을 대기 시간이 짧고 전송 속도가 빠른 브라우저 및 클라이언트에 제공하기 위해 Amazon 에서는 CloudFront를 제공합니다. 그리고 CloudFront의 로그는 S3에 저장되도록 구성할 수 있습니다. 그리고 로그를 분석하기 위한 다양한 방안들이 있습니다. Amazon Redshift Amazon Athena Amazon ES Amazon EMR 본문에서는 일반적으로 선택하는 Athena를 이용한 방안을 다루고, 최적화 부분을 알아봅니다. Athena Optimazation 최적화를 수행하기 위해 비용과 성능 두 가지 측면이 있습니다. 비용 부분에서는 데이터 저장과 쿼리.. 더보기
AWS CloudFront : 소개 Amazon CloudFront 란 ? Amazon CloudFront는 .html, .css, .js 및 이미지 파일과 같은 정적 및 동적 웹 콘텐츠를 사용자에게 더 빨리 배포하도록 지원하는 웹 서비스입니다. CloudFront는 엣지 위치라고 하는 데이터 센터의 전 세계 네트워크를 통해 콘텐츠를 제공합니다. CloudFront를 통해 서비스하는 콘텐츠를 사용자가 요청하면 지연 시간이 가장 낮은 엣지 로케이션으로 라우팅되므로 콘텐츠 전송 성능이 뛰어납니다. 컨텐츠를 전송하도록 CludeFront를 설정하는 방법 CloudFront 배포를 생성하여 CloudFront에게 어디로부터 콘텐츠를 전송하고자 하는지와 이러한 콘텐츠 전송을 추적 및 관리하는 방법에 대한 세부 정보를 알립니다. 그런 다음 Cloud.. 더보기
AWS Athena : 소개 Amazon Athena 란 ? Amazon Athena는 표준 SQL을 사용해 Amazon S3에 저장된 데이터를 간편하게 분석할 수 있는 대화식 쿼리 서비스입니다. Athena는 서버리스 서비스이므로 관리할 인프라가 없으며 실행한 쿼리에 대해서만 비용을 지불하면 됩니다. Athena는 사용이 쉽습니다. Amazon S3에 저장된 데이터를 가리키고 스키마를 정의한 후 표준 SQL을 사용하여 쿼리를 시작하기만 하면 됩니다. 그러면 대부분 결과가 수 초 이내에 제공됩니다. Athena에서는 데이터 분석을 준비하기 위한 복잡한 ETL 작업이 필요 없습니다. 따라서 SQL을 다룰 수 있는 사람은 누구나 신속하게 대규모 데이터 세트를 분석할 수 있습니다. Athena는 AWS Glue 데이터 카탈로그와 즉시 통.. 더보기
CDN 관련 용어집 Cloud AWS (Amazon) AWS 용어집 https://docs.aws.amazon.com/ko_kr/general/latest/gr/glos-chap.html AZ (Availity Zone) AWS 서비스가 리전들의 집합이라면, Region은 AZ(가용역역)들의 집합입니다. AZ는 데이터 센터이며, 실제 물리저그로 완전히 돌립되어 있지만, AWS 콘솔 상에서 리소스별로 구분하지는 않습니다. 하나의 Region안에 여러 개의 데이터 센터를 운영함으로써 가동률 혹은 가용성을 크게 높일 수 있습니다. 가용성(Availibility)은 서비스를 정상적으로 사용가능한 정도라고 볼 수 있습니다. Cloud Front 전세계에 위치한 Edge location을 이용하여 효율적인 컨텐츠 배포 구조를 제공하는.. 더보기
AWS Networking Cookbook : (1) VPC 구성 (기본편) AWS Networking Cookbook의 2장(사용자 맞춤형 VPC 구성)을 읽고 VPC 설정을 위한 기본 구성요소를 살펴봅니다. 다루는 주제들은 다음과 같습니다. VPC의 관리 Public Subnet, Privacy Subnet 관리 요령 NACL 관리 방법 SG(보안 그룹) 관리 방법 IGW(인터넷 게이트웨이) 관리 방법 NAT 게이트웨이 관리 방법 라우팅 테이블 관리 방법 EC2 인스턴스 관리 방법 1. VPC의 관리 AWS VPC는 AWS 클라우드 내에 있는 가상 네트워크로, 기업의 데이터센터 내에 있는 일반적인 네트워크처럼 구성되어 있습니다. VPC 조회 및 생성 AWS 계정으로 로그인하면 Default VPC를 제공하고 있습니다. AWS Services 에서 VPC를 검색하여 선택하면 V.. 더보기
MongoDB : String-List to Concat-String 시간이 없어서.. 간략하게 적어봅니다. String으로 구성된 List를 하나의 필드안에 구분자를 주어 묶어야 하는 일이 생겼습니다. { // DB 기준으로 테이블, 컬럼 리스트를 생성 $group: { _id: "$dbNm", tableList: { $addToSet: "$tableNm" }, columnList: { $addToSet: "$columnNm" } }, // reduce & concate 을 이용하여 List를 Concate String 으로 변환 $project: { dbNm: "$_id", tableNm: { $reduce: { input: "$tableList", initialValue: "", in: { $concat: ["$$value", "_", "$$this"] } } }, .. 더보기