2011年10月31日月曜日

Google Cloud Storageのイントロダクション(その4)

クラウド環境で利用できるストレージである
Google Cloud Storageのイントロダクションドキュメントを翻訳してみます。

翻訳元はこちらです。
第1回はこちら。第2回はこちら。第3回はこちら

Discussion Groups - ディスカッショングループ

多くのコミュニティリソースがGoogle Cloud Storage向けに利用可能となっていて、私たちはこれらをあなた方と共有できることを喜ばしく思います。私たちはあなたがこれらのチャンネルに参加して知識や経験をGoogle Cloud Storageコミュニティに還元してくださることを望んでいます。

General discussions 一般的な話題についてのディスカッション
このディスカッショングループは技術的な問題に対する答えを発見し、あなたがより大きいGoogle Cloud Storage開発者コミュニティに新しいヒントとテクニックを提供する手助けとなるでしょう。
    ・グループへ参加する: gs-discussion
    ・メールでの申し込み:gs-discussion+subscribe@googlegroups.com

GSUtil discussion GSUtilディスカッション
このディスカッショングループは、Google Cloud Storage上のデータを管理するためのオープンソースのコマンドラインツールであるGSUtilに焦点を置いています。このフォーラムを通じてGSUtilについてのヒントとテクニックの共有を奨励しています。
    ・グループに参加する:gsutil-discuss
    ・メールでの申し込み:gsutil-discuss+subscribe@googlegroups.com

Announcements お知らせ
こちらの「通知専用」リストに登録すると、システムの停止、メンテナンス期間、その他のサービスの中断についての更新情報を受け取ることができます。新しい機能や、機能のアップデートについてもこちらのリストを通じてお知らせします。
    ・グループに参加する:gs-announce
    ・メールでの申し込み:gs-announce+subscribe@googlegroups.com

ディスカッショングループに投稿を送信する前に、以下をお試しください。
FAQをお読み下さい。頻繁に寄せられるGoogle Cloud Storageに関する質問はこのドキュメントに掲載されています。
・このページの上部にある検索エリアに一つ以上の検索語を入力してください。Google Codeのドキュメントの中から、またはブログ記事の中から関連する結果が返されます。
・グループのアーカイブの中から質問が既に投稿されていないかどうか探してみてください。
私たちは、ディスカッションフォーラムであなたをお待ちしております。

  インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/

2011年10月29日土曜日

Google Cloud Storageのイントロダクション(その3)

クラウド環境で利用できるストレージである
Google Cloud Storageのイントロダクションドキュメントを翻訳してみます。

翻訳元はこちらです。
第1回はこちら。第2回はこちら

Features & Capabilities - 特徴と機能

Google Cloud Storageは、データの保存、共有、効率的で信頼性の高い管理を可能にする幾つかの特徴と機能を提供します。キーとなる機能と特徴は、以下を含みます。

・大容量とスケーラビリティ
・強力なデータ一貫性
・OAuth 2.0による認証
・Cookieベースの認証されたブラウザからのダウンロード
・Google APIs Console プロジェクト
・共有のためのGoogleアカウントサポート
・REST API
・バケットロケーション

これらの特長および機能は、次の各項で説明します。

High Capacity and Scalability - 大容量とスケーラビリティ

Google Cloud Storageは、数テラバイトに及ぶサイズとなるオブジェクトをサポートします。Google Cloud Storageはアカウントごとに多数のバケットもサポートしています。

Strong Data Consistency 強いデータ一貫性

Google Cloud Storageは書き込み後読み取りの強力な一貫性を全てのアップロードと削除操作において提供します。言い換えると、オブジェクトのアップロードが成功すると、直ちにダウンロードしたり、削除したり、メタデータを取得したりすることができます。同様に、削除成功後直ちにオブジェクトへのアクセスを試みると、404 Not Foundステータスコードが結果として返されます。リストの操作は、インターネット上のどこからでも最終的に一貫しています。

可用性の観点からは、Google Cloud Storageへのアップロード操作はアトミックに行われます。オブジェクトをアップロードすると、そのオブジェクトはアップロードが完了するまでは利用不可となります。アップロードされたオブジェクトは破損状態や一部のみの状態になることはありません。オブジェクトは利用可能か利用不可のどちらかの状態になります。

より詳しくは、API overviewのConsistencyを参照してください。

OAuth 2.0 Authentication - OAuth 2.0認証

Google Cloud StorageはOAuth 2.0認証を使用し、APIと対話するための許可を行います。OAuth 2.0認証は、アプリケーションがあなたに代わって行動するために発行されたトークンに基づいた認証です。あなたのアプリケーションのためのOAuth 2.0認証をセットアップするには、OAuth 2.0 authentication and authorizationガイドを参照して、OAuth 2.0 authenticationのGoogle Cloud Storageへの適用を参照してください。

Authenticated Browser Downloads - 認証済みのブラウザによるダウンロード

Google Cloud Storageは、Googleアカウント所持者それぞれに対してブラウザベースで認証されたダウンロードを提供します。認証済みブラウザベースダウンロードは、最初にGoogle アカウントベースのアクセスレベルをオブジェクトに設定して、ユーザーにオブジェクトに合わせたスコープのURLを渡すことで提供できます。認証済みブラウザダウンロードのためのURLは、

https://sandbox.google.com/storage/bucket/object

詳しくは、AuthenticationのCookie-based Authenticationを参照してください。

Google APIs Console Projects - Google APIコンソールプロジェクト

Google Cloud Storageは、Google APIs コンソール内でサービスとして利用が可能で、プロジェクトメンバーの追加、課金設定、認証の管理、他のAPIとの連携が行えます。多くのプロジェクトを持つことが可能で、それぞれのプロジェクトにGoogle Cloud Storageインスタンスを持つことができます。


Google Account Support for Sharing - Googleアカウントによる共有サポート

Google Cloud StorageはACLをオブジェクトやバケットへのアクセスコントロールに使用します。ACLの設定によってオブジェクトやバケットを全世界またはGoogleグループ、Googleがホストするドメイン、特定のGoogleアカウント保持者で共有することができます。詳しくはGoogle Cloud Storageアクセスコントロールモデルの項、Access Controlを参照してください。

REST API

Google Cloud StorageはシンプルなRESTfulプログラミングインターフェイスを提供していますので、Google Cloud Storageにおけるデータの保存・共有・管理のために複雑なSOAPツールキットやRPCプログラミングに頼る必要はありません。その代わりに、PUT,GET,POST,HEAD,DELETEのような標準的なHTTPメソッドを使うことができます。

Bucket Locations - バケットのロケーション

Google Cloud Storageはバケットが地理上のどの場所に保存されているか特定する機能を提供します。バケットがヨーロッパかアメリカ国内のどちらに保存されているか特定することが可能です。詳しくはSpecifying Bucket Locationを参照してください。


 インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/

2011年10月28日金曜日

Google Cloud Storageのイントロダクション(その2)

クラウド環境で利用できるストレージである
Google Cloud Storageのイントロダクションドキュメントを翻訳してみます。

翻訳元はこちらです。
第1回はこちら


Google APIs Console - Google APIs コンソール

Google APIs Consoleは、多くのGoogle APIsの管理とアクティブ化、課金のような関係するセッティング、アクティブ化と非アクティブ化、認証、カスタムAPI機能の使用を行うグラフィカルインターフェイスです。

Google APIs Consoleはプロジェクトとアクティブ化されたそれぞれのGoogle APIやプロジェクトに沿ったサービスで攻勢されています。プロジェクトは一つ以上のアクティブなAPIを含むことができます。Google APIsをアクティブにしたり、課金設定を行ったり、その他の管理タスクを実行したりするには、プロジェクトをベースに行ってください。

例として、api_projectという名前の複数のアクティブなAPIを含むプロジェクトがあるとします。api_projectに対して課金を有効にすると、プロジェクト内の全てのAPIに対して課金が有効になります。同様に、api_projectにチームメンバーを追加すると、プロジェクト内の全てのAPIに(メンバーは)アクセスできるようになりますが、アクセスレベルはそれぞれのAPIごとに定義することができます。

詳しくは、Google APIs Consoleヘルプガイドを参照してください。

 インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/

2011年10月24日月曜日

Google Cloud Storageのイントロダクション

クラウド環境で利用できるストレージである
Google Cloud Storageのイントロダクションドキュメントを翻訳してみます。

翻訳元はこちらです。

Introduction (イントロダクション)

Google Cloud Storageは、Googleのクラウドにデータを保存・アクセスするための開発者向けの新しいサービスです。開発者にはGoogleのスケーラブルなストレージとネットワークインフラストラクチャだけでなく、強力な認証とデータ共有メカニズムに直接アクセスを可能とします。開発者は任意のサイズのオブジェクトを保存することが可能で、Google Cloud Storageの使用を基盤として、個人、グループ単位でデータへのアクセスを管理できます。

Google Cloud StorageはREST APIまたは以下を含む利用可能なGoogle Cloud Storage toolsを通してアクセス可能です。
Google Storage Manager - バケットやオブジェクトを管理する、ドラッグアンドドロップ機能を含むグラフィカルユーザーインターフェイス
GSUtil - Google Cloud Storageに対する基本および高度なタスクを取り扱うコマンドラインツール

Google Cloud Storageは、Google APIs consoleを通して起動できます。Google APIs consoleを利用したことがない場合、Google APIs consoleヘルプガイドを参照してください。

Contents 目次

Google APIs Console - Google APIs コンソール
Features & Capabilities 特徴と機能
Discussion Group ディスカッショングループ
Steps to Get Started 開始までのステップ

インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/

2011年10月22日土曜日

Google Cloud Storage

前回まで、Google Cloud SQLについてのブログ記事を翻訳してみましたが、
それとは別にクラウド上にオブジェクトを保存する
「Google Cloud Storage」というサービスがあります。

そのGoogle Cloud Storageはどのように使うのでしょう?
ドキュメントを読んでみます。


Google Cloud Storege (Googleクラウドストレージ)

Google Cloud Storageは、Googleのインフラストラクチャにデータを保存・アクセスするためのRESTfulなサービスです。このサービスはGoogleクラウドのパフォーマンスとスケーラビリティを高度なセキュリティおよび共有機能と組み合わせます。ハイライトとして以下を含みます:

速く、スケーラブルで、高い可用性を持つオブジェクト保存
・全てのデータは複数のデータセンターに複製されます。
・データの読み書きの一貫性
・数テラバイトに及ぶサイズのオブジェクトを利用可能で、アップロードおよびダウンロードのレジューム(中途再開)が行え、範囲を指定したGETが可能
・ドメインをスコープとしたネームスペース

簡単で、柔軟性に富んだ認証と共有
・OAuth 2.0による認証
・ウェブブラウザからの認証されたダウンロード
・個人、プロジェクト、グループの、それぞれのレベルでのアクセスコントロール

それに加えて、Google Cloud Storageはウェブベースのストレージ管理インターフェイスオープンソースのコマンドラインツールとライブラリ中途再開可能なアップロードのような高度な機能、App Engineとの統合国際化対応のストレージ機能などを提供します。従量制課金により、簡単に開始して、ニーズの増大に合わせて拡大することができます。

Google Cloud StorageはGoogle API Console上で開始することができます。更に詳しいことについては、イントロダクションをお読み下さい。

 最初のさわりだけなので、詳しいことについては今後翻訳を試みます。


インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/

2011年10月17日月曜日

Google Cloud SQLのリリースについてのブログ記事へのリンク

前回まで、
Google Cloud SQLのリリースについてのGoogle Code blogの記事を
翻訳してみましたが、
元記事へのリンクが無効(Bad Request)になっていました。

訂正を行うと共に、リンクアドレスを記載します。
元記事:
http://googlecode.blogspot.com/2011/10/google-cloud-storage-is-out-of-code.html

インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/

2011年10月15日土曜日

Google Cloud SQLプレビューお知らせのブログ(その3)

前々回の投稿から、
Google Cloud SQLプレビューについてのブログ記事の翻訳を試みています。

元記事はこちら。(10月17日、リンク先アドレスを訂正しました)
第1回はこちら。第2回はここ

このサービスはデータベースのインポートとエクスポート機能を含み、既存のMySQLデータベースをクラウドに移管してApp Engineと共に利用できます。
Cloud SQLは現在無料でご利用いただけますが、課金については開始の少なくとも30日前には発表します。このサービスはプレビュー期間中にも私達が思いつくままに働いて進化させ続けますが、分からないことがあればお知らせ下さい

インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/

2011年10月13日木曜日

Google Cloud SQLプレビューお知らせのブログ(その2)

前回の投稿から、
Google Cloud SQLプレビューについてのブログ記事の翻訳を試みています。

元記事はこちら。(10月17日、リンク先アドレスを訂正しました)
第1回はこちら

・メンテナンスや管理は不要 - 私達がデータベースを管理します。
・高い信頼性と可用性 - データは複数のデータセンターに同期的に複製されます。マシンやラック、データセンターの障害はエンドユーザーへの影響を最小限にするよう自動的に処理されます。
・お馴染みのMySQLデータベース環境をJDBCによるサポート(JavaベースのApp Engineアプリケーション向け)、DB-APIによるサポート(PythonベースのApp Engineアプリケーション向け)
・データベース管理用の総合ユーザーインターフェイス
・シンプルで強力なGoogle App Engineとの統合

インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/

2011年10月10日月曜日

Google Cloud SQLプレビューお知らせのブログ

前回の投稿で、
Google Cloud SQLプレビューについてのブログ記事へのリンクを
掲載しましたが、
今回からその翻訳を試みます。

元記事はこちら。(10月17日、リンク先アドレスを訂正しました)


Google Cloud SQL:Your database in the cloud
(Google Cloud SQL:あなたのデータベースをクラウドで)

App Engineで最も要望の多い機能の一つとして、伝統的なデータベース駆動アプリケーション開発のシンプルな方法が挙げられます。フィードバックへの回答として、私たちはGoogle Cloud SQLの限定プレビュー(limited preview)をお知らせすることができることを喜んでいます。App Engineアプリケーションに、完全にクラウド環境で管理される慣れ親しんだリレーショナルデータベースを利用することを選択できます。これはアプリケーションやサービスの開発に集中して、管理の雑用や保守、リレーショナルデータベースの保守の仕事から解放されることを可能にします。Google Cloud SQLはApp Engine コミュニティーに多くのメリットをもたらします。


インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/

2011年10月7日金曜日

Google Cloud SQLがプレビューに

Google App Engineでデータを保存・取り出しを行うには、
Datastoreを利用する必要があります。

APIとしては、
・JPA
・JDO
・低レベルAPI
を利用します。

JPAやJDOを利用すると、App Engineのインスタンスがスピンアップするたびに
長い待ち時間が発生するという欠点があり、
低レベルAPIは既存のSQLとは全く違います。

そこで、新たにGoogle Cloud SQLというAPIが登場して、
JDBC(Java向け)、DB-API(Python向け)によってアクセスできる
データベースのインターフェイスを提供するようです。

Google Codeブログでの紹介はこちら

インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/

2011年10月3日月曜日

Google App Engine for Java の非同期データストアAPIの呼び出し(その6)

Google App Engineのデータストアは、
非同期に呼び出して結果を取得することも出来ます。

英語版ドキュメントはこちら
その1,その2,その3,その4,その5も参照してみてください。


When To Use Async Datastore Calls 非同期データストア呼び出しの使用タイミング

DatastoreServiceインターフェイスによって提示される操作は同期呼び出しをします。例えば、コードは、DatastoreService.get()を呼び出すした時にデータストアへのコールが完了するまでブロックします。アプリケーションが行う必要のある1つだけの動作がHTML内でget()の結果をレンダリングすることの場合、呼び出しが完了するまでブロックすることは完全に合理的なことです。
しかしながら、アプリケーションがget()の結果にプラスしてクエリの結果をレスポンスにレンダリングする場合、またはget()とクエリがデータ依存関係を持たない場合、get()が完了するまで待ってからクエリを開始するのは時間の無駄です。ここでは、非同期APIを用いて改善されたコードの例を示します。

DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
Key empKey = KeyFactory.createKey("Employee", "Max");

// Read employee data from the Datastore
Entity employee = datastore.get(empKey); // Blocking for no good reason!

// Fetch payment history
Query query = new Query("PaymentHistory");
PreparedQuery pq = datastore.prepare(query);
List<Entity> result = pq.asList(FetchOptions.Builder.withLimit(10));
renderHtml(employee, result);

get()が完了するまで待つかわりに、非同期にメソッド呼び出しを実行するためにAsyncDatastoreServiceのインスタンスを使用します。

AsyncDatastoreService datastore = DatastoreServiceFactory.getAsyncDatastoreService();
Key empKey = KeyFactory.createKey("Employee", "Max");

// Read employee data from the Datastore
Future<Entity> employeeFuture = datastore.get(empKey); // Returns immediately!

// Fetch payment history for the employee
Query query = new Query("PaymentHistory", empKey);
PreparedQuery pq = datastore.prepare(query);

// Run the query while the employee is being fetched
List<Entity> result = pq.asList(FetchOptions.Builder.withLimit(10));
// Implicitly performs query asynchronously
Entity employee = employeeFuture.get(); // Blocking!
renderHtml(employee, result); 

このコードの同期バージョンと非同期バージョンは、同様な量のCPUを使用します(結局のところ、どちらも同じ計算量を示します)が、非同期バージョンは平行動作のために2つのデータストア操作を行うので、非同期バージョンの方が待ち時間がより少なくなります。一般的に、データ依存関係のない複数のデータストア操作を行う必要がある場合は、AsyncDatastoreServiceは大幅に待ち時間を改善します。

インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/

2011年10月2日日曜日

Google App Engine for Java の非同期データストアAPIの呼び出し(その5)

Google App Engineのデータストアは、
非同期に呼び出して結果を取得することも出来ます。

英語版ドキュメントはこちら
その1,その2,その3,その4も参照してみてください。



Async Queries (非同期クエリ)

現時点では、明示的にクエリ向けの非同期APIを提示してはいません。しかしながら、PreparedQuery.asIterable(),PreparedQuery.asIterator(),PreparedQuery.asList(FetchOptions fetchOptions)メソッドを呼び出すと、DatastoreServiceまたはAsyncDatastoreServiceのどちらも、直ちに値を返し、非同期に結果を先取りします。これによってアプリケーションの動作がクエリの結果が取得される間に平行して行われます。

// ...

Query q1 = new Query("Salesperson");
q1.addFilter("dateOfHire", FilterOperator.LESS_THAN, oneMonthAgo);

// Returns instantly, query is executing in the background.
Iterable recentHires = datastore.prepare(q1).asIterable();

Query q2 = new Query("Customer");
q2.addFilter("lastContact", FilterOperator.GREATER_THAN, oneYearAgo);

// Also returns instantly, query is executing in the background.
Iterable needsFollowup = datastore.prepare(q2).asIterable();

schedulePhoneCall(recentHires, needsFollowUp);



インストール不要・無料のKaede翻訳ツール:
http://kaedetrans.appspot.com/