딥러닝 기반의 이미지 분석 서비스인 Amazon Rekognition을 이용하여 어플리케이션에 인공지능 기능을 간단하게 추가하는 방법을 다룹니다. Amazon Rekognition의 얼굴 인식 기능을 활용해서, 트위터 사진을 분석하여 다양한 효과 또는 분석을 하는 봇을 만들어 봅니다. 제공되는 소스 코드를 기반으로 효과를 변경하거나, 얼굴의 특징을 출력하거나, 유명인을 찾는 등의 기능을 추가하는 실습할 수 있습니다.
발표영상 다시보기: https://youtu.be/uZYzj8-quJQ
초기 스타트업에는 시간과 자원이 제한되어 있기 때문에 신속하게 제품을 만들어 시장에 출시해야 합니다. 본 세션은 초기 스타트업 및 개발자를 위해 AWS 클라우드를 기반으로 최소기능제품(MVP)을 구현하는 방법을 알려드립니다. 주요 서버리스(Serverless) 서비스인 Amazon API Gateway, AWS Lambda를 기반으로 하는 Amplify 프레임워크를 기반한 모바일 개발 및 Amazon EKS, Amazon Aurora 등을 통한 컨테이너 기반 서비스 아키텍처를 통해 빠르게 MVP를 구축하는 방법을 알려드립니다.
AWS 상에서 컨테이너를 활용하여 클라우드 인프라를 더욱 효과적으로 사용하는 방법에 대하여 다룹니다. 컨테이너를 업무 환경에 적용하기 위해서 고려해야 할 사항이 많아 어렵게만 느껴지던 주제들을 간편한 실습 과제를 해보면서 어렵지 않게 적용 할 수 있게 구성된 워크샵입니다.
단순한 컨테이너 프로비저닝을 시작으로, 스팟 인스턴스를 활용한 컨테이너 배포와 사용량에 따른 인스턴스 최적화 및 어플리케이션 로드밸런서를 활용한 컨테이너 오케스트레이션 구성에 대해서도 실습해 볼 수 있습니다.
이를 통하여 컨테이너를 실제 업무에 적용함으로서 보다 유연하고 비용효율적인 클라우드 인프라를 구성할 수 있는 방법을 습득 하실 수 있습니다.
발표자료 다시보기: https://youtu.be/wt4Ue-1eYW8
서버리스는 운영상의 책임을 AWS로 전환하여 민첩성과 혁신을 높일 수 있도록 하는 클라우드의 네이티브 아키텍처입니다. 서버리스를 사용하면 서버를 고려하지 않고 애플리케이션과 서비스를 구축하고 실행할 수 있습니다 AWS의 Lambda, API Gateway 및 다양한 관리형 서비스를 활용한Serverless 컴퓨팅 아키텍처의 모범 사례를 배웁니다.
Monolith to Microservices: 클라우드 네이티브 어플리케이션 설계 - 정영준 :: AWS 클라우드 마이그레이션 온라인Amazon Web Services Korea
온디맨드 다시보기: https://www.youtube.com/watch?v=Ot-4lhJCrQI
다양한 기업들의 어플리케이션 클라우드 도입 방향은 기존의 어플리케이션 구조를 수용하면서 IT 자원의 탄력성을 확보 하는 방식에서 이제는 모더나이제이션을 통한 클라우드 네이티브 어플리케이션 구축을 많이 고려 하고 있습니다. 기업 IT 혁신 관점에서 어플리케이션 모더나이제이션의 의미와 고려 사항 및 클라우드 네이티브 어플리케이션이 어떠한 방식으로 설계가 되어야 하는지에 대해서 설명 합니다.
발표영상 다시보기: https://youtu.be/kpsv9UmSJN4
AWS re:Invent 2019 행사는 총 6만 5천여명이 참여한 전 세계 최대 클라우드 컴퓨팅 컨퍼런스입니다. 클라우드 기술의 미래를 보여 줄 수 있는 새로운 AWS 서비스와 기능이 발표되고 개발자, 비지니스 기획 및 전략가 그리고 파트너들이 새로운 클라우드 기술에 대해 논의하고 공유하는 자리입니다.
본 온라인 세미나는 AWS re:Invent에 관심이 많으시지만 기회가 여의치 않아 참석하지 못하신 분들을 위해 준비하였으며, 새로 발표된 AWS 서비스와 기능을 소개함과 아울러 향후 클라우드 아키텍터를 구성하시는데 필요한 정보를 드리고자 합니다.
[Games on AWS 2019] AWS 사용자를 위한 만랩 달성 트랙 | AWS 최적화 사용을 위해 운영자가 아닌 개발자들이 해야 할 ...Amazon Web Services Korea
AWS는 과거의 on-premises와는 다른 경험을 제공해 줍니다. 많은 인프라 관리자들이 AWS에 친화적인 아키텍처로 게임을 배포하여 AWS의 장점을 이용하고 있습니다. 하지만, 게임 개발자 분들이 on-premises에서의 개발 방식을 바꾸게 되면 더욱 더 큰 AWS의 장점을 누릴 수 있습니다. 본 세션에서는 게임 개발자들이 AWS에 최적화 할 수 있도록 on-premises의 게임 개발과 다르게 해야 할 부분을 소개하고 게임 개발자들의 변화로 얻을 수 있는 혜택을 소개합니다.
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트:: AWS S...Amazon Web Services Korea
발표영상 다시보기: https://youtu.be/_lceAtDmlto
MSA 혹은 다양한 이유로 컨테이너 오케스트레이션 플랫폼인 Kubernetes를 사용합니다. 하지만 production scale의 kubernetes 클러스터를 만드는 것은 굉장히 큰 도전이며 또한 완전히 Containerized 된 세계 즉, Kubernetes 환경에서 Devops 환경을 구축하는것은 더 많은 고민을 하게 만듭니다. 본 세션에서는 AWS의 다양한 서비스를 활용하여 AWS의 Kubernetes 서비스인 EKS 환경에서 손쉽게 Devops 환경을 구축하는 법을 소개합니다.
[AWS Innovate 온라인 컨퍼런스] 수백만 사용자 대상 기계 학습 서비스를 위한 확장 비법 - 윤석찬, AWS 테크 에반젤리스트Amazon Web Services Korea
발표자료 다시보기: https://youtu.be/RYzviz-uOCU
기계 학습은 이제 개발자에게 필수 기술셋이 되었습니다. 본 세션에서는 AWS의 다양한 인공 지능 서비스를 활용하여 개발자들이 기계 학습을 처음 접하는 시점부터 혼자서 공부하는 방법부터 팀에서 초기 도입시, 그리고 정식 프로덕션 환경에서 수백만 사용자를 위한 서비스를 향해 가는 과정을 알려드림으로서 기계 학습 기반 개발자가 될 수 있는 방법을 알아봅니다.
AWS Builders - Industry Edition: AWS가 추천하는 'App개발 및 데이터 관리, 분석 소프트웨어 서비스'_Tma...Amazon Web Services Korea
AWS에서 실행되거나 AWS와 통합되는 소프트웨어 솔루션을 제공하는 기업 중 시장의 관심을 많이 받고 있는 IGAWorks, Quintet Systems, TmaxData와 함께 합니다. 어떤 솔루션을 갖고 있으며, 빠르게 변화하고 있는 비즈니스 환경에서 어떻게 고객의 성공을 지원해왔는지 구체적인 사례와 데모 시연을 선보입니다.
[애플리케이션 현대화 및 개발] 현대적 애플리케이션 개발의 필수, 앱 배포 및 인프라 구성 자동화 - 김필중, AWS 솔루션즈 아키텍트Amazon Web Services Korea
발표자료 다시보기: https://youtu.be/hmp_wfLLKpc
아이디어의 구현과, 변화에 대한 응답의 속도를 높여 비지니스 향상을 가속화 시키는 것이 그 목적인 현대적 애플리케이션은 주로 서버리스, 컨테이너 등을 활용한 마이크로서비스로 구축됩니다. 이렇게 다양한 관점으로 분리된 마이크로서비스 아키텍처에서는 여러 팀이 독립적으로 개발 및 배포하여 발빠르게 비지니스 요구사항을 만족시키는 것이 일반적입니다. 이를 위한 기본적인 접근이 앱 배포 및 인프라 구성을 자동화 하는 것입니다. 본 세션에서는 현대적 애플리케이션에서의 앱 배포 및 인프라 구성 자동화의 중요성과 활용할 수 있는 도구 및 전략 등에 대해 알아보고, 당장 적용할 수 있는 방법을 제안하고자 합니다.
AWS Fargate와 Amazon ECS를 사용한 CI/CD 베스트 프랙티스 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Build...Amazon Web Services Korea
발표영상 다시보기: https://youtu.be/il8wpd7gxe8
CI/CD 기술을 통해 팀은 민첩성을 높이고 고품질 제품을 신속하게 출시 할 수 있습니다. 이 강의에서는 컨테이너화 된 응용 프로그램을 관리 할 수 있도록 CI/CD 워크 플로우 작성을위한 모범 사례를 안내합니다. AWS Cloud Development Kit를 사용하여 코드 애플리케이션 모델로 인프라를 다루고 AWS CodePipeline 및 AWS CodeBuild를 사용하여 CI/CD 릴리스 파이프 라인을 설정하는 방법을 보여줍니다. 마지막으로 AWS CodeDeploy를 사용한 안전한 배포 자동화에 대해 설명합니다.
발표자료 다시보기: https://youtu.be/yqcSVTU890g
AWS의 서비스를 활용하면 쉽고 빠르게 서버리스 웹 어플리케이션을 만들 수 있습니다. 이 세션에서는 GraphQL API를 사용하는 서버리스 웹 어플리케이션을 만드는 방법을 설명합니다. 먼저, AWS Amplify Javascript SDK와 커맨드라인 도구를 이용하여 React를 이용한 서버리스 웹 어플리케이션을 만드는 방법을 알아봅니다. 그리고 AWS AppSync를 이용하여 안전하고 확장 가능한 GraphQL 엔드포인트를 구성하고, 서버리스 NoSQL 데이터 저장소인 DynamoDB를 이용하여 확장이 쉽고 유연한 웹 어플리케이션 벡엔드을 만드는 방법을 확인해 봅니다.
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트:: AWS Summit Online Korea 2020Amazon Web Services Korea
발표영상 다시보기: https://youtu.be/z68l2X5KoC4
AWS 클라우드는 초기에 적은 비용으로 웹 서비스를 시작하고, 향후 사업이 발전했을 때 천만 이상의 유저가 사용할 수 있는 고가용성, 확장성, 민첩성이 뛰어난 웹 서비스를 만들 수 있습니다. 본 세션에서는 작은 서비스로 시작하여 AWS의 다양한 서비스를 사용하여 천만 이상의 대규모 유저 트래픽을 수용할 수 있는 웹 서비스로 발전시키는 것을 단계별로 오토스케일링, 트래픽 경감, 모니터링과 자동화, 고가용성 확보를 위한 아키텍처 구성 방법을 소개합니다.
아마존 웹 서비스의 경우, 스타트업 부터 엔터프라이지까지 개발자 및 인프라 운영 엔지니어들이 주로 사용하는 것으로 알려져 있습니다. 하지만, 블로거로서 일반인들도 AWS 서비스를 유용하게 사용할 수 있습니다. 본 자료는 4주 완성으로 알파 사용자들이 아마존 웹 서비스를 활용하는 방법을 스터디 길잡이 입니다.
대상: 워드 프레스를 자체 서버로 블로그를 운영하려는 블로거, 포트폴리오 사이트를 운영하는 웹 디자이너, 클라우드를 통한 안정적인 소규모 워드프레스를 운영하려는 스타트업 등
얻을 수 있는 것:
1. 클라우드 컴퓨팅의 개념과 AWS 서비스에 대한 이해
2. AWS의 도메인 관리, 스토리지 및 동영상 인코등, 이메일 전송 서비스 활용 지식 습득
3. 복잡한 서버 운영 (콘솔 및 커맨드)과 DB 관리 없이도 안정적인 워드 프레스 운영 노하우 습득
주차별 스터디 내용:
<1주> 클라우드 컴퓨팅 및 AWS 소개
1. 클라우드 컴퓨팅 및 AWS 서비스 소개
2. AWS 가입 및 빌링 알람 설정(CloudWatch)
3. AWS Activate 프로그램 가입 및 사용 방법
<2주> 서버 없이 웹 사이트 호스팅하기
1. S3에 파일 서버 구축하기(S3 지원 FTP 클라이언트 사용법)
2. AWS 사용자 및 크리덴셜 만들기(IAM)
3. S3에 정적 웹 사이트 운영하기
4. CloudFront로 콘텐츠 배포하기
5. 도메인 네임 관리 및 설정하기(Route53)
<3주> CloudFormation으로 워드프레스 운영하기
1. AWS 아키텍쳐 이해하기 (EC2/ELB/RDS/AutoScaling)
2. 5분만에 확장 가능한 워드프레스 구성하기(CloudFormation)
3. 마켓플레이스에서 Bitnami를 활용한 웹 서비스 운영하기
4. WordPress 로컬 서버 및 GIT 레포지터리 설치하기
<4주> Elastic Beanstalk으로 워드프레스 운영하기
1. Elastic Beanstalk 설정 및 배포하기
2. Elastic Transcoder를 통한 자동 동영상 인코딩 하기
3. SES를 통해 대용량 이메일 보내기
4. S3에서 동적 블로그 웹 사이트 운영하기(Lambda with Metalsmith)
발표영상 다시보기: https://kr-resources.awscloud.com/data-databases-and-analytics/%EC%98%A4%EB%9D%BC%ED%81%B4-db%EB%A5%BC-aws-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4%EB%A1%9C-%EB%A7%88%EC%9D%B4%EA%B7%B8%EB%A0%88%EC%9D%B4%EC%85%98-%ED%95%98%EA%B8%B0-%EC%9C%A4%EA%B8%B0%EC%9B%90-aws-database-modernization-day-%EC%98%A8%EB%9D%BC%EC%9D%B8-2
온프레미스 Oracle DB를 AWS Database Migration Service와 Schema Conversion Tool을 사용하여 Migration하는 방법을 소개합니다. Migration시 Service Downtime을 최소화 하고, Migration 속도를 향상 시킬 수 있는 방법을 알아봅니다.
AWS 클라우드는 IT의 새로운 기준을 정립하며 클라우드 컴퓨팅 산업을 혁신하고 있습니다. 본 온라인 세미나에서는 클라우드 컴퓨팅의 개념과 AWS가 제공하는 서비스 소개 및 주요 활용 사례에 대해 소개합니다. 특히 국내에 설립된 서울 리전(Region, 데이터센터 클러스터)에 대한 소개와 더불어 다양한 IT 업무를 위한 AWS 대표 서비스들을 중점적으로 다룰 예정입니다.
게임 데이터 분석을 위한 Data Lake 구축과 Machine Learning 을 활용한 분석 Hands on Lab (안효빈 솔루션즈 ...Amazon Web Services Korea
게임 데이터 분석을 위한 Data Lake 구축과 Machine Learning 을 활용한 분석
이 세션에서는 AWS 상에서 게임 데이터를 분석해봅니다. Amazon DynamoDB, 로그 서버 등에서 발생한 데이터를 Amazon S3 에 저장하여 Data Lake 를 구축하고, 저장된 데이터의 스키마는 AWS Glue 를 통해 관리합니다. 이 후에 Amazon Athena 를 통해 쿼리해보고, Amazon SageMaker 를 이용해 빠르게 머신 러닝 모델을 만들어 학습시키고 배포해봅니다. 이를 통해 AWS 상에서 데이터를 수집하고, 분석을 위한 Data Lake 를 구축한 뒤 실제 머신 러닝을 통해 이상 유저를 판독하는 실습을 진행하게 됩니다.
클라우드에서 보안은 매우 중요한 요소로서 클라우드 내에서 실행중인 애플리케이션에 대한 보안 인증 정책과 접근 제어 및 변경 사항 추적 및 알림 등의 기능이 필수적입니다. 본 온라인 세미나에서는 AWS 클라우드의 보안에 대한 기초 지식과 아울러 서비스 규모의 확장에 따른 AWS 아키텍처 변화에 맞는 보안 서비스 활용 방법과 모범 사례 등을 소개합니다.
아마존 웹 서비스의 경우, 스타트업 부터 엔터프라이지까지 개발자 및 인프라 운영 엔지니어들이 주로 사용하는 것으로 알려져 있습니다. 하지만, 블로거로서 일반인들도 AWS 서비스를 유용하게 사용할 수 있습니다. 본 자료는 4주 완성으로 알파 사용자들이 아마존 웹 서비스를 활용하는 방법을 스터디 길잡이 입니다.
대상: 워드 프레스를 자체 서버로 블로그를 운영하려는 블로거, 포트폴리오 사이트를 운영하는 웹 디자이너, 클라우드를 통한 안정적인 소규모 워드프레스를 운영하려는 스타트업 등
얻을 수 있는 것:
1. 클라우드 컴퓨팅의 개념과 AWS 서비스에 대한 이해
2. AWS의 도메인 관리, 스토리지 및 동영상 인코등, 이메일 전송 서비스 활용 지식 습득
3. 복잡한 서버 운영 (콘솔 및 커맨드)과 DB 관리 없이도 안정적인 워드 프레스 운영 노하우 습득
주차별 스터디 내용:
<1주> AWS 소개 및 처음 할 일
1. 클라우드 컴퓨팅 및 AWS 서비스 소개
2. AWS 가입 및 빌링 알람 설정(CloudWatch)
3. AWS Activate 프로그램 가입 및 사용 방법
<2주> 서버 없이 웹 사이트 호스팅하기
1. S3에 파일 서버 구축하기(S3 지원 FTP 클라이언트 사용법)
2. AWS 사용자 및 크리덴셜 만들기(IAM)
3. S3에 정적 웹 사이트 운영하기
4. CloudFront로 콘텐츠 배포하기
5. 도메인 네임 관리 및 설정하기(Route53)
<3주> Elastic Beanstalk으로 워드프레스 운영하기
1. AWS 아키텍쳐 이해하기 (EC2/ELB/RDS/AutoScaling)
2. 5분만에 확장 가능한 워드프레스 구성하기(CloudFormation)
3. Elastic Beanstalk으로 워드프레스 운영하기
4. WordPress 로컬 서버 및 GIT 레포지터리 설치하기
<4주> 유용한 AWS 서비스 활용하기
1. Elastic Beanstalk 설정 및 배포하기
2. Elastic Transcoder를 통한 자동 동영상 인코딩 하기
3. SES를 통해 대용량 이메일 보내기
AWSKRUG 정기 세미나 (2016년 9월) - Lambda + S3 썸네일 생성 및 운영창훈 정
AWSKRUG 정기 세미나 (2016년 9월) - 서버리스(Serverless) 아키텍처 에서 발표한 내용
한글폰트 문제로 깨지기도 하고 디자인도 이상하게 변경됬습니다. 원본은 SpeakerDeck 에서 확인해주세요 ~ https://speakerdeck.com/seapy/lambda-plus-s3-sseomneil-saengseong-mic-unyeong-awskrug-jeonggi-semina-2016nyeon-9weol
[NEXT] 화면 재갱신이 되는 안드로이드 앱 만들기 - 네트워크에 독립하는 구조로 변경YoungSu Son
항상 네트워크에 연결되어있지 않다는 가정으로, 앱의 아키텍처를 변경합니다.
앱을 실행시 로컬 DB의 데이터를 읽으며, 백그라운드 서비스에서 주기적으로 데이터를 긁어옵니다. (추후 gcm push로 변경합니다.)
데이터 삽입시 화면을 자동 갱신할려면? 어떠한 구조를 가져야 할까요?
그리고 view holder 패턴도 다룹니다.
Light Tutorial Django
Studybee 3주차 - 가볍게 배우는 장고!!
Django를 이용해 블로그를 만들기 전에 가볍게 Django에 대해 알아보고 익숙해져 봅시다.
**http://www.studybee.kr 에서 운영하는 '초심자를 위한 웹개발' 클래스에서 만드는 교재이며,
장고를 이용해 간단하게 블로그를 만드는 것을 목표로 하고 있습니다.
최근 입문용 혹은 개발 및 데이터 분석 용도로 파이썬을 사용하는 개발자들이 많이 늘고 있습니다. 본 세션에서는 파이썬을 활용하여 AWS에서 해 볼 수 있는 다양한 서비스와 기능을 소개하고자 합니다. 그 중에서도 Django 및 Flask 같은 웹 프레임워크를 AWS Elastic Beanstalk으로 손쉽게 배포하고 운영하는 방법, AWS Lambda를 통해 Python 기반 서버리스 애플리케이션을 제작하는 방법 그리고, Boto3와 AWS Python SDK를 통해 AWS의 다양한 서비스 API를 다루는 방법을 살펴 봅니다. Python으로 구성된 AWS 기반 인기 오픈 소스 프로젝트를 소개하여 직접 참여하는 방법을 안내합니다. 특히, 가상 서버 호스팅인 AWS re:Invent에서 새로 소개된 Amazon Lightsail 등도 함께 소개합니다.
Metaworks is Metadata Oriented Application Framework
which is Inspired from the Adaptive Object Models and OMG Reflection, MDA.
The main approach is
Application Component Generation on the fly from metadata
Now Metaworks version 3 Is A POJO framework that
encourages the Domain-Driven Design and
Especially for developing model-driven applications (UML, BPMN, etc)
Similar to AWS DevDay 실습 가이드 - Rekognition 기반 Twitter봇 (20)
클라우드에서 Database를 백업하고 복구하는 방법에 대해 설명드립니다. AWS Backup을 사용하여 전체백업/복구 부터 PITR(Point in Time Recovery)백업, 그리고 멀티 어카운트, 멀티 리전등 다양한 데이터 보호 방법을 소개합니다(데모 포함). 또한 self-managed DB 의 데이터 저장소로 Amazon FSx for NetApp ONTAP 스토리지 서비스를 사용할 경우 얼마나 신속하게 데이터를 복구/복제 할수 있는지 살펴 봅니다.
기업은 이벤트나 신제품 출시 등으로 예기치 못한 트래픽 급증 시 데이터베이스 과부하, 서비스 지연 및 중단 등의 문제를 겪곤 합니다. Aurora 오토스케일링은 프로비저닝 시간으로 인해 실시간 대응이 어렵고, 트래픽 대응을 위한 과잉 프로비저닝이 발생합니다. 이러한 문제를 해결하기 위해 프로비저닝된 Amazon Aurora 클러스터와 Aurora Serverless v2(ASV2) 인스턴스를 결합하는 Amazon Aurora 혼합 구성 클러스터 아키텍처와 고해상도 지표를 기반으로 하는 커스텀 오토스케일링 솔루션을 소개합니다.
Amazon Aurora 클러스터를 초당 수백만 건의 쓰기 트랜잭션으로 확장하고 페타바이트 규모의 데이터를 관리할 수 있으며, 사용자 지정 애플리케이션 로직을 생성하거나 여러 데이터베이스를 관리할 필요 없이 Aurora에서 관계형 데이터베이스 워크로드를 단일 Aurora 라이터 인스턴스의 한도 이상으로 확장할 수 있는 Amazon Aurora Limitless Database를 소개합니다.
Amazon Aurora MySQL 호환 버전 2(MySQL 5.7 호환성 지원)는 2024년 10월 31일에 표준 지원이 종료될 예정입니다. 이로 인해 Aurora MySQL의 메이저 버전 업그레이드를 검토하고 계시다면, Amazon Blue/Green Deployments는 운영 환경에 영향을 주지 않고 메이저 버전 업그레이드를 할 수 있는 최적의 솔루션입니다. 본 세션에서는 Blue/Green Deployments를 통한 Aurora MySQL의 메이저 버전 업그레이드를 실습합니다.
Amazon DocumentDB(MongoDB와 호환됨)는 빠르고 안정적이며 완전 관리형 데이터베이스 서비스입니다. Amazon DocumentDB를 사용하면 클라우드에서 MongoDB 호환 데이터베이스를 쉽게 설치, 운영 및 규모를 조정할 수 있습니다. Amazon DocumentDB를 사용하면 MongoDB에서 사용하는 것과 동일한 애플리케이션 코드를 실행하고 동일한 드라이버와 도구를 사용하는 것을 실습합니다.
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...Amazon Web Services Korea
Database Migration Service(DMS)는 RDBMS 이외에도 다양한 데이터베이스 이관을 지원합니다. 실제 고객사 사례를 통해 DMS가 데이터베이스 이관, 통합, 분리를 수행하는 데 어떻게 활용되는지 알아보고, 동시에 데이터 분석을 위한 데이터 수집(Data Ingest)에도 어떤 역할을 하는지 살펴보겠습니다.
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...Amazon Web Services Korea
Amazon ElastiCache는 Redis 및 MemCached와 호환되는 완전관리형 서비스로서 현대적 애플리케이션의 성능을 최적의 비용으로 실시간으로 개선해 줍니다. ElastiCache의 Best Practice를 통해 최적의 성능과 서비스 최적화 방법에 대해 알아봅니다.
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...Amazon Web Services Korea
ccAmazon Aurora 데이터베이스는 클라우드용으로 구축된 관계형 데이터베이스입니다. Aurora는 상용 데이터베이스의 성능과 가용성, 그리고 오픈소스 데이터베이스의 단순성과 비용 효율성을 모두 제공합니다. 이 세션은 Aurora의 고급 사용자들을 위한 세션으로써 Aurora의 내부 구조와 성능 최적화에 대해 알아봅니다.
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...Amazon Web Services Korea
오랫동안 관계형 데이터베이스가 가장 많이 사용되었으며 거의 모든 애플리케이션에서 널리 사용되었습니다. 따라서 애플리케이션 아키텍처에서 데이터베이스를 선택하기가 더 쉬웠지만, 구축할 수 있는 애플리케이션의 유형이 제한적이었습니다. 관계형 데이터베이스는 스위스 군용 칼과 같아서 많은 일을 할 수 있지만 특정 업무에는 완벽하게 적합하지는 않습니다. 클라우드 컴퓨팅의 등장으로 경제적인 방식으로 더욱 탄력적이고 확장 가능한 애플리케이션을 구축할 수 있게 되면서 기술적으로 가능한 일이 달라졌습니다. 이러한 변화는 전용 데이터베이스의 부상으로 이어졌습니다. 개발자는 더 이상 기본 관계형 데이터베이스를 사용할 필요가 없습니다. 개발자는 애플리케이션의 요구 사항을 신중하게 고려하고 이러한 요구 사항에 맞는 데이터베이스를 선택할 수 있습니다.
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...Amazon Web Services Korea
실시간 분석은 AWS 고객의 사용 사례가 점점 늘어나고 있습니다. 이 세션에 참여하여 스트리밍 데이터 기술이 어떻게 데이터를 즉시 분석하고, 시스템 간에 데이터를 실시간으로 이동하고, 실행 가능한 통찰력을 더 빠르게 얻을 수 있는지 알아보십시오. 일반적인 스트리밍 데이터 사용 사례, 비즈니스에서 실시간 분석을 쉽게 활성화하는 단계, AWS가 Amazon Kinesis와 같은 AWS 스트리밍 데이터 서비스를 사용하도록 지원하는 방법을 다룹니다.
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...Amazon Web Services Korea
Amazon EMR은 Apache Spark, Hive, Presto, Trino, HBase 및 Flink와 같은 오픈 소스 프레임워크를 사용하여 분석 애플리케이션을 쉽게 실행할 수 있는 관리형 서비스를 제공합니다. Spark 및 Presto용 Amazon EMR 런타임에는 오픈 소스 Apache Spark 및 Presto에 비해 두 배 이상의 성능 향상을 제공하는 최적화 기능이 포함되어 있습니다. Amazon EMR Serverless는 Amazon EMR의 새로운 배포 옵션이지만 데이터 엔지니어와 분석가는 클라우드에서 페타바이트 규모의 데이터 분석을 쉽고 비용 효율적으로 실행할 수 있습니다. 이 세션에 참여하여 개념, 설계 패턴, 라이브 데모를 사용하여 Amazon EMR/EMR 서버리스를 살펴보고 Spark 및 Hive 워크로드, Amazon EMR 스튜디오 및 Amazon SageMaker Studio와의 Amazon EMR 통합을 실행하는 것이 얼마나 쉬운지 알아보십시오.
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...Amazon Web Services Korea
로그 및 지표 데이터를 쉽게 가져오고, OpenSearch 검색 API를 사용하고, OpenSearch 대시보드를 사용하여 시각화를 구축하는 등 Amazon OpenSearch의 새로운 기능과 기능에 대해 자세히 알아보십시오. 애플리케이션 문제를 디버깅할 수 있는 OpenSearch의 Observability 기능에 대해 알아보세요. Amazon OpenSearch Service를 통해 인프라 관리에 대해 걱정하지 않고 검색 또는 모니터링 문제에 집중할 수 있는 방법을 알아보십시오.
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...Amazon Web Services Korea
데이터 거버넌스는 전체 프로세스에서 데이터를 관리하여 데이터의 정확성과 완전성을 보장하고 필요한 사람들이 데이터에 액세스할 수 있도록 하는 프로세스입니다. 이 세션에 참여하여 AWS가 어떻게 분석 서비스 전반에서 데이터 준비 및 통합부터 데이터 액세스, 데이터 품질 및 메타데이터 관리에 이르기까지 포괄적인 데이터 거버넌스를 제공하는지 알아보십시오. AWS에서의 스트리밍에 대해 자세히 알아보십시오.
2. 2
Amazon Rekognition 을 이용한 Twitter Bot
본 워크샵에서는 Twitter 에 올라온 사진을 변경하거나 이미지에 대한 다양한 특징을
분석해서 새로운 트윗을 자동으로 올리는 Twitter Bot 을 만들어보겠습니다.
딥러닝 기반의 이미지 분석 서비스인 Amazon Rekognition 과 더불어 아래와 같은
다양한 AWS 서비스를 활용합니다.
AWS Lambda
Amazon DynamoDB
Amazon S3
Amazon EC2, Amazon EC2 SSM (Simple System Manager), AWS
Autoscaling, AWS VPC
AWS IAM
본 워크샵에서 사용될 AWS 자원들은 AWS CloudFormation 템플릿 형태로 사전
정의되어 있고, 아래 3 개 리전 중에 하나를 이용해서 구성합니다. 본 예제에서는
오레곤 리전을 사용하겠습니다.
버지니아 리전 (us-east-1)
오레곤 리전 (us-west-2)
아일랜드 리전 (eu-west-1)
Twitter Bot 을 만들기 위해서 Twitter API 를 이용하며, Twitter Application 생성이
필요하고, Python 언어를 사용하게 됩니다.
3. 3
필수 준비
AWS 계정
본 워크샵을 진행하려면 AWS 기본 계정을 준비해야 합니다. AWS IAM, S3,
DynamoDB, Lambda, EC2, Rekognition 에 접근할 수 있어야 하며, 본 가이드는
한명이 하나의 AWS 계정을 사용한다고 가정합니다. 다른 사람과 계정을
공유하려고하면 특정 리소스에 대해 충돌이 발생하므로 권장하지 않습니다.
본 워크샵의 일환으로 시작하는 대부분의 리소스는 AWS 계정이 12 개월 미만인
경우, 제공하는 AWS 프리티어로 충분히 가능합니다. 프리티어를 넘어서는 경우,
과금일 될 수도 있습니다. 따라서, 새로운 실습용 계정을 만드시길 권장합니다.
자세한 내용은 AWS 프리 티어 페이지를 참조하십시오.
AWS 명령 행 인터페이스
본 워크샵의 첫 번째 모듈을 완료하려면 여러분이 사용하는 컴퓨터에 AWS CLI
(Command Line Interface)가 설치되어 있어야합니다. CLI 를 사용하여 개체를 S3 웹
사이트 버킷에 복사하고, Rekogtion API 를 호출합니다.
AWS CLI 시작하기 안내서에 따라 시스템에 CLI 를 설치 및 구성하십시오.
실습 모듈
이 워크샵은 여섯 가지 실습 모듈로 나뉩니다. 다음으로 진행하기 전에 각 모듈을
완료해야합니다.
모듈 1. Twitter App 생성하기
모듈 2. CloudFormation 스택 시작하기
모듈 3. 테스트 트윗 보내기
모듈 4. 어떻게 동작하는 걸까요
모듈 5. 다양한 Rekognition 기능 이용해보기
워크샵을 마친 후에는 자원 삭제 가이드에 따라 생성 된 모든 리소스를 삭제할 수
있습니다.
4. 4
모듈 1. Twitter App 생성하기
본 워크샵은 Twitter 계정이 필요합니다. 만약 Twitter 계정이 없는 경우, 계정은 우선
생성해주세요.
1. Twitter Application 을 만들기 위해, https://apps.twitter.com 사이트를
오픈하세요.
2. “Create New App” 버튼을 클릭해서 새로운 App 을 만드는 화면으로 이동합니다.
3. Twitter App 정보를 입력합니다.
5. 5
4. Twitter App 을 이용하기 위한 몇가지 credential 정보를 생성합니다. 아래 값들은
CloudFormation 스택 생성에 필요하니, 텍스트 편집기 등에 저장해주세요.
6. 6
모듈 2. CloudFormation 스택 시작하기
실습에 사용할 Lambda 함수 및 관련 인프라 서비스를 구성하기 위해서 직접 하나씩
구성하는 방법대신, CloudFormation 을 이용해서 자동으로 생성하겠습니다. 실습에
사용할 AWS 리전은 아래 3 개 중에 선택하시고, 리전에 해당하는 CloudFormation
템플릿을 다운로드 받아놓으세요.
AWS 리전 AWS CloudFormation 템플릿
us-east-1 (N. Virginia) http://bit.ly/awsdevday1
us-west-2 (Oregon) http://bit.ly/awsdevday2
eu-west-1 (Ireland) http://bit.ly/awsdevday3
1. CloudFormation 콘솔을 열고, “Create Stack” 버튼을 클릭합니다.
2. “Upload a template to Amazon S3”를 선택하고, 다운로드 받은 CloudFormation
템플릿 파일을 업로드합니다. 업로드가 완료되었으면, “Next” 버튼을 눌러주세요.
7. 7
3. 인프라 및 프로그램 구성에 필요한 정보를 입력합니다. 이 정보들은 Twitter
App 을 생성하면서 만들어진 Credential 값들입니다. 이전 모듈에서 기록해 놓은
값들을 사용합니다.
4. “Next” 버튼을 클릭하고, 모든 리소스가 생성될 때까지 기다립니다. 리소스
생성에 대한 상태는 이벤트 탭을 누르면 확인할 수 있습니다. 리소스가 모두
생성되면, 스택의 상태가 “CREATE_COMPLETE”로 바뀝니다.
8. 8
모듈 3. 테스트 트윗 보내기
사람 얼굴이 포함된 사진과 함께 트윗 메시지를 보냅니다. 이때, 꼭 트윗 메시지에
본인의 이름은 맨션합니다. 그리고, #AWSDevDaySeoul 해쉬태크도 꼭 넣어주세요.
이후, 테스트에서도 본인 이름 맨션 및 해쉬태그를 꼭 추가해주세요.
예) Hey! Ninja Me. @muhyunkim #AWSDevDaySeoul
조금 후, 다음과 같이 얼굴에 닌자 그림이 나오게 변경되면 성공!
9. 9
모듈 4. 어떻게 작동하는 걸까요?
소스 코드는 다음 awslabs git 에서 찾아볼 수 있습니다.
https://github.com/awslabs/aws-rekognition-workshop-twitter-bot
/streaming_app/stream.py
1. EC2 인스턴스에서 트위터 API 를 이용해서 사용자의 스트림 내용을 계속
살펴보고 있다가, 트윗 메시지가 있으면 해당 내용을 Kinesis Streams 에
넣습니다.
/lambda_functions/process_stream.py
2. Kinesis Streams 를 트리거로 등록한 Lambda 함수가 호출됩니다.
3. Lambda 함수는 Streams 에 들어온 트윗 내용을 확인하고,
1) 트윗 메시지에 본인의 Screen Name 이 있는지,
2) 그림 파일이 포함되어 있는지,
3) RT 가 아닌지
를 확인하고, 모두 충족하는 경우 아래 과정을 수행합니다.
4. 이미지를 S3 버킷에 저장하고, 트윗 메시지 내용을 DynamoDB 에 저장합니다.
5. Is_nsfw() 함수를 호출해서, Rekognition 의 Image Moderation API 를 호출해서,
적절한 이미지인지 확인합니다. 적절한 이미지이면 다음을 진행합니다.
6. Ninjafy() 함수에서 Rekognition 의 얼굴 분석 API 를 이용해서 얼굴들을 찾고, 각
얼굴의 위치에 NINJA 얼굴 사진을 붙여줍니다.
7. 위 과정이 모두 성공하면, 변조된 이미지를 S3 버켓에 저장하고 새로운 메시지를
트윗 합니다.
10. 10
모듈 5. 다양한 Rekognition 기능 이용해보기
이 모듈을 수행하기 위해서는 EC2 인스턴스 (t2.micro)를 생성한 후, 해당
인스턴스에 SSH 로 로그인해서 아래와 같이 필요한 파일을 clone 을 합니다.
git clone https://github.com/awslabs/aws-rekognition-workshop-twitter-bot.git
aws-rekognition-workshop-twitter-bot/lambda_functions 디렉터리에서 아래
과제를 수행합니다.
1. Mask.png 파일을 원하는 얼굴 파일로 바꾼 후, Lambda 함수 ZIP 파일
업데이트해서 다른 얼굴로 바꾸기
힌트: 파일을 변경하고, Lambda 함수 및 파일을 아래 명령어로 압축한 후,
Lambda 함수를 업데이트 합니다.
# 압축 파일 생성
./build.sh process_stream.zip process_stream.py mask.png
# Lambda 함수 업데이트
aws lambda update-function-code --function-name <Lambda 함수 이름> --zip-
file fileb://process_stream.zip
/lambda_functions/process_stream.py 함수를 수정해서 다음과 같은 기능을
추가해보세요.
Process_stream.py 파일을 변경한 후, 아래와 같이 Lambda 함수 압축 파일을
업데이트하고, Lambda 함수를 업데이트 하세요.
# 압축 파일 생성
zip -9 process_stream.zip process_stream.py
# Lambda 함수 업데이트
aws lambda update-function-code --function-name <Lambda 함수 이름> --zip-
file fileb://process_stream.zip
11. 11
2. 수염이 있거나, 안경을 낀 사람을 찾아서 트윗 메시지에 표시하기
힌트: lambda_handler 함수안에서 “processed = ninjafy(s3obj, MASK)”
이전에 아래 코드를 이용해서 얼굴 특징을 분석한 후, 결과에 따라서
mention_str 에 원하는 문구를 넣어보세요.
http://boto3.readthedocs.io/en/latest/reference/services/rekognition.htm
l#Rekognition.Client.detect_faces
response = client.detect_faces(
Image={
'Bytes': b'bytes',
'S3Object': s3obj
},
Attributes=[
'Beard','Mustache','Eyeglasses'
]
)
3. 유명인이 있는지 찾아보고 있으면 이름을 메시지에 표시하기
힌트: lambda_ handler 함수안에서 “processed = ninjafy(s3obj, MASK)”
이전에 아래 코드를 이용해서 유명인 검색 후, 결과에 따라서
mention_str 에 원하는 문구를 넣어보세요.
http://boto3.readthedocs.io/en/latest/reference/services/rekognition.htm
l#Rekognition.Client.recognize_celebrities
response = rekognition.recognize_celebrities(
Image={
'Bytes': b'bytes',
'S3Object': s3obj
}
)
12. 12
4. Rekognition 의 친구 Collection 을 만들어서 특정 인물들을 인덱싱하고, 해당
인물이 있는지 찾아서 있으면 메시지에 이름을 표시하기
얼굴을 인덱싱해서 저장할 Collection 을 생성 (오레곤 리전 사용을 가정. 다른
리전 사용시, --region 값을 해당 리전에 맞도록 변경)
aws rekognition create-collection --collection-id "friend" --region us-west-2
인덱싱할 사람이 포함된 사진을 S3 bucket 에 올리기
S3 bucket 에 저장된 사진을 1)에서 만든 Collection 에 인덱싱으로 추가하기
aws rekognition index-faces --collection-id friend --image
"S3Object={Bucket=<S3 Bucket 이름>,Name=<사진 이름>}" --external-image-
id "My Friend" --region us-west-2
Process_stream.py 에 아래 코드를 응용해서 기능 추가
힌트: lambda_ handler 함수안에서 “processed = ninjafy(s3obj, MASK)”
이전에 아래 코드를 이용해서 얼굴 검색 후, 결과에 따라서 mention_str 에
원하는 문구를 넣어보세요.
http://boto3.readthedocs.io/en/latest/reference/services/rekognition.htm
l#Rekognition.Client.search_faces_by_image
response = rekognition.search_faces_by_image(
CollectionId='friend',
Image={
'Bytes': b'bytes',
'S3Object': s3obj
},
MaxFaces=10,
FaceMatchThreshold=90
)
13. 13
워크샵 정리 가이드
이 페이지는 이전 모듈에서 작성된 자원을 정리하는 지시 사항을 제공합니다.
CloudFormation 스택 삭제
1. AWS Management 콘솔에서, Services 를 클릭한 다음 CloudFormation 을
선택하십시오.
2. 모듈 2 에서 생성한 스택을 선택하세요.
3. Actions 드롭 다운 메뉴를 펼쳐서 Delete Stack 을 선택하십시오.
4. Status 가 “DELETE COMPLETE”가 아니면, Resource 탭을 선택해서 삭제되지
않은 리소스를 확인하고 직접 삭제를 해주세요. 보통, S3 버킷에 객체가 남아
있으면 삭제되지 않는 경우이니, 해당 버킷의 객체를 모두 삭제하고 버킷을 직접
삭제해주시면 됩니다. 제공된 AWS CloudFormation 템플릿을 사용하려 모듈
1 을 완성한 경우, AWS CloudFormation 콘솔을 사용하여 스택을 삭제하기만
하면 됩니다. 그렇지 않다면, 모듈 1 에서 생성한 Amazon S3 버킷을
삭제하십시오.
S3 버킷 삭제
1. AWS Management 콘솔에서 Services 를 선택한 다음 Storage 에서 S3 를
선택하십시오.
2. 모듈 2 에서 지정한 CloudFormation Stack 이름으로 시작하는 버킷들을
선택하십시오.
3. Delete bucket 을 선택하십시오.
4. 확인 메시지가 나타나면 버킷의 이름을 입력하고 확인(confirm)을 선택하십시오.
EC2 인스턴스 삭제
1. AWS Management 콘솔에서 Services 를 선택한 EC2 를 선택하십시오.
2. 모듈 5 에서 생성한 EC2 인스턴스를 선택하고, “Action” > “Instance State” >
“Terminate”를 클릭해서 인스턴스를 삭제하세요.
CloudWatch Logs
14. 14
AWS Lambda 는 Amazon CloudWatch Logs 에 함수당 새로운 로그 그룹을
자동으로 생성하고 함수가 호출 될 때마다 로그를 기록합니다. 모듈 2 에서 지성한
CloudFormation Stack 이름으로 시작하는 함수에 대한 로그 그룹을
삭제해야합니다.
1. AWS Management 콘솔 에서 Services 를 클릭한 다음 Management Tools 에서
CloudWatch 를 선택하십시오.
2. 네비게이션 메뉴에서 Logs 를 선택하십시오.
3. /aws/lambda/<CloudFormation Stack 이름>… 로그 그룹을 선택하십시오.
4. Actions 드롭 다운 메뉴에서 Delete log group 를 선택하십시오.
5. 확인 메시지가 나타나면 Yes, Delete 를 선택하십시오.