GAE開発の落とし穴
Googleのクラウド環境をつかったGoogle App Engineによる開発するにあたり、初めての試みで苦悩する開発者達の経験をもとに、各開発フェーズにあわせて問題点やどう解決したかをご紹介します
ブックマークされました!
ブックマークがエラーになりました。もう一度お願いします。
作者 Carlos Armas , 翻訳者 鰈崎 義之 - CSKシステムズ 投稿日 2009年12月23日
Amazon は最近 Amazon Relational Database Service (RDS) という名前の新しい MySQL データベース提供を Amazon Web Services (AWS) プラットフォームに追加した。それはちょうど従来の MySQL インストレーションのように動作する。RDS が登場する以前は、顧客には AWS でデータベースサービスを実現するための二つの選択肢があった。
SimpleDB は、本格的な Relational Database Management System (RDBMS) の洗練度に欠けているシンプルなデータストレージであるが、その一方でスケーラブルな Key-Value ストレージを提供している。AWS で顧客が提供しているデータベースサービスは、従来のデータセンタ環境とあまり違いはない。顧客のスタッフは、構成からパフォーマンスチューニングまでのデータベースアプリケーション管理、キャパシティ管理、バージョン更新、パッチの適用、データバックアップを担当している。従来の MySQL データベースのセットアップで使われている同じツールを使ってデータベースと対話することが可能である。
Amazon RDS は、顧客のスタッフを多くの MySQL 保守作業タスクから開放する。それは、自動によるデータベースコンピューティング資源のスケーラビリティとパフォーマンス監視から始める。さらに、データベースソフトウェアは、顧客により保存期間を定義できるデータバックアップと同様に、プロバイダによって定期的にパッチが適用される。スケーラビリティは、AWS が"インスタンスクラス"と呼んでいるもので定義し、5 段階ある。控えめな 1 つのバーチャル CPU コアと 1.7 ギガバイトのメモリ、"Small DB Instance" と呼ばれる、からそれは始まり、"Quadruple Extra Large DB Instance" 68 ギガバイトのメモリと 8 仮想 CPU コアまである。アクティブなデータベースデータで占有されたスペースの 100% まで、バックアップストレージは無料となる。追加のバックアップストレージは有償で提供され、データはインスタンスがホストされている場所と異なる Availability Zone に保存される。これは、従来のデータ安全モデルで良く知られたオフサイトでのデータ保護の考え方と同等のものである。
サービスの利点は、柔軟性の面でコストがかかる。AWS で定義されている週に 4 時間の保守時間帯という弱点がある。保守時間帯は、データのバックアップだけでなく、アプリケーション ソフトウェアへのパッチの適用にも使われる。顧客は、パッチ適用の処理を対象外にすることができない。けれども、顧客は、週の内いつ保守時間帯が発生するかを指定することができる。データベースインスタンスは、保守時間帯内の一定の期間オフラインにされる。Amazon は、"パッチ適用は、あなたの保守時間帯のわずかな時間よりもめったに必要としないでしょう。まれにしか発生しませんし、セキュリティもしくは耐久性のパッチしか適用しません" と述べる。
これは、このようなタスクによるインスタンスがオフラインになる週次のイベントに対して、顧客は想定し計画しておくべきであるということを意味する。プロバイダは 4 時間の時間帯の全体はほとんど使われることがないと述べているが、週次 4 時間のインスタンス停止という最悪のシナリオを顧客は想定すべきである。比較的短い期間データベースインスタンスが利用できないことを許容できる顧客にとって、週の中で可能な限り最も影響の少ない時間でのスケジュールされた停止時間は、受け入れられる妥協案であろう。いくつかの顧客は上記のような選択肢は無い。彼らは、週次の保守時間帯でさえ、24 時間 365 日のサービス可用性を保証する必要がある。従来のデータベース配置では、データベースレプリケーション技術が一般的に高可用性のために使われる。RDS 内でレプリケーションを使用することができ、使用する顧客は異なるデータベースインスタンスに異なる保守時間帯を指定できるのか? 例えば、以下のように動作させることは可能だろうか?
今のところ、明確な回答はない。RDS サービスの詳細ページの "New features coming soon" 節で Amazon は、データレプリケーションの可用性の選択肢を見込んでいる。
高可用性の提供 — Amazon RDS が追加料金無しで提供している、自動バックアップを越えた更なるの耐障害性を求めている開発者とビジネスに対して高可用性を提供します。高可用性の提供で、開発者とビジネスは、一つの場所での障害から保護するために、容易に高い費用対効果で複数の Availability Zone (AZ の) に同期してレプリケーションされた DB インスタンスを供給することができます。
費用はかかるが、近い将来、複数の Availability Zone 経由で可用性に取り組むこともできるようだ。しかし、マスタ-スレーブやマスタ-マスタモデルのような、可用性に取り組む従来の技術は、現時点で役立てるために利用することできない。
【豆蔵】大好評のため、Jenkins講座を追加開催致します!Jenkins作者の川口氏が講師です。
世界の先進エンジニアが集結 - QCon TOKYO 2012 早期割引実施中!
Googleのクラウド環境をつかったGoogle App Engineによる開発するにあたり、初めての試みで苦悩する開発者達の経験をもとに、各開発フェーズにあわせて問題点やどう解決したかをご紹介します
去る1月12日、定理証明支援系ツールCoqの初心者向けチュートリアルが開催さ れた(http://kokucheese.com/event/index/23667/)。今後も2月2日 (http://kokucheese.com/event/index/23744/)、2月9日、2月16日と引き続き開 催されていく予定である。本記事では、開催の様子をレポートする。
Neal Gafter氏はOracleによるJava買収の影響に関する議論、Javaにセグメンテッドスタックやメタオブジェクトプロトコルを追加することについての主張、そしてJavaとC#との比較について話をしてくれた。
GoogleはVMをともなう新しい言語であり、JSコンパイラでもあるDartをプレビューした。 InfoQはDartのアプリの構築に貢献する文法の裏側を探った:スナップショット、Isolate、モジュール方式
本記事ではCSPベースの「マルチドメイン・モデル検査ツール」である、PAT(Process Analysis Toolkit)について紹介する。モデル検査は、形式手法(Formal Method)という方法論を基礎とする技術であり、複雑さが増大しながらも安全性を求められる、現在のソフトウェア開発の状況に対する処方箋の1つとして注目されている手法である。
前回まで、Jenkinsの幾つかの側面に注目して解説をしてきました。シリーズ最後の今回は、Jenkinsをサービスとして使う方法を紹介します。
Alloyは、MITにて開発された仕様記述言語であり、ツールによる自動解析を使い、インクリメンタルに形式仕様が書けることが特長である。筆者らはAlloy開発者による、Alloyを使った形式手法入門書を翻訳、今夏にオーム社より刊行した。本記事では、Alloyの簡単な概要と、翻訳書『抽象によるソフトウェア設計』(「Alloy本」)を紹介する。
スマートフォンを中心としたマルチデバイスにおけるタッチユーザーインターフェイスへの対応は、既に必須の項目となりつつある。本記事では、Windows デバイスにおける UX のベースとなっている「メトロ」というデザイン言語を掘り下げながら、既存環境を意識しつつもどのようにタッチユーザーインターフェイス開発に取り組んでいくべきであるかについて解説していく。
No comments
スレッド表示 返信