Amazon Web Services 한국 블로그
AWS 주간 소식 모음 – 2017년 5월 29일
안녕하세요! 여러분~ 매주 월요일 마다 지난 주에 업데이트된 국내 AWS관련 콘텐츠를 정리해 드리고 있습니다. AWS 클라우드에 대한 새로운 소식을 확인하시는데 많은 도움 되시길 바랍니다. 혹시 빠지거나 추가할 내용이 있으시면, 저에게 메일 주시면 추가 공유해 드리겠습니다.

AWS코리아 블로그
- Amazon Athena – 10가지 성능 향상 팁 (2017-05-26)
- [기술백서] AWS 에서의 멀티 플레이어 게임 서버 성능 최적화 (2017-05-25)
- EBS 스냅샷에 대한 비용 태그 할당 기능 출시 (2017-05-24)
- AWS 교육 및 인증 포털 사이트 오픈! (2017-05-23)
- AWS 주간 소식 모음 – 2017년 5월 22일 (2017-05-22)
AWS코리아 발표 자료
AWS코리아 동영상
AWS 글로벌 신규 소식 (영문)
- Amazon EC2 P2 Instances are now available in Asia Pacific (Tokyo) and Asia Pacific (Sydney) Regions (2017-05-27)
- Amazon AppStream 2.0 now allows you to use your VPC security groups to control network traffic (2017-05-27)
- Amazon QuickSight now supports Federated Single Sign-On using SAML 2.0 (2017-05-26)
- Three new features added to IAM policy summaries to make it easier for you to understand and troubleshoot your IAM policies (2017-05-26)
- AWS CodeCommit is Now Available in Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), and EU (Frankfurt) Regions (2017-05-27)
- Amazon WorkDocs now supports file lock and unlock when you’re editing content (2017-05-25)
- Amazon RDS for PostgreSQL Supports Linux Huge Pages (2017-05-25)
- April 2017 Oracle Patch Set Updates (PSU) Are Available for Amazon RDS for Oracle (2017-05-25)
- Amazon Simple Queue Service (SQS) Server-Side Encryption is Now Available in the US East (N. Virginia) Region (2017-05-24)
- Amazon Inspector expands security assessment support for RHEL and CentOS (2017-05-24)
- Announcing Second Edge Location in Seattle, Washington for Amazon CloudFront (2017-05-24)
- AWS Storage Gateway now provides retrieval of archived virtual tapes in as little as 3-5 hours, adds additional virtual tape information, and adds cached volume cloning (2017-05-24)
- Announcing New Direct Connect Locations in Marseille, France and Warsaw, Poland (2017-05-24)
- Amazon Elastic Block Store (Amazon EBS) Now Supports Cost Allocation for Snapshots (2017-05-24)
- Amazon EC2 Systems Manager Available in AWS GovCloud Region (2017-05-24)
- An Easier Way to Manage the List of Resources Returned by Your Queries Using a New Pagination Parameter in the Resource Groups Tagging API (2017-05-23)
AWS 고객 및 개발자 추천 콘텐츠
- [AWS] AWS Cognito 입문 가이드 (2017-05-29)
- [Docker] Docker for AWS의 CloudFormation 설정 살펴보기 – (1) (2017-05-28)
- [AWS] AWS Lambda에서 DynamoDB에 데이터 삽입, 조회, 수정, 삭제 하기. (2017-05-27)
AWS 주요 행사 및 온라인 세미나
- AWS 5월웨비나 | AWS와 함께하는 클라우드 컴퓨팅 (5월 30일)
- AWS 5월웨비나 | AWS 에서 Windows 서버 운영, 관리 및 개발 손쉽게 하기 (5월 30일)
- AWS 5월웨비나 | Amazon Redshift Deep Dive (5월 31일)
- AWS 5월웨비나 | AWS 기반 Deep Learning 활용 방법 (5월 31일)
- AWS 201 | Amazon EC2 세미나 (6월 7일)
- AWS 101 | 클라우드기초 세미나 (6월 8일)
- AWS 101 |핸즈온 랩 실습 (6월 13일)
- AWS 301 |콘테이너 고급 핸즈온 랩 실습 (6월 15일)
AWSKRUG 소모임
전 세계 AWS 관련 새 소식을 확인하고 싶으시다면, 매주 업데이트 되는 AWS Week in Review를 살펴 보시기 바랍니다! 좀 더 빠르게 새소식을 접하시고 싶다면, 공식 트위터나 공식 페이스북을 팔로우 하세요!
이번 한주도 즐겁게 보내시고, 다음주에 다시 만나요!.
– AWS코리아 마케팅팀;
Amazon Athena – 10가지 성능 향상 팁
Amazon Athena는 표준 SQL을 통해 Amazon S3에 저장된 데이터를 쉽게 분석 할 수 있는 대화식 쿼리 서비스입니다. Athena는 서버리스(Serverless) 서비스로서, 관리해야 할 분석 서버 인프라가 없으며, 실행 쿼리에 대해서만 비용을 지불하고, 사용 방법도 매우 쉽습니다. Amazon S3에 있는 데이터 파일을 지정하고, 이에 대한 스키마를 정의한 후, 표준 SQL을 사용하여 쿼리를 하기만 하면 됩니다.
이 블로그 게시물에서는 Athena의 SQL 쿼리 성능을 향상 시킬 수있는 10 가지 팁을 알려드립니다. 특정 쿼리를 튜닝하는 것과 관련된 측면에 중점을 두어 설명합니다. Amazon Athena는 Presto를 사용하여 SQL 쿼리를 실행하므로 Amazon EMR에서 Presto를 실행하는 경우에도 이 팁들이 유용할 수 있습니다.
이 글을 읽기 앞서 우선 여러분이 Parquet, ORC, 텍스트 파일, Avro, CSV, TSV 및 JSON과 같은 다양한 파일 형식에 대한 지식이 있다고 가정합니다.
I. 스토리지 모범 사례
이 섹션에서는 Athena를 최대한 활용할 수 있도록 데이터를 구조화하는 방법에 대해 설명합니다. 데이터가 Amazon S3에 저장되는 경우 Spark, Presto 및 Hive와 같은 Amazon EMR 데이터 처리 응용 프로그램에도 동일한 방법을 적용 할 수 있습니다.
1. 데이터 분할(Partitioning)
데이터 분할 이른바 파티셔닝은 날짜, 국가, 지역 등의 컬럼 값을 기반으로 테이블을 부분적으로 나눕니다. 테이블 생성 시 이를 정의하면 쿼리 당 스캔 되는 데이터 양을 줄여 성능을 향상 시킬 수 있습니다. 파티션을 기반으로 필터를 지정하여 쿼리가 검색하는 데이터의 양을 제한 할 수 있습니다. 자세한 내용은 데이터 분할을 참조하십시오.
Athena는 다음 명명 규칙 중 하나를 따르는 Hive 파티셔닝을 지원합니다.
a) 분할 칼럼 이름 뒤에 등호 ( ‘=’)를 입력 한 다음 값을 입력하십시오.
s3://yourBucket/pathToTable/<PARTITION_COLUMN_NAME>=<VALUE>/<PARTITION_COLUMN_NAME>=<VALUE>/
데이터 집합이 위의 형식으로 분할 된 경우, MSCK REPAIR 테이블 명령을 실행하여 테이블에 테이블을 자동으로 추가 할 수 있습니다.
b) 데이터의 “path”가 위의 형식을 따르지 않으면 각 파티션에 대해 ALTER TABLE ADD PARTITION 명령을 사용하여 수동으로 파티션을 추가 할 수 있습니다. 예를 들면,
s3://yourBucket/pathToTable/YYYY/MM/DD/
Alter Table <tablename> add Partition (PARTITION_COLUMN_NAME = <VALUE>, PARTITION_COLUMN2_NAME = <VALUE>) LOCATION ‘s3://yourBucket/pathToTable/YYYY/MM/DD/’;
참고 : 위의 방법론을 사용하면 참조 할 값으로 위치를 매핑 할 수 있습니다.
다음 예제는 S3 버킷에 저장된 비행기 운항 정보 테이블의 연도 기반으로 데이터가 분할 되는 방법을 보여줍니다.
‘WHERE’절에서 칼럼을 사용하여 쿼리에서 검색되는 파티션을 제한 할 수 있습니다.
SELECT dest, origin FROM flights WHERE year = 1991
여러 칼럼을 파티션 키로 사용할 수 있고, 특정 값에 대해 데이터를 스캔 할 수도 있습니다.
s3://athena-examples/flight/parquet/year=1991/month=1/day=1/
s3://athena-examples/flight/parquet/year=1991/month=1/day=2/
분할 할 칼럼을 결정할 때 다음 사항을 고려하십시오.
- 필터로 사용되는 칼럼 분할의 좋은 후보입니다.
- 파티셔닝은 비용이 듭니다. 테이블의 파티션 수가 증가하면 파티션 메타 데이터를 검색하고 처리하는 데, 소요되는 오버 헤드가 커지고 파일 크기가 작아집니다. 파티션을 너무 세밀하게 사용하면 초기 이점을 없앨 수도 있습니다.
- 데이터가 하나의 파티션 값으로 크게 왜곡되어 대부분의 쿼리가 해당 값을 사용하면, 오히려 오버 헤드가 초기 이점을 없앨 수 있습니다.
예제 살펴 보기
아래 테이블은 분할 된 테이블과 분할 되지 않은 테이블 간의 쿼리 실행 시간을 비교합니다. 두 테이블 모두 압축되지 않은 74GB 데이터를 텍스트 형식으로 저장합니다. 파티션 된 테이블은 l_shipdate 컬럼으로 파티션되며 2526 개의 파티션을 가집니다.
| 쿼리 | 파티션하지 않은 테이블 |
비용 | 파티션한 테이블 | 비용 | 절감 정도 | ||
| 실행 시간 | 스캔데이터 | 실행 시간 | 스캔데이터 | ||||
| SELECT count(*) FROM lineitem WHERE l_shipdate = '1996-09-01' | 9.71 seconds | 74.1 GB | $0.36 | 2.16 seconds | 29.06 MB | $0.0001 | 99% cheaper 77% faster |
| SELECT count(*) FROM lineitem WHERE l_shipdate >= '1996-09-01' AND l_shipdate < '1996-10-01' | 10.41 seconds | 74.1 GB | $0.36 | 2.73 seconds | 871.39 MB | $0.004 | 98% cheaper 73% faster |
그러나 파티셔닝에는 다음 실행 시간에 표시된 것과 같은 패널티가 있습니다. 따라서 데이터를 과도하게 분할하지 않도록 하십시오.
| 쿼리 | 파티션하지 않은 테이블 |
비용 | 파티션한 테이블 | 비용 | 절감 정도 | ||
| 실행 시간 | 스캔데이터 | 실행 시간 | 스캔데이터 | ||||
| SELECT count(*) FROM lineitem; | 8.4 seconds | 74.1 GB | $0.36 | 10.65 seconds | 74.1 GB | $0.36 | 27% slower |
2. 파일 압축 및 분할
데이터를 압축하면 파일이 최적 크기이거나 분할 할 수 있는 경우 쿼리 속도를 크게 높일 수 있습니다. 데이터 크기가 작을수록 S3에서 Athena까지 네트워크 트래픽 역시 감소합니다.
Splittable 파일을 사용하면 Athena의 실행 엔진이 파일 읽기를 분할하여 병렬 처리를 높일 수 있습니다. 분할 할 수 없는 파일이 하나 있는 경우 다른 리더가 유휴 상태 인 동안 싱글 리더만 파일을 읽을 수 있습니다. 모든 압축 알고리즘이 분할 가능하지는 않습니다. 다음 표는 일반적인 압축 형식과 해당 특성을 나열합니다.
| 알고리즘 | 분할 가능? | 압축 비율 | 압축 및 해제 속도 |
| Gzip (DEFLATE) | No | High | Medium |
| bzip2 | Yes | Very high | Slow |
| LZO | No | Low | Fast |
| Snappy | No | Low | Very fast |
일반적으로 알고리즘의 압축 비율이 높을수록 데이터 압축 및 압축 해제에 더 많은 CPU가 필요합니다.
Athena의 경우 기본적으로 데이터를 압축하고 분할 할 수 있는 Apache Parquet 또는 Apache ORC를 사용하는 것이 좋습니다. 그렇지 않은 경우라면, 최적의 파일 크기로 BZip2 또는 Gzip을 시도하십시오.
3. 파일 크기 최적화
데이터를 병렬적으로 읽거나 데이터 블록을 순차적으로 읽을 수 있을 때, 쿼리를 효율적으로 실행합니다. 파일의 크기에 관계없이 파일 형식이 분할 가능하면 병렬 처리에 도움이 됩니다.
그러나, 파일 크기가 128MB 보다 작으면 실행 엔진은 S3 파일 열기, 디렉토리 나열, 객체 메타 데이터 가져 오기, 데이터 전송 설정, 파일 헤더 읽기, 압축 딕셔너리 읽기 등 추가 작업에 시간을 더 쓸 수 있습니다. 반면, 파일이 분할 가능하지 않고, 파일이 너무 크면 싱글 리더가 전체 파일 읽기를 완료 할 때까지 쿼리 처리가 대기하여 병렬 처리가 줄어들 수 있습니다.
작은 파일 문제를 해결하는 한 가지 방법은 EMR에서 S3DistCP 유틸리티를 사용하는 것입니다. 이를 통해 작은 파일을 더 큰 오브젝트로 결합 할 수 있습니다. S3DistCP는 또한 HDFS에서 S3, S3에서 S3, S3에서 HDFS로 최적화 된 방식으로 많은 양의 데이터를 이동하는 데 사용할 수 있습니다.
대용량 파일의 장점은 아래와 같습니다.
- 더 빠른 목록
- 더 적은 S3 요청
- 관리 할 메타 데이터 감소
예제 살펴 보기:
아래 표는 두 테이블 간의 쿼리 실행 시간을 비교합니다. 하나는 큰 단일 파일로, 다른 하나는 작은 파일입니다. 두 테이블 모두 7GB의 데이터를 포함하며 텍스트 형식으로 저장됩니다.
| 쿼리 | 파일 수 | 실행 시간 |
| SELECT count(*) FROM lineitem | 5000 files | 8.4 초 |
| SELECT count(*) FROM lineitem | 1 file | 2.31 초 |
| 속도 증가 | 72% 속도 증가 |
4. 컬럼 데이터 저장소 생성 최적화
Apache Parquet과 Apache ORC 는 인기 있는 컬럼 데이터 저장소입니다. 열 단위 압축, 다양한 인코딩, 데이터 유형에 기반한 압축 및 술어 푸시 다운(predicate pushdown)을 사용하여 효율적으로 데이터를 저장하는 기능을 제공합니다. 분할 역시 가능합니다. 일반적으로 압축률을 높이거나 데이터 블록을 건너 뛰는 것은 S3에서 적은 바이트를 읽음으로써 쿼리 성능이 향상된다는 것을 의미합니다.
조정할 수 있는 매개 변수 중 하나는 블록 크기 또는 스트라이프 크기입니다. ORC의 마루 또는 스트라이프 크기의 블록 크기는 바이트 단위로 한 블록에 들어갈 수있는 최대 행 수를 나타냅니다. 블록 / 스트라이프 크기가 클수록 각 블록에 더 많은 행을 저장할 수 있습니다. 기본적으로 Parquet 블록 크기는 128MB이고 ORC 스트라이프 크기는 64MB입니다. 여러 열이있는 테이블을 사용하는 경우 더 큰 블록 크기를 사용하여 각 열 블록이 효율적인 순차 I / O를 허용하는 크기로 유지되도록하는 것이 좋습니다.
조정할 수있는 또 다른 매개 변수는 데이터 블록의 압축 알고리즘입니다. Parquet 기본값은 Snappy이지만 비압축, GZIP 및 LZO 기반 압축도 지원합니다. ORC는 ZLIB를 기본으로 비압축 및 스냅을 지원합니다. 10GB 이상의 데이터가 있는 경우 기본 압축 알고리즘으로 시작하고, 다른 압축 알고리즘으로 테스트하는 것이 좋습니다.
Parquet/ORC 파일 형식은 모두 술어 푸시 다운 (혹은 predicate filtering)을 지원합니다. Parquet/ORC는 둘 다 칼럼 값을 나타내는 데이터 블록을 가지며, 각 블록은 최대/ 최소값과 같은 블록 통계를 보유합니다. 쿼리가 실행될 때, 이러한 통계는 블록을 읽거나 건너 뛸지 여부를 결정합니다. 건너 뛸 블록 수를 최적화 하는 한 가지 방법은 ORC 또는Parquet 파일을 작성하기 전에 일반적으로 필터링 된 칼럼을 식별하고 정렬하는 것입니다. 이렇게 하면 블록 내의 최소 값과 최대 값 사이의 범위가 각 블록 내에서 가능한 작게 유지됩니다.
기존 데이터를 Amazon EMR의 Spark 또는 Hive를 사용하여 Parquet 또는 ORC로 변환 할 수 있습니다. 자세한 내용은 Amazon Athena 블로그 게시물을 사용하여 S3의 데이터 분석을 참조하십시오.
- aws-blog-spark-parquet-conversion (Spark GitHub)
- Converting to Columnar Formats (Hive 사용)
II. 퀴리 모범 사례
Athena는 Presto를 사용합니다. 따라서 Presto의 작동 방식을 이해하고 쿼리를 최적화하는 방법을 통해 여러 가지 성능 향상 결과을 얻을 수 있습니다.
5. ORDER BY 최적화
ORDER BY 절은 쿼리 결과를 정렬 순서대로 반환합니다. 정렬을 수행하기 위해 Presto는 모든 데이터 행을 단일 작업자에게 전송 한 다음 정렬해야 합니다. 이로 인해 Presto에 대한 메모리 부담이 발생할 수 있으며 이로 인해 쿼리 실행 시간이 오래 걸릴 수 있습니다. 게다가 쿼리가 실패 할 수 있습니다.
ORDER BY 절을 사용하여 위 또는 아래 N 값을 확인하는 경우, LIMIT 절을 사용하면 단일 작업을 수행하는 대신 정렬 작업을 수행하여 개별 작업자를 제한하여 정렬 비용을 크게 줄일 수 있습니다.
예제 살펴 보기:
Dataset: 7.25 GB 테이블, 비 압축, 텍스트 데이터 포맷, ~6천만 행
| 쿼리 | 실행 시간 |
| SELECT * FROM lineitem ORDER BY l_shipdate | 528 초 |
| SELECT * FROM lineitem ORDER BY l_shipdate LIMIT 10000 | 11.15 초 |
| 속도 감소 | 98% 단축 |
6. joins 최적화
두 테이블을 Join 할 때 Join 왼쪽에 큰 테이블을 지정하고 오른쪽에 작은 테이블을 지정하십시오. Presto는 오른쪽 테이블을 작업자 노드에 배포 한 다음, 테이블을 왼쪽으로 스트리밍하여 조인을 수행합니다. 오른쪽에 있는 표가 더 작으면 사용되는 메모리가 적어지고 조회가 더 빨리 실행됩니다.
예제 살펴 보기:
Dataset: 74 GB 데이터, 비 압축 및 텍스트 데이터, ~602백만 행
| 쿼리 | 실행 시간 |
| SELECT count(*) FROM lineitem, part WHERE lineitem.l_partkey = part.p_partkey | 22.81 초 |
| SELECT count(*) FROM part, lineitem WHERE lineitem.l_partkey = part.p_partkey | 10.71 초 |
| 속도증가 | ~53% 속도 증가 |
예외는 여러 테이블을 함께 결합 할 때 교차 결합이 발생할 수 있다는 것입니다. Presto는 아직 조인 순서 재 지정을 지원하지 않으므로 왼쪽에서 오른쪽으로 조인을 수행합니다. 따라서, 두 테이블이 함께 지정되지 않았는지 확인하면서도 크로스 조인을 발생시키면서 테이블을 가장 큰 테이블부터 가장 작은 테이블까지 지정해야합니다.
예제 살펴 보기:
Dataset: 9.1 GB 데이터, 비 압축 및 텍스트 데이터, ~76백만 행
| 질의 | 실행 시간 |
| SELECT count(*) FROM lineitem, customer, orders WHERE lineitem.l_orderkey = orders.o_orderkey AND customer.c_custkey = orders.o_custkey | 타임아웃 |
| SELECT count(*) FROM lineitem, orders, customer WHERE lineitem.l_orderkey = orders.o_orderkey AND customer.c_custkey = orders.o_custkey | 3.71 초 |
7. GROUP BY 최적화
GROUP BY는 GROUP BY를 한 칼럼을 기반으로, 각 행을 메모리의 GROUP BY 값에 보유하는 작업자 노드에 배포합니다. 행을 처리 할 때 GROUP BY 칼럼을 메모리에서 조회하고 값을 비교합니다. GROUP BY 열이 일치하면 그 값은 함께 집계됩니다.
따라서, 쿼리에서 GROUP BY를 사용하는 경우 분산성이 가장 높은 카디널리티 (Cardinality 즉, 고유 값의 대부분이 균등하게 분산)별로 칼럼을 정렬합니다.
가능한 한 GROUP BY 절 내에서 문자열 대신 숫자를 사용하는 것이 하나의 다른 최적화입니다. 숫자는 저장할 메모리가 적고 문자열보다 비교가 빠릅니다.
또 다른 최적화는 행에 메모리가 있고 GROUP BY 절에 대해 집계 될 때 필요한 메모리 양을 줄이기 위해 SELECT 문의 칼럼 수를 제한하는 것입니다.
8. LIKE 최적화
문자열 열에서 여러 값을 필터링 할 때는 일반적으로 LIKE 보다 여러 번 RegEx를 사용하는 것이 좋습니다. LIKE 할 내용이 많고, 문자열 열이 클수록 RegEx를 사용하면 절약 효과가 커집니다.
예제 살펴 보기:
Dataset: 74 GB 테이블, 비 압축, 텍스트 포맷, ~600백만행
| 쿼리 | 실행 시간 |
| SELECT count(*) FROM lineitem WHERE l_comment LIKE '%wake%' OR l_comment LIKE '%regular%' OR l_comment LIKE '%express%' OR l_comment LIKE '%sleep%' OR l_comment LIKE '%hello% | 20.56 초 |
| SELECT count(*) FROM lineitem WHERE regexp_like(l_comment, 'wake|regular|express|sleep|hello') | 15.87 초 |
| 속도 향상 | 17% 향상 |
9. 근사 함수 사용
대용량 데이터 세트를 탐색하는 일반적인 사용 사례는 COUNT (DISTINCT 열)를 사용하여 특정 열의 고유 값 수를 찾는 것입니다.
웹 페이지에 방문하는 고유 사용자 수를 살펴 보겠습니다. 정확한 숫자가 필요하지 않을 때 – 예를 들어, 어떤 웹 페이지에 대해 찾고 싶다면 approx_distinct ()를 사용해보십시오. 이 함수는 전체 문자열 대신 값의 고유 해시를 계산하여 메모리 사용을 최소화하려고 시도합니다. 단점은 2.3 %의 표준 오류가 있다는 것입니다.
예제 살펴 보기:
Dataset: 74 GB 테이블, 비 압축, 텍스트 포맷, ~600백만행
| 쿼리 | 실행 시간 |
| SELECT count(distinct l_comment) FROM lineitem; | 13.21 초 |
| SELECT approx_distinct(l_comment) FROM lineitem; | 10.95 초 |
| 속도향상 | 17% 증가 |
자세한 내용은 Presto 설명서의 집계 함수를 참조하십시오.
10. 필요한 칼럼만 사용
쿼리를 실행할 때 최종 SELECT 문을 모든 칼럼을 선택하는 대신 필요한 칼럼만으로 제한하십시오. 칼럼의 수를 줄이면 전체 쿼리 실행 파이프 라인을 통해 처리해야 하는 데이터의 양이 줄어 듭니다. 특히 많은 수의 칼럼과 문자열 기반 칼럼이있는 테이블을 쿼리 할 때 유용합니다.
예제 살펴보기:
Dataset: 7.25 GB 테이블, 비 압축, 텍스트 데이터 포맷, ~6천만 행
| 쿼리 | 실행 시간 |
| SELECT * FROM lineitem, orders, customer WHERE lineitem.l_orderkey = orders.o_orderkey AND customer.c_custkey = orders.o_custkey; | 983 초 |
| SELECT customer.c_name, lineitem.l_quantity, orders.o_totalprice FROM lineitem, orders, customer WHERE lineitem.l_orderkey = orders.o_orderkey AND customer.c_custkey = orders.o_custkey; | 6.78 초 |
| Savings / Speedup | 145x faster |
이 글에서는 Presto 엔진을 사용하여 Amazon Athena에서 대화형 분석을 최적화 하는 모범 사례에 대해 설명했습니다. Presto를 Amazon EMR에서 사용할 때도 이와 동일한 방법을 적용 할 수 있습니다.
– Manjeet Chayel (Solutions Architect ) 및 Mert Hocanin (EMR Big Data Architect);
이 글은 AWS BigData Blog의 Top 10 Performance Tuning Tips for Amazon Athena의 한국어 번역입니다.
[기술백서] AWS 에서의 멀티 플레이어 게임 서버 성능 최적화
AWS 클라우드에서 멀티 플레이어 게임 서버들을 구동하는 사용 사례와 최고 수준의 성능을 달성하기 위한 최적화에 대해 기술 백서를 소개합니다. 이 백서는 AWS 상에서 구동되는 Linux 기반의 멀티 플레이어 게임 서버를 성공적으로 구동하는 데에 필요한 성능을 얻기 위하여 Amazon EC2에서 활용해야 하는 정보들을 제공하고 있습니다.

▶ 기술 백서 다운로드 (PDF)
예를 들어, C4 인스턴스 제품군에서 Linux 상에서 게임서버들을 구동할 경우에 대한 네트워크, CPU 및 메모리의 성능 최적화에 중점을 두고 있습니다.
- 네트워킹: 멀티 플레이어 클라이언트/서버 게임들은 지연시간과 패킷 손실에 매우 민감합니다. 다양한 네트워크 성능 권장 사항, 플레이어 위치 기반 서버 배치, 향상된 네트워크 기능, UDP 활용 및 대기열 활용 기법 등으로 지연 시간 감소, 패킷 손실 방지 및 게임 서버를 위한 최적의 네트워킹 성능을 얻는 방법을 알려드립니다.
- CPU: CPU 는 네트워킹과 함께 게임 서버에서 가장 중요한 두 가지 성능 조정 영역 중 하나입니다. 클럭 소스, 프로세서 상태 제어(C-States 및 P-States), Irqbalance, 하이퍼스레딩, CPU 고정, Linux 스케줄러 등을 통한 성능 향상 방법을 소개합니다.
- 메모리: EC2에서 특히 NUMA 정보에 주의해야 합니다. 자동 NUMA 밸런싱, Numad 데몬 활용, 가상 메모리 스와핑 방식 등의 활용 방법을 알려드립니다.
그 외에도 디스크와 벤치마킹 및 테스트를 통한, CPU 성능 분석, 시각적 CPU 프로파일링 등을 확인하는 방법을 상세히 설명하고 있습니다.
본 백서를 통해 AWS 기반 게임 서버를 빠르게 준비하고 운영하기 위한 핵심 정보, 성능 권장 사항 및 주의 사항을 미리 알아둠으로서 더 효율적으로 빠른 게임 서버 운영을 하시는데 도움이 되시기 바랍니다.
본 글은 아마존웹서비스 코리아의 솔루션즈 아키텍트가 국내 고객을 위해 전해 드리는 AWS 활용 기술 팁을 보내드리는 코너로서, 본 백서 번역은 김병수 솔루션즈 아키텍트께서 작성해주셨습니다.

EBS 스냅샷에 대한 비용 태그 할당 기능 출시
Amazon Elastic Block Store (EBS)를 사용하면 Amazon EC2 인스턴스에 영구 블록 저장 볼륨을 생성 할 수 있습니다. EBS 볼륨은 일관되고 낮은 대기 시간의 성능과 다양한 볼륨 유형 선택 옵션을 제공합니다. EBS 볼륨의 스냅샷 백업을 통해 원하는 만큼 오래 보관 한 후, 새로운 볼륨으로 복원 할 수 있습니다.
AWS 청구 및 비용 관리는 비용 지출을 추적하는 데 사용할 수 있는 도구 및 보고서를 제공합니다. 비용 할당 태그를 사용하여 개별 자원 레벨에서 고객, 응용 프로그램, 팀, 부서 또는 청구 코드에 비용을 할당 할 수 있습니다.
오늘 EBS 스냅 샷에 대한 비용 할당 기능을 출시합니다. 다양한 AWS 고객 중에서도 특히, 엔터프라이즈 기업에서 유용한 기능입니다. 수천 개의 EBS 볼륨과 더 많은 EBS 스냅 샷을 각 프로젝트, 사업 부서 또는 관계사에 비용을 할당 할 수 있습니다. 또한, 관리형 서비스 제공 파트너사라면 스냅샷 비용을 고객 계정 및 응용 프로그램에 다시 연결할 수 있습니다.
스냅 샷 태그를 지정하고 비용을 할당하는 과정을 살펴 보겠습니다.
첫 번째 단계는 기존 스냅 샷에 태그 지정을 구현하는 것입니다. create-tags 명령을 호출하거나 TagResources 함수를 호출하는 코드를 작성하는 스크립트를 작성할 수 있습니다. 콘솔 태그 편집기를 사용하여 원하는 AWS 영역의 스냅 샷을 찾을 수 있습니다.

스냅 샷이 몇 개 있고 직접 태그를 붙입니다. 제가 만든 태그는 사용법(usage)에 따라 값은 backup, dev 및 metrics입니다.

다음으로 AWS에 새 태그가 비용 할당에 사용되고 있다고 지정합니다. Billing Dashboard를 열고 Cost Allocation Tags를 클릭하십시오.

그런 다음 사용자 정의 태그 목록에서 내 태그를 찾아 선택하고 Activate를 클릭합니다.

AWS는 24 시간 이내에 첫 번째 업데이트 된 보고서를 제공하고 그 이후 하루에 한 번 이상 비용 탐색기를 업데이트합니다 (자세한 내용은 청구 보고서 사용 이해하기를 참조하십시오).
두 가지 옵션이 있습니다. 비용 탐색기를 사용하여 데이터를 시각적으로 탐색하거나 사용 현황 보고서를 만들어 Excel로 다운로드하고 데스크톱에서 분석 할 수 있습니다.
비용 탐색기 사용
비용 탐색기를 열어 관심 시간 범위를 선택하고 Usage Type Group로 필터링하여 EC2: EBS – Snapshots을 선택합니다. 그런 다음 Group by 옵션을 Tag로 설정하고 드롭 다운에서 내 태그 (usage)를 선택합니다.

그런 다음 Apply을 클릭하고 보고서를 살펴봅니다.

비용과 사용량 (기가 바이트 – 월)을 한 눈에 볼 수 있습니다. New report를 클릭하고 이름을 입력 한 다음 보고서를 다시 사용할 수 있도록 저장할 수도 있습니다.

비용 및 사용량 보고서 작성
Reports를 작성하려면 Create Report을 클릭하십시오. DailySnapshotUsage라는 이름을 지정하고 Time 단위를 Daily로 설정합니다.

그런 다음 jbarr-billing 버킷에서 ZIP 압축을 선택하고 Next을 클릭하십시오.

다음 페이지에서 내 설정을 확인하고 Review and Complete를 클릭하여 보고서 작성을 마무리합니다. 다음날 다시 확인하면 보고서가 준비됩니다.

Excel을 사용하여 비용 및 사용 보고서 분석
비용 및 사용 보고서를 다운로드하여 Excel을 사용하여 분석 할 수 있습니다. S3 Console로 전환하고 jbarr-billing 버킷을 열고 폴더 구조로 내려와 내 보고서를 찾습니다.

그런 다음 파일을 다운로드하여 압축을 풀고 Excel에서 엽니다.

지정된 태그만 보고 싶기 때문에 열 DJ (resourceTags / user : usage)로 스크롤하고 Excel의 필터 작업을 사용하여 관심 있는 태그를 선택하십시오.

그런 다음 대부분의 항목을 숨기고 원하는 항목만 볼 수 있습니다.

Excel을 통해 데이터 분석에 있어 훨씬 더 나은 업무를 수행 할 수 있다고 확신합니다!
스냅 샷 비용 이해
비용 보고서를 작성하여 EBS 스냅 샷 비용 및 사용량을 분석 할 때 ,스냅 샷이 점진적으로 생성되고 첫 번째 스냅 샷이 일반적으로 가장 비싼 스냅 샷으로 표시된다는 점을 명심하십시오. 이후 사용중인 블록이 포함된 스냅 샷을 삭제하면 블록이 참조하는 공간이 나중에 스냅 샷에 할당됩니다. 따라서, 특정 EBS 볼륨과 관련하여 가장 높은 비용으로 스냅 샷을 삭제하면, 비용 중 일부를 최신 스냅 샷으로 단순히 옮길 수 있습니다. 자세한 내용은 Amazon EBS 스냅 샷 삭제를 읽으십시오.
정식 출시
본 새로운 기능은 현재 모든 상용 AWS 지역에서 사용할 수 있으며, 지금 바로 사용할 수 있습니다.
— Jeff;
이 글은 New – Cost Allocation for EBS Snapshots의 한국어 번역입니다.
AWS 교육 및 인증 포털 사이트 오픈!
AWS가 제공하는 각종 공인 교육 및 인증을 통해 AWS 클라우드를 더 효과적으로 활용할 수 있습니다.
이를 위해 새롭게 오픈한 AWS 교육 및 인증 포털을 사용하면 공인 교육 및 자격증 인증, 진행 상황 및 혜택을 한 곳에서 관리 할 수 있습니다.

이전에는 AWS 교육 및 자격증 인증 관련 기능 및 정보를 찾고 관리하기 위해 여러 웹 사이트를 살펴 봐야 했습니다. 이제 AWS 교육 과정 검색 및 등록, AWS 자격증 인증 시험에 등록 및 학습 진행 상황을 추적하고, 취득한 AWS 자격증 정보를 기반으로 여러 가지 혜택을 한 사이트에서 보실 수 있습니다. AWS 클라우드 기술을 보다 쉽게 배우고 AWS 자격증 인증 취득에 대해 나아가실 수 있습니다.
신규 계정을 만들거나, 기존 Amazon 계정으로 로그인 할 수 있습니다. 이미 AWS 교육 계정이 있는 경우 기존 AWS 교육 내역을 새 기본 계정으로 마이그레이션 해 드립니다. APN 파트너 인 경우, APN 포털 로그인 아이디를 사용하여 간단하게 로그인 할 수 있습니다. Webassessor 계정이 있는 경우 인증 탭을 방문하여 계정 통합이 가능합니다.
이제 로그인 이후, AWS 교육 및 인증 포털을 사용하여 AWS 전문 교육 부서가 제공하는 AWS 교육 및 인증 서비스를 찾을 수 있습니다.
자세한 내용은 AWS 교육 및 인증 포털 FAQ를 참조하십시오.
– AWS 코리아 트레이닝팀;
AWS 주간 소식 모음 – 2017년 5월 22일
안녕하세요! 여러분~ 매주 월요일 마다 지난 주에 업데이트된 국내 AWS관련 콘텐츠를 정리해 드리고 있습다. AWS 클라우드에 대한 새로운 소식을 확인하시는데 많은 도움 되시길 바랍니다. 혹시 빠지거나 추가할 내용이 있으시면, 저에게 메일 주시면 추가 공유해 드리겠습니다.

AWS코리아 블로그
- AWS X-Ray, AWS Lambda 지원 공식 출시 (2017-05-17)
- AWS Twitch 채널 – 클라우드 라이브 코딩 및 Maker를 위한 방송에 참여하세요! (2017-05-16)
- AWS 및 NVIDIA 딥러닝 파트너쉽 – Volta 기반 GPU 인스턴스, 10만명 딥러닝 교육 등 (2017-05-15)
AWS코리아 동영상
- 넥슨 – AWS 엔터프라이즈 서포트를 통한 모바일 게임 운영 사례 (2017-05-22)
- AWS Cloud 2017 – 스케치 영상 (2017-05-18)
- AWS Summit Seoul 2017 – 스케치 영상 (2017-05-17)
AWS 글로벌 신규 소식 (영문)
- AWS Elastic Beanstalk Supports Amazon EC2 F1 instances and Amazon Linux AMI (2017-05-20)
- Deploy GitHub Enterprise on the AWS Cloud with New Quick Start (2017-05-20)
- Amazon Athena adds API/CLI, AWS SDK support, and audit logging with AWS CloudTrail (2017-05-20)
- Amazon Polly introduces a new German female voice, Vicki (2017-05-19)
- AWS Lambda Available in AWS GovCloud (US) Region (2017-05-19)
- Amazon CloudWatch Events Service is now available in AWS GovCloud (US) region (2017-05-19)
- AWS CodePipeline Adds Integration With Nouvola (2017-05-19)
- Deploy HashiCorp Nomad on the AWS Cloud with New Quick Start (2017-05-19)
- AWS Training and Certification Portal Now Live (2017-05-19)
- Amazon AppStream 2.0 now offers persistent storage for end users’ files, backed by Amazon S3 (2017-05-19)
- Amazon Lightsail now available in 5 additional Europe, US AWS Regions (2017-05-18)
- Amazon EC2 Systems Manager Adds New Automation Action-Types (2017-05-18)
- Run Your Microsoft SharePoint and SQL Server Always On Availability Groups in the AWS Cloud More Easily by Using AWS Directory Service for Microsoft Active Directory (2017-05-18)
- Amazon GameLift Metrics Now Available in Amazon CloudWatch (2017-05-17)
- AWS CodeDeploy Adds File Handling Support (2017-05-18)
- Quick Start Update: Deploying MongoDB on the AWS Cloud (2017-05-17)
- AWS X-Ray Makes AWS Lambda Request Tracing Generally Available (2017-05-17)
- Amazon EC2 Systems Manager Available in China (Beijing) Region (2017-05-17)
- Announcing the availability of the new Amazon S3 console (2017-05-16)
- Announcing New Direct Connect Locations in Philadelphia, PA and Newark, NJ (2017-05-16)
- Introducing Auto Scaling Resource-Level Permissions (2017-05-16)
- Announcing New CloudWatch Metrics for VPN Tunnels (2017-05-16)
AWS 고객 및 개발자 추천 콘텐츠
- ‘Cloud Day in Pohang’ 세미나 개최 (2017-05-21)
- 아마존 알렉사(AVS)를 이용한 ‘인공지능 라즈베리파이'(9) : 커스텀 스킬(Custom Skill) 추가하기 (2017-05-21)
- [AWS] RDS 스냅샷 활용하기 – 스냅샷으로 RDS 인스턴스 생성 (2017-05-21)
- AWS Lambda에서 다른 Lambda 실행 (2017-05-21)
- [AWS] Nodejs를 위한 AWS SDK (2017-05-21)
- [기술백서] AWS의 SaaS솔루션 (2017-05-21)
- [AWS] R Studio Server 구축하기 (2017-05-19)
AWS 주요 행사 및 온라인 세미나
- AWS 5월웨비나 | AWS와 함께하는 클라우드 컴퓨팅 (5월 30일)
- AWS 5월웨비나 | AWS 에서 Windows 서버 운영, 관리 및 개발 손쉽게 하기 (5월 30일)
- AWS 5월웨비나 | Amazon Redshift Deep Dive (5월 31일)
- AWS 5월웨비나 | AWS 기반 Deep Learning 활용 방법 (5월 31일)
- AWS 201 | VPC / ELB 세미나 (5월 17일)
- AWS 201 | Amazon EC2 세미나 (6월 7일)
- AWS 101 | 클라우드기초 세미나 (6월 8일)
- AWS 101 |핸즈온 랩 실습 (6월 13일)
- AWS 301 |콘테이너 고급 핸즈온 랩 실습 (6월 15일)
AWSKRUG 소모임
- AWSKRUG 강남 중급자 모임 – 6회차 (5월 24일)
- AWSKRUG 데이터사이언스 딥러닝모임 – 1회차(5월25일)
- AWSKRUG 데이터사이언스 빅데이터모임 – 2회차(6월8일)
- AWSKRUG 상반기 연합 세미나 (6월 24일)
AWS 주요 파트너사 블로그
- [베스핀글로벌][BSP는 OOO이다] 댓글 이벤트 (2017-05-19)
- [베스핀글로벌] 4차 산업혁명, 빅데이터와 혁신의 접점 찾아야 (2017-05-18)
- [베스핀글로벌][클라우드 인사이트 세미나] 클라우드 매니지먼트 딥-다이브 (2017-05-17)
전 세계 AWS 관련 새 소식을 확인하고 싶으시다면, 매주 업데이트 되는 AWS Week in Review를 살펴 보시기 바랍니다! 좀 더 빠르게 새소식을 접하시고 싶다면, 공식 트위터나 공식 페이스북을 팔로우 하세요!
이번 한주도 즐겁게 보내시고, 다음주에 다시 만나요!.
– AWS코리아 마케팅팀;
AWS X-Ray, AWS Lambda 지원 공식 출시
AWS X-Ray에 대한 AWS Lambda 지원 기능을 출시했습니다. 지난 샌프란시스코 서밋에서 정식 출시한 AWS X-Ray는 분산 응용 프로그램의 실행 및 성능 동작을 분석하는 AWS 서비스입니다. 전통적인 디버깅 방식은 여러 서비스가 실행되는 독립 구성 요소가 있는 마이크로 서비스 기반 응용 프로그램에서는 잘 작동하지 않습니다. X-Ray를 사용하면 응용 프로그램의 대기 시간을 줄임으로써 오류, 속도 저하 및 시간 초과를 신속하게 진단 할 수 있습니다. 간단한 람다 기반 응용 프로그램을 작성하고 분석함으로써 우리의 응용 프로그램에서 X-Ray를 잠깐 사용하는 방법을 보여 드리겠습니다.
바로 시작하기를 원할 경우, 람다 함수 페이지로 이동하여 추적 기능을 활성화하여 기존 람다 함수에 대해서도 X-Ray 추적 기능을 쉽게 켤 수 있습니다.

또는 AWS 명령 행 인터페이스 (CLI)에서 함수의 tracing-config 를 업데이트하여 시작 가능합니다. (--function-name도 전달해야 함)
$ aws lambda update-function-configuration --tracing-config '{"Mode": "Active"}'
추적 모드가 활성화되면 Lambda는 함수에 대해 즉시 추적을 시작합니다. 그렇지 않으면, 업스트림 서비스에서 명시 적으로 지시 한 경우에만 함수가 추적됩니다. 추적 기능을 사용하면 응용 프로그램 리소스와 그 사이의 연결 을 시각적으로 나타냅니다. 주목해야 할 것은 X-Ray 데몬이 람다 함수의 리소스 중 일부를 사용한다는 것입니다. 메모리 제한에 가까워지면, Lambda는 메모리 부족 오류가 발생하지 않도록 X-Ray 데몬을 중단 시킬 수 있습니다.
몇 가지 다른 서비스를 사용하는 빠른 애플리케이션을 구축하여 신규 연동 테스트를 해 보겠습니다.
스마트폰에서 찍은 셀카가 많아서 이를 분석해 보려고 합니다. Amazon Simple Storage Service (S3) 버킷에 업로드 된 새로운 이미지에 응답하는 Java 8 런타임을 사용하여 간단한 Lambda 함수를 작성합니다. 이 샘플 앱은 사진에 Amazon Rekognition 을 사용하여, 이미지 내 객체를 인식하고 검색된 레이블을 Amazon DynamoDB에 저장합니다.

먼저 몇 가지 X-Ray 서비스에서 사용하는 용어를 살펴보겠습니다.
X-Ray가 서비스 그래프를 생성하여 추적 결과를 구성한다고 쉽게 이해할 수 있습니다. 서비스 그래프는 우리가 위에서 볼 수 있는 멋진 시각적 표현을 만듭니다 (여러 가지 색상이 다양한 요청 응답을 나타냅니다). 응용 프로그램을 실행하는 컴퓨팅 리소스는 segment의 형태로 수행 중인 작업에 대한 데이터를 보냅니다. 하위 데이터를 작성하여 해당 데이터에 대한 주석을 추가하고, 세분화 된 타이밍을 추가 할 수 있습니다. 응용 프로그램을 통한 요청 경로는 traces로 추적합니다. traces는 단일 요청으로 생성 된 모든 segment를 수집합니다. 즉, S3에서 들어오는 Lambda 이벤트를 DynamoDB로 쉽게 추적 할 수 있으며 오류 및 대기 시간이 어느 부분에 있는지 파악할 수 있습니다.
이제 selfies-bucket이라는 S3 버킷, selfies-table이라는 DynamoDB 테이블, 그리고 Lambda 함수를 생성합니다. ObjectCreated의 S3 버킷에 대한 Lambda 함수에 트리거를 추가합니다. 람다 함수 소스 코드는 매우 간단합니다. 코드를 변경하지 않으면 JAR에 aws-xray-sdk 및 aws-xray-sdk-recorder-aws-sdk-instrumentor 패키지를 포함시켜 Java 기능에서 X-Ray를 사용할 수 있습니다.
자 이제 사진 업로드를 해서 X-Ray 추적 상황을 살펴봅니다.

우리는 이러한 개별 추적 데이터 중 하나를 클릭하여 호출에 대한 자세한 정보를 얻을 수 있습니다.

AWS::Lambda 세그먼트에서 함수의 대기 시간, 실행 대기 시간, 실행 시도 횟수를 볼 수 있습니다.
AWS::Lambda::Function 세그먼트에는 몇 가지 가능한 하위 세그먼트가 있습니다.
- The inititlization subsegment includes all of the time spent before your function handler starts executing
- The outbound service calls
- Any of your custom subsegments (these are really easy to add)
DynamoDB에 약간의 문제가 있는 것처럼 보입니다. 오류 아이콘을 클릭하면, 전체 예외 스택 트레이스를 얻을 수 있습니다. 테이블 용량이 부족하기 때문에 DynamoDB를 조정해야 합니다. 단 몇 번의 클릭 또는 빠른 API 호출로 더 많은 정보를 얻을 수 있습니다.

X-Ray SDK를 사용하면 X-Ray로 데이터를 쉽게 내보낼 수 있습니다. 파이썬의 경우, 이 라이브러리를 fleece라는 rackspace에서 가져올 수 있습니다. 더 자세한 사항은 기술 문서를 참고하시기 바랍니다.
– Randall;
AWS Twitch 채널 – 클라우드 라이브 코딩 및 Maker를 위한 방송에 참여하세요!
트위치 (Twitch)는 개발자, 게이머 및 아티스트를 위한 글로벌 온라인 커뮤니티 스트리밍 비디오 플랫폼 중 하나입니다. 매일 열심히 실시간 방송을 하는 콘텐츠 창작자의 열정을 참여하고자, 수 백만명이 Twich에 참여하고 있습니다.
AWS 개발자 마케팅 부서에서는 작년 11월 부터 AWS Twitch Channel을 추가하여, 글로벌 에반젤리스트들이 Twitch에서 최신 AWS 기술 정보를 제공하고 있습니다. AWS 트위치 채널에서는 클라우드 기술 관심자를 대상으로 최신 소식 및 라이브 코딩 등의 다양한 생방송을 하고 있습니다. 자세한 정보는 https://aws.amazon.com/twitch/를 방문하십시오.

AWS Twitch 채널에는 연중 내내 다양한 주제에 대해 생방송을 진행할 예정이며, AWS를 통한 라이브 코딩은 Randall Hunt, Julio Faerman, Abby Fuller등의 테크 에반젤리스트들이 개발자 관점에서 실제 AWS 서비스를 다루면서애플리케이션을 직접 만드는 것을 실제로 보여줍니다.
AWS Maker Studio는 5월 17일일 부터 첫 선을 보이는 프로그램으로 특히 Maker를 위한 프로젝트 및 솔루션을 포함합니다. Todd Varland, Trevor Hykes, Anupam Mishra 는 첫 번째 시즌 동안 클라우드 기반 로봇을 제작할 예정입니다. 관심 있는 분들은 꼭 참여해 보시기 바랍니다.

더 자세한 일정은 https://aws.amazon.com/ko/twitch/ 페이지를 참고하시거나 @awslcoud 트위터 계정을 팔로우 하시기 바랍니다.
AWS 및 NVIDIA 딥러닝 파트너쉽 – Volta 기반 GPU 인스턴스, 10만명 딥러닝 교육 등

올해 엔비디아의 GPU Technology Conference에서 AWS와 NVIDIA는 여러 가지 기술 협력을 시작했습니다. 첫 번째는 볼타 기반의 최신 GPU 인스턴스로 LSTM 트레이닝의 3 배 속도 향상을 통해 인공 지능 개발 방식을 완전히 바꿀 것으로 생각됩니다. 둘째, AWS에서 실행되는 DLI (Deep Learning Institute)를 통해 10 만 명이 넘는 개발자를 양성 할 계획입니다. 세 번째는 광범위한 개발자 커뮤니티를 위한 대규모의 딥러닝 개발 도구 공동 개발입니다.
또한, AWS는 GTC에서 Amazon EC2 P2 instances 및 엔비디아의 Jetson TX2 플랫폼 지원을 통해 대규모로 Apache MXNet 교육을 사용하는 세션을 제공합니다.
Volta 기반 GPU 인스턴스 출시 예고
Volta 아키텍처를 기반으로 640 개의 Tensor 코어가 장착 된 Tesla V100은 120 테라 플롭의 정밀 학습이 가능한 획기적인 성능을 제공합니다. AWS는 Amazon EC2 인스턴스에서 V100을 지원하게 될 예정입니다. 현재 성장 중인 딥러닝 커뮤니티 개발자들이 수퍼 컴퓨팅 클래스 기능을 활용하고 딥러닝 모델을 훈련하여 AI의 한계를 뛰어 넘을 수 있음을 의미합니다. 또한, 엔비디아와 공동으로 AWS 엔지니어 및 연구원은 Apache MXNet에서 사전 신경 신경 기계 번역 (NMT) 알고리즘을 최적화했습니다. 이 접근법을 통해 개발자는 Volta 기반 플랫폼에서 가장 빠른 방법을 사용할 수 있습니다. 앞으로 볼타 기반 인스턴스는 개발자들에게 매우 인기 있을 것으로 기대합니다!
10만명의 개발자에게 딥러닝 교육 제공
NVIDIA와 파트너를 맺어 AWS를 기반으로 한 Deep Learning Institute의 교육 코스를 제공하게 됩니다. DLI는 자체 운전 차량, 의료, 웹 서비스, 로봇 공학, 비디오 분석 및 금융 서비스에 대한 딥러닝 사례을 포함하도록 커리큘럼을 확대하고 있습니다. 이 커리큘럼에는 강사 주도 세미나, 워크샵 및 아시아, 유럽 및 미주 지역의 개발자에게 제공되는 강의가 포함됩니다. AWS의 16 개 리전 (향후 3 개 추가) 및 42 개 가용 영역 (8 개 추가 계획)과 에 이르는 AWS의 글로벌 인프라를 통해 AWS는 광범위한 개발자에게 도달 할 수 있는 완벽한 인프라 플랫폼입니다.
딥러닝 개발자에게 확장성 제공
과거에는 딥러닝 교육 및 연구를 위해 요구되는 수준의 컴퓨팅 성능을 충족시키면서 수퍼 컴퓨터를 사용해야했습니다. 또한 MPI (message passing interface)와 같은 분산 컴퓨팅 라이브러리를 이해하고 여러 종속성이 있는 여러 라이브러리 및 패키지를 설정해야 합니다. AWS는 개발자를 위해 확장 가능한 심층 학습을 쉽게 하기위한 목적으로 NVIDIA와 협력하여 최적화 된 개발자 도구를 만들었습니다. 이 도구는 cuDNN, NCCL, TensorRT 및 CUDA 툴킷과 같은 NVIDIA Deep Learning SDK 라이브러리를 사용하여 사전 작성되었습니다. 개발자가 이러한 도구를 사용할 때 효율적인 인스턴스 시간으로 쉽게 GPU로 확장할 수 있습니다
클라우드와 엣지로의 딥러닝 인프라 확대
저전력 디바이스에서 딥러닝 학습은 현재 가장 큰 트렌드 중 하나입니다. 대기 시간 절감 및 데이터 지역성에서 네트워크 가용성에 이르기까지 네트워크 엣지에 있는 장치에서 인공 지능 모델을 실행하는 데는 여러 가지 이유가 있습니다. 이번 주 GTC에서 열리는 AWS 딥러닝 세션에서 P2 인스턴스를 사용하여 최첨단 모델을 어떻게 훈련시킬 수 있는지 보여줍니다. 또한, Jetson TX2 플랫폼을 포함한 다양한 저전력 디바이스에 저전력 디바이스에 최첨단 인공 지능 기능을 제공하는 방법을 쉽게 보여줍니다. 그런 다음 AWS IoT 및 AWS Greengrass와 같은 서비스를 통해 이러한 장치를 관리하고 종단 간 AI 워크 플로를 제공 할 수 있습니다.
자세히 보기
– Amazon AI Blog;
이 글은 Amazon AI Blog의 AWS and NVIDIA Expand Deep Learning Partnership at GTC 2017의 한국어 번역입니다.
AWS 주간 소식 모음 – 2017년 5월 15일
안녕하세요! 여러분~ 매주 월요일 마다 지난 주에 업데이트된 국내 AWS관련 콘텐츠를 정리해 드리고 있습니다. AWS 클라우드에 대한 새로운 소식을 확인하시는데 많은 도움 되시길 바랍니다. 혹시 빠지거나 추가할 내용이 있으시면, 저에게 메일 주시면 추가 공유해 드리겠습니다.

AWS코리아 블로그
- Oracle 데이터베이스를 Amazon Aurora로 마이그레이션 하기 (2017-05-11)
- Amazon Aurora Storage 엔진 소개 (2017-05-11)
- AWS 클라우드 에반젤리즘 2년을 돌아보며… (2017-05-09)
AWS코리아 동영상
- Vingle의 AWS 기반 서버리스 마이크로 서비스 구현 사례 – 이상현 TechnicalLeader (빙글) (2017-05-09)
- Samsung Knox 및 Connnect의 AWS 기반 콘테이너 활용 사례 – 송주영선임 (삼성전자) (2017-05-09)
- HyperConnect의 AWS 기반 빅데이터 분석 사례 – 오재혁팀장 (하이퍼커넥트) (2017-05-09)
- SEWORKS의 Amazon Aurora 마이그레이션 모범 사례 – 김충희시니어리서처 (SEWORKS) (2017-05-09)
- 모바일게임 운영 시 AWS 엔터프라이즈 서포트 활용 사례 – 성세일 CTO (Nextfloor) (2017-05-09)
- 삼성 SDS의 AWS 매니지드 서비스 및 파트너쉽 사례 – 강석우상무 (삼성SDS) (2017-05-09)
- 제주항공 AWS 기반 비지니스 애플리케이션 고객 사례 – 문홍철팀장 (제주항공) (2017-05-09)
- NC소프트 AWS 기반 모바일 게임 개발 운영 사례 – 장경철과장 (NC Soft) (2017-05-09)
- Amazon GameLift 기반 가상 현실 게임 Music Inside 개발 사례 – 남현욱팀장 (Reality Reflection) (2017-05-09)
- 한국 공공 영역 클라우드 활성화 정책 및 전략 – 신상열과장 (미래창조과학부) (2017-05-09)
- 뱅크샐러드를 위한 AWS 클라우드 기반 핀테크 사례 – 황성현CTO (Rainist) (2017-05-09)
- 위버풀의 클라우드 기반 핀테크 AI 활용 사례 – 김재윤대표 (위버플) (2017-05-09)
- GS Shop의 AWS 클라우드 기반 스토리지 활용 사례 – 신승우부장 (GS Shop) (2017-05-09)
- KBS의 클라우드 디지털 플랫폼 전략 – 김영수차장 (KBS) (2017-05-09)
- 삼성 SDS의 SCM 고도화를 위한 클라우드 활용 사례 – 신우용상무 (삼성SDS) (2017-05-09)
AWS 글로벌 신규 소식 (영문)
- AWS CodeDeploy is Now Available in AWS GovCloud (US) (2017-05-12)
- CloudFormation Support for AWS WAF on ALB (2017-05-12)
- AWS Organizations now makes it easier to view email addresses of member accounts in your organization (2017-05-12)
- AWS Schema Conversion Tool Exports from SQL Server to Amazon Redshift (2017-05-12)
- Elastic Load Balancing: Account Limits API (2017-05-12)
- AWS Marketplace for Desktop Apps is Now Available in the Asia Pacific (Sydney) AWS Region (2017-05-11)
- Simplify Migration and Improve Security of Active Directory–Integrated .NET Applications by Using AWS Microsoft AD (2017-05-12)
- Amazon WorkMail now offers an SMTP gateway for sending email (2017-05-11)
- AWS Elastic Beanstalk Available in AWS GovCloud (US) (2017-05-11)
- AWS CloudTrail Adds Data Event Delivery to Amazon CloudWatch Logs (2017-05-10)
- AWS X-Ray Available in Europe (London) and Canada (Central) Regions (2017-05-10)
- Amazon CloudFront adds new Edge Locations in Tokyo, Japan and Dallas/Fort Worth, Texas (2017-05-10)
- USAspending.gov data available via Amazon Relational Database Service (RDS) (2017-05-10)
- Amazon EC2 Systems Manager Available in Additional AWS Regions (2017-05-09)
AWS 고객 및 개발자 추천 콘텐츠
- 아마존렉스(Amazon Lex)-대화형 음성 & 텍스트 인터페이스 개발 서비스 : 네이버 블로그 (2017-05-14)
- 아마존의 인공지능 개발 (2017-05-14)
- DB: NoSQL과 Amazon DynamoDB (2017-05-14)
- AWS 교과서 매거진 (2017-05-14)
- [AWS] Scale Out – 흐름과 이론 (2017-05-14)
- [AWS] IAM에 대해 알아보기 (2017-05-14)
- AWS 자격증 취득 가이드강좌 – 4강 시작(.. : 네이버블로그 (2017-05-14)
- [springboot] AWS Beanstalk 에서 SpringBoot 에 사용할 환경변수 정의 (2017-05-12)
- Apex(Terraform)로 API Gateway 구성하기 #1 (2017-05-08)
- [AWS] AWS Cognito 입문 가이드 (2017-05-08)
AWS 주요 행사 및 온라인 세미나
- AWS 101 | 클라우드기초 세미나 (5월 17일)
- AWS 201 | AWS Direct Connect 세미나 (5월 17일)
- AWS 5월웨비나 | AWS와 함께하는 클라우드 컴퓨팅 (5월 30일)
- AWS 5월웨비나 | AWS 에서 Windows 서버 운영, 관리 및 개발 손쉽게 하기 (5월 30일)
- AWS 5월웨비나 | Amazon Redshift Deep Dive (5월 31일)
- AWS 5월웨비나 | AWS 기반 Deep Learning 활용 방법 (5월 31일)
- AWS 201 | VPC / ELB 세미나 (5월 17일)
- AWS 201 | Amazon EC2 세미나 (6월 7일)
- AWS 101 | 클라우드기초 세미나 (6월 8일)
- AWS 101 |핸즈온 랩 실습 (6월 13일)
- AWS 301 |콘테이너 고급 핸즈온 랩 실습 (6월 15일)
AWS 공인 교육 일정
- AWS 기술 에센셜(AWS Technical Essentials) (5월 23일)
- AWS 기반 아키텍쳐 설계(Architecting on AWS) (5월 24-27일)
- AWS 기술 에센셜(AWS Technical Essentials) (6월 13일)
- AWS 기반 아키텍쳐 설계(Architecting on AWS) (6월 14-17일)
AWSKRUG 소모임
- AWSKRUG 6회 강남 비기너 그룹 모임 (5월 15일)
- AWSKRUG 자격증 준비 소모임-SA 어소시에이트, 프로페셔널 (5월 16일)
- AWSKRUG 구로디지털단지 모임 – 4회차 (5월16일)
- AWSKRUG 데이터사이언스 딥러닝모임 – 1회차(5월25일)
- AWSKRUG 데이터사이언스 빅데이터모임 – 2회차(6월8일)
AWS 주요 파트너사 블로그
- [베스핀글로벌]“클라우드, 비용보단 ‘혁신’…2020년, 국내 절반 클라우드로” (2017-05-08)
전 세계 AWS 관련 새 소식을 확인하고 싶으시다면, 매주 업데이트 되는 AWS Week in Review를 살펴 보시기 바랍니다! 좀 더 빠르게 새소식을 접하시고 싶다면, 공식 트위터나 공식 페이스북을 팔로우 하세요!
이번 한주도 즐겁게 보내시고, 다음주에 다시 만나요!.
– AWS코리아 마케팅팀;