タグ

s3に関するdelegateのブックマーク (26)

  • 【Golang】S3上のデータをメモリ上に乗せずにストリーミングしてレスポンスへ流す【AWS】

    GolangにてS3上のデータを取得した後、データ全体をメモリ上に乗せることなく、ストリーミングしながらHTTPレスポンスとして流す方法です。 S3からデータを取得するためのプロキシAPIを構築するようなケースを想定しています。 io.Readerをioutil.ReadAllを用い[]byteに変換した場合、データ全体がメモリ上に乗ってしまうため、数百メガ~数ギガといった巨大なファイルを扱っていると簡単にメモリ不足に陥ります。 そのため、io.Readerのようなstreamを扱う場合は、[]byteへの変換を挟まずにそのままstreamとして扱いio.Writer等に流してしまうほうがメモリ効率が良くなります。 目次 達成出来ること S3上のデータをストリーミングにて取得し、データ全体をメモリ上に乗せることなく、HTTPレスポンスとして返却するプロキシを実装する io.Readerから

    【Golang】S3上のデータをメモリ上に乗せずにストリーミングしてレスポンスへ流す【AWS】
  • Amazon S3 へのファイルアップロードで POST Policy を使うと、かゆいところに手が届くかもしれない - カミナシ エンジニアブログ

    はじめに こんにちは。カミナシでソフトウェアエンジニアをしている佐藤です。 みなさんは、アプリケーションのフロントエンドから、Amazon S3 にファイルをアップロードするときに、どのような方法を用いているでしょうか? 「バックエンドのサーバーにファイルを送信し、バックエンドのサーバー経由で S3 にアップロードしている」「Presigned URL を払い出して、フロントエンドから直接 PUT している」など、いくつかの方法があると思います。 弊社で提供しているサービス「カミナシレポート」でも、用途に応じて上記の方法を使い分けて S3 へのファイルのアップロードを行っています。 特に、Presigned URL は、手軽に利用できる上に、バックエンドのサーバーの負荷やレイテンシーの削減といったメリットも大きく、重宝しています。 一方で、その手軽さの反面、アップロードに際して様々な制約を

    Amazon S3 へのファイルアップロードで POST Policy を使うと、かゆいところに手が届くかもしれない - カミナシ エンジニアブログ
  • S3へのファイル転送を高速化する手順 - skymatix Developers Blog

    システムエンジニアの椎葉です。 ファイル数が多くなるとファイルの転送に時間がかかってしまいます。 ファイル転送の改善で処理時間やEC2のコストを削減することができます。 今回の例でも30%ほど転送時間&コストを削減することができているので是非参考にしてみてください。 設定項目 今回改善するために変更する設定は下記の2つです。 項目名 説明 max_concurrent_requests 同時に実行できるリクエストの最大数を制御。この設定により、バケットへの同時アクセスを制御することができる。デフォルト:10 max_queue_size タスクキュー内の最大タスク数を制御。タスクが多くなると速度も速くなるが、比例して多くのメモリが必要になる。デフォルト:1000 設定変更のコマンド 設定を変更する際は下記のコマンドを実行します。 aws configure set default.s3.m

    S3へのファイル転送を高速化する手順 - skymatix Developers Blog
  • AWS のサーバーレスと Amazon S3 署名付き URL、クライアントサイド JavaScript で大きなサイズの複数ファイルの一括アップロード・ダウンロード機能を実現する方法 | Amazon Web Services

    Amazon Web Services ブログ AWS のサーバーレスと Amazon S3 署名付き URL、クライアントサイド JavaScript で大きなサイズの複数ファイルの一括アップロード・ダウンロード機能を実現する方法 はじめに 昨今のテクノロジーの進化は、これまで以上に、私たちがどのように働き、どのように生活するかを再定義しています。この進化の中心には、クラウドコンピューティングが存在しており、AWS はこれまで、クラウドコンピューティングのパイオニアとして、様々な機能を提供し続け、業界をリードしてきました。その機能群を支えるエコシステムの一部であるサーバーレスアーキテクチャは、スケーラブルで信頼性が高く、メンテナンスの作業負担が低いアプリケーションの開発を可能にし、ユーザーのビジネスやプロジェクトが円滑に進行するようサポートします。 AWS のサーバーレスの代表的なサービ

    AWS のサーバーレスと Amazon S3 署名付き URL、クライアントサイド JavaScript で大きなサイズの複数ファイルの一括アップロード・ダウンロード機能を実現する方法 | Amazon Web Services
  • [Python] Amazon S3のオブジェクトキーとして安全な文字列に変換する | DevelopersIO

    こんにちは。サービス部の武田です。 ファイルをS3バケットに保存しようとした際に、それがオブジェクトキーとして問題ない名前になっているか気になったことはないでしょうか。 AWSのドキュメントでは、オブジェクトキーの命名に関するガイドラインがあります。 オブジェクトキー名の作成 - Amazon Simple Storage Service 変換せずに安全に使用できる文字は0-9a-zA-Zに加え、!-_.*'()の8文字です。 またそのままでは使用できない可能性のある文字としては、制御文字を除くと&$@=;/:+ ,?の11文字です(空白を含む)。 これらの文字が含まれる場合は、問題が起きないようにURLエンコード(パーセントエンコード)をするのが望ましいです。 PythonでURLエンコード PythonでURLエンコードするにはurllib.parse.quote関数を使用します。試し

    [Python] Amazon S3のオブジェクトキーとして安全な文字列に変換する | DevelopersIO
  • 外部ユーザが安全かつ直接的に Amazon S3 へファイルをアップロードできるようにする方法 | Amazon Web Services

    Amazon Web Services ブログ 外部ユーザが安全かつ直接的に Amazon S3 へファイルをアップロードできるようにする方法 このブログは 2022 年 3 月 24 日に Anderson Hiraoka (Solutions Architect) と、Rafael Koike (Principal Solutions Architect) によって執筆された内容を日語化した物です。原文はこちらを参照して下さい。 企業では、ファイルや画像などのデジタル資産をリポジトリに保存することが求められることが多くあります。多くの場合、これらのファイルのソースは、社内システムに接続されていないパートナーまたは個人であり、ファイルをアップロードするためには、企業の認証が必要となります。お客様は従来、ファイルのアップロードを処理するためにサーバーを使用していましたが、大量のネットワー

    外部ユーザが安全かつ直接的に Amazon S3 へファイルをアップロードできるようにする方法 | Amazon Web Services
  • 【AWS S3】S3 Presigned URLの仕組みを調べてみた - Qiita

    はじめに S3上にあるファイルを一時的に不特定多数に公開したい場合や、IAM Userアカウントを持っていない人に対して一時的にファイルのダウンロード/アップロードさせたい場合があります。このような場合に用いることができる手段として「S3 Presinged URL」があります。 ググってみると、このURLの生成方法、利用方法についての説明はあるものの、その仕組みについて触れたものはほとんどなかったため、記事にまとめました。 TL;DR Presigned URLは特定のIAM Entity(IAM User/IAM Roleなど、AWS API操作主体となるもの)の権限で発行される Presigned URLによるファイルのダウンロード/アップロードは、このURLを発行したIAM Entityの権限で実行される Presigned URLは有効期限を持たせることができる Presigne

    【AWS S3】S3 Presigned URLの仕組みを調べてみた - Qiita
  • Dockerネットワーク内のminioで署名付きURLを使う時のTIPS

    はじめに minioはs3互換のオブジェクトストレージサーバです。 GitHub - minio/minio: MinIO is an open source object storage server compatible with Amazon S3 APIs 開発環境等でs3の代替として導入されている現場もあるのではないでしょうか。 localstackを使うパターンもあるかと思いますが、シンプルにs3の機能が欲しいだけの時はminioのほうが軽くて必要十分な場合が多いかなと思います。 今回はdocker-composeで起動する開発環境にminioを組み込もうとした際に少し悩んだことがあったので、自分なりの対処方法を書いてみます。 課題 Dockerネットワーク内で取得した署名付きURLに、Dockerネットワーク外から接続できない。 環境の説明 こんな感じで署名付きURLを利用す

    Dockerネットワーク内のminioで署名付きURLを使う時のTIPS
  • 【初心者必見】Amazon S3のアクセス制御|伊藤忠テクノソリューションズ

    【初心者必見】Amazon S3のアクセス制御 投稿日: 2021/03/30 こんにちは、高橋です。 Amazon S3はデータの保管に非常に便利なサービスです。しかしながら、S3内部のオブジェクトに関しては同じアカウント内のIAMユーザは勿論、他のAWSアカウントのユーザ、 さらにはオブジェクトを公開した場合、外部からでもアクセスできてしまいます。 そのため、S3にはバケット/オブジェクトへのアクセスを制御するためのアクセスコントロールの方法が3種類用意されています。 今回はS3のアクセス制御の方法とお客様からよく問い合わせを受けるアクセス制御の実際の設定例についてご紹介します。 Amazon S3のアクセス制御 Amazon S3のアクセス制御の方法は下記の3種類の方法があります。 1. IAMポリシー 通常のAWSサービスへのアクセス制御と同様にポリシードキュメントにてIAMユーザ

    【初心者必見】Amazon S3のアクセス制御|伊藤忠テクノソリューションズ
  • 絵で見て 3分でおさらいする Amazon S3 のバージョニングとライフサイクル | DevelopersIO

    コンバンハ、千葉(幸)です。 S3 のライフサイクルやバージョニング、使ってますか? 私は「あぁそれね、4年くらい前に完全に理解しましたよ」という気分でいたのですが、いざ きちんと思い出そうとすると 90分ほどかかってしまいました。 3歩あるくと大抵のことを忘れる私としては、都度 90分かけて思い出すわけには行きません。今後は 3分くらいで思い出せるよう、まとめてみることにします。 まとめ バージョニング はバケット単位で設定する ステータスは以下のいずれか 無効 有効 停止 「以前のバージョン」のオブジェクトは復元できる 削除マーカーによる論理的な削除という状態が生まれる ライフサイクルはスコープを限定可能で、ルールを複数設定できる 選択できるアクションは以下 現行のバージョンのストレージクラスの移行 以前のバージョンのストレージクラスの移行 現行のバージョンの失効 以前のバージョンの完

    絵で見て 3分でおさらいする Amazon S3 のバージョニングとライフサイクル | DevelopersIO
  • サーバレスで扱うデータストアとしてS3という選択肢があるらしい - Qiita

    この記事は、ニフティグループ Advent Calendar 2020 最終日の記事です🎄 昨日は、@RPcat さんの 即フォーマットチェックにincronを使う でした。 ファイルの変更や操作を監視してくれるコマンドが用意されていることを知らなかったので、非常に勉強になりました。 はじめに 皆さん、サーバレスアプリケーションを作ろうと考えたときに選択するデータストアとして何を思い浮かべますか? 多くの人が思い浮かべるのは、 Amazon DynamoDB Amazon RDS + Amazon RDS Proxy だと思います。 ただ、DynamoDBを使っているときに「使い慣れているSQLを使いたいなあ」と感じたり、個人でRDSを使うには「金額が高すぎるなあ」と感じることがあると思います。自分がそう感じていました。 そこで、これらの問題を解決する一つの選択肢として Amazon S

    サーバレスで扱うデータストアとしてS3という選択肢があるらしい - Qiita
  • 【超重要】対応しないと使えなくなるかも?!今、全S3ユーザがチェックすべき署名バージョン2の廃止について | DevelopersIO

    ご機嫌いかがでしょうか、豊崎です。 注意喚起記事です。一部のS3利用者に影響が出ることなので、是非ご確認、および対象の方はご対応いただければと思います。 具体的に何のことかというと、Amazon S3のAWS署名バーション2の廃止についてです。 弊社suzukiがすでに記事を書いていますが、Amazon S3のAWS署名バーション2が2019年6月24日に廃止されます。これは、より安全にAWSおよびS3を利用できるようにするために署名バージョンの変更が行われるためです。 これによって一部のAWSユーザのS3の利用に影響が出ます。 署名バージョン4専用のS3エンドポイントを古いCLIで試してみた AWSの各サービスのAPIを利用する際、AWSが送信元を特定できるようにリクエストに署名が必要です。現在AWSAPIで利用されている署名バーションは「2」と「4」の2種類あり、「4」が推奨されてい

    【超重要】対応しないと使えなくなるかも?!今、全S3ユーザがチェックすべき署名バージョン2の廃止について | DevelopersIO
  • S3互換のオブジェクトストレージminioを試す | DevelopersIO

    はじめに AWSを利用するシステムを開発するときに、まだリソースを用意してないけどちょっと動かしてみたいな、ということが稀によくありますよね。 最近S3を使う機能の開発でそういう状況になったので、S3互換オブジェクトストレージのminioを試してみました。 簡単に動かすことができたので今回は導入方法とaws-cliからの操作方法を紹介します。 検証環境 Docker: 18.06.0-ce minio: 2018-08-02T23:11:36Z aws-cli: 1.16.1 minioとは minioはプライベートクラウドでの利用を想定した分散オブジェクトストレージです。Go言語実装で、ソースはGitHubのリポジトリで確認できます。 GitHub - minio/minio: Minio is an open source object storage server compatibl

    S3互換のオブジェクトストレージminioを試す | DevelopersIO
  • コマンド1つで作れる!かんたん自宅Amazon S3互換環境! - Qiita

    Amazon S3って? 追記: 以下の記事で紹介したS3互換環境を使って,サムネイルサーバーを作ってみました!! サーバーレスの入門に!自宅サーバーレス+自宅S3環境で作るサーバーレス・サムネイルサーバー! ざっくりというとAmazonが提供している"ファイルサーバーのようなもの"です. 公式ドキュメントによると Amazon Simple Storage Service はインターネット用のストレージサービスです。また、ウェブスケールのコンピューティングを開発者が簡単に利用できるよう設計されています。 引用:Amazon S3 とは何ですか? 厳密にはAmazon S3はオブジェクトストレージの一種で, オブジェクトストレージはデータをファイル単位やブロック単位ではなく、オブジェクトという単位で扱います。オブジェクトにはストレージシステムのなかで固有のID(URI)が付与され、データと

    コマンド1つで作れる!かんたん自宅Amazon S3互換環境! - Qiita
  • goofysを使ってAmazon LinuxにS3をマウントする。

    はじめに AWSを利用していて、S3をサーバーマウントする技術としてs3fsが有名だと思います。 ですが、s3fsは遅いと感じる人は少なくないかと思います。 そこで他に何かないかなと思って調べたところ、goofysというのがあるみたいです。 goofysのREADMEに、以下のBenchmarkが載っていました。 ということで、とりあえずgoofysを使ってS3をマウントしたいと思います。 goとfuseのインストール まず、goofysを利用するにあたり、goとfuseが必要となるためパッケージをインストールします。 $ sudo yum install golang fuse golangをインストールする際に依存関係がたくさんあるためyumで一気にインストールしてしまいましょう。 AWS CLIの設定 aws cli環境を設定します。 $ aws configure AWS Acce

    goofysを使ってAmazon LinuxにS3をマウントする。
  • Nginx as proxy for Amazon S3 (Example)

    @cbess CloudFrount CDN is not feature of S3! CloudFront can use S3 just as origin. For some reason CDN is not an option for certain business purposes, such data privacy, specific geo-location (if should not be replicated to another regions). @mikhailov Correct, S3 is not a CDN. However, my point was that you reduce the scalability by having all traffic diverge to your server. Meaning, you take on

    Nginx as proxy for Amazon S3 (Example)
  • nginxで認証のかかったS3をアップストリームしてみる – BookLive! Engineers' Blog

  • 【FuelPHP】FuelPHPからAWS S3へ画像アップロードを試してみる。 | DevelopersIO

    前回はFuelPHPでs3のバケット情報を取得してみたので、今回はs3へファイルをアップロードを試してみようと思います。 アジェンダ 実行環境 S3のパッケージをインストール ファイル準備 動作確認 実行環境 Win 7 PHP 5.3.3+ FuelPHP 1.6 S3に画像アップロード用のバケットを作成しておいてください。今回は[hogeバケット]内に[imgフォルダ]を作成し、[imgフォルダ]内に画像を格納します。 S3のパッケージのインストール 以下からパッケージをダウンロードします。 danharper/fuel-s3 ファイルの設置場所は[/fuel/packages/s3/]に設置します。 パッケージの設定ファイルにAWS情報を記述 ダウンロードしたパッケージの[/fuel/packages/s3/config/s3.php]をコピーして、 [/fuel/app/confi

  • S3QLでさくらのオブジェクトストレージサービスをローカルマウントしてみよう | さくらのナレッジ

    記事は2021年3月まで提供しておりました旧オブジェクトストレージサービスに関する情報です。現行のオブジェクトストレージとは互換性のないAPIを用いているため、現在はご利用いただけません。ご了承ください。 はじめまして。姫野と申します。 ここでは、さくらのクラウドで「Amazon AWS S3(S3)互換API」をサポートしたオブジェクトストレージサービスが正式にリリースされたのを記念して、「さくらのクラウド」のオブジェクトストレージ(以下オブジェクトストレージ)をサーバーにマウントして使えるS3QLを紹介します。 オブジェクトストレージを使う理由 ファイルサーバーなどを構築する際、どのぐらいのストレージを準備すればいいか、悩んだことはありませんか? 増え続けるファイル容量、激写される写真や動画、編集するたびに増えるバックアップ…。データの増加を見越して5年程度は対応できるようにストレー

    S3QLでさくらのオブジェクトストレージサービスをローカルマウントしてみよう | さくらのナレッジ
  • 【AWS】S3まとめ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? どうも、iron千葉です。 S3について、ユーザガイドを見てポイントをまとめました。 ポイントだけ確認したい人、ざっと全体を見たい人におすすめです S3は奥が深い。 S3とは? インターネットストレージ(平たく言うとgoogleドライブevernoteのようなwebブラウザから利用できるストレージ) S3はAPIまたはAWS CLIにてプログラムから操作(ファイルのアップロード、ダウンロード、削除)ができる 容量制限なし データはいつでもダウンロード可能 柔軟なアクセス制御ができる(IAM、アクセスコントロール、バケットポリシー) S

    【AWS】S3まとめ - Qiita
    delegate
    delegate 2015/10/27