グーグルは同社のクラウドでリレーショナルデータベース機能を利用できるサービス「Google Cloud SQL」を公開しました。Google Labsの扱いで、限定プレビューとなっています。 グーグルはGoogle Cloud SQLを次のように紹介しています。 By offering the capabilities of a MySQL database, the service enables you to easily move your data, applications, and services into and out of the cloud. (略) To ensure that your critical applications and services are always running, Google Cloud SQL replicates data to
この記事は http://code.google.com/appengine/articles/managing-resources.html の日本語訳です はじめに App Engine の 課金体系変更 の一環として、アプリケーションの利用レポートに含まれるリソースを変更しました。CPU Hours をなくし、ストレージ容量、帯域に加えて、利用されたインスタンス時間(Frontend、Backend)と、API 呼び出しの回数を元に計算するシステムに移行します。より詳しい情報については、 FAQ をご覧ください。(FAQ の日本語版 もあります。) 新しい課金体系が有効になる前に、我々は課金額の比較機能をリリースして、新しい課金体系でどのように課金額が変わるか確認できるようにしました。つまり、新しい課金額が有効になる前にアプリケーションを最適化して、その結果どのように新しい課金額が変
生まれ変わった「Days of Liris」。プログラミングのこと、Pythonのこと、気になったソフトウェアのこと、身の回りのこと、いろんなこと。など Google App EngineでもDjango使っている人が多そうな気がしますが、僕はDjangoはよく分かりません。Djangoの本は買ったりしましたが1ページも読んでません。Pythonでは普段は大体Flaskを使っています。これぐらいの規模のフレームワークが僕にはしっくり来ます。それで、GAEでFlaskを使って開発しようとしたときのメモです。 はやりはbuildbotを使って環境を構築するらしいので、それにならいます。「Flask on Google App Engine(buildbot編)」を参考に、というか、そのまんま作業します。コマンドプロンプトで作業プロンプトでプロジェクトのディレクトリに移動して次のコマンドを実行し
kay-frameworkの勉強会である「Kay Framework Dev Lounge」に参加予定なので、事前に少し動かしておこうと思った。OSはwindows。 ちなみにkay-frameworkとは、Google App Engine(python)上で動作するフレームワーク。 では早速インストール。 kay-frameworkはmercurialというバージョン管理システムでソースを管理しているので、mercurialを以下のurlからダウンロードする。 http://mercurial.selenic.com/ windows版だとインストーラがダウンロードされるので、実行しインストールする。 次はpydevでmercurialのプラグインをインストールする。 pydevの「メニュー」→「ヘルプ」→「新規ソフトウェアのインストール」で以下のurlを追加し、プラグインをイン
.app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads
appengine-deferred を作成しました。 https://github.com/vvakame/appengine-deferred DeferredTask について appengineの1.4.3からDeferredTaskという、RunnableとSerializableのサブタイプなものが追加されました。 これは、DeferredTaskをimplementしたクラスをTaskOptionのpayloadとして渡してTQを起動すると、なんかまぁ /_ah/queue/__deferred__ だかのTQとして起動される、みたいなControllerタイプではない起動の仕方のTQです。多分。 作ったもの 特定のメソッドに @Deferred をつけておくと、例外発生時に自動的にTQでの実行に切り替えてくれるライブラリを作りました。 注意事項がいくつかあるのですが、まぁ後
Google App Engineで大量データを処理する場合、特別な配慮が必要になります。処理時間の制限など、独特の制約に引っ掛かる恐れがあるからです。 大量データを扱うケースとして、テーブルのスキーマ変更、検索結果のダウンロードなど、データの一括処理という三つについて、それぞれの設計ノウハウを解説します。 スキーマのバージョンをフィールドに持つ 一つ目の設計ノウハウは、テーブルのスキーマを変更する際に効果があるものです。 稼働中のシステムにおいて、機能を追加・変更する際、テーブルのスキーマ変更が必要になる場合があります。スキーマの変更に備えて、Google App Engineでは、RDBベースの場合とは違った設計が必要になります。「スキーマのバージョンをフィールドに持つ」というものです。 Datastoreはそもそも、同じテーブル内で、異なるスキーマのレコードが混在していてもかまわない
Google App Engineを使い始めた人がまず悩むのが、独自の分散データベースサービスである「Datastore」の使い方だと思います。「Datastoreを制するものがGoogle App Engineを制する」とまでいわれるほどです。 よく「制約がきつい」といわれるDatastoreですが、その検索速度を上げるためのスキーマ設計に関する設計ノウハウを紹介しましょう。データの非正規化と、テーブルのキーの選び方がポイントになります。 なおDatastoreでは、RDBとは異なる用語を使います。テーブルは「カインド」、レコードは「エンティティー」、フィールド(カラム)は「プロパティー」などと呼びます。ただし本連載では分かりやすさのため、RDBの用語に置き換えて説明します。 四つの方法で非正規化する Google App EngineのDatastoreに関しては、よく「必要であれば非
クラウドコンピューティングサービスは、従来にない拡張性を持ち、好きなときに好きなだけのリソースを使えるシステム基盤を提供するものです。しかし、その特性を生かすには、クラウド事業者ごとに異なる設計のルールを守らなければなりません。 そこで本連載は、米Googleのサービス「Google App Engine」に焦点を当て、その「デザインパターン」について解説をします。ここでは、クラウドサービスの特性を生かしたり、制約を回避したりするための設計ノウハウをデザインパターンと呼んでいます。 今回解説する設計ノウハウを「デザインパターン」と呼ぶことに、違和感を持つ読者もいるかもしれません。「これこそクラウド設計のデザインパターンだ」と言えるものは、今後さまざまな知見が集まって確立していくのだと思います。現在はその知見が少しずつたまってきている段階でしょう。今回の連載が、そうした知見の一つになってほし
App Engineでテキスト部分一致検索を紹介してみようと思います。 とりあえず新しい発見があったので、あまり効率的でない「接尾辞の列挙」という方法で実現してみます。 なお、サンプルコードは全てSlim3 Datastoreとデータストア低レベルAPIを利用して書かれています。 今回のエントリの内容は開発サーバ(1.2.6)で正しく動かないようです。試してみる方は、デプロイすることをお勧めします。 前方一致検索 App Engineのデータストア上で検索を行う場合、インデックスの「レンジスキャン」という方法で目的のエンティティが探し出されます。 これは、データストア上にソートされたインデックスエントリの開始位置と終了位置を指定して、その範囲全体を抜き出すイメージです。 これをうまく利用すると、テキストの「前方一致検索」が実現できます。 テキストはUnicodeの辞書式順序でソートされてい
50年の経験を持つアイネットが提供 ユーザー企業の使いやすさを第一に考えた ワンストップで使えるマネージドクラウド サービスを止めない! サイバーエージェントに聞く高可用性の実現 そこにピュア・ストレージが選ばれた理由 クラウド導入が進まない本当の課題 ITベンダーだからこそ知っている クラウドに二の足を踏む企業のボトルネック 最新ストレージで変わるIT運用 仮想化テクノロジーとFlashArrayの組合せで 運用負荷軽減と高性能化を実現したDMM サステナビリティの今と未来 企業戦略としてのサスティナビリティ推進 世界の通信インフラを支えるコルトの取組み すぐに実践できる仕事効率アップ術 驚きの効果をもたらす外付けディスプレイ なんと最大50%の業務効率アップも! Kubernetes活用の最適解とは? 今、注目のコンテナを活用した柔軟なIT基盤 運用、管理の課題を解決しメリットを最大化
というわけで、本エントリーは、google app engine javaで形態素解析が出来るオープンソースを使ってみたという内容。 Igoとは Javaで実装された形態素解析器。→ Common Lisp版 辞書フォーマット及び解析結果は、ほぼMeCab互換。 単機能。 Javaの形態素解析器としては比較的高速。 スレッドセーフ。 Igo GAE は、GAE対応版。sileさんが対応させた様である。 感想 とても簡単に形態素解析が実現できた!便利だと思った! 導入も手順さえ分かっていれば、すぐに利用することも出来る!(あまり理解できておらず、つまづきました^^;) yahooAPIで、形態素解析が提供されているが、制限がかかっているので、 Igoは気兼ねなく使える。 (yahooの制限⇒24時間以内で1つのアプリケーションIDにつき50000件のリクエスト,1リクエストの最大サイズを10
目標 スクレイピングして必要な情報を取ってくる スクレイピング対象の更新に合わせて、起動する スクレイピングした情報をまとめて、Twitterにポストする 実装 スクレイピング XPathなどを使ってクールにスクレイピングを決めようと思っていたが、壊れたHTMLも読めるようなちょうどいいライブラリが見つからなかったので、jericho html parserを今回は使った。 HTML以外にもPHPが読めたりと多機能なパーサーだが、XPathが使えない。 ここからダウンロードして、WEB-INF/libに配置した。 final Source source = new Source( new URL("http://google.com/") ); Element el = source.getElementById("ghead") .getAllElements(HTMLElementNa
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く