SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Downloaden Sie, um offline zu lesen
SQLアンチパターン読書会
4章:キーレスエントリ(外部キー嫌い)
2013/6/13(木)
@makopi23
2
4.1 目的: DBのアーキテクチャを単純化する

外部キーを使用しない主な理由
1. データの更新が、参照整合性制約と衝突する。
2.DB設計の柔軟性が極めて高いので、参照整合性制約
をサポートできない
3. データベースが外部キーのために作成するインデックス
が、パフォーマンスに影響すると考えている。
4. 外部キーをサポートしないデータベース製品を使ってい
る
5. 外部キーを宣言する構文を調べなくてはならない。
3
4.2 アンチパターン:外部キー制約を使用しない
 外部キー制約を使用しないと
➢
データベース設計がシンプルになる...?
➢ 柔軟性が高まる...?
➢ 実行速度が早くなる...?
 代償(トレードオフ)
➢
開発者が、参照整合性を保証するためのコードを書く
責任が生じる。
4
4.2.1 完璧なコードを前提にしている (1/2)
● 参照整合性を保証するための解決策
➢
データの関連付けを常に維持するためのコードを書く。
➢ 変更を適用する前に追加のSELECTクエリを実行し、
変更によって参照が壊れないことを確認する。
✔ 例1:
行を挿入する前に、親の行が存在することを確認する。
✔
例2:
行を削除する前に、子の行が存在しないことを確認する。
5
4.2.1 完璧なコードを前提にしている (2/2)
● この解決策の欠点
➢ 確認クエリを実行した直後に、別の場所で誰かにDBを
更新された場合に不具合が生じる可能性が出る。
➢
「確認+更新」の間、テーブルロックをかければ上記の
問題は解決するが、性能問題など別の問題に直面す
る。
6
4.2.2 ミスを調べなければならない
● 間違った解決策
➢
壊れた参照をチェックするスクリプトを書く
●
なぜダメなのか
➢ すべての参照に対してスクリプトが必要となる
➢
数百ものチェックを毎日、何回も実行しなくてはならない
➢
壊れた参照を検出したとしても、修正できるとは限らな
い
7
4.2.3 「私のミスではありません!」
● データベースに関するすべてのコードが完璧であ
ることは、まずありえない。
➢ すべての更新ロジックに対し、参照整合性を担保するた
めの対処を施したか確認するのは、簡単ではない。
(複数のアプリが同一のDBにアクセスすることもある)
➢ あるユーザが、SQL実行ツールや自ら書いたスクリプト
によって直接DBを変更し、参照を壊してしまう可能性が
ある。
DBDBにアクセスするすべてのアプリとスクリプトがにアクセスするすべてのアプリとスクリプトが
正しく変更を行ったかどうかは、信頼できない!正しく変更を行ったかどうかは、信頼できない!
8
4.2.4 「キャッチ=22」なUPDATE
● 子の行が依存する列をUPDATEする際のジレンマ
➢
親の行を更新するまで、子の行の更新はできない
➢ 親の更新も、参照する子の値を更新する前に実行でき
ない
● 親と子を両方同時に変更する必要があるが、2つ
の異なる更新処理を同時に実行することは不可能
9
4.3 アンチパターンの見つけ方
 次のような言葉を耳にしたらアンチパターンの兆候
があることを示している。
➢ あるテーブルには存在するけど、もう1つのテーブルに
は存在しない値を調べるクエリは、どう書けばいい?
➢ あるテーブルの値が、別のテーブルへの挿入に使われ
ていることを簡単にチェックする方法はある?
➢
外部キー?データベースの実行速度を遅くするから、
使ってはならないと教わったのだけど。
10
4.4 アンチパターンを用いても良い場合
● 外部キーをサポートしていないデータベース製品を
使わざるを得ない場合
➢ MySQLのMyISAMストレージエンジン
➢ バージョン3.6.19未満のSQLite
● 外部キーを用いた関連付けを行えない、極端に柔
軟なデータベース設計を扱わなければならない場
合
11
4.5 解決策:外部キー制約を宣言する
 参照整合性の強制の利点
➢
データの不整合を検出してから修正するのではなく、
DBへの登録時点でミスを阻止できる。
➢
既存のコードも、その場限りのクエリも、同じ外部キー
に従うようになる。
➢ うっかり見逃していたコードが、この制約の強制を逃れ
ることがなくなる。
➢
不要なコードを書く手間を省く。
➢ DBを変更した場合でも、すべてのコードが同じように
適切に動作することを保証する。
➢ コードの作成だけでなく、修正や保守の時間も大幅に
削減してくれる。
12
4.5.1 複数テーブルの変更をサポートする
カスケード更新
CREATE TABLE Bugs (
-- 他の列. . .
reported_by BIGINT UNSIGNED NOT NULL,
status VARCHAR(20) NOT NULL DEFAULT 'NEW',
FOREIGN KEY (reported_by) REFERENCES Accounts(account_id)
ON UPDATE CASCADEON UPDATE CASCADE
ON DELETE RESTRICT,ON DELETE RESTRICT,
FOREIGN KEY (status) REFERENCES BugStatus(status)
ON UPDATE CASCADE
ON DELETE SET DEFAULTON DELETE SET DEFAULT);
13
4.5.2 オーバーヘッド、…にはなりません
●
外部キー制約によって、多少のオーバーヘッドが生じ
るのは事実。
●
しかし、以下に挙げるように、ほかの選択肢と比べる
と、外部キーの方がより効果的
➢ 挿入、更新、削除の際に、チェックのためにSELECTクエリ
を実行する必要がない。
➢
複数テーブルの変更を防ぐために、テーブルをロックする
必要がない。
➢
他の方法のように孤児が生じてしまうことがないので、デー
タ品質管理用スクリプトを定期的に実行する必要がない。
14
まとめ
● 外部キーは簡単に使え、パフォーマンスも改善す
る。
● 単純か複雑化に問わず、あらゆるデータの変更に
おける参照整合性の維持に役立つ。
データベースでのミスの発生を未然にデータベースでのミスの発生を未然に
防ぐために、外部キー制約を用いましょう。防ぐために、外部キー制約を用いましょう。
15
参考図書
 書籍「データベースリファクタリング」
第8章:参照整合性リファクタリング
➢
外部キー制約の追加
➢
計算カラムへのトリガーの追加
➢
外部キー制約の削除
➢
カスケード削除の導入
➢
ハードデリートの導入
➢
ソフトデリートの導入
➢
履歴のためのトリガーの導入
16
データベースリファクタリング:第8章

遅延制約チェック
制約の妥当性のチェックは、トランザクション終了時まで
遅延できる。
– 遅延制約:
制約が満たされているかどうかのチェックがコミット時にし
か実行されない。遅延制約違反があると、コミット時にそ
のトランザクションは取り消される。
– 即時制約:
チェックはそれぞれの文が終わった時点で実行される。
制約違反があると、その文は即時にロールバックされる。
Oracle 11g:
http://otndnld.oracle.co.jp/document/products/oracle11g/1
11/doc_dvd/server.111/E05765-03/data_int.htm#66501

Weitere ähnliche Inhalte

Was ist angesagt?

SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)Takuto Wada
 
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込む45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込むYoshiki Hayama
 
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)Mikiya Okuno
 
まじめに!できる!LT
まじめに!できる!LT まじめに!できる!LT
まじめに!できる!LT Akabane Hiroyuki
 
Java ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsugJava ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsugMasatoshi Tada
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計Yoshinori Matsunobu
 
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツオブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ増田 亨
 
新人研修資料 向き合うエンジニア
新人研修資料 向き合うエンジニア新人研修資料 向き合うエンジニア
新人研修資料 向き合うエンジニアakira6592
 
外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話ichirin2501
 
deep dive distributed tracing
deep dive distributed tracingdeep dive distributed tracing
deep dive distributed tracingTakayoshi Tanaka
 
こわくない Git
こわくない Gitこわくない Git
こわくない GitKota Saito
 
ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計sairoutine
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)mosa siru
 
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方増田 亨
 
入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き土岐 孝平
 
SQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するかSQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するかShogo Wakayama
 
モダンフロントエンド開発者に求められるスキルとは
モダンフロントエンド開発者に求められるスキルとはモダンフロントエンド開発者に求められるスキルとは
モダンフロントエンド開発者に求められるスキルとはTakuya Tejima
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021Hiroshi Tokumaru
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織Takafumi ONAKA
 

Was ist angesagt? (20)

SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
 
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込む45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
 
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
 
まじめに!できる!LT
まじめに!できる!LT まじめに!できる!LT
まじめに!できる!LT
 
Java ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsugJava ORマッパー選定のポイント #jsug
Java ORマッパー選定のポイント #jsug
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
 
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツオブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
 
新人研修資料 向き合うエンジニア
新人研修資料 向き合うエンジニア新人研修資料 向き合うエンジニア
新人研修資料 向き合うエンジニア
 
外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話
 
deep dive distributed tracing
deep dive distributed tracingdeep dive distributed tracing
deep dive distributed tracing
 
こわくない Git
こわくない Gitこわくない Git
こわくない Git
 
ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計
 
Tackling Complexity
Tackling ComplexityTackling Complexity
Tackling Complexity
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
 
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方
 
入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き
 
SQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するかSQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するか
 
モダンフロントエンド開発者に求められるスキルとは
モダンフロントエンド開発者に求められるスキルとはモダンフロントエンド開発者に求められるスキルとは
モダンフロントエンド開発者に求められるスキルとは
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 

Ähnlich wie SQLアンチパターン読書会 4章 キーレスエンエントリ(外部キー嫌い)

お悩み解決! データベースの仮想化統合(DBの仮想化統合には気をつけろ!)
お悩み解決!データベースの仮想化統合(DBの仮想化統合には気をつけろ!)お悩み解決!データベースの仮想化統合(DBの仮想化統合には気をつけろ!)
お悩み解決! データベースの仮想化統合(DBの仮想化統合には気をつけろ!)オラクルエンジニア通信
 
実はとても面白い...Documentation library
実はとても面白い...Documentation library実はとても面白い...Documentation library
実はとても面白い...Documentation libraryKouta Shiobara
 
MySQL最新情報
MySQL最新情報MySQL最新情報
MySQL最新情報yoyamasaki
 
SharePoint 2013 Preview レビュー
SharePoint 2013 Preview レビューSharePoint 2013 Preview レビュー
SharePoint 2013 Preview レビューHirofumi Ota
 
2015-12-16 某S社、出直しDDDってるってよ
2015-12-16 某S社、出直しDDDってるってよ2015-12-16 某S社、出直しDDDってるってよ
2015-12-16 某S社、出直しDDDってるってよkumake
 
楽天における大規模データベースの運用
楽天における大規模データベースの運用楽天における大規模データベースの運用
楽天における大規模データベースの運用Rakuten Group, Inc.
 
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』Insight Technology, Inc.
 
JANOG37 Pattern BoF text
JANOG37 Pattern BoF textJANOG37 Pattern BoF text
JANOG37 Pattern BoF textKen SASAKI
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイントKentaro Matsui
 
非エンジニアのSQL活用が加速させる事業成長
非エンジニアのSQL活用が加速させる事業成長非エンジニアのSQL活用が加速させる事業成長
非エンジニアのSQL活用が加速させる事業成長Keiko Inagaki
 
AWS朝会2022/1 セッション① 数年間、レイクハウスを設計運用してみた
AWS朝会2022/1	セッション① 数年間、レイクハウスを設計運用してみたAWS朝会2022/1	セッション① 数年間、レイクハウスを設計運用してみた
AWS朝会2022/1 セッション① 数年間、レイクハウスを設計運用してみたtatsuya 264
 
CoreDataをバックグラウンドで扱うためのTips
CoreDataをバックグラウンドで扱うためのTipsCoreDataをバックグラウンドで扱うためのTips
CoreDataをバックグラウンドで扱うためのTipsYohei Yamaguchi
 
Azure SQLデータベース最新動向&TIPS
Azure SQLデータベース最新動向&TIPSAzure SQLデータベース最新動向&TIPS
Azure SQLデータベース最新動向&TIPSnishioka1
 
Miyazaki流sql
Miyazaki流sqlMiyazaki流sql
Miyazaki流sqlhafuu
 
20180922 jazug8 cosmosdb_search
20180922 jazug8 cosmosdb_search20180922 jazug8 cosmosdb_search
20180922 jazug8 cosmosdb_searchKazuhiro Wada
 
コンテキストデータの永続化のための戦略
コンテキストデータの永続化のための戦略コンテキストデータの永続化のための戦略
コンテキストデータの永続化のための戦略fisuda
 
データベース技術の羅針盤
データベース技術の羅針盤データベース技術の羅針盤
データベース技術の羅針盤Yoshinori Matsunobu
 
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06Mikiya Okuno
 

Ähnlich wie SQLアンチパターン読書会 4章 キーレスエンエントリ(外部キー嫌い) (20)

お悩み解決! データベースの仮想化統合(DBの仮想化統合には気をつけろ!)
お悩み解決!データベースの仮想化統合(DBの仮想化統合には気をつけろ!)お悩み解決!データベースの仮想化統合(DBの仮想化統合には気をつけろ!)
お悩み解決! データベースの仮想化統合(DBの仮想化統合には気をつけろ!)
 
実はとても面白い...Documentation library
実はとても面白い...Documentation library実はとても面白い...Documentation library
実はとても面白い...Documentation library
 
MySQL最新情報
MySQL最新情報MySQL最新情報
MySQL最新情報
 
SharePoint 2013 Preview レビュー
SharePoint 2013 Preview レビューSharePoint 2013 Preview レビュー
SharePoint 2013 Preview レビュー
 
超高速な機械学習を Oracle Database で実現!
超高速な機械学習を Oracle Database で実現!超高速な機械学習を Oracle Database で実現!
超高速な機械学習を Oracle Database で実現!
 
2015-12-16 某S社、出直しDDDってるってよ
2015-12-16 某S社、出直しDDDってるってよ2015-12-16 某S社、出直しDDDってるってよ
2015-12-16 某S社、出直しDDDってるってよ
 
Oracle設計
Oracle設計Oracle設計
Oracle設計
 
楽天における大規模データベースの運用
楽天における大規模データベースの運用楽天における大規模データベースの運用
楽天における大規模データベースの運用
 
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』
[db tech showcase Tokyo 2018] #dbts2018 #D1L 『"何が必要?どう実現?"~異種DB間データリアルタイム連携』
 
JANOG37 Pattern BoF text
JANOG37 Pattern BoF textJANOG37 Pattern BoF text
JANOG37 Pattern BoF text
 
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント
 
非エンジニアのSQL活用が加速させる事業成長
非エンジニアのSQL活用が加速させる事業成長非エンジニアのSQL活用が加速させる事業成長
非エンジニアのSQL活用が加速させる事業成長
 
AWS朝会2022/1 セッション① 数年間、レイクハウスを設計運用してみた
AWS朝会2022/1	セッション① 数年間、レイクハウスを設計運用してみたAWS朝会2022/1	セッション① 数年間、レイクハウスを設計運用してみた
AWS朝会2022/1 セッション① 数年間、レイクハウスを設計運用してみた
 
CoreDataをバックグラウンドで扱うためのTips
CoreDataをバックグラウンドで扱うためのTipsCoreDataをバックグラウンドで扱うためのTips
CoreDataをバックグラウンドで扱うためのTips
 
Azure SQLデータベース最新動向&TIPS
Azure SQLデータベース最新動向&TIPSAzure SQLデータベース最新動向&TIPS
Azure SQLデータベース最新動向&TIPS
 
Miyazaki流sql
Miyazaki流sqlMiyazaki流sql
Miyazaki流sql
 
20180922 jazug8 cosmosdb_search
20180922 jazug8 cosmosdb_search20180922 jazug8 cosmosdb_search
20180922 jazug8 cosmosdb_search
 
コンテキストデータの永続化のための戦略
コンテキストデータの永続化のための戦略コンテキストデータの永続化のための戦略
コンテキストデータの永続化のための戦略
 
データベース技術の羅針盤
データベース技術の羅針盤データベース技術の羅針盤
データベース技術の羅針盤
 
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
 

Kürzlich hochgeladen

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 

Kürzlich hochgeladen (10)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 

SQLアンチパターン読書会 4章 キーレスエンエントリ(外部キー嫌い)