Suche senden
Hochladen
BMXUG つきじ#4
•
2 gefällt mir
•
762 views
K Kimura
Folgen
BMXUG つきじ#4 で紹介したコンテンツ(の一部) https://bmxug.connpass.com/event/74656/
Weniger lesen
Mehr lesen
Business
Melden
Teilen
Melden
Teilen
1 von 20
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
(きっと)あなたにも出来る!Hyperledger composer でブロックチェーンアプリを動かしてみた
(きっと)あなたにも出来る!Hyperledger composer でブロックチェーンアプリを動かしてみた
K Kimura
Chiba pm#1 - ArangoDB for Perl
Chiba pm#1 - ArangoDB for Perl
Hideaki Ohno
Anemoneによるクローラー入門
Anemoneによるクローラー入門
Tasuku Nakano
エコなWebサーバー
エコなWebサーバー
emasaka
45分で理解する webクローリング入門 斉藤之雄
45分で理解する webクローリング入門 斉藤之雄
Yukio Saito
Xmlrpcと品詞分解
Xmlrpcと品詞分解
Satoru Fujimori
Introduction to MongoDB
Introduction to MongoDB
moai kids
Webスライスから始めるmicroformats
Webスライスから始めるmicroformats
Koji Ishimoto
Empfohlen
(きっと)あなたにも出来る!Hyperledger composer でブロックチェーンアプリを動かしてみた
(きっと)あなたにも出来る!Hyperledger composer でブロックチェーンアプリを動かしてみた
K Kimura
Chiba pm#1 - ArangoDB for Perl
Chiba pm#1 - ArangoDB for Perl
Hideaki Ohno
Anemoneによるクローラー入門
Anemoneによるクローラー入門
Tasuku Nakano
エコなWebサーバー
エコなWebサーバー
emasaka
45分で理解する webクローリング入門 斉藤之雄
45分で理解する webクローリング入門 斉藤之雄
Yukio Saito
Xmlrpcと品詞分解
Xmlrpcと品詞分解
Satoru Fujimori
Introduction to MongoDB
Introduction to MongoDB
moai kids
Webスライスから始めるmicroformats
Webスライスから始めるmicroformats
Koji Ishimoto
LT 2014 - 1
LT 2014 - 1
Hidenori Yoshikawa
実践スクレイピング
実践スクレイピング
だいすけ ふるかわ
objective-c propertyの属性について
objective-c propertyの属性について
Hiroki Uemoto
Web勉強会 20120927
Web勉強会 20120927
Yoshihiro Furukawa
ウェブから情報をあつめる
ウェブから情報をあつめる
Shuhei Iitsuka
私の考えるドキュメント指向
私の考えるドキュメント指向
Yohei Yamamoto
Tour of Scraping
Tour of Scraping
Kenta Yonekura
フロント作業の効率化
フロント作業の効率化
Yuto Yoshinari
桐島、ファイルに 保存するの やめるってよ
桐島、ファイルに 保存するの やめるってよ
DQNEO
クライアントサイドjavascript簡単紹介
クライアントサイドjavascript簡単紹介
しくみ製作所
202003 functiontalkinnotesknowsworkshop20th
202003 functiontalkinnotesknowsworkshop20th
Satoru Abe
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
Naruhiko Ogasawara
oDeskつこーてみた
oDeskつこーてみた
kuippa
2011 10-satalabo-naaon
2011 10-satalabo-naaon
Naoki Okino
Perl暦およそ10年(?)の僕がデータベースを使えるようになるまでの昔話
Perl暦およそ10年(?)の僕がデータベースを使えるようになるまでの昔話
azuma satoshi
202006 のの会@関数Talk 21st @function-talk-in-notesknows-workshop
202006 のの会@関数Talk 21st @function-talk-in-notesknows-workshop
Satoru Abe
20120317 IT系勉強会 in 神戸
20120317 IT系勉強会 in 神戸
Takahiro Iwase
Clustering -Elbow Chart-
Clustering -Elbow Chart-
Yuu Kimy
Goでヤフーの分散オブジェクトストレージを作った話 Go Conference 2017 Spring
Goでヤフーの分散オブジェクトストレージを作った話 Go Conference 2017 Spring
Yahoo!デベロッパーネットワーク
カウチなやつら CouchDB in the room
カウチなやつら CouchDB in the room
Makoto Ohnami
徳島OSS勉強会第四回 シラサギハンズオン 0925
徳島OSS勉強会第四回 シラサギハンズオン 0925
Yu Ito
シラサギハンズオン 大阪
シラサギハンズオン 大阪
Yu Ito
Weitere ähnliche Inhalte
Was ist angesagt?
LT 2014 - 1
LT 2014 - 1
Hidenori Yoshikawa
実践スクレイピング
実践スクレイピング
だいすけ ふるかわ
objective-c propertyの属性について
objective-c propertyの属性について
Hiroki Uemoto
Web勉強会 20120927
Web勉強会 20120927
Yoshihiro Furukawa
ウェブから情報をあつめる
ウェブから情報をあつめる
Shuhei Iitsuka
私の考えるドキュメント指向
私の考えるドキュメント指向
Yohei Yamamoto
Tour of Scraping
Tour of Scraping
Kenta Yonekura
フロント作業の効率化
フロント作業の効率化
Yuto Yoshinari
桐島、ファイルに 保存するの やめるってよ
桐島、ファイルに 保存するの やめるってよ
DQNEO
クライアントサイドjavascript簡単紹介
クライアントサイドjavascript簡単紹介
しくみ製作所
202003 functiontalkinnotesknowsworkshop20th
202003 functiontalkinnotesknowsworkshop20th
Satoru Abe
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
Naruhiko Ogasawara
oDeskつこーてみた
oDeskつこーてみた
kuippa
2011 10-satalabo-naaon
2011 10-satalabo-naaon
Naoki Okino
Perl暦およそ10年(?)の僕がデータベースを使えるようになるまでの昔話
Perl暦およそ10年(?)の僕がデータベースを使えるようになるまでの昔話
azuma satoshi
202006 のの会@関数Talk 21st @function-talk-in-notesknows-workshop
202006 のの会@関数Talk 21st @function-talk-in-notesknows-workshop
Satoru Abe
20120317 IT系勉強会 in 神戸
20120317 IT系勉強会 in 神戸
Takahiro Iwase
Clustering -Elbow Chart-
Clustering -Elbow Chart-
Yuu Kimy
Goでヤフーの分散オブジェクトストレージを作った話 Go Conference 2017 Spring
Goでヤフーの分散オブジェクトストレージを作った話 Go Conference 2017 Spring
Yahoo!デベロッパーネットワーク
カウチなやつら CouchDB in the room
カウチなやつら CouchDB in the room
Makoto Ohnami
Was ist angesagt?
(20)
LT 2014 - 1
LT 2014 - 1
実践スクレイピング
実践スクレイピング
objective-c propertyの属性について
objective-c propertyの属性について
Web勉強会 20120927
Web勉強会 20120927
ウェブから情報をあつめる
ウェブから情報をあつめる
私の考えるドキュメント指向
私の考えるドキュメント指向
Tour of Scraping
Tour of Scraping
フロント作業の効率化
フロント作業の効率化
桐島、ファイルに 保存するの やめるってよ
桐島、ファイルに 保存するの やめるってよ
クライアントサイドjavascript簡単紹介
クライアントサイドjavascript簡単紹介
202003 functiontalkinnotesknowsworkshop20th
202003 functiontalkinnotesknowsworkshop20th
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
oDeskつこーてみた
oDeskつこーてみた
2011 10-satalabo-naaon
2011 10-satalabo-naaon
Perl暦およそ10年(?)の僕がデータベースを使えるようになるまでの昔話
Perl暦およそ10年(?)の僕がデータベースを使えるようになるまでの昔話
202006 のの会@関数Talk 21st @function-talk-in-notesknows-workshop
202006 のの会@関数Talk 21st @function-talk-in-notesknows-workshop
20120317 IT系勉強会 in 神戸
20120317 IT系勉強会 in 神戸
Clustering -Elbow Chart-
Clustering -Elbow Chart-
Goでヤフーの分散オブジェクトストレージを作った話 Go Conference 2017 Spring
Goでヤフーの分散オブジェクトストレージを作った話 Go Conference 2017 Spring
カウチなやつら CouchDB in the room
カウチなやつら CouchDB in the room
Ähnlich wie BMXUG つきじ#4
徳島OSS勉強会第四回 シラサギハンズオン 0925
徳島OSS勉強会第四回 シラサギハンズオン 0925
Yu Ito
シラサギハンズオン 大阪
シラサギハンズオン 大阪
Yu Ito
「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップ
Yasuhito Yabe
シラサギハンズオン 東京
シラサギハンズオン 東京
Yu Ito
シラサギハンズオン 1015 1016
シラサギハンズオン 1015 1016
Yu Ito
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Masayuki Abe
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
Issei Hiraoka
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Shumpei Shiraishi
Power shell で DSL
Power shell で DSL
urasandesu
20130629 linkdraw
20130629 linkdraw
Toshikatsu Murakoshi
「Webサービスのつくり方」 のつくり方
「Webサービスのつくり方」 のつくり方
Yusuke Wada
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用
Developers Summit
SEOとJava Script。 〜文書構造とチームと、時々、闇〜
SEOとJava Script。 〜文書構造とチームと、時々、闇〜
Yuki Minakawa
MTDDC Meetup HOKKAIDO 2013 KEYNOTE - Movable Type 6
MTDDC Meetup HOKKAIDO 2013 KEYNOTE - Movable Type 6
Daiji Hirata
CMSMix Sapporo vol.3 (Drupal の回)
CMSMix Sapporo vol.3 (Drupal の回)
Kenji Shirane
実践!AWSクラウドデザインパターン
実践!AWSクラウドデザインパターン
Hiroyasu Suzuki
僕の Serverless web application
僕の Serverless web application
祐樹 夏目
レスポンシブWebデザインによる開発効率化
レスポンシブWebデザインによる開発効率化
亮 門屋
Mobile SEO (Japanese Version)
Mobile SEO (Japanese Version)
ssuserd60633
2016/12/17 ASP.NET フロントエンドタスク入門
2016/12/17 ASP.NET フロントエンドタスク入門
miso- soup3
Ähnlich wie BMXUG つきじ#4
(20)
徳島OSS勉強会第四回 シラサギハンズオン 0925
徳島OSS勉強会第四回 シラサギハンズオン 0925
シラサギハンズオン 大阪
シラサギハンズオン 大阪
「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップ
シラサギハンズオン 東京
シラサギハンズオン 東京
シラサギハンズオン 1015 1016
シラサギハンズオン 1015 1016
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Power shell で DSL
Power shell で DSL
20130629 linkdraw
20130629 linkdraw
「Webサービスのつくり方」 のつくり方
「Webサービスのつくり方」 のつくり方
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用
夏サミ2013 Hadoopを使わない独自の分散処理環境の構築とその運用
SEOとJava Script。 〜文書構造とチームと、時々、闇〜
SEOとJava Script。 〜文書構造とチームと、時々、闇〜
MTDDC Meetup HOKKAIDO 2013 KEYNOTE - Movable Type 6
MTDDC Meetup HOKKAIDO 2013 KEYNOTE - Movable Type 6
CMSMix Sapporo vol.3 (Drupal の回)
CMSMix Sapporo vol.3 (Drupal の回)
実践!AWSクラウドデザインパターン
実践!AWSクラウドデザインパターン
僕の Serverless web application
僕の Serverless web application
レスポンシブWebデザインによる開発効率化
レスポンシブWebデザインによる開発効率化
Mobile SEO (Japanese Version)
Mobile SEO (Japanese Version)
2016/12/17 ASP.NET フロントエンドタスク入門
2016/12/17 ASP.NET フロントエンドタスク入門
Mehr von K Kimura
ThinkPad を自慢できると聞いてやってきました
ThinkPad を自慢できると聞いてやってきました
K Kimura
IBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプ
IBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプ
K Kimura
「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?
「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?
K Kimura
LINE お絵描きスタンプが NFT 対応するかも
LINE お絵描きスタンプが NFT 対応するかも
K Kimura
ICFO2021 コロナ時代のオンラインハンズオン体験
ICFO2021 コロナ時代のオンラインハンズオン体験
K Kimura
IBM Family Day 2020 - LINE で手描きスタンプに挑戦!
IBM Family Day 2020 - LINE で手描きスタンプに挑戦!
K Kimura
マンホールマップ10周年 20200725
マンホールマップ10周年 20200725
K Kimura
MashupAward6 Manholemap(2010)
MashupAward6 Manholemap(2010)
K Kimura
スライドパズルハンズオン資料
スライドパズルハンズオン資料
K Kimura
ユーザー投稿型位置情報プロットシステム - マンホールマップ
ユーザー投稿型位置情報プロットシステム - マンホールマップ
K Kimura
Scratch でゲームプログラミング
Scratch でゲームプログラミング
K Kimura
空耳アワーマシーンを作ってみた
空耳アワーマシーンを作ってみた
K Kimura
生まれ変わるマンホールマップ
生まれ変わるマンホールマップ
K Kimura
地図データでレースゲームを作って遊ぼう!
地図データでレースゲームを作って遊ぼう!
K Kimura
AI先生と外国語会話を練習しよう!
AI先生と外国語会話を練習しよう!
K Kimura
IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現
IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現
K Kimura
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
K Kimura
LINE お絵描きアプリハンズオン 20190519
LINE お絵描きアプリハンズオン 20190519
K Kimura
LINE お絵描きハンズオン 2019.04.26
LINE お絵描きハンズオン 2019.04.26
K Kimura
Hyperledger Hands-on 2019-03-30 @ Singularity HIVE
Hyperledger Hands-on 2019-03-30 @ Singularity HIVE
K Kimura
Mehr von K Kimura
(20)
ThinkPad を自慢できると聞いてやってきました
ThinkPad を自慢できると聞いてやってきました
IBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプ
IBM FamilyDay 2022 - 帰ってきた LINE 手描きスタンプ
「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?
「プライベート版 Heroku」の "dokku" は Cloud Foundry 代替としてどこまで使えるか?
LINE お絵描きスタンプが NFT 対応するかも
LINE お絵描きスタンプが NFT 対応するかも
ICFO2021 コロナ時代のオンラインハンズオン体験
ICFO2021 コロナ時代のオンラインハンズオン体験
IBM Family Day 2020 - LINE で手描きスタンプに挑戦!
IBM Family Day 2020 - LINE で手描きスタンプに挑戦!
マンホールマップ10周年 20200725
マンホールマップ10周年 20200725
MashupAward6 Manholemap(2010)
MashupAward6 Manholemap(2010)
スライドパズルハンズオン資料
スライドパズルハンズオン資料
ユーザー投稿型位置情報プロットシステム - マンホールマップ
ユーザー投稿型位置情報プロットシステム - マンホールマップ
Scratch でゲームプログラミング
Scratch でゲームプログラミング
空耳アワーマシーンを作ってみた
空耳アワーマシーンを作ってみた
生まれ変わるマンホールマップ
生まれ変わるマンホールマップ
地図データでレースゲームを作って遊ぼう!
地図データでレースゲームを作って遊ぼう!
AI先生と外国語会話を練習しよう!
AI先生と外国語会話を練習しよう!
IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現
IBM Watson IoT を用いた遠隔ゲームコントローラーと Node-RED による簡易カスタマイズによる実現
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
「テトリスを作ってスマホで振って遊ぼう!」ハンズオン資料
LINE お絵描きアプリハンズオン 20190519
LINE お絵描きアプリハンズオン 20190519
LINE お絵描きハンズオン 2019.04.26
LINE お絵描きハンズオン 2019.04.26
Hyperledger Hands-on 2019-03-30 @ Singularity HIVE
Hyperledger Hands-on 2019-03-30 @ Singularity HIVE
Kürzlich hochgeladen
20240427 zaim academy counseling lesson .pdf
20240427 zaim academy counseling lesson .pdf
ssuser80a51f
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
シンフォニティ 株式会社
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
KayaSuetake1
Service-introduction-materials-misorae-leadership
Service-introduction-materials-misorae-leadership
Yasuyoshi Minehisa
ストックマーク株式会社がお客様へご提供しているAnews概要資料のご共有.pdf
ストックマーク株式会社がお客様へご提供しているAnews概要資料のご共有.pdf
masakisaito12
株式会社MAVEL会社概要_アフィリエイト広告_運用型広告_LTVを予測しLOIを最適化する広告代理店
株式会社MAVEL会社概要_アフィリエイト広告_運用型広告_LTVを予測しLOIを最適化する広告代理店
ssuserfb441f
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
masakisaito12
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
ユニパー株式会社
Kürzlich hochgeladen
(8)
20240427 zaim academy counseling lesson .pdf
20240427 zaim academy counseling lesson .pdf
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
Service-introduction-materials-misorae-leadership
Service-introduction-materials-misorae-leadership
ストックマーク株式会社がお客様へご提供しているAnews概要資料のご共有.pdf
ストックマーク株式会社がお客様へご提供しているAnews概要資料のご共有.pdf
株式会社MAVEL会社概要_アフィリエイト広告_運用型広告_LTVを予測しLOIを最適化する広告代理店
株式会社MAVEL会社概要_アフィリエイト広告_運用型広告_LTVを予測しLOIを最適化する広告代理店
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
BMXUG つきじ#4
1.
BMXUG つきじ #4 IBM
Cloudant 超活用法! 禁断の「アレ」に挑戦してみました。。
2.
確認 https://bmxug.connpass.com/event/74656/ 今日はこの方向で今日はこの方向で今日はこの方向で今日はこの方向で
3.
自己紹介 Twitter: @dotnsf Blog: http://dotnsf.blog.jp/ Email:
dotnsf@jp.ibm.com 趣味: マンホール 木村 桂(きむら けい) プログラマー マンホールマップ: http://manholemap.juge.me/ ノーツ大好き!ノーツ大好き!ノーツ大好き!ノーツ大好き!
4.
プログラマーですが、何か https://www.ibm.com/developerworks/community/blogs/pgmrk ~2013/07 2013/08~ 2015/02~ IBM復帰
5.
Cloudant NoSQL データベースの Design
Document 機能
6.
IBM Cloudant • Apache
CouchDB をベースに IBM が DBaaS 化して IBM Cloud から提供し ているデータベースサービス • Apache CouchDB の最新バージョンは 2.1.0 • IBM Cloudant は CouchDB 2.0.0 ベース • この後に紹介する Design Document 機能は Apache CouchDB が所有している機能 • JSON ドキュメントをスケーラブルに格納する高速データベース • 分散データベース • 検索、トランザクション処理は苦手 • 「とにかく大量のデータを保存する」用途向き(ログ、IoT、・・・) • Design Document という特殊なドキュメントで、設計要素を管理する • View / List / Show
7.
例: prefs データベース
例えば関東地方は 8 <= code <= 14, 海なし県は code ∈ [ 9, 10, 11, 19, 20, 21, 25, 29 ]
8.
View Design Document •
「特定の条件を満たす JSON ドキュメントを『ビュー』という単位でまと めてマッピング定義」したもの • 上記条件を管理する特殊な JSON ドキュメント = Design Document • 1つの Design Document の中に最大3つの定義を記述できる • View • List(後述) • Show(後述)
9.
ちなみに・・・ Design Document はダッシュボードからも作成可能
10.
View Design Document
の例(1) • 関東地方だけを抜き出す View Design Document (kanto_view.json) { "language": "javascript", "views": { "kanto": { "map": "function( doc ){ if( doc.code && 8 <= doc.code && doc.code <= 14 ){ emit( doc._id, { code: doc.code, pref: doc.pref, capital: doc.capital, lat: doc.lat, lng: doc.lng } ); } }" } } } 全てのドキュメントが doc としてこの関数の引数となって実行される emit されたデータはビューに含まれる doc.code が存在して、かつ8以上14以下だった場合に emit する
11.
View Design Document
の例(2) • 海なし県だけを抜き出す View Design Document (nosea_view.json) { "language": "javascript", "views": { "nosea": { "map": "function( doc ){ if( doc.code && [ 9, 10, 11, 19, 20, 21, 25, 29 ].indexOf( doc.code ) > -1 ){ emit( doc._id, { code: doc.code, pref: doc.pref, capital: doc.capital, lat: doc.lat, lng: doc.lng } ); } }" } } }
12.
View Design Document
の適用 $ curl -u 'username:password' -H 'Content-Type: application/json' -XPUT 'https://username.cloudant.com/prefs/_design/nosea' -d @nosea_view.json
13.
List Design Document •
View Design Document がビューのマッピング条件を記述したもので あったのに対して、List Design Document はビューの見栄えを定義す るもの
14.
List Design Document
の例 • 海なし県ビューの見栄えを定義する List Design Document { "_rev": "xxxxx…..xxxxx", "language": "javascript", "views": { .. }, "lists": { "nosea": "function( head, row ){ start( { 'headers': { 'content-type': 'text/html' } } ); send( '<ul>' ); var row; while( row = getRow() ){ var url = '../../_show/pref'; send( '<li><a href=¥"' + url + row.id + '¥"' + row.value.prefecture + '(' + row.value.capital + ')</a></li>' ); } send( '</ul>' ); }" } } <ul> <li><a href="xx">[県名]([都市名])</a></li> : </ul> ビュー表示用の HTML テンプレート
15.
List Design Document
の適用 $ curl -u 'username:password' -H 'Content-Type: application/json' -XPUT 'https://username.cloudant.com/prefs/_design/nosea' -d @nosea_view.json https://username.cloudant.com/prefs/_design/nosea/_list/nosea/nosea
16.
Show Design Document •
List Design Document はビューの見栄えを定義するものであったの に対し、Show Design Document はビューから選択した1ドキュメント の見栄えを定義するもの
17.
Show Design Document
の例 • 海なし県の見栄えを定義する Show Design Document { "_rev": "yyyyy…..yyyyy", "language": "javascript", "views": { .. }, "lists": { .. }, "shows": { "nosea": "(function( doc, req ){ if( doc ){ return '<h2>' + doc.prefecture + '</h2>' + '<h3>' + doc.capital + '</h3><hr/>' + '緯度: ' + doc.lat + '<br/>' + '経度: ' + doc.lng; }else{ return 'empty'; } })" } } <h2>[県名]</h2> <h3>[都市名]</h3> <hr/> 緯度: [緯度]<br/> 経度: [経度]
18.
Show Design Document
の適用 $ curl -u 'username:password' -H 'Content-Type: application/json' -XPUT 'https://username.cloudant.com/prefs/_design/nosea' -d @nosea_show.json https://username.cloudant.com/prefs/_design/nosea/_list/nosea/nosea
19.
Design Document のまとめ •
IBM Cloudant / Apache CouchDB が持つ特徴的な機能 • ビューの定義や見栄え、各文書の見栄えを定義する特殊なドキュメ ント • アプリケーションサーバーを使わなくても簡易テンプレートエンジンの ように使うことができる • データとロジック、見た目を分離する流行とは必ずしも一致しない
20.
おまけ • IBM Cloudant
/ Apache CouchDB はデータドキュメントも設計要素の ドキュメントも、いずれもドキュメントとしてデータベース内に格納され る ノーツも同じ 実は CouchDB の開発者は元 IBM/Lotus エンジニア https://www.linkedin.com/in/damienkatz/
Jetzt herunterladen