본문 바로가기

SW LAB

코딩테스트 중요 포인트 요 근래 다양한 코딩테스트 문제를 풀면서 중요하거나 인지해야할 부분을 나열해보려 합니다. ​ ​ 1. 가장 중요한 것은 '문제 인지' 입니다. 문제에서 요구하는 것이 무엇인지를 정확히 파악해야합니다. 문제에 작성된 한 줄 한 줄 지문에 맞춰 코딩을 하게 되면, 특이 케이스에 걸려 결국 실패할 확률이 높습니다. ​ 2. 코드 작성 전 풀이 방안을 고민해야합니다. 풀이 방안 1안이 생각났다고, 바로 코드를 작성하는 것이 아니라 .. 적어도 더 나은 방법은 없을까 ? 생각하며 두, 세 가지 정도는 고민할 필요가 있습니다. 코드 작성 중, 다른 방안이 생각나서 급하게 수정하면.. 버그나 시간초과에 걸릴 확률이 높아질 것입니다. ​ 3. 유형에 따른 처리 방식 학습 스택, 큐, 리스트 등 선형 자료구조를 활용해야.. 더보기
WAS : JBOSS 설치 및 세팅 가이드 JBOSS 세팅 절차입니다. 1. jboss 다운로드 http://jbossas.jboss.org/downloads 2. 설치방법 http://blog.naver.com/PostView.nhn?blogId=crehacktive3&logNo=221033209095&parentCategoryNo=&categoryNo=6&viewDate=&isShowPopularPosts=true&from=search -> 요약하면, 사용자 계정 생성 후.. 실행하면 됩니다. 2-1. 실행 쉘 스크립트 폴더 이동 [@root]# cd /home/was/jboss/jboss-as-7.1.1.Final/bin 2-2. 계정 생성 [@root]# ./add-user.sh 2-3. 실행 [@root]# ./standalone.sh .. 더보기
빅오 표기법 (Big-Oh Notation) 알고리즘을 분석하기에 앞서, 기본적인 소스코드를 바탕으로 빅오 표기법을 완성하기까지의 과정을 포스팅하도록 하겠습니다. 1. 다음과 같은 소스코드가 주어졌다고 합니다. 2. 각 라인을 분석해봅시다. 'int sum=0' 의 경우 1번 'for(int i =0; i < _n; i++)' 의 경우 n+1번 'sum++'의 경우 n번 따라서 1 + (n+1) + n 이다. 즉, 2n + 2의 결과값을 갖습니다. 3. 표기법에 대해서 증명해봅니다. 2n + 2 더보기
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 데이터 카탈로그와 즉시 통.. 더보기