2012年4月4日水曜日

ニフティクラウドストレージを使ってみた

そもそもクラウドストレージって何なの?
っていうの(自分なりに)簡単に説明すると

API利用して容量無限無限のデータ空間にデータを置いたり、参照したり
参照権限などを変更できるもの

って感じです。
で今回はニフティクラウドさんのクラウドストレージサービスを使ってみました。
必要なのはニフティクラウド上で使用できるAPIの認証キー。
認証キーはコントロールパネルの「API認証」から取得できます
AWSのS3もこんな感じで使えるのかなーw
S3も機会があれば触っておこう
いかコマンドレベルで。
参考になれば。

wget http://cloud.nifty.com/api/storage/NiftyCloudStorage-SDK-CLI.zip
unzip NiftyCloudStorage-SDK-CLI.zip
ls -ltr
cd NiftyCloudStorage-SDK-CLI
emacs -nw credentials.properties
chmod 744 ncs_cli.sh
./ncs_cli.sh ls
./ncs_cli.sh --acl-private mb ncss://bucket001
./ncs_cli.sh --acl-private mb ncss://bucket001
./ncs_cli.sh del ncs_cli.sh ncss://bucket001/ncs_cli.sh
./ncs_cli.sh

サンプル的にはこれくらいですが、やっていて気になったのは
どうやら既に作成誰かが作成した同一名のオブジェクトは
作成できないみたいです(たぶん)。
あと公式でも以下のようなサンプルサイトを公開しているみたいなので
利用すること自体は本当に簡単ですね
http://cloud.nifty.com/help/storage/howto.htm
今回はCLIを使ってみましたが、SDK for Javaもあるので、
Javaからも操作できるようなので、非常に応用はききそうです。

【追記】
使っていて設定を入れ込んだほうがよさげなものがあったので、一応メモしておきます

●バケット内のオブジェクトの「数」を知る方法がないのでバケット名でgrepしてカウントする必要がある
例)./ncs_cli.sh ls ncss://log-batch-bucket | grep " ncss://bucket001/" | wc -l

●ログの出力がデフォルトだとDEBUGレベルになっており、ファイルをputするときにファイルの内容をDEBUG文で出力してしまうためログレベルを変更したほうがいい感じの標準出力になる
例)log4j.logger.org.apache.http.wire=INFO
(cli/log4j.propertiesを編集)

●バケット配下のオブジェクトが1000を超えた場合は「max-keys 」オプションを指定しないと1000件以上のオブジェクトを取得できない
例) ./ncs_cli.sh ls ncss://log-batch-bucket max-keys=10000

●オブジェクト一覧を取得するときにprefixが使用できる
例) ./ncs_cli.sh ls ncss://log-batch-bucket prefix=log
「log」ではじめるオブジェクトを全部取得する

0 件のコメント:

コメントを投稿