SlideShare a Scribd company logo
1 of 25
© 2023 NTT DATA Corporation
YugabyteDBの拡張機能
YugabyteDB Meetup #2
2023/6/14
NTTデータ 技術開発本部
笠原 辰仁
© 2023 NTT DATA Corporation 2
はじめに
• 自己紹介
• 笠原 辰仁 (KASAHARA Tatsuhito) @kasa_zip (Twitter)
• NTTデータ 技術革新統括本部 技術開発本部
• PostgreSQLのサポートや周辺ツールの開発などを18年以上
• 最近はYugabyteDBなどの分散SQLデータベース/NewSQLなども調査・検証
本日はPostgreSQLユーザの視点でYugabyteDBの拡張機能(Extension)の特徴などを
お話します。PostgreSQLやYugabyteDBの基本的な話は省いていますのでご容赦ください。
本日の内容は2023年6月の時点の情報となります。またYCQLの話は含んでいません。
この資料は後日に公開します。
© 2023 NTT DATA Corporation 3
目次
• Extensionについて
• YugabyteDBで利用できるExtension
• YugabyteDBで独自に改良しているExtension
• YugabyteDBでサポートされると嬉しいExtension
© 2023 NTT DATA Corporation 4
© 2022 NTT DATA Corporation 4
Extensionについて
© 2023 NTT DATA Corporation 5
Extensionについて
ExtensionはPostgreSQLの拡張機能を利用し、ユーザ定義の独自機能を含む
PostgreSQLへの機能追加を行うためのパッケージフレームワーク、あるいは拡張機能そのものを
指す。(本資料では拡張機能全般をExtensionと呼んでいる)
YugabyteDBはPostgreSQLと高い互換性を持っているため、PostgreSQLで利用可能な
Extensionをほぼそのまま利用することが可能。Extensionには大きく以下の3種類がある。
1. DBにオブジェクトを登録し、ユーザがそれを利用するもの
• (例 pgcrypto, pg_trgm
2. shared_preload_librariesなどに登録し、透過的に作用するもの
• (例 passwordcheck, auto_explain
3. 上記2つを併せ持つもの
• (例 pg_stat_statements, pg_hint_plan
© 2023 NTT DATA Corporation 6
DBにオブジェクトを登録し、ユーザがそれを利用するもの
DBにユーザ定義のオブジェクトを登録し、ユーザがそれを利用するもの。PostgreSQLはもともと
ユーザ定義のテーブルやビュー、データ型、(集約)関数、演算子、さらには新規のインデックスや
KVS/Columnarなどのデータモデルを作成し拡張できる。
多くの拡張機能はこのタイプ。利便性を高める関数やビュー、業務に特化した特殊なデータ型な
どが利用可能になる。PL/pgSQLなどのプロシージャ言語の他、CやRustなどでも作成可能。
PostgreSQL
CREATE EXTENSION xxxxx;
CREATE TABLE (col xxxx);
SELECT xxxxx();
【CREATE EXTENSIONの背後で関数などの作成が実施される】
CREATE TYPE xxxx;
CREATE FUNCTION xxxx();
・・・
© 2023 NTT DATA Corporation 7
DBにオブジェクトを登録し、ユーザがそれを利用するもの
ノード#1
YB-Master
YB-Tserver
ノード#2
YB-Tserver
ノード#3
YB-Tserver
YugabyteDBではSQLをTserver(postgresプロセス)で実施する。DB内に作成するテーブル
や関数などの情報はメタデータとしてMasterが管理する。そのため、DBに関数などを登録する
ExtensionはどこかのTserver上で実施すれば全てのTserverで利用可能になる。
CREATE EXTENSION xxxxx;
【関数などはMasterへ登録される】
CREATE TYPE xxxx;
CREATE FUNCTION xxxx();
・・・
CREATE TABLE (col xxxx);
SELECT xxxxx();
© 2023 NTT DATA Corporation 8
shared_preload_librariesなどに登録し、透過的に作用するもの
PostgreSQLのコード内部に定義されている様々なHookを利用する。 Hookは関数ポインタの
形でユーザが処理を差し込むことができるため、アドバンスな性能情報や内部処理のユーザカスタ
マイズが可能になる。shared_preload_librariesに拡張機能のライブラリを指定することで、
PostgreSQLのプロセスがForkされる際にHookの処理がロードされ有効化される。
PostgreSQL
Parse
Analyze/Rewrite
Plan
Execute
ExecutorStart_hook()
ExecutorEnd_hook()
shared_preload_libraries=
‘My_Extension’
My_ExecutorStart_hook()
My_ExecutorEnd_hook()
PostgreSQLの内部処理をフックして、独自の処理を差し込める。
例えばExecutorStart(クエリの実際の処理開始)でタイムスタンプを
取得し、ExecutorEnd(クエリの処理終了)で開始時との時間差分で
所要時間の計測などを行う、など。
Query
Result
© 2023 NTT DATA Corporation 9
shared_preload_librariesなどに登録し、透過的に作用するもの
YugabyteDBでも設定方法や作用はPostgreSQLと同様。shared_preload_librariesは
各Tserver個別で設定するため、例えば既存クラスタに追加のExtensionを導入する際は全て
のTserverの設定変更が必要。
ノード#1
YB-Tserver
ノード#2
YB-Tserver
ノード#3
YB-Tserver
Hookを利用するExtensionは各Tserverの(ysql_pg_confに指定される)shared_preload_librariesに
設定されることで有効化。そのため設定していないTserverでは無効になる。
© 2023 NTT DATA Corporation 10
2つを併せ持つもの
Hookを用いて取得される内部情報は、多くのケースで共有バッファなどに蓄積される。これら情
報の取得や情報のリセットなどをSQLで実施できるように、専用のビューや関数もセットで提供さ
れることが多い。
PostgreSQL
Parse
Analyze/Rewrite
Plan
Execute
ExecutorStart_hook()
ExecutorEnd_hook()
pg_stat_statements
pgss_ExecutorStart()
pgss_ExecutorEnd()
Query
Result
Hash Table
pg_stat_statemens view
pg_stat_statemens.reset() func
CREATE EXTENSION
pg_stat_statements;
SELECT * FROM
pg_stat_statements;
Hookで取得した情報を共有バッファ上のハッシュテー
ブルへ蓄積し、それらをCREATE EXTENSIONで
導入されるビューの形で参照させたりする。
(注意:pg_stat_statementsは他にも多数のHook
を使っている。図は簡略化している。)
© 2023 NTT DATA Corporation 11
2つを併せ持つもの
YugabyteDBではHookで取得される情報はTserver個別となる。例えばクエリの実行回数や累積所
要時間などのクエリの稼働統計情報を記録するpg_stat_statementsであれば、あるTserverで実行
されたクエリの性能統計情報は、そのTserver上でのみ記録している。そのためpg_stat_statements
の情報をユーザが直接参照している場足、クラスタ全体の情報を集約するのはユーザが行うことになる。
ノード#1
YB-Tserver
Query A
Query Aの稼働
統計情報を記録
Query C
ノード#3
YB-Tserver
Query Cの稼働
統計情報を記録
ノード#2
YB-Tserver
Query Bの稼働
統計情報を記録
Query B
各Tserverノード上で実行されたクエリの稼働統計情報は、それぞれ
のTserverでのみ保持される(メモリ上のデータでありTableやTabletの
形で保持されるもぼではないためレプリケーションはされない)
© 2023 NTT DATA Corporation 12
Extensionについて
Extensionの挙動に作用する設定パラメータなどの種類や使い方もPostgreSQLと同様。例えば、
auto_explain.log_min_durationによる設定をユーザ(ROLE)毎に設定して実行計画ログを
出力する閾値を異なるものにする、なども可能。
このように自由度の高いユーザ定義のオブジェクト作成や内部処理に干渉できるHookなどの活用
により様々な拡張機能が開発・利用できる。Extensionに関する設定や利用方法、ノウハウは
PostgreSQLとほぼ同様のものが使える。
-- app_user1にはauto_explainによる実行計画情報の出力閾値を10秒に設定
ALTER ROLE app_user1 SET auto_explain.log_min_duration TO ‘10s’;
-- app_user2にはauto_explainによる実行計画情報の出力を無効にする設定
ALTER ROLE app_user2 SET auto_explain.log_min_duration TO -1;
© 2023 NTT DATA Corporation 13
© 2022 NTT DATA Corporation 13
YugabyteDBで利用できるExtension
© 2023 NTT DATA Corporation 14
YugabyteDBで利用できるExtension
YugabyteDBではいくつかのPostgreSQL向けのExtensionをサポートしている。また、
YugabyteDB独自のExtensionも提供(あるいは開発中)。
https://docs.yugabyte.com/preview/explore/ysql-language-features/pg-extensions/
代表的なExtension 備考
PostgreSQLに同梱されており
YugabyteDBに同梱しているもの
pg_stat_statements, auto_explain,
pgcrypto, passwordcheck
YugabyteDB独自の機能付与を行って
いるものあり(後述)
Third-Party-ToolでYugabyteDB
に同梱しているもの
pg_hint_plan, orafce, pg_audit
Third-Party-ToolでYugabyteDB
で利用可能
PostGIS, pgsql-postal 手動でExtensionを入手し各Tserverへ
インストール(共有ライブラリなどの配置)を
しておく
YugabyteDB独自のもの yb_pg_metrics, ycql_fdw
YugabyteDBでは「pg_stat_statements, pg_audit, yb_pg_metrics, pg_hint_plan」がデフォルトで
shared_preload_librariesに設定されている。
© 2023 NTT DATA Corporation 15
YugabyteDBで利用できるExtension
ここ1年くらいでも利用可能なExtensionが増えており、新規のExtensionの導入の議論も行わ
れている。
ここ最近サポートされたもの
• v2.17
• [16092] [YSQL] Import HyperLogLog extension (postgresql-hll) ★カーディナリティ(ユニーク数)推定
• v2.15
• [2778] Add support for HypoPG extension★仮想インデックスによるプランチューニング
サポートに向けて議論されているもの(一部抜粋)
• [YSQL] Support pg_partman extension ★パーティション管理
• [New Feature] support for pgvector extension ★ベクトル情報の格納
• [New Feature] Add support for the Apache age extension to enable graph operations
★グラフモデルとアクセス用の機能
© 2023 NTT DATA Corporation 16
© 2022 NTT DATA Corporation 16
YugabyteDBで独自に改良しているExtension
© 2023 NTT DATA Corporation 17
YugabyteDBで独自に改良しているExtension
YugabyteDBではPostgreSQLのExtensionを独自に改良しているものがある。そのため
PostgreSQLユーザからは(場合によっては良い意味で)異なる仕様に見える。
本日はpasswordcheckとpg_stat_statementsの2つを紹介。
© 2023 NTT DATA Corporation 18
passwordcheckの改良
passwordcheckは文字通りパスワードの強度チェックを行うためのExtension。
CREATE ROLE(USER)実行時に「check_password_hook」というHookを介して独自のパスワード
チェックをPostgreSQLで実現できる。
PostgreSQLのpasswordcheckはハードコードされた「文字数(8文字)」と「英数字と記号の併用」の
みチェックしている。そもそもユーザがコードをカスタマイズして利用する前提の作り。
一方YugabyteDBは「文字数」「記号利用有無」「大文字利用有無」「小文字利用有無」「ユーザ名が
パスワードに含まれるか」がGUCパラメータ(Gflags)により設定可能な形で作られている。(ユーザ名がパ
スワードに含まれているかどうかの判断のみ、ハードコードされている)
CREATE ROLE
check_password_hook
PostgreSQLのpasswordcheck
check_password()
YugabyteDBのpasswordcheck
check_password()
パスワード文字数と英数字と記号
併用がされているか確認
passwordcheck.minimum_length
passwordcheck.restrict_lower
・・・
文字数や大文字小文字の利用
有無などを設定パラメータに従って
確認
© 2023 NTT DATA Corporation 19
pg_stat_statementsの改良
pg_stat_statementsの作りはPostgreSQLとほぼ同様だが、メトリクスの形でTserverが公開してい
るエンドポイント(:13000/statements)からもJSON形式で情報を取得できるようになっている。
YugabyteDB (Tserver)
Parse
Analyze/Rewrite
Plan
Execute
ExecutorStart_hook()
ExecutorEnd_hook()
pg_stat_statements
pgss_ExecutorStart()
pgss_ExecutorEnd()
Query
Result
Hash Table
pg_stat_statemens view
/statements でのJSON
情報でのエクスポート
SELECT * FROM
pg_stat_statements;
curl
http://xxxxx/statements
(注意:YugabyteDBでもPostgreSQL同様に
pg_stat_statementsは他にも多数のHookを使って
いる。図は簡略化している。)
© 2023 NTT DATA Corporation 20
pg_stat_statementsの改良
◆ curlによる取得例
$ curl -s http://<Tserver稼働ホスト>:13000/statements | jq '.statements[0]'
{
"query_id": -5817076229292125425,
"query": "SELECT c.oid::pg_catalog.regclass FROM pg_catalog.pg_class c, pg_catalog.pg_inherits i
WHERE c.oid=i.inhparent AND i.inhrelid = $1 AND c.relkind != $2 ORDER BY inhseqno",
"calls": 1,
"total_time": 0.19514599999999999,
"min_time": 0.19514599999999999,
"max_time": 0.19514599999999999,
"mean_time": 0.19514599999999999,
"stddev_time": 0.0,
"rows": 0
}
© 2023 NTT DATA Corporation 21
pg_stat_statementsの改良
また、独自に「レイテンシ(ms)のレンジとcall数」をヒストグラムとして記録する改良がv2.19で実施されており、90%ile
値などを取得できるようになっている。
https://github.com/yugabyte/yugabyte-db/commit/2fd44b1f8337fa21f4ca61569231a70f1987beb8
【Github上のCommit Messageより転載】
yugabyte=# select query, calls, yb_latency_histogram from pg_stat_statements;
-[ RECORD 1]-----------------------------------------------------------------
query | select pg_sleep($1)
calls | 9
yb_latency_histogram | [{"[0.1,0.2)": 4}, {"[0.2,0.3)": 1}, {"[0.8,0.9)": 1}, {"[1677721.6,)": 3}]
「レイテンシ(ms)のレンジとcall数」が複数のBucketで記録される。データ型はJSONB。
pg_stat_statementsでは各クエリ(ID)別にmin/max/mean/stddevは記録されるが、ヒストグラム
相当の分布情報を復元するのは難しいためDBAにはありがたい改良点。
© 2023 NTT DATA Corporation 22
© 2022 NTT DATA Corporation 22
YugabyteDBでサポートされると嬉しいExtension
© 2023 NTT DATA Corporation 23
YugabyteDBでサポートされると嬉しいExtension
PostgreSQLを利用しているプロジェクトでは、以下のYugabyteDBでは未サポートの
Extensionを使うケースがある。
• pg_bigm
• Pgroonga
これらは全文検索(Full Text Search)用のExtensionで、N-Gramや形態素解析での全文
検索を補助するための関数や演算子、インデックスアクセスメソッドを提供する。
YugabyteDBではpg_trgmというPostgreSQLのExtensionをサポートしているが、日本語
で多用される2文字検索ができない。YugabyteDBでもpg_bigm or PGroongaがサポート
されるとユースケースの幅が広がる。
© 2023 NTT DATA Corporation 24
おわりに
PostgreSQLのほとんどのExtensionがYugabyteDBでも同じように動くのは、PostgreSQL
ユーザとして既存のアプリケーションの作りや設計を流用しやすく有難い。
また、PostgreSQLコミュニティとしては非推奨機能(※)ではあるが、エンタープライズ領域で利用
することが多いpg_hint_planなどのサードパーティーツールがデフォルトで利用可能になっている
こともメリットと感じる。
さらに様々なExtensionがサポートされると、YugabyteDBの利用ケースの広がりそうで楽しみ。
(※) 本質的なクエリ記述の問題やPlannerの不具合を隠ぺいしてしまう、などの負の作用があるため。
https://wiki.postgresql.org/wiki/Not_Worth_Doing#Features_We_Do_Not_Want
© 2023 NTT DATA Corporation
その他、記載されている会社名、商品名、又はサービス名は、
各社の登録商標又は商標です。

More Related Content

What's hot

PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...NTT DATA Technology & Innovation
 
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...NTT DATA Technology & Innovation
 
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)NTT DATA Technology & Innovation
 
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...NTT DATA Technology & Innovation
 
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...NTT DATA Technology & Innovation
 
PostgreSQL16新機能紹介 - libpq接続ロード・バランシング(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL16新機能紹介 - libpq接続ロード・バランシング(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQL16新機能紹介 - libpq接続ロード・バランシング(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL16新機能紹介 - libpq接続ロード・バランシング(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)NTT DATA Technology & Innovation
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションMasahiko Sawada
 
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)NTT DATA Technology & Innovation
 
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)NTT DATA Technology & Innovation
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)NTT DATA Technology & Innovation
 
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)NTT DATA Technology & Innovation
 
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)NTT DATA Technology & Innovation
 
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)NTT DATA Technology & Innovation
 

What's hot (20)

PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
 
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
オンライン物理バックアップの排他モードと非排他モードについて ~PostgreSQLバージョン15対応版~(第34回PostgreSQLアンカンファレンス...
 
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
 
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
トランザクション処理可能な分散DB 「YugabyteDB」入門(Open Source Conference 2022 Online/Fukuoka 発...
 
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
 
PostgreSQL16新機能紹介 - libpq接続ロード・バランシング(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL16新機能紹介 - libpq接続ロード・バランシング(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQL16新機能紹介 - libpq接続ロード・バランシング(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL16新機能紹介 - libpq接続ロード・バランシング(第41回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
 
アーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーションアーキテクチャから理解するPostgreSQLのレプリケーション
アーキテクチャから理解するPostgreSQLのレプリケーション
 
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
分析指向データレイク実現の次の一手 ~Delta Lake、なにそれおいしいの?~(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_walinspectについて調べてみた!(第37回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
 
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
オンプレミス回帰の動きに備えよ ~クラウドの手法をオンプレミスでも実現するには~(CloudNative Days Fukuoka 2023 発表資料)
 
Vacuum徹底解説
Vacuum徹底解説Vacuum徹底解説
Vacuum徹底解説
 
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
MesonでPostgreSQLをビルドしてみよう!(第39回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
PostgreSQL: XID周回問題に潜む別の問題
PostgreSQL: XID周回問題に潜む別の問題PostgreSQL: XID周回問題に潜む別の問題
PostgreSQL: XID周回問題に潜む別の問題
 
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
 
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
PostgreSQL13でのレプリケーション関連の改善について(第14回PostgreSQLアンカンファレンス@オンライン)
 

Similar to YugabyteDBの拡張機能(YugabyteDB Meetup #2 発表資料)

サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密
サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密
サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密ShuheiUda
 
20150704 MS Azure最新 - innovation egg 第4回
20150704 MS Azure最新 - innovation egg 第4回20150704 MS Azure最新 - innovation egg 第4回
20150704 MS Azure最新 - innovation egg 第4回Keiji Kamebuchi
 
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...NTT DATA Technology & Innovation
 
build2017のazure関連情報まとめ
build2017のazure関連情報まとめbuild2017のazure関連情報まとめ
build2017のazure関連情報まとめ裕之 木下
 
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
祝!PostgreSQLレプリケーション10周年!徹底紹介!!祝!PostgreSQLレプリケーション10周年!徹底紹介!!
祝!PostgreSQLレプリケーション10周年!徹底紹介!!NTT DATA Technology & Innovation
 
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)NTT DATA Technology & Innovation
 
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...NTT DATA Technology & Innovation
 
Oracle Cloud Infrastructure:2022年11月度サービス・アップデート
Oracle Cloud Infrastructure:2022年11月度サービス・アップデートOracle Cloud Infrastructure:2022年11月度サービス・アップデート
Oracle Cloud Infrastructure:2022年11月度サービス・アップデートオラクルエンジニア通信
 
20180914 GTCJ INCEPTION HeteroDB
20180914 GTCJ INCEPTION HeteroDB20180914 GTCJ INCEPTION HeteroDB
20180914 GTCJ INCEPTION HeteroDBKohei KaiGai
 
Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介Kazushi Kamegawa
 
Clustrixによる社内データベースクラウド環境の提供
Clustrixによる社内データベースクラウド環境の提供Clustrixによる社内データベースクラウド環境の提供
Clustrixによる社内データベースクラウド環境の提供Rakuten Group, Inc.
 
Managed Instance チートシート
Managed Instance チートシートManaged Instance チートシート
Managed Instance チートシートMasayuki Ozawa
 
Quick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + αQuick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + αTakeshi Yamamuro
 
楽天における大規模データベースの運用
楽天における大規模データベースの運用楽天における大規模データベースの運用
楽天における大規模データベースの運用Rakuten Group, Inc.
 
pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
M06_DX を担うエンジニア向け Data & AI Analytics プラットフォームの最適解 ~ Azure Synapse 最新機能ご紹介 ~ ...
M06_DX を担うエンジニア向け Data & AI Analytics プラットフォームの最適解 ~ Azure Synapse 最新機能ご紹介 ~ ...M06_DX を担うエンジニア向け Data & AI Analytics プラットフォームの最適解 ~ Azure Synapse 最新機能ご紹介 ~ ...
M06_DX を担うエンジニア向け Data & AI Analytics プラットフォームの最適解 ~ Azure Synapse 最新機能ご紹介 ~ ...日本マイクロソフト株式会社
 

Similar to YugabyteDBの拡張機能(YugabyteDB Meetup #2 発表資料) (20)

サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密
サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密
サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密
 
20150704 MS Azure最新 - innovation egg 第4回
20150704 MS Azure最新 - innovation egg 第4回20150704 MS Azure最新 - innovation egg 第4回
20150704 MS Azure最新 - innovation egg 第4回
 
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
 
build2017のazure関連情報まとめ
build2017のazure関連情報まとめbuild2017のazure関連情報まとめ
build2017のazure関連情報まとめ
 
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
祝!PostgreSQLレプリケーション10周年!徹底紹介!!祝!PostgreSQLレプリケーション10周年!徹底紹介!!
祝!PostgreSQLレプリケーション10周年!徹底紹介!!
 
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
フックを使ったPostgreSQLの拡張機能を作ってみよう!(第33回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
ChatGPTのデータソースにPostgreSQLを使う[詳細版](オープンデベロッパーズカンファレンス2023 発表資料)
 
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
 
Oracle Cloud Infrastructure:2022年11月度サービス・アップデート
Oracle Cloud Infrastructure:2022年11月度サービス・アップデートOracle Cloud Infrastructure:2022年11月度サービス・アップデート
Oracle Cloud Infrastructure:2022年11月度サービス・アップデート
 
20180914 GTCJ INCEPTION HeteroDB
20180914 GTCJ INCEPTION HeteroDB20180914 GTCJ INCEPTION HeteroDB
20180914 GTCJ INCEPTION HeteroDB
 
Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介
 
Clustrixによる社内データベースクラウド環境の提供
Clustrixによる社内データベースクラウド環境の提供Clustrixによる社内データベースクラウド環境の提供
Clustrixによる社内データベースクラウド環境の提供
 
Oracle GoldenGate Cloud Serviceユーザーズガイド
Oracle GoldenGate Cloud ServiceユーザーズガイドOracle GoldenGate Cloud Serviceユーザーズガイド
Oracle GoldenGate Cloud Serviceユーザーズガイド
 
Managed Instance チートシート
Managed Instance チートシートManaged Instance チートシート
Managed Instance チートシート
 
Oracle GoldenGate Cloud Service(GGCS)概要
Oracle GoldenGate Cloud Service(GGCS)概要Oracle GoldenGate Cloud Service(GGCS)概要
Oracle GoldenGate Cloud Service(GGCS)概要
 
Quick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + αQuick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + α
 
楽天における大規模データベースの運用
楽天における大規模データベースの運用楽天における大規模データベースの運用
楽天における大規模データベースの運用
 
G gencorp
G gencorpG gencorp
G gencorp
 
pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_standbyの今後について(第19回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
M06_DX を担うエンジニア向け Data & AI Analytics プラットフォームの最適解 ~ Azure Synapse 最新機能ご紹介 ~ ...
M06_DX を担うエンジニア向け Data & AI Analytics プラットフォームの最適解 ~ Azure Synapse 最新機能ご紹介 ~ ...M06_DX を担うエンジニア向け Data & AI Analytics プラットフォームの最適解 ~ Azure Synapse 最新機能ご紹介 ~ ...
M06_DX を担うエンジニア向け Data & AI Analytics プラットフォームの最適解 ~ Azure Synapse 最新機能ご紹介 ~ ...
 

More from NTT DATA Technology & Innovation

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)NTT DATA Technology & Innovation
 
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方NTT DATA Technology & Innovation
 
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...NTT DATA Technology & Innovation
 
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)NTT DATA Technology & Innovation
 
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)NTT DATA Technology & Innovation
 
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)NTT DATA Technology & Innovation
 
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)NTT DATA Technology & Innovation
 
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)NTT DATA Technology & Innovation
 
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)NTT DATA Technology & Innovation
 
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...NTT DATA Technology & Innovation
 
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)NTT DATA Technology & Innovation
 
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)NTT DATA Technology & Innovation
 
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...NTT DATA Technology & Innovation
 
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)NTT DATA Technology & Innovation
 
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)
どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)
どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)NTT DATA Technology & Innovation
 
GraalVMでのFlight Recorderを使ったパフォーマンス解析(JJUG CCC 2023 Spring)
GraalVMでのFlight Recorderを使ったパフォーマンス解析(JJUG CCC 2023 Spring)GraalVMでのFlight Recorderを使ったパフォーマンス解析(JJUG CCC 2023 Spring)
GraalVMでのFlight Recorderを使ったパフォーマンス解析(JJUG CCC 2023 Spring)NTT DATA Technology & Innovation
 

More from NTT DATA Technology & Innovation (20)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
OSSデータベースの開発コミュニティに参加しよう! (DEIM2024 発表資料)
 
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
COPY FROMで異常データをスキップできるようになった話(第45回 PostgreSQLアンカンファレンス@オンライン 発表資料)
 
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
Cloud Skills Challenge 2023 winter 〜Azureを頑張る理由と頑張り方
 
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
Unlocking Transformation: Implementing GitOps Practices in Conservative Organ...
 
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
Databricksチューニングあれこれ(JEDAI 2023 X‘mas/忘年会 Meetup! LT登壇資料)
 
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
詳説探究!Cloud Native Databaseの現在地点(CloudNative Days Tokyo 2023 発表資料)
 
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
 
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
 
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
 
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
最新機能までを総ざらい!PostgreSQLの注目機能を振り返る(第32回 中国地方DB勉強会 in 岡山 発表資料)
 
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~(Open Source Conference 202...
 
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
骨抜きアジャイルの骨を生み出す 〜私(スクラムマスター)のXP学習記録〜(XP祭り2023 発表資料)
 
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
機械学習モデルを REST API としてサービングするシステム開発における上流プロセスの絞り込みと効果検証(PM学会2023年度秋季研究発表大会 発表資料)
 
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
PostgreSQL on Kubernetes: Realizing High Availability with PGO (Postgres Ibiz...
 
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
Prometheus Operator 入門(Kubernetes Novice Tokyo #26 発表資料)
 
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
ChatGPTのデータソースにPostgreSQLを使う(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
PGCon 2023 参加報告(第42回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)
どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)
どうする計画駆動型スクラム(スクラムフェス大阪2023 発表資料)
 
GraalVMでのFlight Recorderを使ったパフォーマンス解析(JJUG CCC 2023 Spring)
GraalVMでのFlight Recorderを使ったパフォーマンス解析(JJUG CCC 2023 Spring)GraalVMでのFlight Recorderを使ったパフォーマンス解析(JJUG CCC 2023 Spring)
GraalVMでのFlight Recorderを使ったパフォーマンス解析(JJUG CCC 2023 Spring)
 

Recently uploaded

デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 

Recently uploaded (8)

デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 

YugabyteDBの拡張機能(YugabyteDB Meetup #2 発表資料)

  • 1. © 2023 NTT DATA Corporation YugabyteDBの拡張機能 YugabyteDB Meetup #2 2023/6/14 NTTデータ 技術開発本部 笠原 辰仁
  • 2. © 2023 NTT DATA Corporation 2 はじめに • 自己紹介 • 笠原 辰仁 (KASAHARA Tatsuhito) @kasa_zip (Twitter) • NTTデータ 技術革新統括本部 技術開発本部 • PostgreSQLのサポートや周辺ツールの開発などを18年以上 • 最近はYugabyteDBなどの分散SQLデータベース/NewSQLなども調査・検証 本日はPostgreSQLユーザの視点でYugabyteDBの拡張機能(Extension)の特徴などを お話します。PostgreSQLやYugabyteDBの基本的な話は省いていますのでご容赦ください。 本日の内容は2023年6月の時点の情報となります。またYCQLの話は含んでいません。 この資料は後日に公開します。
  • 3. © 2023 NTT DATA Corporation 3 目次 • Extensionについて • YugabyteDBで利用できるExtension • YugabyteDBで独自に改良しているExtension • YugabyteDBでサポートされると嬉しいExtension
  • 4. © 2023 NTT DATA Corporation 4 © 2022 NTT DATA Corporation 4 Extensionについて
  • 5. © 2023 NTT DATA Corporation 5 Extensionについて ExtensionはPostgreSQLの拡張機能を利用し、ユーザ定義の独自機能を含む PostgreSQLへの機能追加を行うためのパッケージフレームワーク、あるいは拡張機能そのものを 指す。(本資料では拡張機能全般をExtensionと呼んでいる) YugabyteDBはPostgreSQLと高い互換性を持っているため、PostgreSQLで利用可能な Extensionをほぼそのまま利用することが可能。Extensionには大きく以下の3種類がある。 1. DBにオブジェクトを登録し、ユーザがそれを利用するもの • (例 pgcrypto, pg_trgm 2. shared_preload_librariesなどに登録し、透過的に作用するもの • (例 passwordcheck, auto_explain 3. 上記2つを併せ持つもの • (例 pg_stat_statements, pg_hint_plan
  • 6. © 2023 NTT DATA Corporation 6 DBにオブジェクトを登録し、ユーザがそれを利用するもの DBにユーザ定義のオブジェクトを登録し、ユーザがそれを利用するもの。PostgreSQLはもともと ユーザ定義のテーブルやビュー、データ型、(集約)関数、演算子、さらには新規のインデックスや KVS/Columnarなどのデータモデルを作成し拡張できる。 多くの拡張機能はこのタイプ。利便性を高める関数やビュー、業務に特化した特殊なデータ型な どが利用可能になる。PL/pgSQLなどのプロシージャ言語の他、CやRustなどでも作成可能。 PostgreSQL CREATE EXTENSION xxxxx; CREATE TABLE (col xxxx); SELECT xxxxx(); 【CREATE EXTENSIONの背後で関数などの作成が実施される】 CREATE TYPE xxxx; CREATE FUNCTION xxxx(); ・・・
  • 7. © 2023 NTT DATA Corporation 7 DBにオブジェクトを登録し、ユーザがそれを利用するもの ノード#1 YB-Master YB-Tserver ノード#2 YB-Tserver ノード#3 YB-Tserver YugabyteDBではSQLをTserver(postgresプロセス)で実施する。DB内に作成するテーブル や関数などの情報はメタデータとしてMasterが管理する。そのため、DBに関数などを登録する ExtensionはどこかのTserver上で実施すれば全てのTserverで利用可能になる。 CREATE EXTENSION xxxxx; 【関数などはMasterへ登録される】 CREATE TYPE xxxx; CREATE FUNCTION xxxx(); ・・・ CREATE TABLE (col xxxx); SELECT xxxxx();
  • 8. © 2023 NTT DATA Corporation 8 shared_preload_librariesなどに登録し、透過的に作用するもの PostgreSQLのコード内部に定義されている様々なHookを利用する。 Hookは関数ポインタの 形でユーザが処理を差し込むことができるため、アドバンスな性能情報や内部処理のユーザカスタ マイズが可能になる。shared_preload_librariesに拡張機能のライブラリを指定することで、 PostgreSQLのプロセスがForkされる際にHookの処理がロードされ有効化される。 PostgreSQL Parse Analyze/Rewrite Plan Execute ExecutorStart_hook() ExecutorEnd_hook() shared_preload_libraries= ‘My_Extension’ My_ExecutorStart_hook() My_ExecutorEnd_hook() PostgreSQLの内部処理をフックして、独自の処理を差し込める。 例えばExecutorStart(クエリの実際の処理開始)でタイムスタンプを 取得し、ExecutorEnd(クエリの処理終了)で開始時との時間差分で 所要時間の計測などを行う、など。 Query Result
  • 9. © 2023 NTT DATA Corporation 9 shared_preload_librariesなどに登録し、透過的に作用するもの YugabyteDBでも設定方法や作用はPostgreSQLと同様。shared_preload_librariesは 各Tserver個別で設定するため、例えば既存クラスタに追加のExtensionを導入する際は全て のTserverの設定変更が必要。 ノード#1 YB-Tserver ノード#2 YB-Tserver ノード#3 YB-Tserver Hookを利用するExtensionは各Tserverの(ysql_pg_confに指定される)shared_preload_librariesに 設定されることで有効化。そのため設定していないTserverでは無効になる。
  • 10. © 2023 NTT DATA Corporation 10 2つを併せ持つもの Hookを用いて取得される内部情報は、多くのケースで共有バッファなどに蓄積される。これら情 報の取得や情報のリセットなどをSQLで実施できるように、専用のビューや関数もセットで提供さ れることが多い。 PostgreSQL Parse Analyze/Rewrite Plan Execute ExecutorStart_hook() ExecutorEnd_hook() pg_stat_statements pgss_ExecutorStart() pgss_ExecutorEnd() Query Result Hash Table pg_stat_statemens view pg_stat_statemens.reset() func CREATE EXTENSION pg_stat_statements; SELECT * FROM pg_stat_statements; Hookで取得した情報を共有バッファ上のハッシュテー ブルへ蓄積し、それらをCREATE EXTENSIONで 導入されるビューの形で参照させたりする。 (注意:pg_stat_statementsは他にも多数のHook を使っている。図は簡略化している。)
  • 11. © 2023 NTT DATA Corporation 11 2つを併せ持つもの YugabyteDBではHookで取得される情報はTserver個別となる。例えばクエリの実行回数や累積所 要時間などのクエリの稼働統計情報を記録するpg_stat_statementsであれば、あるTserverで実行 されたクエリの性能統計情報は、そのTserver上でのみ記録している。そのためpg_stat_statements の情報をユーザが直接参照している場足、クラスタ全体の情報を集約するのはユーザが行うことになる。 ノード#1 YB-Tserver Query A Query Aの稼働 統計情報を記録 Query C ノード#3 YB-Tserver Query Cの稼働 統計情報を記録 ノード#2 YB-Tserver Query Bの稼働 統計情報を記録 Query B 各Tserverノード上で実行されたクエリの稼働統計情報は、それぞれ のTserverでのみ保持される(メモリ上のデータでありTableやTabletの 形で保持されるもぼではないためレプリケーションはされない)
  • 12. © 2023 NTT DATA Corporation 12 Extensionについて Extensionの挙動に作用する設定パラメータなどの種類や使い方もPostgreSQLと同様。例えば、 auto_explain.log_min_durationによる設定をユーザ(ROLE)毎に設定して実行計画ログを 出力する閾値を異なるものにする、なども可能。 このように自由度の高いユーザ定義のオブジェクト作成や内部処理に干渉できるHookなどの活用 により様々な拡張機能が開発・利用できる。Extensionに関する設定や利用方法、ノウハウは PostgreSQLとほぼ同様のものが使える。 -- app_user1にはauto_explainによる実行計画情報の出力閾値を10秒に設定 ALTER ROLE app_user1 SET auto_explain.log_min_duration TO ‘10s’; -- app_user2にはauto_explainによる実行計画情報の出力を無効にする設定 ALTER ROLE app_user2 SET auto_explain.log_min_duration TO -1;
  • 13. © 2023 NTT DATA Corporation 13 © 2022 NTT DATA Corporation 13 YugabyteDBで利用できるExtension
  • 14. © 2023 NTT DATA Corporation 14 YugabyteDBで利用できるExtension YugabyteDBではいくつかのPostgreSQL向けのExtensionをサポートしている。また、 YugabyteDB独自のExtensionも提供(あるいは開発中)。 https://docs.yugabyte.com/preview/explore/ysql-language-features/pg-extensions/ 代表的なExtension 備考 PostgreSQLに同梱されており YugabyteDBに同梱しているもの pg_stat_statements, auto_explain, pgcrypto, passwordcheck YugabyteDB独自の機能付与を行って いるものあり(後述) Third-Party-ToolでYugabyteDB に同梱しているもの pg_hint_plan, orafce, pg_audit Third-Party-ToolでYugabyteDB で利用可能 PostGIS, pgsql-postal 手動でExtensionを入手し各Tserverへ インストール(共有ライブラリなどの配置)を しておく YugabyteDB独自のもの yb_pg_metrics, ycql_fdw YugabyteDBでは「pg_stat_statements, pg_audit, yb_pg_metrics, pg_hint_plan」がデフォルトで shared_preload_librariesに設定されている。
  • 15. © 2023 NTT DATA Corporation 15 YugabyteDBで利用できるExtension ここ1年くらいでも利用可能なExtensionが増えており、新規のExtensionの導入の議論も行わ れている。 ここ最近サポートされたもの • v2.17 • [16092] [YSQL] Import HyperLogLog extension (postgresql-hll) ★カーディナリティ(ユニーク数)推定 • v2.15 • [2778] Add support for HypoPG extension★仮想インデックスによるプランチューニング サポートに向けて議論されているもの(一部抜粋) • [YSQL] Support pg_partman extension ★パーティション管理 • [New Feature] support for pgvector extension ★ベクトル情報の格納 • [New Feature] Add support for the Apache age extension to enable graph operations ★グラフモデルとアクセス用の機能
  • 16. © 2023 NTT DATA Corporation 16 © 2022 NTT DATA Corporation 16 YugabyteDBで独自に改良しているExtension
  • 17. © 2023 NTT DATA Corporation 17 YugabyteDBで独自に改良しているExtension YugabyteDBではPostgreSQLのExtensionを独自に改良しているものがある。そのため PostgreSQLユーザからは(場合によっては良い意味で)異なる仕様に見える。 本日はpasswordcheckとpg_stat_statementsの2つを紹介。
  • 18. © 2023 NTT DATA Corporation 18 passwordcheckの改良 passwordcheckは文字通りパスワードの強度チェックを行うためのExtension。 CREATE ROLE(USER)実行時に「check_password_hook」というHookを介して独自のパスワード チェックをPostgreSQLで実現できる。 PostgreSQLのpasswordcheckはハードコードされた「文字数(8文字)」と「英数字と記号の併用」の みチェックしている。そもそもユーザがコードをカスタマイズして利用する前提の作り。 一方YugabyteDBは「文字数」「記号利用有無」「大文字利用有無」「小文字利用有無」「ユーザ名が パスワードに含まれるか」がGUCパラメータ(Gflags)により設定可能な形で作られている。(ユーザ名がパ スワードに含まれているかどうかの判断のみ、ハードコードされている) CREATE ROLE check_password_hook PostgreSQLのpasswordcheck check_password() YugabyteDBのpasswordcheck check_password() パスワード文字数と英数字と記号 併用がされているか確認 passwordcheck.minimum_length passwordcheck.restrict_lower ・・・ 文字数や大文字小文字の利用 有無などを設定パラメータに従って 確認
  • 19. © 2023 NTT DATA Corporation 19 pg_stat_statementsの改良 pg_stat_statementsの作りはPostgreSQLとほぼ同様だが、メトリクスの形でTserverが公開してい るエンドポイント(:13000/statements)からもJSON形式で情報を取得できるようになっている。 YugabyteDB (Tserver) Parse Analyze/Rewrite Plan Execute ExecutorStart_hook() ExecutorEnd_hook() pg_stat_statements pgss_ExecutorStart() pgss_ExecutorEnd() Query Result Hash Table pg_stat_statemens view /statements でのJSON 情報でのエクスポート SELECT * FROM pg_stat_statements; curl http://xxxxx/statements (注意:YugabyteDBでもPostgreSQL同様に pg_stat_statementsは他にも多数のHookを使って いる。図は簡略化している。)
  • 20. © 2023 NTT DATA Corporation 20 pg_stat_statementsの改良 ◆ curlによる取得例 $ curl -s http://<Tserver稼働ホスト>:13000/statements | jq '.statements[0]' { "query_id": -5817076229292125425, "query": "SELECT c.oid::pg_catalog.regclass FROM pg_catalog.pg_class c, pg_catalog.pg_inherits i WHERE c.oid=i.inhparent AND i.inhrelid = $1 AND c.relkind != $2 ORDER BY inhseqno", "calls": 1, "total_time": 0.19514599999999999, "min_time": 0.19514599999999999, "max_time": 0.19514599999999999, "mean_time": 0.19514599999999999, "stddev_time": 0.0, "rows": 0 }
  • 21. © 2023 NTT DATA Corporation 21 pg_stat_statementsの改良 また、独自に「レイテンシ(ms)のレンジとcall数」をヒストグラムとして記録する改良がv2.19で実施されており、90%ile 値などを取得できるようになっている。 https://github.com/yugabyte/yugabyte-db/commit/2fd44b1f8337fa21f4ca61569231a70f1987beb8 【Github上のCommit Messageより転載】 yugabyte=# select query, calls, yb_latency_histogram from pg_stat_statements; -[ RECORD 1]----------------------------------------------------------------- query | select pg_sleep($1) calls | 9 yb_latency_histogram | [{"[0.1,0.2)": 4}, {"[0.2,0.3)": 1}, {"[0.8,0.9)": 1}, {"[1677721.6,)": 3}] 「レイテンシ(ms)のレンジとcall数」が複数のBucketで記録される。データ型はJSONB。 pg_stat_statementsでは各クエリ(ID)別にmin/max/mean/stddevは記録されるが、ヒストグラム 相当の分布情報を復元するのは難しいためDBAにはありがたい改良点。
  • 22. © 2023 NTT DATA Corporation 22 © 2022 NTT DATA Corporation 22 YugabyteDBでサポートされると嬉しいExtension
  • 23. © 2023 NTT DATA Corporation 23 YugabyteDBでサポートされると嬉しいExtension PostgreSQLを利用しているプロジェクトでは、以下のYugabyteDBでは未サポートの Extensionを使うケースがある。 • pg_bigm • Pgroonga これらは全文検索(Full Text Search)用のExtensionで、N-Gramや形態素解析での全文 検索を補助するための関数や演算子、インデックスアクセスメソッドを提供する。 YugabyteDBではpg_trgmというPostgreSQLのExtensionをサポートしているが、日本語 で多用される2文字検索ができない。YugabyteDBでもpg_bigm or PGroongaがサポート されるとユースケースの幅が広がる。
  • 24. © 2023 NTT DATA Corporation 24 おわりに PostgreSQLのほとんどのExtensionがYugabyteDBでも同じように動くのは、PostgreSQL ユーザとして既存のアプリケーションの作りや設計を流用しやすく有難い。 また、PostgreSQLコミュニティとしては非推奨機能(※)ではあるが、エンタープライズ領域で利用 することが多いpg_hint_planなどのサードパーティーツールがデフォルトで利用可能になっている こともメリットと感じる。 さらに様々なExtensionがサポートされると、YugabyteDBの利用ケースの広がりそうで楽しみ。 (※) 本質的なクエリ記述の問題やPlannerの不具合を隠ぺいしてしまう、などの負の作用があるため。 https://wiki.postgresql.org/wiki/Not_Worth_Doing#Features_We_Do_Not_Want
  • 25. © 2023 NTT DATA Corporation その他、記載されている会社名、商品名、又はサービス名は、 各社の登録商標又は商標です。