SQLのようにWebを操作するYahoo Query Language(YQL)がInsert/Update/Deleteをサポート

2009年7月10日

米ヤフーが提供するサービスのYahoo! Query Language(YQL)は、まるでSQLのようにWebを検索できるAPIです。例えば、Flickrから猫の写真を取得したいときには、次のようなYQLになります。

SELECT * FROM flickr.photos.search WHERE text="cat"

このSQL文を次のようにしてYQLのAPIへ渡します。

http://query.yahooapis.com/v1/public/yql?q=SELECT * FROM flickr.photos.search WHERE text="Cat"

結果はJSONやXML形式で受け取ることができます。いわばYahoo!の検索エンジンをSQLっぽく操作できる方法だといえるでしょう。

YQLでWebに対してInsertする

このYQLがついにInsert/Update/Deleteをサポートし、Webへの追加、更新、削除ができるようになったと、ReadWriteWebの記事「All the Web's a Database: Yahoo Extends YQL With Insert, Update, Delete」が伝えています。

以下のサンプルは、上記の記事とYQLのマニュアルから引用したものです。例えば、Twitterにメッセージを追加するには、次のようなYQL文になります。

INSERT INTO twitter.status (status,username,password) VALUES ("Playing with INSERT, UPDATE and DELETE in YQL", "twitterusername","twitterpassword")

TwitterのAPIについては、あらかじめXML文書で定義しておき、そのうえで上記のYQLを実行すると、Twitterへのメッセージが追加されます。

bit.lyを用いてURLを圧縮するYQL文は次のようになります。

INSERT INTO bitly.shorten (login, apiKey, longUrl) VALUES ('USERNAME', 'API_KEY', 'http://yahoo.com')

UPDATE文のサンプルも見てみましょう。下記のサンプルは、Yahoo! Profilesの自分のステータスを変更します。

UPDATE social.profile.status SET status="Using YQL UPDATE" WHERE guid=me

DELETE文のサンプルは、Twitterの発言を削除する例です。

DELETE FROM twittertable WHERE tweetid="12345" and username="twitter_username" and password="twitter_password"

上記のtwittertableは、あらかじめXMLで定義されたTwitterのAPIやデータ構造の定義を指す名前です。

どのYQLをみても、まるでSQLのようです。しかしYQLはどのような用途に使えるのでしょうか?

一人で小規模なマッシュアップをするのであれば、APIを直接呼び出すようなプログラミングのほうが手っ取り早い気もします。しかしある程度のチームで、しかもスキルにばらつきがあり、それらがさまざまなマッシュアップを実現する開発を行う場合には有用かもしれません。YQLの狙いは、そうした大規模なマッシュアップを促進することにあるのでしょうか。

関連記事 on Publickey

参考記事 on the Web

あわせて読みたい

クラウド Yahoo!




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本