Your SlideShare is downloading. ×
0
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Postgre sqlから見るnosql

116

Published on

MyNA・JPUG合同DB勉強会 in 東京の登壇資料です。 …

MyNA・JPUG合同DB勉強会 in 東京の登壇資料です。

https://dbstudychugoku.github.io/events/tokyo-001.html

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
116
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. PostgreSQLから見るNoSQL MyNA・JPUG 合同DB勉強会 in 東京
  • 2. What is it? RDBの限界を感じた事ありませんか?
  • 3. What is it? PostgreSQLは新しい選択肢を用意します
  • 4. What is it? 外部データラッパ (Foreign Data Wrapper)
  • 5. What is it? PostgreSQLはRDBの外の世界と繋がる
  • 6. What is it? FDWの 使い方と作り方 をご紹介します
  • 7. What is it? 内部実装や細かい仕様 の話は今日はしません
  • 8. あじぇんだ 1 自己紹介 2 外部データラッパーとは 3 外部データラッパーを使う 4 外部データラッパーを作る 5 まとめ
  • 9. あじぇんだ 1 自己紹介 2 外部データラッパーとは 3 外部データラッパーを使う 4 外部データラッパーを作る 5 まとめ
  • 10. 自己紹介 名前:曽根 壮大(そね たけとも) 年齢:30歳(三人の子供がいます) 職業:Webエンジニア 所属:日本PostgreSQLユーザ会    中国支部 支部長   技術的にはLL系言語とかRDBが好きです
  • 11. あじぇんだ 1 自己紹介 2 外部データラッパーとは 3 外部データラッパーを使う 4 外部データラッパーを作る 5 まとめ
  • 12. FDWとは 外部テーブルを作成するための機能 (外部のデータをtableにする)
  • 13. FDWとは 外部データにテーブルと同様に SQL文でアクセスできる
  • 14. FDWとは • WHEREやORDER BYが使える • GROUP BYなどの集合関数も使える • JOINなど、他tableと関連付け出来る • 更新や削除も出来る(ただし9.3から)
  • 15. FDWとは 外部データ ↓ DB、CSV、JSON、WebAPIなんでも良い
  • 16. FDWとは PostgreSQL to PostgreSQL
  • 17. FDWとは MySQL to PostgreSQL
  • 18. FDWとは MongoDB to PostgreSQL
  • 19. FDWとは Git to PostgreSQL
  • 20. SQL Databases Wrappers • postgres_fdw • oracle_fdw • mysql_fdw • odbc_fdw • jdbc_fdw
  • 21. NoSQL Databases Wrappers • couchdb_fdw • MonetDB FDW • mongo_fdw • redis_fdw • Neo4j fdw • Tycoon FDW
  • 22. Others • git_fdw • ldap_fdw • IMAP_fdw • s3_fdw • www_fdw • OS_fdw
  • 23. FDWとは その他に既に多くの実装がある
  • 24. あじぇんだ 1 自己紹介 2 外部データラッパーとは 3 外部データラッパーを使う 4 外部データラッパーを作る 5 まとめ
  • 25. SQL Databases Wrappers • postgres_fdw • oracle_fdw • mysql_fdw • odbc_fdw • jdbc_fdw
  • 26. FDWを使う MySQLPostgreSQL
  • 27. FDWを使う MySQLPostgreSQL TABLE
  • 28. FDWを使う EXTENSION MySQLPostgreSQL TABLE
  • 29. FDWを使う EXTENSION MySQLPostgreSQL TABLE mysql_fdwをインストールする
  • 30. FDWを使う server EXTENSION USER MAPPING MySQLPostgreSQL TABLE
  • 31. FDWを使う server EXTENSION USER MAPPING MySQLPostgreSQL TABLE MySQLの接続先を設定する MySQLの接続ユーザを設定する
  • 32. FDWを使う server FOREIGN TABLE EXTENSION USER MAPPING MySQLPostgreSQL TABLE
  • 33. FDWを使う server FOREIGN TABLE EXTENSION USER MAPPING MySQLPostgreSQL TABLE PostgreSQLの外部tableを作成する
  • 34. FDWを使う server FOREIGN TABLE EXTENSION USER MAPPING MySQLPostgreSQL TABLE Client
  • 35. FDWを使う server FOREIGN TABLE EXTENSION USER MAPPING MySQLPostgreSQL TABLE Client SQLで問い合わせ
  • 36. FDWを使う server FOREIGN TABLE EXTENSION USER MAPPING MySQLPostgreSQL TABLE Client SQLで問い合わせ 外部tableにアクセス
  • 37. FDWを使う server FOREIGN TABLE EXTENSION USER MAPPING MySQLPostgreSQL TABLE Client アクセス先を確認
  • 38. FDWを使う server FOREIGN TABLE EXTENSION USER MAPPING MySQLPostgreSQL TABLE Client MySQLにクエリを投げる
  • 39. FDWを使う server FOREIGN TABLE EXTENSION USER MAPPING MySQLPostgreSQL TABLE Client 実行結果を取得
  • 40. FDWを使う server FOREIGN TABLE EXTENSION USER MAPPING MySQLPostgreSQL TABLE Client 実行結果を表示
  • 41. FDWを使う server FOREIGN TABLE EXTENSION USER MAPPING MySQLPostgreSQL TABLE Client
  • 42. FDWを使う 百聞は一見(デモ)し如かず
  • 43. あじぇんだ 1 自己紹介 2 外部データラッパーとは 3 外部データラッパーを使う 4 外部データラッパーを作る 5 まとめ
  • 44. FDWを使う server FOREIGN TABLE EXTENSION USER MAPPING MySQLPostgreSQL TABLE Client ここを作る
  • 45. FDWを作る 現時点では ほんの少しの元気と勇気と PostgreSQLの内部構造に関する知識 がある程度必要です。 FDW超詳しい人
  • 46. FDWを作る なんか出来そう!!
  • 47. FDWを作る 1週間後…
  • 48. FDWを作る 圧倒的挫折…
  • 49. FDWを作る 出来る人の簡単
  • 50. FDWを作る 出来る人の簡単 ↓ 凡人の超えられない壁
  • 51. FDWを作る それなりの覚悟とちゃんとした PostgreSQLとCの知識が必要
  • 52. FDWを作る でも大丈夫
  • 53. FDWを作る 簡単にPythonで作る方法がある
  • 54. FDWを作る Multicorn
  • 55. Multicorn FDWを Pythonで実装する ためのLibrary
  • 56. Multicorn 案ずるより産むが易し (作ってみたのでデモ)
  • 57. あじぇんだ 1 自己紹介 2 外部データラッパーとは 3 外部データラッパーを使う 4 外部データラッパーを作る 5 まとめ
  • 58. まとめ PostgreSQLから外の世界に繋げる
  • 59. まとめ 他DBと結合、集約関数が使える
  • 60. まとめ 外部tableはRDB、NoSQL問わない
  • 61. まとめ FDWは既に多くの実装がある (車輪の再発明が要らない)
  • 62. まとめ しかし速くは無い (オーバヘッドはそれなりにある)
  • 63. まとめ FDWは作れる ↓ ガッツリ作る場合はC サクッと作る場合はPython
  • 64. まとめ 多様性は善
  • 65. まとめ PostgreSQLは多様性を受け入れる
  • 66. まとめ PostgreSQLは多様性を受け入れる
  • 67. 参考資料 ・公式PostgreSQL Wiki https://wiki.postgresql.org/wiki/Foreign_data_wrappers ・PGXN(PostgreSQL Extension Network) http://pgxn.org/ ・公式ドキュメント(日本語) https://www.postgresql.jp/document/9.4/html/postgres-fdw.html
  • 68. FDWにおける銀の弾丸 花田さん(@s87)をWatchする
  • 69. FDWにおける銀の弾丸 花田さん(@s87)をWatchする ↓ 今日の会場に潜んでるらしい
  • 70. ご静聴ありがとうございました。

×