東京大学情報基盤センター 学術情報研究部門 助教 清田 陽司 (兼 株式会社リッテル 上席研究員)

Slides:



Advertisements
Similar presentations
Integrated Personal Page C05823 森本万里子 C05829 西山礼恵 C05899 高木華子.
Advertisements

Web アプリケーション開発 ~図書館管理システム~ 北海道情報大学 情報メディア学 部 情報メディア学科 新井山ゼミ 高橋 隼.
「図書管理」のための Webアプリケーション開発 -Apache/Tomcat/MySQL/Java on Windows XP-
Curlの特徴.
ストリーミング配信 惑星物理学研究室 修士2年 土屋 貴志.
WWW のおはなし 神戸大学理学部地球惑星科学科 4 回生 佐伯 拓郎 (地球および惑星大気科学研究室) 藤田 哲也 (宇宙物理学研究室)
4.ユーザー登録マニュアル              Version 年6月10日 国立情報学研究所.
神戸大学理学部地球惑星科学科 4回生 柏本 光司
情報基礎A 情報科学研究科 徳山 豪.
The Perl Conference Japan ’98 朝日奈アンテナによる コンテンツ情報の取得と利用
Webサービスに関する基本用語 Masatoshi Ohishi / NAOJ & Sokendai
Webアプリケーションの 通信メカニズム WEBアプリ研究プロジェクト 第2回.
JPAを利用した RESTful Webサービスの開発
第2章 ネットサービスとその仕組み(前編) [近代科学社刊]
情報処理基礎 2006年 6月 1日.
名古屋大学大学院人間情報学研究科 物質生命情報学専攻 情報処理論講座 原 崇
背景 我々の研究室で開発しているJavaプログラム解析フレ ームワークでは,解析情報はメモリ上に保持される 問題点
IPアドレス、IPパケットとはなにか? 情報塾( ) URLとの関係は? コンピュータ同士はどう繋がっているか?
REST型Webサービスによる 楽曲検索システムの開発
アプレット (Applet)について.
早稲田大学大学院理工学研究科 情報科学専攻修士2年 後藤滋樹研究室 坂本義裕
Linked e-Stat インディゴ株式会社 STAT DASH グランプリ 2016 行政サービス開拓部門 2016/3/5
WWW (=World Wide Web)とは
「コンピュータと情報システム」 07章 インターネットとセキュリティ
ネットワークコミュニケーション よく使われるアプリケーション DNS 7/5/07.
NIIメタデータデータベースの構想 国立情報学研究所 開発・事業部 コンテンツ課 米 澤 誠
XMLについて 蔡柏東.
第4回 個人の動画配信補足のためのWeb構築
オペレーティングシステムⅡ 第3回 講師 松本 章代 VirtuaWin・・・仮想デスクトップソフト 2009/10/16.
佐賀大学 理工学部知能情報システム学科 講師 大月 美佳
書誌情報を提供するサービスへ 「だれでも」書誌情報をダウンロードして再活用できる
担当教官:大月 美佳(佐賀大学) 2001年度 総合科目
HTTPプロトコルとJSP (1) データベース論 第3回.
Webを利用した授業支援システムの開発 北海道工業大学 電気電子工学科 H 渋谷 俊彦.
HTTPプロトコル J2EE I 第7回 /
EBSCOhost 詳細検索 チュートリアル support.ebsco.com.
Live Framework 入門 その2 JZ5(松江) 2009/8/22.
CiNii Articlesトップページ クイックガイド <キーワードによる検索方法>
情報コミュニケーション入門 総合実習(1) 基礎知識のポイント(2)
基礎プログラミング演習 第1回.
実際にたたいてAPI APIの初歩からプログラムまで使用方法のAtoZ.
平成22年6月15日 図書系職員のための アプリケーション開発講習会
第8章 Web技術とセキュリティ   岡本 好未.
HTTPとHTML 技術領域専攻 3回 中川 晃.
情報コミュニケーション入門b 第10回 Web入門(1)
情報コミュニケーション入門b 第10回 Web入門(1)
SOAP/UDDI/WSDLによるB2Bシステムの開発
資料1-6 平成26年度 第1回技術委員会資料 支援ツール群整備方針
仕事: SystemVerilogを使いたい
情報コミュニケーション入門e 第11回 Part2 Web入門(1)
インターネット利用法実習 経営工学基礎演習a(第3週).
クイックガイド <キーワードによる検索方法>
京都大学図書館機構における オープンアクセスの取り組み
Web - 01 IIS を インストールしよう.
XMLゼミ 1.3 XML文書の表示 1.4 XMLの役割 1.5 XMLとプログラミング M2 正木 裕一.
7-0.SWORD Client for WEKO インストールマニュアル Version 2.2
第13回 2007年7月20日 応用Java (Java/XML).
コンピュータ プレゼンテーション.
すべて読む Microsoft SharePoint ニュース
データベース設計 第7回 実用データベースの運用例 クライアント=サーバシステム(1)
サーバ・クライアントシステム ( X Window System) 2006/01/20 伊藤 和也 original: 前坂たけし
最低限インターネット ネットワークにつなぎましょ!
情報共有による Z39.50データベース選択支援環境
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
独習XML ~第1章 XMLの基礎~ 1.1 XML文書の基礎 1.2 XMLとHTML
ASP.NET 2.0による Webサービスの構築 2008年10月18日 こくぶんまさひろ.
第2回 Webサーバ.
ASP.NET 2.0による Webサービスの構築 2008年10月18日 こくぶんまさひろ.
アプリケーションゲートウェイ実験 2001.10.5 鬼塚 優.
HTTPプロトコルの詳細 M1 峯 肇史.
Presentation transcript:

東京大学情報基盤センター 学術情報研究部門 助教 清田 陽司 (兼 株式会社リッテル 上席研究員) 2010年4月9日 @東京大学アントレプレナープラザ会議室 マイニング探検会 #1 東京大学情報基盤センター 学術情報研究部門 助教 清田 陽司 (兼 株式会社リッテル 上席研究員)

素朴な疑問 そもそも、図書館の価値ってなに? まわりの人たちに価値をどうやって伝えるか? 過去の情報の蓄積と提供 研究・調査・教育のための知的インフラ 情報リテラシーを育てる場 「知る権利」の保証=民主主義を支える柱 etc. まわりの人たちに価値をどうやって伝えるか?

Webが世界に与えたインパクト 最初は「ハッカーのおもちゃ」 まわりの人たちを巻き込んでいくことで爆発的に成長 世界に新たな「知的ゲーム」を提供した 究極の「暇つぶしツール」 参加者の数が価値を生み出している 多くの人々の人生に新たな意味を与えた ゲームの意味を問うことには意味がない! 意味は後から生み出される

知的ゲームの提供者としての図書館 現在の図書館の基盤を築いたのは何か? 価値あるゲームを社会に提供することで認められた 誰でも情報に触れられる場を提供したこと 膨大な情報を検索できるツールを提供したこと 価値あるゲームを社会に提供することで認められた Webによってかなりの部分が代替されつつある → 新たな知的ゲームを創造すべき時期になっている!

新たな知的ゲームを創造するために 多くの人々を巻き込むしかけ Webがもつ価値を徹底的に利用 図書館パラダイムの再構築 組織の壁を超えた交流 エンターテインメント精神が大事 Webがもつ価値を徹底的に利用 Webを支える「ルール」と「テクニック」を知っておく プログラミングできなくても大丈夫 実際に手を動かして体験学習 図書館パラダイムの再構築 ライブラリアンシップを次の世代に受け継ぐために ひとりひとりが新サービスのプロデューサーとしての役割を果たしていこう!

トピック案 情報検索 データマイニング レコメンデーション テキスト処理 大規模データ処理 信頼性の向上 Webインタフェース Lucene、GETAssoc、… データマイニング 相関ルール抽出、回帰分析、機械学習、クラスタリング レコメンデーション 協調フィルタリング、プロファイル推定、… テキスト処理 形態素解析、構文解析、固有表現抽出、… 大規模データ処理 Hadoop、Amazon EC2/S3、Google Apps Engine、Windows Azure 信頼性の向上 HDFS、ZooKeeper、… Webインタフェース AJAX、Flash、HTML5、…

API (Application Programming Interface) OS(Windows、MacOS、Linuxなど)やプログラミング言語(C言語、Java、C#など)によって提供 OSやライブラリ内部の機能を利用できる APIの役割 アプリケーション開発においてプログラミングの手間を省く システム間の連携 抽象化 (=人間のレベルに近づける) 簡潔さと柔軟性のトレードオフ 抽象化しすぎると細かな要望に手が回らない

Web API APIの概念をWebの世界に援用 Webサービス運営者によって提供 Web APIの役割 トレードオフが存在 単に「API」といえば「Web API」 Webサービス運営者によって提供 Webサービス内部の機能やデータを利用できる Web APIの役割 新たなWebサービス開発の手間を省く Webサービス間の連携 → マッシュアップ 抽象化 トレードオフが存在 簡単にするほど細かな処理ができなくなる

Web APIを支える技術 リソースの指定 IPアドレス ドメイン名 URL 通信プロトコル TCP/IP (インターネット) HTTP / HTTPS (cf. Z39.50) ファイルフォーマット XML JSON APIへの情報送信 SOAP REST ブラウザへの情報提供 RSS / Atom OpenSearch

URL (Uniform Resource Locater) インターネット上のリソースの「住所」 プロトコル+ホスト名+パス名 で構成 http://ja.wikipedia.org/wiki/Wikipedia https://mail.google.com/mail/ ftp://ftp.iij.ad.jp/pub/linux/centos/5/os/x86_64/ ホスト名はドメイン名またはIPアドレス http://124.83.167.215/hl

HTTP (HyperText Transfer Protocol) Webを支える基盤プロトコル(通信規約) ほぼすべてのWebサービスはHTTPを利用 暗号化されたHTTP = HTTPS クライアント=サーバモデル クライアント(ブラウザとか)からのリクエストを受けて、サーバがコンテンツをクライアントに返す いろんなコンテンツを送れる テキスト、画像、動画、プログラム、XML、… サーバがコンテンツをどう作るかは関知せず ディスクにしまってあるコンテンツをそのまま書き出してもよい (静的コンテンツ) プログラムでコンテンツをその場で作ってしまってもよい(動的コンテンツ)

静的コンテンツの場合 クライアント (ブラウザソフト) サーバ (www.mi-tan.jp) URLの入力 インターネット HTTPサーバ GET / HTTP/1.1 Host: www.mi-tan.jp User-Agent: Mozilla/5.0 ….. クライアント (ブラウザソフト) サーバ (www.mi-tan.jp) URLの入力 インターネット HTTPサーバ コンテンツの表示 HTTP/1.1 200 OK Date: Tue, 06 Apr 2010 13:14:32 GMT Server: Apache Content-Type: text/html <html> <head> <title>マイニング探検会(マイタン) - 図書館の未来を探る勉強会 -</title> </head> <body class=“mainPage”> … </body> <html> <head> <title>マイニング探検会(マイタン) - 図書館の未来を探る勉強会 -</title> </head> …

動的コンテンツの場合 クライアント (ブラウザソフト) サーバ (search.yahoo.co.jp) 検索クエリーの入力 インターネット GET /search?p=マイニング探検会&ei=UTF-8 HTTP/1.1 Host: search.yahoo.co.jp User-Agent: Mozilla/5.0 クライアント (ブラウザソフト) サーバ (search.yahoo.co.jp) 検索クエリーの入力 インターネット HTTPサーバ コンテンツの表示 HTTP/1.1 200 OK Date: Tue, 06 Apr 2010 13:14:32 GMT Server: Apache Content-Type: text/html <html> <head> <title>「マイニング探検会」の検索結果 - Yahoo!検索</title> </head> <body> … </body> 検索エンジンサーバ 検索インデックス

HTTPリクエストのメソッド GET POST URL埋め込み形式で情報を送ることができる http://search.yahoo.co.jp/search?p=マイニング探検会&ei=UTF-8 サイズ制限あり (Internet Explorerでは2083bytes) ブラウザから簡単に試せる POST さまざまなコンテンツを送ることができる ファイルをアップロードすることも可能 サイズ制限なし 利用が少し面倒

XML (eXtensible Markup Language) <?xml version="1.0" encoding="UTF-8"?> <レシピ 名前="パン" 準備時間="5分" 調理時間="3時間"> <料理>基本的なパン</料理> <材料 量='3' 単位='カップ'>小麦粉</材料> <材料 量='0.25' 単位='オンス'>イースト</材料> <材料 量='1.5' 単位='カップ' 状態="温かい">水</材料> <材料 量="1" 単位="ティースプーン">食塩</材料> <要領> <手順>全ての材料を一緒にして混ぜます。</手順> <手順>十分にこねます。</手順> <手順>布で覆い、暖かい部屋で1時間そのままにして おきます。 </手順> <手順>もう一度こねます。</手順> <手順>パン焼きの容器に入れます</手順> <手順>オーブンに入れて温度を180℃にして30分間 焼きます。 </要領> </レシピ> マークアップ言語の規格 電子的文書を記述する規格SGMLの後継 「タグ」で構造を表現できる 応用例 ニュースリーダー (RSS) 電子書籍 (Open eBook) オフィス文書

SOAPとREST SOAP (Simple Object Access Protocol) REST (Representational State Transfer) XMLで記述されたSOAPメッセージを送信 利点 HTTP以外も利用可能 (SMTP) 複雑な指示が送れる 欠点 利用が面倒 キャッシュ不可 URLを情報送信の手段として利用 利点 簡単に利用できる キャッシュ可能 欠点 HTTPに依存 あまり複雑な指示は送れない

紹介するWeb API Amazon Twitter CiNii (国立情報学研究所) PORTA (国立国会図書館) レファレンス共同データベース (国立国会図書館) J-Global (科学技術振興機構)

Amazon Product Advertising API 商品検索 検索条件による絞り込み 商品画像の表示 商品情報の取得 レビュー・ランキング・関連商品・販売状態などの取得 アフィリエイトとの連携 (Amazonアソシエイト) サーバーサイド SOAPまたはRESTが利用可能 APIキーの発行が必須 http://developer.amazonwebservices.com/connect/kbcategory.jspa?categoryID=19 ※OpenSearchはAPIキーなしで利用可能

Twitter API Twitterのアプリケーションを作るために必要な一通りの機能を提供 3種類のAPI タイムラインの取得 ステータスの取得 アカウント情報の取得 発言の投稿 3種類のAPI REST 2種類 (歴史的経緯) Streaming GETメソッド (メッセージ投稿など一部はPOST) 公開ユーザのタイムライン取得以外は認証が必要 ドキュメント http://apiwiki.twitter.com/ 利用例 (自分のタイムライン) http://api.twitter.com/1/statuses/home_timeline.xml

CiNii API NII論文検索の基本的な機能を提供 GETメソッド REST準拠 フォーマット 認証不要 ツールバーなどからの論文・著者検索 論文・著者詳細情報の取得 CiNii内のコンテンツへの直接リンク GETメソッド REST準拠 フォーマット 検索: RSS or Atom 詳細情報: RDF 認証不要 ドキュメント http://ci.nii.ac.jp/info/ja/if_link_receive.html 利用例 (RSSフィード) http://ci.nii.ac.jp/opensearch/search?q=長尾真&range=0&sortorder=1&start=1&count=20&format=atom ※OpenSearchが利用可能

PORTA API NDL PORTAコンテンツの検索とハーベスティング機能を提供 GETメソッド/POSTメソッドが混在 REST/SOAP/Z39.50が混在 認証不要 用途 プロトコル 返却形式 検索 OpenSearch XML(RSS2.0) OpenURL HTML画面 SRU XML SRW XML(SOAP) Z39.50 SUTRS データのダウンロード (ハーベスト) OAI-PMH

レファレンス共同データベースAPI 詳細検索画面と同等の検索機能を提供 GETメソッド REST準拠 フォーマット 認証不要 キーワード検索 (boolean) 館ごとの検索指定 アクセス数ランキング GETメソッド REST準拠 フォーマット XML (独自形式) 認証不要

J-GLOBAL Web API 4つの基本情報を検索可能 取得可能な検索結果 WebAPIキーの取得が必要 「文献」「科学技術用語」「科学物質」「資料」 J-GLOBAL サイトの検索結果一覧と同等レベルの情報を取得可能 取得可能な検索結果 HTML形式 JSON形式 Ajaxで利用可能 WebAPIキーの取得が必要

APIの利用制限 APIキーの発行を受けないと利用できないものがある 呼び出し頻度に注意 利用規約 過度の呼び出しはサーバに負荷をかける アクセス制限を受けることも 利用規約 非営利利用に制限されているもの リンクを張ることが義務づけられているもの(Amazonなど)

Web API提供の考え方 なぜ公開するのか? 何を公開し、何を公開しないか? どうやって普及させるか? お互いハッピーになれるかも? cf. カーリルのスクレイピング 何を公開し、何を公開しないか? 個人情報はNG レコメンデーションは? どうやって普及させるか? APIコンテスト アフィリエイト 開発者(ベンダー含む)との関係をどう築いていくか? サービスとしてどう継続していくか? 標準をどう作っていくか? 営利と非営利の境界線 図書館とWeb書店はどこまで連携可能か?