オーダーメイドコース
icon
icon

AWSとは?使える代表的なサービスや学習方法まで現役エンジニアが徹底解説

初心者向けにAWSについて解説しています。AMS(Amazon Web Services)はAmazon.comが提供するクラウドサービスです。AWSでできることやそのメリットとデメリット、Microsoft Azureとの比較、学習方法などについて紹介します。ぜひ参考にしてください。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

AWSについて解説します。

AWSを使いこなせるようになると素早くプロダクトを開発できスモールスタートで試すことができます。

今回はそんなAWSのメリットや学習方法について詳しく解説していきます。

なお本記事は、TechAcademyのオンラインブートキャンプの内容をもとにしています。

 
なお、今回の記事の内容は動画でもご覧いただけます。

テキストよりも動画の方が理解しやすいという場合はぜひご覧ください。

 

田島悠介

今回は、ツール系に関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

AWSについて詳しく説明していくね!

大石ゆかり

お願いします!

目次

 

AWSとは

AWS(Amazon Web Services)とはAmazon社の提供するクラウドサービスです。

当初は仮想サーバ(EC2)やストレージサービスなどが中心でしたが、徐々にサービスの数が増え、現在は200種類を超えるサービスが提供されています。

 

[PR] 生成AIを実務で使うコミュニティがなんと0円!

AWSを利用するメリット・デメリット

従来、企業がITシステムを利用したり提供したりする場合には、ハードウェアやソフトウェアを購入してデータセンタに設置し、その後の運用も自社で行うのが一般的でした。

この形態を「オンプレミス」と呼びます。

一方、AWSを含む「クラウドサービス」では、自社でこういった資産を保有しません。

代わりに、サービス提供者が必要なハードウェアやソフトウェアを用意し、サービス利用者は利用時間に応じた料金を支払ってそれらを使います。

オンプレミスと比較し、クラウドサービスには以下のようなメリットとデメリットがあります。

メリット

手軽に利用を始められる

必要なハードウェアやソフトウェアはサービス提供者側が用意します。

利用者はサービスを利用する契約を結び、利用開始の手続きを行うことで早ければ数分程度で即座にサービスの利用を開始することができます。

また当初は小規模な構成で開始し、アクセス数の増加などに応じて構成を拡大するといった柔軟な使い方も可能です。

初期費用が安い

サービスによりますが、クラウドサービスでは初期費用が安く、スモールスタートや試行利用の容易な価格設定になっています。

オンプレミスではハードウェアの購入費用やソフトウェアの導入作業費用など、多額の初期費用を伴います。

運用をサービス提供者に任せられる

オンプレミスでは定期的な保守や、機器故障の対応などを全て自社で行わなければなりません。

クラウドサービスではサービス提供者がこれら作業を行うため、サービス利用者は意識する必要がありません。

AWSでは「責任共有モデル」という考え方でAWS側がクラウド環境のベースとなる部分に責任を持ち、その上でユーザー側が責任を持ってサービスを実行するようになっています。

デメリット

ハードウェア機器などの構成に制約がある

費用や技術力は必要ですが、オンプレミスは使用用途に合わせてハードウェア等の構成を部品単位で細かく調達できます。

一方、クラウドサービスはサービス事業者が用意した構成の中から選択することが一般的です。

利用者に特殊な要件がある場合、クラウドサービスでは達成が難しいかもしれません(クラウド事業者によっては、特殊要件に対応するため、利用者が構成した機器をデータセンターに持ち込んで運用するサービスを提供している会社もあります)。

大規模運用の場合、維持費用が高額になる場合がある

オンプレミスでは初期費用で機器の購入費用は発生しますが、以降は電気代などの運用費用のみで済みます。

それに対してクラウドサービスは利用している時間に応じて利用料金が発生します。

大規模なサービスを利用する場合、時間単価が高額となり、一定期間運用した「初期費用+維持費用」の合計を比べると、クラウドサービスの方が高くなる場合もあります。

 

AWSでできること

AWSでは多くのサービスが提供されています。

どのようなことができるか、代表的なサービスを確認していきましょう。

  • Amazon EC2
  • Amazon EBS
  • Amazon Simple Storage Service (S3)
  • Amazon Aurora
  • Amazon DynamoDB
  • Amazon Lambda
  • Amazon VPC
  • Amazon SageMaker

Amazon EC2

AWSで最も多く利用されているサービスです。

EC2は「Elastic Compute Cloud」の略称で、WindowsやLinuxなどのVM(仮想マシン)を稼動させられるサービスです。

用途や予算に応じて様々なスペックのVMを選択できます。

VMに接続するネットワークも柔軟に構成できるので、あらゆる用途に使えます。

以下に具体例をあげます。

  • オンプレミスのシステムをそのままクラウドサービスに移行する
  • 短期間の開発プロジェクトで、試験用のサーバを用意する(サーバ購入費用を節約できる)
  • 災害対策として世界各地にサーバを分散配置する

Amazon EBS

EC2と共に利用することが多いサービスです。

EBSは「Elastic Block Store」の略称で、データを保存するストレージ機能となります。

EC2にもストレージ機能はありますが、VMが止まると内容が初期化されてしまいます。

データを永続的に保存したい場合はEC2とEBSを組み合わせて使用するのが一般的です。

なお、EBSはEC2のVMのドライブとして扱われます。容量の上限があるため、大量データを扱いたい場合はEBSを複数利用するか、バックアップ等の用途であれば後述するS3を使用します。

Amazon Simple Storage Service (S3)

こちらもストレージサービスで、99.999999999%というきわめて高い可用性を特徴にしています。

S3は「Simple Storage Service」の略称です。EBSと比較して容量制限が無いため、主にバックアップなどの用途で使用されます。EBSと比較して価格が安価なのも特徴です。

VMのドライブとしては扱われないため、コマンドでデータの送受信を行います。

S3は以下のような用途に利用できます。

  • AWSで運用しているサービスのデータのバックアップ
  • オンプレミスのシステムのデータバックアップ

変わった用法として、静的なWebページ(HTMLファイル)をホストするのにも使用できます。

Amazon Aurora

MySQL, PostgreSQLと互換性のある、クラウド型SQLデータベースです。

データベースの初期構築、設定、バックアップなどが自動化されているので、利用者はテーブル作成やレコード読み書きなど、データベースの本質的な操作に注力できます。

類似のサービスにAmazon RDS(Relational Database Service)がありますが、Amazon RDSはVM(EC2)にMySQLやPostgreSQLをインストールして利用するようなイメージなのに対して、Auroraはクラウドのストレージを生かして可用性や対障害を高めた、いわばクラウドサービス向けにより進化したサービスといえます。

AuroraはEC2などから利用するデータベースとして、またオンプレミスのMySQLやPostgreSQLをクラウドに移行したい場合の有力な選択肢となります。

Amazon DynamoDB

AuroraやRDSが表形式のデータの格納を前提としたSQLデータベースなのに対し、DynamoDBは非定形のデータを格納できるNoSQLデータベースです。

スケーラビリティにすぐれ、高性能(低遅延)を保ちながら、データベースをスケールアウトできます。

ECサイトやオンラインゲームなど、トランザクションが多数並走する環境での採用事例が多々あります。

Amazon Lambda

「サーバレス」アーキテクチャの普及するきっかけとなったサービスです。

利用者はJava, Python, Node.jsなどでコードを記述し、Lambdaにアップロードします。

所定のイベントが発生すると、コードが実行されます。

利用者はサーバの存在や台数を意識する必要なく、しかも負荷に応じて自動的にスケールアウトします。

映像データのリアルタイム変換や、APIリクエストの処理などで利用されています。

Amazon VPC

Virtual Private Cloudの略で、しばしば前述のEC2と組み合わせて使われます。

AWS内のネットワークを論理的に分離でき、相互にルーティングやアクセス制御を設定できます。

サービスの規模を柔軟に拡張したり、耐障害性を高めたりするのに利用されます。

ルーティングサービスのRoute 53と組み合わせて使用されます。

Amazon SageMaker

機械学習のサービスで、モデルの構築、訓練、デプロイなどを簡単に行うことが出来ます。

様々な機械学習アルゴリズムを選択でき、モデルのチューニングも自動化されています。

AWSの機械学習関連のサービスとしては他に以下のようなものがあります。

  • Amazon Polly:人工音声でテキストを読み上げるサービス
  • Amazon Transcribe:音声認識
  • Amazon Translate:多言語翻訳
  • Amazon Rekognition:高精度の画像・動画分析。顔認証などが可能

 

AWSの将来性やエンジニア需要

AWSは世界中で最も利用されているクラウドサービスです。

継続的にサービスの種類が増えていることに加え、頻繁に利用料金を値下げしており、年々ユーザー数も増加しています。

oogle CloudやMicrosoft Azureなどの競合他社のサービスから頭1つ抜けている状態であり、この傾向はしばらく続くことでしょう。

AWSは世界190カ国100万以上、国内では10万以上の会社や個人に利用されています。

当然エンジニア需要も高く、多くの案件でAWSがエンジニア採用の条件として上げられています。

例えば転職・求人サイトのGreenでAWSをキーワードに求人情報を検索すると、約1000件以上の求人がヒットします。

これはフロントエンドエンジニアの求人数(2020年6月現在で約800)よりも多く、エンジニア需要が非常に活発であることを表します。

Greenより

 

AWSが使われている代表的なサービス

AWSは多くの企業等で使用されています。代表的な例をいくつか挙げましょう。

Amazon

もちろんAmazonでもAWSを使用しています。

またAWSの様々なサービスはAmazonのECサイトの拡張を通じて生まれたものも多く、Amazon DynamoDBもその1つと言われています。

 

Coursera

Courseraは無料のオンライン講座を提供するアメリカの企業です。

300万人とも言われる受講生に画像や動画を組み合わせたコンテンツを提供するため、AWSを利用しています。

 

Netflix

AWSの最大級の顧客の1つがNetflixです。

Netflixは10万以上のサーバーインスタンスをAWS上で稼働させてサービスを提供しています。

Netflixの遅延の無い使いやすいサービスはAWSによってささえられています。

 

ソニー銀行

金融機関でもAWSは利用されています。

ソニー銀行ではWebコンテンツだけでなく、銀行業務の帳票管理や管理会計なども含めてAWSでの運用を行っています。

勘定系や体外接続系はオンプレミスですがシステム間接続はAWS Direct Connectという専用線接続サービスを利用し高いセキュリティを確保しています。

 

自治体、公共団体

米国では、米国連邦政府や国防省、様々な州や自治体でのAWSの導入事例があります。

日本では豊中市役所がAWSの導入事例として知られています。

 

AWSと他のサービスとの違い

AWSはしばしばMicrosoft Azure(Microsoft社のクラウドサービス)と比較されます。

AWSとAzureは相互に影響しているので、サービス構成には似通った部分が多いです(片方があるサービスを追加すると、もう片方もそれに追随する)。

AWSは大手クラウドサービスの中では最も歴史が長く、運用実績、導入実績が豊富です。

新規サービスの追加、既存サービスの改善も頻繁に行われていて、先進的な技術や環境を試したい場合に有力な選択肢となります。

 

AWSの学習方法

では最後に学習方法について詳しく解説していきます。

書籍を使った学習

日本語の書籍も豊富ですが、クラウドサービスは進歩が早く、書籍の内容が最新のサービスに追いついていないことがあります。

書籍と公式Webサイトのリファレンスを併用すると確実です。

図解即戦力 Amazon Web Servicesのしくみと技術がこれ1冊でしっかりわかる教科書

AWSの仕組みについて分かりやすく説明している入門書です。

「AWSとは何か」という方が最初に読む書籍に適しています。

AWS認定資格試験テキスト AWS認定 クラウドプラクティショナー

AWSには構築や活用の知識を認定する資格制度があります。

本書ではAWS認定の1つであるクラウドプラクティショナーのテキストとして、必要な内容が網羅されています。

クラウドプラクティショナーはエンジニアだけでなく、管理職や営業なども対象とした試験であり、AWSの基礎を学ぶのに適しています。

クラウドエンジニア養成読本

Software Design誌の別冊ですが、クラウドサービスの使い方についてよく整理されています。

発行年度が2018年とやや古いのですが、AWSだけでなく、Azure, GCP(Google Cloud Platform)についても触れられているため、主要なクラウドサービスを網羅できます。

勉強会やセミナーでの学習

AWSのイベント

Amazon社がAWSに関連するセミナー、イベントを定期的に開催しています。

conpass IT勉強会カレンダー

IT関連の勉強会がまとめられています。興味のある分野を登録しておくと、関連する勉強会の通知を受けられます。

TECH PLAY

同じくIT関連の勉強会がまとめられています。

ストリートアカデミー

講師と生徒のマッチングサービスです。ITに限らず、趣味、スポーツ、教養など、多様な分野の講座が登録されています。

 

監修してくれたメンター

橋本紘希

システムインテグレータ企業勤務のシステムエンジニア。

開発実績: Javaプログラムを用いた業務用Webアプリケーションや、基幹システム用バッチアプリケーションなどの設計構築試験。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

TechAcademyでは、従来の講義型研修とは違い、実務を想定したカリキュラムで実践的スキルを短期間で確実に身につけられる法人向けオンラインIT・プログラミング研修を展開しています。

1名〜数百名規模・業界を問わず、500社以上の企業様の研修を実施しています。 受講生一人ひとりに現役エンジニアのメンターが付き、皆様のニーズにあったサポートを行います。学習時の「わからない」を確実に解消いたします。