AWS / PHP / Python ちょいメモ

amazon web service , PHP, Python を使ったときのメモ。日本語でググってもわからなかった事を中心に。

2013-01-01から1年間の記事一覧

CakePHP2.x対応 ファイルアップロード機能追加プラグイン

検索中心のWebサイト開発を行っており、表題の機能が欲しくて調査。この2つのどちからになりそうです。プラグインを語れるぐらい使い込んではいませんが、まとめてみます。# 数多くのプラグインが出ているのがメジャーなフレームワークを使うメリットだなぁ…

EMRのManagementConsole/APIバージョンアップ

EMR

11/7にきたメールで、AWS EMRの機能追加などがあったとのことを知りました。対応Hadoop自体のバージョンアップはこれまでもありましたが、今回はInterface系のバージョンアップです。変更点として、ManagementConsoleでは出来なかったクラスタへのインスタン…

SDKドキュメントにcontributeしようメモ(2)

前回のエントリー で、自分でハードルを上げてましたが、別サービス:SimpleDbを見てみたら、もっとライトで良い気がしてきました。 構造を探ってみる(2): SimpleDbを参考に SimpleDbのUsersGuideを参考に、構造を探ってみました。 SimpleDbのUsersGuideに該…

SDKドキュメントにcontributeしようメモ(1)

aws-sdk-php v2のUserGuideドキュメント、Auto Scaling, Amazon Elastic Compute Cloud, Amazon Elastic MapReduce, Amazon Glacier など、まだincomplete(完成してない)ものがチラホラあります。API referenceを見れば使えるので、そこまで困りませんが、…

WindowsのSphinxスタンドアロン環境でSDKドキュメントを書く準備

aws-sdk-phpのドキュメントは、SphinxというPython環境で動作するツールで作られています。PHP系なのに面白い!と思ったところ、Sphinx自体が便利なのであらゆるところに広がってるようですね。Windowsでドキュメント書くのにSphinx環境を作るのは、何が手軽…

S3バケットとフォルダのデーター同期

PHP SDK v2になって、(たぶん)新しく増えたS3の UploadSyncBuilder が便利。単純なフォルダ同期から、globしたファイルだけをアップしたり、ファイル名を変換しながらアップしたりできる。 AWS SDK for PHP公式 Syncing data with Amazon S3 uploadDirecto…

EMR上でHiveを使うときのチューニングメモ

AWS EMR(Elastic MapReduce)でHiveを使うときに使えそうなチューニング情報。そもそもMapReduceの仕組みと、Hiveが裏でやってくれる事を理解していないと、出来ないチューニングポイントの方が多いのですが、ここらにあるということだけを、メモしておきます…

aws-sdk-php 2.4.5リリース

SDK

先週でたと思ったら、もう次が! https://github.com/aws/aws-sdk-php/releases/tag/2.4.5 CHANGELOG見たら、機能追加だけなので、特にあわてる必要はありませんね。 https://github.com/aws/aws-sdk-php/blob/master/CHANGELOG.md Added support for replic…

ComposerでSDKをバージョンアップ

以前 AWS SDK for PHP 2 を Composer経由でセットアップ で、SDKをComposer経由でセットアップしました。先日、2.4.4がリリースされたので、composerを使ってアップデートを実施。コマンド一発で該当ライブラリだけをアップデートできるのはラクチンですねぇ…

GitHubでaws-sdk-phpをフォーク

ちょっと思い立って、aws-sdk-phpをフォークしてみました。GitHubのドキュメントにそって実施すれば、数ステップの簡単さ!最近の開発系サイトは、どこもドキュメントが分かりやすくて素敵です。 https://help.github.com/articles/fork-a-repo Contribute出…

aws-sdk-php 2.4.4リリース

ふとSDKのドキュメント見てたら、書式が変わったり、いくつか記述ミスが修正されてました。 http://docs.aws.amazon.com/aws-sdk-php-2/latest/ Guzzelフレームワーク用のArray?は、結構階層が深い事があるので、今の方が見やすい気がします。古いものがな…

EMR利用時のURI Prefix "s3:// " と "s3n://" の違い

EMRからS3へアクセスする時に、次の2種類のURI記述方法があります。 s3://hogehoge... s3n://hogehoge... ふとどうやって使い分けするんだっけ?と思ったので調べてみました(どこかで、s3n://が今後推奨されるという表記を見た気がしたのですが、次の情報を…

AWSコマンドラインツール:aws-cli

AWSの運用として、外せないのはブラウザベースのManagementConsole。まず最初はここからですし、ドキュメントも豊富ですしね。次の一手というとEclipseのAWS Management?などでしょうか?GUI系は便利なのですが、CUIでも使えるものが必要なのではということ…

AWS運用支援サービス:Cloudworks

Webブラウザで使うManagementConsole、大変多機能なのですが、ちょっと隙間を埋めてくれるサービスを発見。クラウドワークス社のCloudworksサービス。次のリンク先から登録して使えます。Freeプランなれば無料。日本の会社が提供してますので、UIはもちろん…

S3バケットから正規表現にマッチするファイル一覧を取得

S3バケット内のファイルを、正規表現にマッチしたものだけ取り出したいのですが、以前のSDKにはあったメソッドが、現在のv2にはなかったので、それっぽいものを作ってみました。 v2 に map_string( $pcre ) 次のコマンドで、イテレーターオブジェクトを取得…

SimpleDbのドメイン存在確認方法

タイトルの通りのメソッドがSDK for PHP v2に見つからなかったので、代案を考えた。というエントリー。S3だとS3Clientに doesBucketExist() があり、バケットの存在確認ができ、booleanで結果が返ってきます。 AWS SDK for PHP 2 : doesBucketExist() Simple…

AWS SDK for PHP 2 を Composer経由でセットアップ

PHPのライブラリ管理として有名なのは pear なのかと思います。ですが、AWS SDK for PHPでは、Composerの利用を推奨してましたので、こちらを利用してみました。 簡単な記述で、自身のプログラムとの依存関係が明確になるのが良いですね。依存するバージョン…

Amazon S3 stream wrapper で S3 操作時の注意点

S3を触っていて、これは便利と思った機能。「s3」というプロトコルが使えるようになり、ローカルのファイル操作と同じように、S3上のファイルを触れるようになります。触って、ちょとだけはまったのが次のポイント。※2013/08/13に修正・追記 S3のフォルダは …

curl の SSL証明書関連エラー対策 (cURL error code 60)

AWS SDK for php 1の1.6.2と2.4.2を一緒に使ったときに遭遇。v1のオブジェクトでだけ該当エラーがでて、v2のオブジェクトではエラーが出ない状態でした。 環境 Windows7(x64)のPHP 5.3.26 AWS SDK for PHP 2 (pear 使って用意) AWS SDK for PHP 1 (pearでは…

AWS SDK for PHP 1 自動設定ファイル探索

SDK for PHP v1には、設定ファイル(config.inc.php )を自動探索する仕組みがあるとのこと。 AWS SDK for PHPで"Failed to determine HOME directory after trying "sh: line 0: cd: /root: Permission denied"の対処法 v1.6.0から、次の定数で探索を停止で…

AWS SDK for PHP バージョン別ダウンロード

AWS SDK for PHP バージョン別ドキュメント で、違いを調べてみました。で、いざとなるとコードも必要です。コード管理はv1, v2共にGitなのでtag探せばあると思いますが、公開されてるパッケージがないか調べてみました。結果、stable版のみtgzパッケージが…

AWS SDK for PHP バージョン別ドキュメント

Amazonから提供されている、AWS SDK PHPは、現在2つのバージョンがあります(オリジナルとv2)。それぞれベースのフレームワークが異なるなど、全くの別物です。2013年7月現在では、v2のみがバージョンアップされてる状況なので、特に理由がなければ新しいバ…