Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

オープンセミナー2012@香川 GAE/Goで限界に挑戦してみた

926 views

Published on

2012/07/14 オープンセミナー2012@香川
ライトニングトーク
GAE/Goで限界に挑戦してみた。

  • Be the first to comment

オープンセミナー2012@香川 GAE/Goで限界に挑戦してみた

  1. 1. GAE/GOで限界に 挑戦してみたオープンセミナー2012@香川 ライトニングトーク 2012/7/14
  2. 2. 自己紹介ハンドル:ちいといつ所属?:GDG神戸のあたりでごにょごにょ属性:制御系よりのプログラマー 最近はAndroid …… かりません orzTwitter : titoi2ブログ:http:/ /barsoom.seesaa.net/
  3. 3. 本日のお題「GAE/Goで限界に挑戦してみた」GAEとは?google app engine の略,googleの提供するクラウドサービス
  4. 4. GAE/GOとはGAE には,Python, Java, Go の三つの言語用SDKが提供されている。GAE/Go はもちろんGo言語のこと。みなさんも大好きですよねGo言語。
  5. 5. GAE各言語比較 言語 実行速度 ライブラリ 情報Python × ⃝ ⃝ Java ⃝ ◎ ◎ Go ◎ △ ×
  6. 6. 一目瞭然GAE は Go を選ぶしか無いですよね?
  7. 7. GAE/GOの事例GAE/Goなんて実際に使われているのか?僕が使ってます。(ここでどや顔)
  8. 8. GAE/GOの事例Android用の青空文庫ビューアを作成。「A・文庫」https://play.google.com/store/apps/details?id=jp.aboutsoft.android.bunkoreader青空文庫の書籍データベースをクラウドに構築。
  9. 9. システム クラウド 青空文庫サーバ 書籍データベース データベースはほぼ毎日更新書籍データベース 取得 GAE/Go 作品ダウンロード 作品検索Android Android Android端末 端末 端末A・文庫 A・文庫 A・文庫
  10. 10. 実際の検索画面著者検索画面 書籍一覧画面
  11. 11. 青空文庫とは青空文庫とは著作権の切れた文学作品などを電子化して公開しているインターネット図書館。現在,約1万2千作品ほど。来年は吉川英治も公開される予定。
  12. 12. GAEの問題点GAEは有料のクラウドサービス。ですが,ある程度まで無料で使える。しかし,無料で使えるリソースが少なすぎる。
  13. 13. GAEの問題点特に,データベースへの読み書き操作が一日にそれぞれ5万回まで。
  14. 14. 5万回も書けるやん?書籍情報のレコードtype EntityBooks struct { 15カラムのレ Id string // 作品ID Title Yomi string // 作品名 string // 作品名読み コードが二千件 Subtitle string // 副題 Subtitle_yomi string // 副題読み Type_characters_doing string // 文字遣い種別 も書けませんで Yomi_order string // ソート用読み Original_title File_last_update string // 原題 string // テキストファイル最終更新日 した。orz Text_encoding string // テキストファイル符号化方式 Text_character_set string // テキストファイル文字集合 File_url string // テキストファイルURL Release_date string // 公開日 Author_id string // 著者ID Author_name string // 著者名}
  15. 15. あかんやん一日に二千件しか書けなかったら,青空文庫の1万2千件登録するだけで6日はかかる。
  16. 16. ちょっと調べてみた・カラム数が多いせい?・どうやらレコードのカラム数が多いと,操作数の消費が増えるらしい。
  17. 17. そこで無料の5万回で,どんなけ書けるのか調べてみた。
  18. 18. 調査方法・カラム数が異なる数種類のレコードを用意。・GAE/Goの無料枠内で何レコード書けるか調査。・書けたレコード数とかかった時間を計測。
  19. 19. 調査内容・文字列カラム数が1,2,4,8個の4種類のレコードを用意。データサイズにも影響されるかも?・ケース1:各文字列カラムに”あ” 1文字をセット・ケース2:各文字列カラムに”あ” 500文字をセット・実行はbackends のB2で行う。
  20. 20. 調査結果カラム数 文字列長 レコード 時間 1 1 12742 (秒) 数 547 1 500 13124 555 2 1 8638 393 2 500 8515 398 4 1 5199 232 4 500 5082 237 8 1 3218 131 8 500 3107 132
  21. 21. 結論・カラム数が増えると,5万操作で書けるレコード数は減っていく。・文字列の長さ1と500では差は無いようだ。
  22. 22. カラム数は減らそう書籍情報のレコードtype EntityBooks struct { type EntityBooks struct { Id string // 作品ID Yomi_order string // ソート用読み Title string // 作品名 Info string // 書籍情報 Yomi string // 作品名読み } Subtitle string // 副題 Subtitle_yomi string // 副題読み Type_characters_doing string // 文字遣い種別 Yomi_order string // ソート用読み 二日で書き込めた Original_title string // 原題 いえいι(`ロ´)ノ File_last_update string // テキストファイル最終更新日 Text_encoding string // テキストファイル符号化方式 Text_character_set string // テキストファイル文字集合 File_url string // テキストファイルURL Release_date string // 公開日 Author_id string // 著者ID Author_name string // 著者名}

×