久しぶりに書くBlog。今回はGDataAPIのリスクについて、実際に経験したトラブルをもとに考えてみる。
ゾッとする話の始まり
ちょっと前になるが、Andreiさんという方からGDataAPIに関する質問をいただいた。彼は、reflexworksで公開している非同期GData APIを利用してくれている方で、これをきっかけに情報交換させていただいている。
Hello, we discussed a few weeks ago about a problem regarding google docs api and google app engine timeout for requests taking more than 5 seconds.
First, I want to thank you for your response.
But these last few days it seamed that google started having more problems (besides internal error when requesting docs, unable to open some pdfs, or 404 on download link, etc), one of them was about searching documents with full-text queries (example: setFullTextQuery("search text here") and setFullTextQuery("\"search text here\"")
This pb has a very negative effect on my app, because it depends on it for proving some services.
I have posted the issue here http://www.google.com/support/forum/p/apps-apis/thread?tid=0c69762a67a02b28&hl=en with a few more details, but no relevant responses were given.
I don't know if it was a programmatic error from my app (i was certain that it was not), or a temporary gdata api problem, or major things are happening with google (docs) infrastructure.
At least an advice would be good...
Thank you.
彼いわく、GDataAPIの全文検索を利用したサービスを実際にリリースしたのはいいが、ある日を境に挙動が変わってしまい、””で括ることで完全一致検索ができなくなってしまったとのこと。これでは使い物にならないので何かいい方法があれば教えて欲しいとのことだった。困ったことにGoogleのForumに問い合わせても返事がないので、それで私にメールしてきたんだそうだ。(><;でもそんなん無理っすよ。
これまで使えていたものが突然使えなくなるというのは、私も経験したことがある。(ACLのSCOPEにドメイン名を付けられなくなる)
現在は直っている模様だが、当時はGoogleが直してくれるのを待つしかなく、いつ直るかわからなかったので、別の回避策をとった。しかたないので、そのことをお伝えしたのだが、Googleの遅々とした対応には大変お怒りのようだった。
サービスリリース後にAPIの挙動が変わるのは本当に困る。普通はテストした後でフレームワークやライブラリの変更はしないでしょ!? もし、そんなことをしたら袋叩きに合ってもおかしくない、というのが開発現場の常識である。
Googleはこのあたり、どんなふうに考えているのだろうか。
今年の4月に開催された、Google TechTalk Tokyo 2010 Springというイベントで実際にGoogleの方に質問できる機会があったので、思い切って質問してみた。
「GDataAPIの信頼性についてお聞きします。データの信頼性や可用性についてはそれほど心配していませんが、APIの下位互換性についてはとても心配しています。APIを突然変更されたら既存のアプリへの影響は大きいと思います。GDataAPIは今後も進化していくとは思いますが、APIの下位互換性の担保について、どう考えておられますか。」
これに対して以下のような回答をいただいた。
「APIは進化してどんどん新しくなっていくでしょう。下位互換性は重要ですが、なるべく影響が出ないように、大きな変更がある際には必ず告知します。また一定期間、旧APIも使えるようにするなど、移行期間を考慮してまいります。」
担当者の気持ちは伝わってきたが、保証のない話なので不安は拭えなかった。
恐れていたことが実際に起きた
今月(7月)になって、Googleドキュメントの更新ができなくなるという問題が発生した。POSTで新規の文書を作ることは可能だがPUTでそれを更新しようとすると、「Could not convert document.」となってエラーが返ってくる。
ISSUE 2061
また、私たちと同様の被害を被った方もおられるようだ。
現在、RainbowNoteとGoogleドキュメントの同期やインポート、画像の書き出しで不具合が発生しています。
これは、Googleドキュメントが採用した新しいドキュメントエディタで作成した文書に、外部アプリケーションとの連携で大きな不具合があるためで、現在、この問題に対して、Google側で対応中です。
・・・
なお、残念ながら、最初から新しいドキュメントエディタで作られたドキュメントは、古いエディタでの編集はできないようです。Google側の対応をお待ちください。
(Issue 2023については、Google Docsのチームは、”This is currently our number one priority” で対応しているとのことです)。
Rainbow Note - Googleドキュメントとの同期エラーについて
関連ISSUEを見ていると、Googleの対応が非常に稚拙だというような、酷いクレームも見受けられる。(敢えて訳しませんが)
Is there any status on this? It's been over a week that the new Google Document interface has had a number of issues exporting and updating documents. Perhaps someone should consider pulling the functionality until this is resolved?
This is a major issue that's affecting my customers workflows and many other products that also leverage Google Doc's. It's a real shame that Google does not open this functionality to developers FIRST as a beta BEFORE opening it to the whole world. This would help flush out issues like this quickly before customers experience issues and then start questiniong the stability/reliable of Google and the third-party products they are using.
This is also a disservice to Google since I've been telling my customers to switch back to the old Google Doc interface. I suspect many will question switching to the new interface until v2.0 editor (which is cool) has baked in for a while.
ISSUE 2166
We don't switch our customers from ver 2. We have stopped recommending Google Docs altogether.
Most of our new clients sign up to Zoho. Zoho is better because their apps work smoothly, they fix problems and they provide support.
Google Apps & Documents is just not professional. It still looks clumsy, and the back-end is buggy.
Google run it like it is still beta, but they are charging for it. They knew of these ver 2 export bugs in April, but they still went and launched the new features.
ISSUE 2166
さてどうするか
サービスを利用しているお客様がいる以上、責任や対応策について、お客様によく説明して了解を得ておく必要がある。Googleのサービスを利用する際には、上記のような問題があって、サービス停止を余儀なくする危険性があるということ、それから、実際に一定期間のサービス停止が起きたために被る損害について、実際に誰がそのリスクを取るかということまで詰めておく必要があるだろう。
Googleは当事者でありながら何のリスクを取らない。なんとも癪に障る話だが、GoogleはせめてAPIのスキーマを細かくバージョン管理して、各バージョンごとに少なくとも1年間は安全に使えるといったような提供の仕方をしてくれないだろうか。SLAを定めるのは結構だけれども、満たせなかったら損害分のリスクを取ってもらわないと困るし、利用料を割引しますぐらいの程度であれば意味がないと思う。App Engine for Businessが同じノリだったら本当にガッカリである。
0 件のコメント:
コメントを投稿