Amazon Web Services ブログ

AWS Japan Staff

Author: AWS Japan Staff

AWS Glue – 一般提供開始

本日、AWS Glue の一般提供開始がアナウンスされました。Glue はフルマネージドでサーバレス、そして、クラウド最適化された ETL(extract, transform, load) サービスです。Glue は他の ETL サービスやプラットフォームと、いくつかのとても重要な点で違いがあります。第1に、Glue はサーバレスです — リソースのプロビジョニングや管理を行う必要はありません。ジョブ、もしくは、クローリングを実行している間に Glue が使用したリソースに対する支払いのみで利用可能です(分単位課金) 。第2に、Glue のクローラです。 Glue のクローラは、複数のデータソース、データタイプ、そして、様々な種類のパーティションを跨いで、スキーマを自動的に検出・推測することができます。クローラは生成されるスキーマを編集・版管理・クエリ実行・分析で利用するため、一元的に Data Catalog に保存します。第3に、Glue はデータを元々のフォーマットから目的のフォーマットに変換する Python で記述された ETL スクリプトを自動的に生成することができます。最後に、Glue は開発者がお気に入りのツールセットを使用して ETL スクリプトを組み立てることができるように、開発者向けのエンドポイントを作成できるようになっています 。それでは詳細を具体的に見ていきましょう! 私は開発者向けエヴァンジェリストとしての仕事の中で、飛行機での移動に多くの時間を費やします。そこで、フライトデータで何かできたらかっこいいのではと考えました。ありがたいことに、アメリカ交通統計局(Bureau of Transportations Statistics: BTS) はこのサイトを利用し、全てのデータを誰にでも共有してくれます。私たちは簡単にデータをダウンロードし、Amazon Simple Storage Service (S3) に保存することができます。このデータが今回の基礎データとなります。 Crawlers まず、私たちは S3 にあるフライトデータに対して、クローラを生成する必要があります。Glue のコンソールでクローラを選択し、画面の指示に従って進めます。最初のデータソースとして s3://crawler-public-us-east-1/flight/2016/csv/を指定します(データは必要に応じて追加か可能です)。次に、”flights” データベースを作成し、各テーブルに同様の “flights” 接頭語を付けるようにします。 クローラはデータセットを調べ、様々なフォルダーからパーティション(この例の場合は、年月)やスキーマを検出し、テーブルを構成します。クローラに別のデータソースやジョブを追加することや、同じデータベースにデータを登録する別のクローラを作成することもできますが、ここでは自動生成されたスキーマを見ていきましょう。 スキーマ変更(型を BIGINT から INT […]

Read More

AWS CloudHSM アップデート – 重要データや規制に対応することが可能で、コスト効果の高いクラウド型のハードウェアベース キーマネージメント

AWSのお客様は、AWS上で驚くほど多様なミッションクリティカルなワークロードを実行しており、その多くは機密データを処理して保管しています。 「セキュリティプロセスの概要」のホワイトペーパーで詳しく説明しているように、AWSのお客様は、データを暗号化して保護するための方法について、複数のオプションから選択が可能です。 たとえば、Amazon Relational Database Service(RDS)は、サポートされているデータベースエンジン(MySQL、SQL Server、Oracle、MariaDB、PostgreSQL、およびAurora)ごとにオプションがあり、転送中のデータの暗号化もサポートしています。 多くのお客様がAWS Key Management Service(KMS)を使用してキーを集中管理したり、AWS CloudHSMが提供するハードウェアベースの鍵管理、暗号化、復号を利用することで、重要データと規制に対応したワークロードはコンプライアンスの要求に応えることができています。(ハードウェアセキュリティモジュール(HSM)について、詳しくは、 AWS CloudHSM – Secure Key Storage and Cryptographic Operationsを参照してください)。   主要なCloudHSMアップデート 今日、私たちが第1世代の製品から学んだことを踏まえて、我々はCloudHSMを大幅にアップデートしました。専門的な運用ノウハウの必要性を軽減し、ハードウェアベースのキー管理の利点をより多くのユーザーに提供できるように、改良しました。改善の要約を以下に示します。 従量課金モデル – CloudHSMは、シンプルで費用対効果の高い、初期費用なしの従量課金モデルで提供します。 フルマネージド – CloudHSMはスケーラブルな管理サービスになりました。プロビジョニング、パッチ適用、高可用性、およびバックアップはすべて組み込まれています。スケジュールされたバックアップは、(HSMハードウェアだけが知っている鍵を使用して)ハードウェアからHSMの暗号化イメージを抽出し、AWS内の同一のHSMハードウェアにのみリストアできます。耐久性のために、これらのバックアップはAmazon Simple Storage Service(S3)に保存され、AWS KMSマスターキーを使用してサーバーサイドのS3暗号化を使用して再度暗号化されたセキュリティ層が追加されます。 オープンかつ互換性を考慮 – CloudHSMはオープンで標準に準拠しており、PKCS#11、Java Cryptography Extension(JCE)、および、Microsoft CryptoNG(CNG)など、複数のAPI、プログラミング言語、および暗号化拡張機能をサポートしています。 CloudHSMのオープン性により、キーを(暗号化された形式で)1つのCloudHSMから別のCloudHSMに移動するプロセスをより詳細かつ簡単に制御し、他の市販のHSMとの間で移行することができます。 より安全に – CloudHSM Classic(オリジナルモデル)は、FIPS 140-2レベル2に準拠した鍵の生成と使用をサポートしています。我々は、HSMにアクセスまたは変更するための物理的な試行を検出して対応するように設計されたセキュリティー・メカニズムを備え、FIPS 140-2レベル3を段階的にサポートしています。バーチャルプライベートクラウド(VPC)内に改ざん防止を備えたHSMに対して、排他的なシングルテナントアクセスとしており、お客様のキーは保護されます。 CloudHSMは、重要な管理機能と鍵管理機能のためのクォーラム認証をサポートします。この機能を使用すると、機能にアクセスできるN個の可能なIDのリストを定義され、少なくともM人以上がアクションを承認する必要があります。また、提供するトークンを使用したマルチファクタ認証もサポートしています。 AWS-Native – アップデートされたCloudHSMはAWSに統合されており、他のツールやサービスとうまく連携します。 AWS管理コンソール、AWSコマンドラインインターフェイス(CLI)、またはAPI呼び出しを使用して、HSMのクラスタを作成および管理できます。   使ってみましょう 1〜32のHSMで構成されたCloudHSMクラスターを作成できます。それぞれのクラスターは、特定のAWSリージョンの別々のアベイラビリティゾーンにあります。 AZをまたいでHSMを展開することで、高可用性(組み込みロードバランシングを含む)を実現できます。また、より多くのHSMを追加すると、スループットの向上が得られます。 […]

Read More

新機能 − Amazon Elastic Filesystem(EFS)で保管データの暗号化をサポート

我々は、1年と少し前にAmazon Elastic File Systemを本番ローンチしました。(詳細は Amazon Elastic File System – Production Ready in Three Regionsを確認ください)。そしてその年の後半には、Direct Connec経由でのオンプレミスアクセスを追加し、今年になって米国東部(オハイオ)、欧州(フランクフルト)、アジア・パシフィック(シドニー)リージョンでも利用可能となりました。 保管データの暗号化 本日、保管データの暗号化サポートを加えることにより、EFSがより利用しやすくなりました。ファイルシステムの作成時に、ファイルシステム上に保管するコンテンツを暗号化するための鍵を選択することが可能です。AWSが管理するビルトインの鍵、あるいは、AWS Key Management Service(KMS)を利用して自身で作成した鍵がご利用可能です。ファイルのメタデータ(ファイル名、ディレクトリ名、ディレクトリの内容)はAWSが管理する鍵で暗号化されます。どちらの暗号化の形式も、業界標準のAES−256アルゴリズムを利用して実装されています。 新しいファイルシステムを作成するときにすぐにセットアップ可能です。シンプルにビルトイン鍵(aws/elasticfilesystem)、あるいは自分の鍵を選択するだけです: EFSが残りをすべて行います! コンソールでファイルシステムを選択することで、望みどおり暗号化されているかどうかを確認できます: データをメタデータの暗号化には、FIPS 140-2の承認に適合した暗号化アルゴリズムが利用されます。暗号化は透過的に行われ、全体のパフォーマンスへの影響は最小限です。 AWS Identitiy and Access Management(IAM)を利用して、Customer Master Key(CMK)へのアクセスを制御することができます。CMKは、ファイルシステムへアクセスするために有効化されていなければいけません。鍵を無効化すると、新しいファイルシステムの作成に使用できなくなり、保護対象の既存のファイルシステムへのアクセスが(一定期間後)ブロックされます。詳細については、Managing Access to Encrypted File Systemsをご参照ください。 すぐにご利用可能 保管データの暗号化はEFSがサポートされている全てのリージョンでご利用可能です。追加料金は発生しません。 — Jeff; (翻訳はSA布目が担当しました。原文はこちら)

Read More

ASP.NET CoreとAWS CodeStarのDeep Dive

AWS CodeStar チームは最近、2つのASP.NET Coreプロジェクト テンプレートの追加を発表しました。ご存知かもしれませんが、AWS CodeStarは継続的インテグレーションと継続的デプロイメント(CI/CD)パイプラインを開発者に代わって作成し、それによって開発者は貴重な時間をインフラの構築の代わりにアプリケーションの構築に費やすことができます。新しいASP.NET Coreプロジェクトテンプレートを使用することで、.NET開発者は初日からAWSアプリケーションを構築し、展開することができます。Tara Walkerの優れたブログ記事では、AWS CodeStarでASP.NET Core アプリケーションを作成する方法について説明しています。このブログ記事では、AWS CodeStarのASP.NET Coreプロジェクトにテストを追加する方法を学ぶ中で、背後で何が起こっているのかを詳しく見ていきます。   Unit Test プロジェクトの追加 私たちの目標は、HelloControllerの機能を実行するシンプルなテストケースを追加することです。私はあなたが全く新しいASP.Net Core Web Service プロジェクトを持っていると仮定しています。もし、まだプロジェクトを持っていない場合は、Taraのブログ記事(上記)をたどってプロジェクトを作成することができます。ASP.NET Core Web Service テンプレートを選択していることを確認してください。ASP.NET Core for AWS CodeStarプロジェクトを作成後、Team Explorer でプロジェクト リポジトリをクローンし、AspNetCoreWebServiceソリューションをロードしたら、残りのブログ記事に沿って後を追えるようになります。Team Explorer でリポジトリをセットアップするためのガイドが必要な場合は、5月のSteve RobertのVisual StudioとCodeCommitのインテグレーションについての発表をご覧ください。 最初に、AspNetCoreWebServiceTestという名前の新しいxUnitプロジェクトをAspNetCoreWebServiceソリューションに追加します。私たちの新しいテストプロジェクトはHelloControllerクラスとJsonResultを参照するので、AspNetCoreWebServiceをプロジェクト参照として追加し、Microsoft.AspNetCore.MvcをNuGet参照として追加する必要があります。それらをテストプロジェクトに追加すると、AspNetCoreWebServiceTest.csprojに次の追加情報が表示されます。   <ItemGroup> <PackageReference Include=”Microsoft.AspNetCore.Mvc” Version=”1.1.3″ /> … </ItemGroup> … <ItemGroup> <ProjectReference Include=”..\AspNetCoreWebService\AspNetCoreWebService.csproj” /> </ItemGroup>   これにより、HelloControllerクラスを直接参照し、JsonResultを展開することができます。次のように簡単なテストケースを追加しましょう。 using […]

Read More

LLAPを使用してAmazon EMRでのApache Hiveクエリをターボチャージ!

Apache Hiveは、SQLを使用してHadoopクラスタに格納された大規模なデータセットを分析するための最も一般的なツールの1つです。データアナリストやデータサイエンティストは、大きなデータのクエリ、要約、探索、および分析にHiveを使用します。 Hive LLAP(Low Latency Analytical Processing)の導入により、Hiveが単なるバッチ処理ツールであるという考え方が変わりました。 LLAPは、インテリジェントなインメモリキャッシュを使用して長期実行デーモンを使用し、バッチ指向のレイテンシを覆し、1秒未満のクエリ応答時間を提供します。 この記事では、Hive LLAPのアーキテクチャと、クエリパフォーマンスを向上させるための一般的な使用例など、Hive LLAPの概要を示します。 Amazon EMRクラスタにHive LLAPをインストールして設定し、LLAPデーモンでクエリを実行する方法を学習します。

Read More

AWS re:Invent 2017 の準備

2017 年 11 月 27 日まであとわずか 110 日となった今、私と私の同僚は re:Invent 2017 の準備を懸命に行っています。まだブログ投稿の作成や新しい LEGO の作成は開始していませんが、非常に暫定的な発表リストを確認済みで、これからの非常に多忙な 1~2 か月に向けて既に準備中です。 これまでにないほど、より多くの会場、より大きな展示ホール、より多くのコンテンツ (1,000 以上のセッション)、ハッカソン、ブートキャンプ、ワークショップ、認定のチャンスが用意されています。Tatonka チャレンジや re:PLAY パーティーといった恒例の人気行事に加えて、ブルームボール (Amazon の長期にわたる伝統行事) やオールスターフィットネスアクティビティも追加されました。 毎年、長い間ご無沙汰している知り合いからチケットを求めるぎりぎりの手紙、電話、E メールをもらいますが、すべてお断りしなければなりません (「たしか 1 年生のときに一緒でしたね」というような連絡を待っていますが、どうなるかはおわかりですね)。毎年キャパシティーは増やしていますが、多くのお客様に対して売り切れになることが予想されるため、取り残されないよう、今すぐ予約することを今一度お勧めいたします。 ベガスでお会いしましょう。 — Jeff;

Read More

階層とタグによるパラメータの組織化及びAmazon EC2 Systems Manager パラメータ ストアのAmazon CloudWatchイベント

このポストはアマゾンウェブサービスのソフトウェア デベロッパーエンジニアであるLusha Zhang によって書かれました。   Amazon EC2 Sysmtes Mangager の一部であるパラメータストアは、平文データ(データベース文字列)または秘密情報データ(パスワード、APIキーなど)を問わず、設定データを管理するための集中化された暗号化ストアを提供します。パラメータストアはAWS CLI、API、およびSDKを介して利用できるため、AWSラムダやAmazon ECSなどのAWSサービス間でパラメータを簡単に参照できます。   パラメータストアのその他の記事については、以下を参照してください: Managing Secrets for Amazon ECS Applications Using Parameter Store and IAM Roles for Tasks Use Parameter Store to Securely Access Secrets and Config Data in AWS CodeDeploy   パラメータストアは最近、階層化サポートとパラメータのタグ付け、及びCloudWatchイベント サポートをローンチしました。これらの機能によって大規模にパラメータを組織化し、管理することが可能になりました。このポストでは、これらの新しい機能を使ってセキュリティ機能を拡張し改善する方法を示します。   階層化パラメータ パラメータストアの階層化サポートによって、組織構造に基づいたパラータの構造化が可能となります。これはパラメータの編成、クエリ、および権限管理のための強力なツールを提供します。   一般的なDevOpsのシナリオでは、開発、ベータ、本番の異なる環境に対してソフトウェアの展開を自動化します。例えば、デプロイメント設定を作成する時に、設定を保存するためにパラメータストアを利用できます。おそらく各デプロイメント環境に最低限の健全なホスト数やパーセンテージを設定しなければならず、それらを環境ごとに異なる値でパラメータストアに保存したいと思うでしょう。   Step1. デプロイメント設定のパスを作成する 次のコマンドを使用して、保存するパスとパラメータを作成します: aws ssm […]

Read More

Amazon Connect と Amazon Lex のインテグレーション

私のお気に入りのサービス、Amazon Connect と Amazon Lex に機能強化が施されました。セルフサービスの Amazon Connect はクラウドベースのサポートセンターで、ビジネスがより良いカスタマーサービスを低コストで簡単に提供できるようにしています。Amazon Lex は、音声とテキストを使用して会話型インターフェイスを構築するためのサービスです。この 2 つのサービスを統合することで、Lex の自動音声認識 (ASR) と自然言語理解 (NLU) の性能を利用し、優れたセルフサービスエクスペリエンスを顧客に提供することができます。この統合を有効にするため、Lex チームが 8kHz の音声入力サポートを追加しました。これについては後ほど詳しくご説明します。この機能のメリットは?顧客によるリクエストの大半をボットが解決できれば、電話での待ち時間を削減し、ユーザーは時間を無駄にすることなく製品を使用することができます。 Connect または Amazon Lex の背景情報については、Jeff が過去に公開したブログ [1][2] をぜひお読みください。LEGO ファンの方は特にお楽しみいただけると思います。 では、この新しい統合の使用方法を見ていきましょう。Twitch チャンネルで構築したアプリケーションを使用して、このブログ用に内容を変更します。アプリケーションのコアでユーザーが Amazon Connect の番号を呼び出します。この番号はユーザーを Lex ボットに繋げ、AWS Lambda 関数を開始します。これは Lex のインテントをベースにしています。アプリケーションでできることは? 最良のコードエディタは何だと思いますか? 個人的には vim が好きです。コード編集を行うには最高のエディタです。私の同僚の Jeff は emacs を選んでいます。 これは素晴らしいオペレーティングシステム エディタです。もし、生まれつき指の関節が普通以上にあればの話しですが。そして同僚の Tara が選んだのは Visual Studio […]

Read More

異なるAWS CodeBuildビルドスペックファイルを使用した、同じソースからの複数ビルド作成

2017年6月、 AWS CodeBuildプロジェクトで別のビルドスペックファイル名または場所を指定できるようになりました。 この記事では、異なるビルドスペックファイルを同じリポジトリで使用して、異なるビルドを作成する方法を説明します。この投稿のソースコードは我々のGitHubリポジトリにあります。   前提要件 AWS CLIをインストールして設定しておく必要があります。 ソリューションの概要 共有ライブラリを作成するために使用されるCプログラム(cbsamplelib.c)と、そのライブラリを使用するための別のユーティリティプログラム(cbsampleutil.c)を作成しました。 Makefileを使ってこれらのファイルをコンパイルします。 このサンプルアプリケーションをRPMとDEBパッケージに入れてエンドユーザーが簡単に展開できるようにする必要があります。 RPM用のビルドスペックファイルを作成しました。ビルドスペックで設定されたこのコードとRPMスペックファイル(cbsample.rpmspec)をコンパイルしてRPMパッケージを作成するには、makeを使用します。同様に、DEB用のビルドスペックファイルも作成しました。このビルドスペックで構成されたコントロールファイル(cbsample.control)に基づいてDEBパッケージが作成されます。   RPMビルドプロジェクト: 次のビルドスペックファイル(buildspec-rpm.yml)は、ビルドスペックバージョン0.2を使用します。ドキュメントで説明されているように、このバージョンは環境変数の構文が異なります。このビルドスペックには、複数のフェーズがあります。 installフェーズの一部として、yumを使用して必要なパッケージがインストールされます pre_buildフェーズでは、必要なディレクトリが作成され、RPMビルドスペックファイルを含む必要なファイルが適切な場所にコピーされます buildフェーズでは、コードがコンパイルされ、RPMスペックに基づいてRPMパッケージが作成されます artifactセクションで定義されているように、RPMファイルはビルドアーティファクトとしてアップロードされます。 version: 0.2 env:   variables:     build_version: “0.1” phases:   install:     commands:       – yum install rpm-build make gcc glibc -y   pre_build:     commands:       – […]

Read More

Now Available – Lumberyard Beta 1.10

本日、546以上の改善、修正、および機能を備えた最大リリースであるLumberyard Beta 1.10のリリースを発表しました。こちらからダウンロードできます。 昨年2月にリリースされて以来、元コードの50%以上を修正、書き換えを行いました。皆様ののフィードバックのおかげで、いくつかの大きな進歩を遂げましたが、まだやるべきことはたくさんあります。この行程のお手伝いができ興奮しております。 今回のリリースにはいくつかのハイライトがあります。(全リリースノートはこちらにあります)   Order-independent Transparency ゲーム上で透明なオブジェクトをレンダリングするのはチャレンジングです。ワイングラスを例に:グラフィックスエンジニアは、すべての表面を正しく表示し、特に表面やリフレクションの順序が乱れている場合は、すべてのリフレクションを正しく取得するのに時間がかかることを知っています。Order-independent Transparency(OIT)はこれを解決します。 今年GDCでNVIDIA Researchと協力してOITを垣間見ることができ、そして今回のLumberyard 1.10に統合することができました。私たちは常にゲーム開発を簡単にする方法を探し求めていますが、リアルタイムレンダリングで可能性を押し広げています。皆様がOITの力をどのように活用するかを待たせることはありません。 画面の左側には、Order-independent Transparencyを有効にしており、その利点がわかります。   Temporal Anti-Aliasing 私たちはすべてのjagged edges (aka jaggies) やゲーム中のちらつきを処理してきました-多くの点で、それに慣れていました。しかしそれはもう必要はありません。Temporal Anti-Aliasingを使用すると、リアルタイムレンダリングによる欠点をより簡単にスムーズに処理し、ゲーム中で映画のような品質に近づけることができます。 それにすぐ直面し、映画では数秒のCGI効果で数百時間を費やすこととなります。しかし、ゲームでは、すべてをリアルタイムで実行する必要があります。Lumberyardの高度なレンダリング技術と一緒に、Temporal Anti-Aliasingは、プロジェクトにおいてハイレベルの視覚的忠実度を成し遂げるのに役立てます。 画面の左側には、 Temporal Anti-Aliasingを有効にしており、その利点がわかります。   何百もの追加機能と最適化 皆様のフィードバックのおかげで、今回のリリースではさらに重要な調整と修正が行われました。 component entity workflowsでワークフローに35の改善点を 導入し、イテレーション時間を短縮しました。たとえば、Entity Inspectorで複数選択(CTRLとSHIFTのクリック)したり、コンテキストメニューからワンクリックでエンティティとコンポーネントをスライスのデフォルトに戻したり、Entity Outlinerのコンポーネントを有効または無効にしたり、エンティティのアイコンをカスタマイズができるようになりました。 Cloud Gems には50以上の改善点が追加され、プレイヤーコミュニティの管理性を向上させました。新しい機能は、Cloud Gems Portalから数回のクリックで新しいユーザーを作成したり、パスワードをリセットしたり、プレーヤーを停止する機能が含まれました。 さらに、エディタをカスタマイズした新しいdocking systemやmaterial editorのパフォーマンス向上など、多くの機能を備えています。 Lumberyardの新しいdocking system   皆様のご意見をお聞かせください いつものように、あなたの考えをお聞かせください。リリースから18カ月しか経っておらず、いろいろな意味でまだ始まったばかりです。あなたのフィードバックや提案の多くを組み込むのを待っています。だからこそお聞かせください。Lumberyardについての詳細は、チュートリアルを参照し、コミュニティフォーラムにアクセスでき、ドキュメントを確認することができます。 (翻訳はSA 森が担当しました。原文はこちら)

Read More