Submit Search
Upload
Web エンジニアが postgre sql を選ぶ 3 つの理由
•
35 likes
•
19,916 views
Soudai Sone
Follow
PostgreSQLカンファレンス2014の資料です
Read less
Read more
Technology
Report
Share
Report
Share
1 of 151
Download now
Download to read offline
Recommended
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
ビッグデータ処理データベースの全体像と使い分け
ビッグデータ処理データベースの全体像と使い分け
Recruit Technologies
基本に戻ってInnoDBの話をします
基本に戻ってInnoDBの話をします
yoku0825
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
PostgreSQLアンチパターン
PostgreSQLアンチパターン
Soudai Sone
ビッグデータ処理データベースの全体像と使い分け 2018年version
ビッグデータ処理データベースの全体像と使い分け 2018年version
Tetsutaro Watanabe
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
Tetsutaro Watanabe
Recommended
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
ビッグデータ処理データベースの全体像と使い分け
ビッグデータ処理データベースの全体像と使い分け
Recruit Technologies
基本に戻ってInnoDBの話をします
基本に戻ってInnoDBの話をします
yoku0825
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
PostgreSQLアンチパターン
PostgreSQLアンチパターン
Soudai Sone
ビッグデータ処理データベースの全体像と使い分け 2018年version
ビッグデータ処理データベースの全体像と使い分け 2018年version
Tetsutaro Watanabe
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
Tetsutaro Watanabe
Vacuum徹底解説
Vacuum徹底解説
Masahiko Sawada
Where狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキー
yoku0825
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
NTT DATA Technology & Innovation
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
de:code 2017
トランザクションの設計と進化
トランザクションの設計と進化
Kumazaki Hiroki
MongoDB〜その性質と利用場面〜
MongoDB〜その性質と利用場面〜
Naruhiko Ogasawara
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
地理分散DBについて
地理分散DBについて
Kumazaki Hiroki
SQLアンチパターン メンター用資料
SQLアンチパターン メンター用資料
Hironori Miura
データ分析を支える技術 データ分析基盤再入門
データ分析を支える技術 データ分析基盤再入門
Satoru Ishikawa
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
Miki Shimogai
5.6 以前の InnoDB Flushing
5.6 以前の InnoDB Flushing
Takanori Sejima
がっつりMongoDB事例紹介
がっつりMongoDB事例紹介
Tetsutaro Watanabe
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Masahito Zembutsu
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
Atsushi Nakada
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
はじめてのElasticsearchクラスタ
はじめてのElasticsearchクラスタ
Satoyuki Tsukano
カヤックを退職すべきではない3つの理由
カヤックを退職すべきではない3つの理由
Shuichi Tsutsumi
フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由
Kenichi Mukai
More Related Content
What's hot
Vacuum徹底解説
Vacuum徹底解説
Masahiko Sawada
Where狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキー
yoku0825
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
NTT DATA Technology & Innovation
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
de:code 2017
トランザクションの設計と進化
トランザクションの設計と進化
Kumazaki Hiroki
MongoDB〜その性質と利用場面〜
MongoDB〜その性質と利用場面〜
Naruhiko Ogasawara
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
地理分散DBについて
地理分散DBについて
Kumazaki Hiroki
SQLアンチパターン メンター用資料
SQLアンチパターン メンター用資料
Hironori Miura
データ分析を支える技術 データ分析基盤再入門
データ分析を支える技術 データ分析基盤再入門
Satoru Ishikawa
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
Miki Shimogai
5.6 以前の InnoDB Flushing
5.6 以前の InnoDB Flushing
Takanori Sejima
がっつりMongoDB事例紹介
がっつりMongoDB事例紹介
Tetsutaro Watanabe
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Yoshitaka Kawashima
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Masahito Zembutsu
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
Atsushi Nakada
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
はじめてのElasticsearchクラスタ
はじめてのElasticsearchクラスタ
Satoyuki Tsukano
What's hot
(20)
Vacuum徹底解説
Vacuum徹底解説
Where狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキー
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(PostgreSQL Conference Japa...
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
トランザクションの設計と進化
トランザクションの設計と進化
MongoDB〜その性質と利用場面〜
MongoDB〜その性質と利用場面〜
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
地理分散DBについて
地理分散DBについて
SQLアンチパターン メンター用資料
SQLアンチパターン メンター用資料
データ分析を支える技術 データ分析基盤再入門
データ分析を支える技術 データ分析基盤再入門
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
5.6 以前の InnoDB Flushing
5.6 以前の InnoDB Flushing
がっつりMongoDB事例紹介
がっつりMongoDB事例紹介
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
はじめてのElasticsearchクラスタ
はじめてのElasticsearchクラスタ
Viewers also liked
カヤックを退職すべきではない3つの理由
カヤックを退職すべきではない3つの理由
Shuichi Tsutsumi
フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由
Kenichi Mukai
kintone cafe東京vol3 「kintoneの開発が楽しい3つの理由」
kintone cafe東京vol3 「kintoneの開発が楽しい3つの理由」
JOYZO
おジャ魔女どれみが素晴らしい3つの理由
おジャ魔女どれみが素晴らしい3つの理由
w1mvy pine
自動構築と自動テスト〜インフラのコード化とクラウドの優位性
自動構築と自動テスト〜インフラのコード化とクラウドの優位性
azumakuniyuki 🐈
Vpcを使う3つの理由
Vpcを使う3つの理由
Serverworks Co.,Ltd.
スタートアップがAWSを使うべき3つの理由
スタートアップがAWSを使うべき3つの理由
Serverworks Co.,Ltd.
安心してぐっすり眠るための AWS 運用術
安心してぐっすり眠るための AWS 運用術
manabusakai
私がCloudStackを使う4つの理由
私がCloudStackを使う4つの理由
Takuma Nakajima
最短で AWS を乗りこなすライフハック術
最短で AWS を乗りこなすライフハック術
manabusakai
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
Shuichi Tsutsumi
Viewers also liked
(11)
カヤックを退職すべきではない3つの理由
カヤックを退職すべきではない3つの理由
フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由
kintone cafe東京vol3 「kintoneの開発が楽しい3つの理由」
kintone cafe東京vol3 「kintoneの開発が楽しい3つの理由」
おジャ魔女どれみが素晴らしい3つの理由
おジャ魔女どれみが素晴らしい3つの理由
自動構築と自動テスト〜インフラのコード化とクラウドの優位性
自動構築と自動テスト〜インフラのコード化とクラウドの優位性
Vpcを使う3つの理由
Vpcを使う3つの理由
スタートアップがAWSを使うべき3つの理由
スタートアップがAWSを使うべき3つの理由
安心してぐっすり眠るための AWS 運用術
安心してぐっすり眠るための AWS 運用術
私がCloudStackを使う4つの理由
私がCloudStackを使う4つの理由
最短で AWS を乗りこなすライフハック術
最短で AWS を乗りこなすライフハック術
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
Similar to Web エンジニアが postgre sql を選ぶ 3 つの理由
Miyazaki流sql
Miyazaki流sql
hafuu
RDBってなに?
RDBってなに?
Soudai Sone
第51回NDS PostgreSQLのデータ型 #nds51
第51回NDS PostgreSQLのデータ型 #nds51
civicpg
Web で変わったクラウドと postgre sql の今と昔
Web で変わったクラウドと postgre sql の今と昔
Soudai Sone
[B32] クイズと都市伝説から見る、ありのままのPostgreSQL by Shigeyuki Tokuhara
[B32] クイズと都市伝説から見る、ありのままのPostgreSQL by Shigeyuki Tokuhara
Insight Technology, Inc.
Postgre sqlから見るnosql
Postgre sqlから見るnosql
Soudai Sone
MySQLユーザ視点での小さく始めるElasticsearch
MySQLユーザ視点での小さく始めるElasticsearch
Kentaro Yoshida
商用DBからPostgreSQLへ まず知っておいて欲しいまとめ
商用DBからPostgreSQLへ まず知っておいて欲しいまとめ
Kosuke Kida
T3 pg sql_tuning_basic_20181122
T3 pg sql_tuning_basic_20181122
Haruka Takatsuka
実務で役立つデータベースの活用法
実務で役立つデータベースの活用法
Soudai Sone
Sql database でも使えるほにゃらら
Sql database でも使えるほにゃらら
Oda Shinsuke
カジュアルにセキュリティテストはじめよう #qpstudy
カジュアルにセキュリティテストはじめよう #qpstudy
Masahiro NAKAYAMA
20160416 Azure Data Lakeのはまりどころ
20160416 Azure Data Lakeのはまりどころ
一希 大田
カジュアルにセキュリティテストはじめよう
カジュアルにセキュリティテストはじめよう
Masahiro NAKAYAMA
[B22] PostgresPlus Advanced Server の Oracle Database 互換機能検証 by Noriyoshi Shinoda
[B22] PostgresPlus Advanced Server の Oracle Database 互換機能検証 by Noriyoshi Shinoda
Insight Technology, Inc.
全文検索入門
全文検索入門
antibayesian 俺がS式だ
見栄えだけのグラフを駆逐せよ! 意味あるデータの捉え方
見栄えだけのグラフを駆逐せよ! 意味あるデータの捉え方
Masayasu Kurashina
順序データでもベイズモデリング
順序データでもベイズモデリング
. .
DB設計でこだわりたい三つの要素
DB設計でこだわりたい三つの要素
Takahiro YAMADA
ディープラーニング最近の発展とビジネス応用への課題
ディープラーニング最近の発展とビジネス応用への課題
Kenta Oono
Similar to Web エンジニアが postgre sql を選ぶ 3 つの理由
(20)
Miyazaki流sql
Miyazaki流sql
RDBってなに?
RDBってなに?
第51回NDS PostgreSQLのデータ型 #nds51
第51回NDS PostgreSQLのデータ型 #nds51
Web で変わったクラウドと postgre sql の今と昔
Web で変わったクラウドと postgre sql の今と昔
[B32] クイズと都市伝説から見る、ありのままのPostgreSQL by Shigeyuki Tokuhara
[B32] クイズと都市伝説から見る、ありのままのPostgreSQL by Shigeyuki Tokuhara
Postgre sqlから見るnosql
Postgre sqlから見るnosql
MySQLユーザ視点での小さく始めるElasticsearch
MySQLユーザ視点での小さく始めるElasticsearch
商用DBからPostgreSQLへ まず知っておいて欲しいまとめ
商用DBからPostgreSQLへ まず知っておいて欲しいまとめ
T3 pg sql_tuning_basic_20181122
T3 pg sql_tuning_basic_20181122
実務で役立つデータベースの活用法
実務で役立つデータベースの活用法
Sql database でも使えるほにゃらら
Sql database でも使えるほにゃらら
カジュアルにセキュリティテストはじめよう #qpstudy
カジュアルにセキュリティテストはじめよう #qpstudy
20160416 Azure Data Lakeのはまりどころ
20160416 Azure Data Lakeのはまりどころ
カジュアルにセキュリティテストはじめよう
カジュアルにセキュリティテストはじめよう
[B22] PostgresPlus Advanced Server の Oracle Database 互換機能検証 by Noriyoshi Shinoda
[B22] PostgresPlus Advanced Server の Oracle Database 互換機能検証 by Noriyoshi Shinoda
全文検索入門
全文検索入門
見栄えだけのグラフを駆逐せよ! 意味あるデータの捉え方
見栄えだけのグラフを駆逐せよ! 意味あるデータの捉え方
順序データでもベイズモデリング
順序データでもベイズモデリング
DB設計でこだわりたい三つの要素
DB設計でこだわりたい三つの要素
ディープラーニング最近の発展とビジネス応用への課題
ディープラーニング最近の発展とビジネス応用への課題
More from Soudai Sone
DBの闇を書くにはこの余白は狭すぎる
DBの闇を書くにはこの余白は狭すぎる
Soudai Sone
レガシーな環境からモダンへの挑戦
レガシーな環境からモダンへの挑戦
Soudai Sone
PostgreSQLとpython
PostgreSQLとpython
Soudai Sone
地方エンジニアがPostgreSQLを通じて成長した話
地方エンジニアがPostgreSQLを通じて成長した話
Soudai Sone
知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能
Soudai Sone
DDDハンズオン
DDDハンズオン
Soudai Sone
今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQL
Soudai Sone
Webで役立つRDBの使い方
Webで役立つRDBの使い方
Soudai Sone
中国地方Db勉強会
中国地方Db勉強会
Soudai Sone
Ansibleで始めるpostgre sqlの冗長化
Ansibleで始めるpostgre sqlの冗長化
Soudai Sone
すぐ始めれるクラウド
すぐ始めれるクラウド
Soudai Sone
Osc2014
Osc2014
Soudai Sone
PostgreSQLの冗長化について
PostgreSQLの冗長化について
Soudai Sone
Osh2014
Osh2014
Soudai Sone
Postgre sql9.3新機能 (OSC hiroshima 2013)
Postgre sql9.3新機能 (OSC hiroshima 2013)
Soudai Sone
聞いたら参加したくなるJjug cccの報告
聞いたら参加したくなるJjug cccの報告
Soudai Sone
地方における勉強会事情
地方における勉強会事情
Soudai Sone
Wtm
Wtm
Soudai Sone
今、最も勢いのあるWebフレームワーク「fuel php」
今、最も勢いのあるWebフレームワーク「fuel php」
Soudai Sone
Git hub pagesで告知サイトを作ってみた
Git hub pagesで告知サイトを作ってみた
Soudai Sone
More from Soudai Sone
(20)
DBの闇を書くにはこの余白は狭すぎる
DBの闇を書くにはこの余白は狭すぎる
レガシーな環境からモダンへの挑戦
レガシーな環境からモダンへの挑戦
PostgreSQLとpython
PostgreSQLとpython
地方エンジニアがPostgreSQLを通じて成長した話
地方エンジニアがPostgreSQLを通じて成長した話
知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能
DDDハンズオン
DDDハンズオン
今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQL
Webで役立つRDBの使い方
Webで役立つRDBの使い方
中国地方Db勉強会
中国地方Db勉強会
Ansibleで始めるpostgre sqlの冗長化
Ansibleで始めるpostgre sqlの冗長化
すぐ始めれるクラウド
すぐ始めれるクラウド
Osc2014
Osc2014
PostgreSQLの冗長化について
PostgreSQLの冗長化について
Osh2014
Osh2014
Postgre sql9.3新機能 (OSC hiroshima 2013)
Postgre sql9.3新機能 (OSC hiroshima 2013)
聞いたら参加したくなるJjug cccの報告
聞いたら参加したくなるJjug cccの報告
地方における勉強会事情
地方における勉強会事情
Wtm
Wtm
今、最も勢いのあるWebフレームワーク「fuel php」
今、最も勢いのあるWebフレームワーク「fuel php」
Git hub pagesで告知サイトを作ってみた
Git hub pagesで告知サイトを作ってみた
Recently uploaded
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
Recently uploaded
(10)
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Web エンジニアが postgre sql を選ぶ 3 つの理由
1.
Web エンジニアが PostgreSQL を選ぶ
3 つの理由 PostgreSQLカンファレンス 2014
2.
What is it? データベースは何を基準に選んでますか?
3.
What is it? アプリケーションにとって データの寿命はコードより長い という事実
4.
What is it? なぜPostgreSQLを使うのか
5.
あじぇんだ 1 自己紹介 2 ランキングを作る 3 可変なプロパティを扱う 4 型を極める 5 まとめ
6.
あじぇんだ 1 自己紹介 2 ランキングを作る 3 可変なプロパティを扱う 4 型を極める 5 まとめ
7.
自己紹介 名前:曽根 壮大(そね たけとも) 年齢:30歳(三人の子供がいます) 職業:Webエンジニア 所属:日本PostgreSQLユーザ会 中国支部 支部長 技術的にはLL系言語とかRDBが好きです
8.
中国地方DB勉強会 https://dbstudychugoku.github.io/
9.
10.
あじぇんだ 1 自己紹介 2 ランキングを作る 3 可変なプロパティを扱う 4 型を極める 5 まとめ
11.
ランキングを作る 仕様変更に強いランキングを作る
12.
ランキングを作る Viewに紐づくデータは 仕様変更 の影響を受けやすい
13.
ランキングを作る ランキング
14.
ランキングを作る ランキング ↓ 要件が多様なので影響を受けやすい
15.
名前 戦闘力 フリーザ 530000 悟飯(幼少期)
1307 クリリン(ラディッツ戦) 206 ヤムチャ(ラディッツ戦) 177
16.
ランキングを作る 要件
17.
ランキングを作る 要件 1 戦闘力の降順(DESC)
18.
ランキングを作る 要件 1 戦闘力の降順(DESC) 2 表示は名前と戦闘力
19.
実際のSQL SELECT 名前,戦闘力 FROM キャラクター ORDER BY 戦闘力 DESC
20.
ランキングを作る 要件 1 戦闘力の降順(DESC) 2 表示は名前と戦闘力 3 上位三名を表示
21.
実際のSQL SELECT 名前,戦闘力 FROM キャラクター ORDER BY 戦闘力 DESC LIMIT 3
22.
ランキングを作る 要件 1 戦闘力の降順(DESC) 2 表示は名前と戦闘力 3 上位三名を表示 4 編で分ける
23.
名前 戦闘力 編 フリーザ
530000 フリーザ編 悟飯(幼少期) 1307 ラディッツ編 クリリン 206 ラディッツ編 ヤムチャ 177 ラディッツ編 農夫 5 ラディッツ編 ギニュー 120000 フリーザ編 クリリン 1500 フリーザ編 亀仙人 139 ラディッツ編 ※実務では編は正規化するべき
24.
実際のSQL SELECT 名前,戦闘力 FROM キャラクター WHERE 編 =
‘フリーザ編’ または 編 = ‘ラディッツ編’ ORDER BY 戦闘力 DESC LIMIT 3
25.
ランキングを作る クライアント「それじゃない。」
26.
名前 戦闘力 編 悟飯(幼少期)
1307 ラディッツ編 クリリン 206 ラディッツ編 ヤムチャ 177 ラディッツ編 亀仙人 139 ラディッツ編 農夫 5 ラディッツ編 フリーザ 530000 フリーザ編 ギニュー 120000 フリーザ編 クリリン 1500 フリーザ編
27.
ランキングを作る SQLを二回投げるか?
28.
ランキングを作る ウィンドウ関数
29.
ランキングを作る ウィンドウ関数 ウィンドウ関数は現在の行に何らの 関係するテーブル行の一纏まり全般 の計算を行う。
30.
実際のSQL SELECT rank() OVER ( PARTITION
BY "編" ORDER BY "戦闘力" DESC ) , * FROM "キャラクター";
31.
名前 戦闘力 編 悟飯(幼少期)
1307 ラディッツ編 クリリン 206 ラディッツ編 ヤムチャ 177 ラディッツ編 亀仙人 139 ラディッツ編 農夫 5 ラディッツ編 フリーザ 530000 フリーザ編 ギニュー 120000 フリーザ編 クリリン 1500 フリーザ編
32.
ランキングを作る クライアント 「かつキャラの最大戦闘力で並べて」
33.
名前 戦闘力 編 フリーザ
530000 フリーザ編 フリーザ 10000000 フリーザ編 フリーザ 20000000 フリーザ編 悟飯(幼少期) 1307 ラディッツ編 クリリン 206 ラディッツ編 ヤムチャ 177 ラディッツ編 農夫 5 ラディッツ編 ギニュー 120000 フリーザ編 クリリン 1500 フリーザ編 クリリン 0 フリーザ編 クリリン 10000 フリーザ編 亀仙人 139 ラディッツ編
34.
名前 戦闘力 編 フリーザ
2000000 フリーザ編 ギニュー 120000 フリーザ編 クリリン 10000 フリーザ編 悟飯(幼少期) 1307 ラディッツ編 クリリン 206 ラディッツ編 ヤムチャ 177 ラディッツ編 亀仙人 139 ラディッツ編 農夫 5 ラディッツ編
35.
実際のSQL SELECT rank() OVER ( PARTITION
BY "編" ORDER BY max("戦闘力") DESC ) , "名前", MAX("戦闘力"), "編" FROM "キャラクター" GROUP BY "名前","編";
36.
名前 戦闘力 編 フリーザ
2000000 フリーザ編 ギニュー 120000 フリーザ編 クリリン 1500 フリーザ編 悟飯(幼少期) 1307 ラディッツ編 クリリン 206 ラディッツ編 ヤムチャ 177 ラディッツ編 亀仙人 139 ラディッツ編 農夫 5 ラディッツ編
37.
ランキングを作る 仕様変更に強いランキングを作る
38.
ランキングを作る 開発者 「毎回SQLの差し替えするの辛い」
39.
ランキングを作る Viewを使う
40.
ランキングを作る 街角の声 「Viewを使うと遅いのでは?」
41.
ランキングを作る View
42.
ランキングを作る View • INDEXは効く
43.
ランキングを作る View • INDEXは効く • 参照の際にSQLを実行するだけ
44.
ランキングを作る View • INDEXは効く • 参照の際にSQLを実行するだけ •
元のSQLが遅い場合は当然遅い
45.
ランキングを作る 参照元のテーブルが大きくなった
46.
ランキングを作る 参照元のテーブルが大きくなった ↓ 参照元のSQLが遅い
47.
ランキングを作る マテリアライズドビュー
48.
ランキングを作る マテリアライズドビュー 実体の存在するView。 参照したクエリ結果を保存するため、 参照元を更新した際はマテビューの 更新も必要になる。 ※ただしPostgreSQL 9.3からの機能
49.
ランキングを作る クエリ結果を実体化する
50.
ランキングを作る クエリ結果を実体化する ↓ 高速化
51.
ランキングを作る マテビューは銀の弾丸ではない
52.
ランキングを作る マテビューの問題点 ・リフレッシュ管理が必要(自動更新しない) ※ただし、9.4から自動更新が可能 ・普通のテーブル同様に表領域を消費する ・リフレッシュはそれなりにリソースを使う
53.
ランキングを作る 更新が多いとボトルネックになる
54.
ランキングを作る まとめ
55.
ランキングを作る まとめ 1 データをシンプルに保つ
56.
ランキングを作る まとめ 1 データをシンプルに保つ 2 コード側の実装に依存しない
57.
ランキングを作る まとめ 1 データをシンプルに保つ 2 コード側の実装に依存しない 3 要件に合わせて選択肢を選ぶ
58.
あじぇんだ 1 自己紹介 2 ランキングを作る 3 可変なプロパティを扱う 4 型を極める 5 まとめ
59.
可変なプロパティを扱う
60.
可変なプロパティを扱う • アンケートフォーム
61.
可変なプロパティを扱う • アンケートフォーム • ユーザの付属情報
62.
可変なプロパティを扱う • アンケートフォーム • ユーザの付属情報 •
ブログのタブ
63.
可変なプロパティを扱う • アンケートフォーム • ユーザの付属情報 •
ブログのタブ などなど…
64.
可変なプロパティを扱う アンケートフォーム
65.
可変なプロパティを扱う アンケートフォーム
66.
回答者 キャラクター 回答日 そーだい
榛名 2014/11/28 たけとも 高雄 2014/11/28 soudai1025 大和 2014/11/29
67.
可変なプロパティを扱う アンケートフォーム ここに「択一回答」があるじゃろ? ( ^ω^)←お客様 択一回答
68.
可変なプロパティを扱う アンケートフォーム これを ( ^ω^)←お客様 )択一回答(
69.
可変なプロパティを扱う アンケートフォーム こうして… ( ^ω^)←お客様
70.
可変なプロパティを扱う アンケートフォーム こうじゃ! ( ^ω^)←お客様 複数回答
71.
可変なプロパティを扱う アンケートフォーム
72.
可変なプロパティを扱う アンケートフォーム テキストフォームまで こっそり追加される
73.
可変なプロパティを扱う どのように対応するか
74.
可変なプロパティを扱う データについて
75.
可変なプロパティを扱う データについて • データを消せない
76.
可変なプロパティを扱う データについて • データを消せない • データを変更できない
77.
可変なプロパティを扱う データについて • データを消せない • データを変更できない •
データの追加で対応
78.
可変なプロパティを扱う SQLアンチパターン ↓ カンマ区切り(CSV)で保存 ※ジェイ・ウォーク
79.
回答者 キャラクター 回答日 そーだい
榛名 2014/11/28 たけとも 高雄,榛名 2014/11/28 soudai1025 大和,金剛,武蔵 2014/11/29
80.
回答者 キャラクター 回答日 そーだい
榛名 2014/11/28 たけとも 高雄,榛名 2014/11/28 soudai1025 大和,金剛,武蔵 2014/11/29 保存するデータが カラムのサイズに依存する
81.
可変なプロパティを扱う SQLアンチパターン
82.
可変なプロパティを扱う SQLアンチパターン • 検索が難しい
83.
可変なプロパティを扱う SQLアンチパターン • 検索が難しい • 集計が難しい
84.
可変なプロパティを扱う SQLアンチパターン • 検索が難しい • 集計が難しい •
更新が難しい
85.
可変なプロパティを扱う SQLアンチパターン ↓ データの数だけカラムを増やす ※メタデータトリブン
86.
回答者 キャラ1 キャラ2
キャラ3 回答日 そーだい 榛名 NULL NULL 2014/11/28 たけとも 高雄 榛名 NULL 2014/11/28 soudai1025 大和 金剛 武蔵 2014/11/29
87.
可変なプロパティを扱う SQLアンチパターン
88.
可変なプロパティを扱う SQLアンチパターン • 項目追加の度にカラムが増える
89.
可変なプロパティを扱う SQLアンチパターン • 項目追加の度にカラムが増える • データの可読性が下がる
90.
可変なプロパティを扱う SQLアンチパターン • 項目追加の度にカラムが増える • データの可読性が下がる •
データの整合性を担保が難しい
91.
可変なプロパティを扱う 正規化
92.
回答者 回答日 そーだい 2014/11/28 たけとも
2014/11/28 soudai1025 2014/11/29 回答者 キャラクター そーだい 榛名 たけとも 高雄 たけとも 榛名 soudai1025 大和 soudai1025 金剛 soudai1025 武蔵
93.
可変なプロパティを扱う 最初から正規化すれば両対応
94.
可変なプロパティを扱う 集合でデータを表現する
95.
可変なプロパティを扱う 変更に強くなる
96.
可変なプロパティを扱う PostgreSQLのアプローチ
97.
可変なプロパティを扱う PostgreSQLのアプローチ ↓ 配列型
98.
回答者 キャラクター 回答日 そーだい
{榛名} 2014/11/28 たけとも {高雄,榛名} 2014/11/28 soudai1025 {大和,金剛,武蔵} 2014/11/29
99.
可変なプロパティを扱う 配列型
100.
可変なプロパティを扱う 配列型 • INDEXが効く
101.
可変なプロパティを扱う 配列型 • INDEXが効く • 柔軟な検索(内包なども可能)
102.
可変なプロパティを扱う 配列型 • INDEXが効く • 柔軟な検索(内包なども可能) •
任意の箇所の更新も可能
103.
可変なプロパティを扱う 配列型の注意点 • 外部制約が使えない • ORMが多くの場合使えない
104.
可変なプロパティを扱う 配列型のその他の使い方 • タグなどの複数の値を持たせる • 木構造を表現する
105.
可変なプロパティを扱う 配列型まとめ
106.
可変なプロパティを扱う 配列型まとめ • 外部制約の不要な場合に使う
107.
可変なプロパティを扱う 配列型まとめ • 外部制約の不要な場合に使う • ORMに依存しない場合に使う
108.
可変なプロパティを扱う 配列型まとめ • 外部制約の不要な場合に使う • ORMに依存しない場合に使う •
最初に正規化を検討する
109.
可変なプロパティを扱う もっと柔軟に対応したい
110.
可変なプロパティを扱う もっと柔軟に対応したい • ドキュメント志向
111.
可変なプロパティを扱う もっと柔軟に対応したい • ドキュメント志向 • スキーマレス
112.
可変なプロパティを扱う もっと柔軟に対応したい • ドキュメント志向 • スキーマレス •
Key=>Valueな関係性を保存
113.
可変なプロパティを扱う JSON型
114.
可変なプロパティを扱う JSON型 • JSON本体をカラムに保存
115.
可変なプロパティを扱う JSON型 • JSON本体をカラムに保存 • 高速な参照(INDEXが効く)
116.
可変なプロパティを扱う JSON型 • JSON本体をカラムに保存 • 高速な参照(INDEXが効く) •
各種変換の関数を用意
117.
回答者 JSON 回答日 そーだい
{キャラクタ:[榛名]} 2014/11/28 たけとも {キャラクタ:[高雄,榛名]} 2014/11/28 soudai1025 {キャラクタ:[大和,榛名,武蔵]} 2014/11/29
118.
回答者 JSON 回答日 そーだい
{キャラクタ:[榛名],Lv:40} 2014/11/28 たけとも {キャラクタ:[高雄,榛名]} 2014/11/28 soudai1025 {キャラクタ:[大和,榛名,武蔵]} 2014/11/29
119.
可変なプロパティを扱う JSON型
120.
可変なプロパティを扱う JSON型 • 柔軟にデータを保存できる
121.
可変なプロパティを扱う JSON型 • 柔軟にデータを保存できる • View変更によるDB変更が不要
122.
可変なプロパティを扱う JSON型 • 柔軟にデータを保存できる • View変更によるDB変更が不要 •
9.4からはより強力なJSONB型
123.
可変なプロパティを扱う JSON型の注意点 • 外部制約の不要な場合に使う • ORMに依存しない場合に使う •
問題点は配列型と同様
124.
あじぇんだ 1 自己紹介 2 ランキングを作る 3 可変なプロパティを扱う 4 型を極める 5 まとめ
125.
型を極める 豊富な型の例 • 列挙(enum)型 • ネットワーク・アドレス型 •
範囲型 • 幾何データ型 • 列挙(enum)型 • ネットワーク・アドレス型 • 範囲型 • 幾何データ型
126.
型を極める 型を選ぶ利点
127.
型を極める 型を選ぶ利点 • 正しいデータのみが保存される
128.
型を極める 型を選ぶ利点 • 正しいデータのみが保存される • 正しいソートが行われる
129.
型を極める 型を選ぶ利点 • 正しいデータのみが保存される • 正しいソートが行われる •
適切な検索が行える
130.
型を極める ネットワークアドレス型 • 列挙(enum)型 • ネットワーク・アドレス型 •
範囲型 • 幾何データ型 • IPv4もIPv6も対応 • サブネットマスクの整合性 • 文字列ではなくIPとしてソート
131.
IP 192.1.1.1/32 192.2.1.1/32 192.10.1.1/32
132.
型を極める 幾何データ型 • 列挙(enum)型 • ネットワーク・アドレス型 •
範囲型 • 幾何データ型 • point、boxなど豊富な型 • 充実した関数と演算子 • 地図の範囲検索など
133.
店名 緯度 経度 品川AP
35.630793 139.73786 品川駅 35.630152 139.74044 五反田駅 35.626446 139.723444
134.
実際のSQL SELECT sqrt(power((対象緯度-自分の緯度)*111,2) + power((対象経度-自分の経度)* 91,2)) AS distance 平均で緯度1度あたり111km 平均で経度1度あたり91km
135.
検索例 半径●●メートルの中の登録店を調べる 自分を中心とした円に 含まれているか
136.
実際のSQL SELECT 店名, sqrt(power((お店.緯度 - 自分の緯度) *
111, 2) + power((お店.経度 - 自分の経度) * 91, 2)) AS 距離(km) FROM お店 WHERE circle(point(お店.緯度*91.0,お店.経度*111.0), 円の半径) @ circle(point(自分の緯度*91.0,自分の経度*111.0), 円の半径)
137.
店名 距離(km) 品川AP 0.01 品川駅
0.4
138.
型を極める まとめ • 列挙(enum)型 • ネットワーク・アドレス型 •
範囲型 • 幾何データ型 •
139.
型を極める まとめ • 列挙(enum)型 • ネットワーク・アドレス型 •
範囲型 • 幾何データ型 • 適切な型にデータを入れる
140.
型を極める まとめ • 列挙(enum)型 • ネットワーク・アドレス型 •
範囲型 • 幾何データ型 • 適切な型にデータを入れる • 型を使い不正なデータを無くす
141.
型を極める まとめ • 列挙(enum)型 • ネットワーク・アドレス型 •
範囲型 • 幾何データ型 • 適切な型にデータを入れる • 型を使い不正なデータを無くす • 特別な検索も可能になる
142.
あじぇんだ 1 自己紹介 2 ランキングを作る 3 可変なプロパティを扱う 4 型を極める 5 まとめ
143.
まとめ
144.
まとめ Webは日々複雑になっている
145.
まとめ Webは日々複雑になっている ↓ 取り扱うデータも増えている
146.
まとめ 運用が始まるとデータは変えれない
147.
まとめ 運用が始まるとデータは変えれない ↓ どんなにコードが綺麗でもデータ構造 がダメだとリファクタリングは難しい
148.
まとめ SQLや型を使ってデータを守る
149.
まとめ SQLや型を使ってデータを守る ↓ 運用をシンプルにする
150.
まとめ データの寿命はコードより長い
151.
ご静聴ありがとうございました。
Download now