PostgreSQLカンファレンス2014 講演内容詳細
PostgreSQLカンファレンス2014 の講演内容詳細です。
Keynote (10:20 - 11:10)
【keynote 1】「Open Source, Open Engineering and PostgreSQL」
(Simon Riggs)
Open Source is code released to the world. Open Engineering is working together on common products and goals. PostgreSQL is more than just an open source database, it is the maintream database developed using open engineering techniques.
Let's look at some of the great features that have emerged from the PostgreSQL project's open development process and the direction that will take in the future.
【keynote 2】「NTTデータと PostgreSQL が挑んだ総力戦 ~ PostgreSQL を極限まで使い切ったその先に見たものとは? ~」
(笠原 辰仁、澤田 雅彦)
NTTデータではこれまで数多くの大規模基幹系システムへPostgreSQLを適用してきました。 高信頼、高性能が求められるシステムへの適用には、PostgreSQLを最大限使いこなすことが不可欠です。
本セッションでは、NTTデータ 10 年間の PostgreSQL ノウハウを結集し挑んだ PostgreSQL 導入事例を交えて、以下のトピックを中心にお話します。
- ・使用するSQLは数万本!大規模開発において早期にSQL問題をあぶりだすには
- ・速いだけではだめ!性能安定化を実現するには
- ・ないものは作る!独自モジュールを開発して様々なニーズに対応
- ・これは使える!開発・運用に有用な外部モジュールを紹介
Hands-on (10:00 - 11:10)
【hands-on 1】「PostgreSQL の最新 GUI 管理ツールはどこまで使える? ~ 動かして試してみよう ~」
(近藤 雄太)
本講演では、PostgrSQL に対応した GUI 管理ツールを実際の操作を交えて紹介します。
商用製品の Postgres Enterprise Manager と PowerGres Manager の最新版と、 その他いくつかのオープンソースソフトウェアを取り上げます。 実際に触らないと評価しにくいけれども各々セットアップするのも面倒という方におすすめです。
ノートPCをお持ちいただけますと、操作しながら説明を受けることができます。
【hands-on 2】「PostgreSQL 安定運用のレシピ ~ マニュアルには書かれていない PostgreSQL の真実 ~」
(篠田 典良)
PostgreSQL をより深く知るためには、マニュアルだけでは不十分です。 本セッションではマニュアルに記載されていない内部動作や仕様を検証し、 PostgreSQL を安定して運用するために必要なトラブルの検知と対処について デモを交えながら解説します。
13:00 - 13:50
【A1】「PostgreSQL 9.4 の概要」
(Michael Paquier)
本講演では実装される機能・改良の概要をお話しします。 最近行われた NoSQL またはレプリケーション系の機能に着目して解説します。 ロジデコ(logical decoding), JSONB, bgworkerとマテビューを中心にします。
【B1】「R と Qt による PostgreSQL / PostGIS データの可視化ツール」
(国府田 諭)
PostgreSQL / PostGIS の利点は数値データと地理データを統合的に格納し処理できることですが、 GUI でデータの可視化や分析を行うには別々のアプリが必要で(例えば Excel と QGIS)、 データの統合性がエンドユーズに直結しない難点があります。 一方、統計処理言語Rはグラフも地図も同じ plot 関数で描画でき、多様なデータを共通の土俵で可視化できます。
今回開発したツールは、R を GUI フレームワークの Qt と組み合わせ、 一つのデスクトップアプリで PostgreSQL データのグラフ化、PostGIS ベクタ/ラスタ表示、 さらに分析用Rスクリプトのテンプレート作成まで手軽に行うものです。利用事例やデモを含めて紹介します。
【C1】「pgpool-II 3.4 の新機能のご紹介」
(石井 達夫)
11 月にリリースした pgpool-II 3.4 は、PostgreSQL 9.4 にいち早く対応すると共に、 ログ管理や負荷分散機能など、運用面の改善を行い、更に例外処理やメモリーマネージャを追加するなど 内部構造にも大きな改良を加えて信頼性や保守性を向上させています。
本講演では、pgpool-II 3.4 の改良点について説明するともに、現場でメリットが出る pgpool-II を使った PostgreSQL クラスタの活用方法をご紹介します。
【D1】「PostgreSQL バックアップ入門」
(佐藤 千佳)
運用管理の本丸「バックアップ・リカバリ」について、PostgreSQLでの 基本的な手法とその特徴について、以下のトピックで紹介します。
- バックアップ、リカバリとは
- PostgreSQLバックアップ、リカバリの特徴
- 故障発生!こんな時どうする
- 外部ツールを用いたバックアップ、リカバリ
PostgreSQL での基本的なバックアップ・リカバリについて知りたい、 他 DBMS での経験はあるけれどPostgreSQLではどんなことができるの? といった入門的内容を含め、 わかりやすく解説します。
【E1】「Postgres-XL」
(Nikhil Sontakke)
Postgres-XL was recently released to further extend the open source Postgres ecosystem, allowing users to scale-out both transactional workloads and obtain fast response times for BI/OLAP applications.
This session will discuss the capabilities of Postgres-XL and how, by bringing massively parallel processing (MPP) to the community, PostgreSQL becomes a strong candidate for Big Data analytics.
14:00 - 14:50
【A2】「サポセンエンジニアが語る PostgreSQL トラブルシュート」
(家島 拓也)
サポートセンターの現役エンジニアがサポートセンターに来る問い合わせの傾向や 問題が発生した時の調査方法をケースを交えてお伝えします。 商用データベースで培ったノウハウを PostgreSQL に適用したサービスの一部をぜひご覧ください。 ミッションクリティカルなシステムを運用されている方/されていない方も、 サポート保守を締結されている方/これからお考えの方も必見です。
【B2】「Web で変わったクラウドと PostgreSQL の今と昔」
(曽根 壮大)
昨今、クラウド環境への移行によって、Web アプリケーションのインフラは急速に抽象化が進みました。 それとともに、その Web アプリケーション開発スタイルも変わりました。そこで
- クラウドとオンプレミスで何が違うか
- 今のアプリケーション開発のスピード感
- クラウドの活用によるインフラコストの削減
をお伝えするために PostgreSQL を使った Paas である Heroku の簡単な紹介と実際の利用デモを行います。 このデモを通して「DBA がこの先、生きのこるには?」 という問題提起に対してお答えします。
【C2】「Background Worker でxxx」
(勝俣 智成)
PostgreSQL 9.3 からバックグラウンドワーカー (BGW) プロセスが導入されました。 BGW プロセスを用いると、ユーザ独自のコードを PostgreSQL の管理配下で実行することが可能となります。 さらに PostgreSQL 9.4 からは動的に BGW プロセスを起動するなど拡張がなされてます。
本セッションでは、サンプルを取り上げながら BGW プロセスの作り方について整理していきます。
【D2】「PostgreSQL のパラメータチューニングの基本」
(山田 達郎)
この講演では、PostgreSQL の持っている多数のパラメータのうち、 性能面で重要なものについて、パラメータチューニングの基本的な考え方を説明します。
PostgreSQL 内部の仕組みをふまえてパラメータを説明し、 適切なパラメータ値を設定する方法を理解できることを目標とします。
【E2】「Postgres in China」
(Li yuanjia)
This talk will introduce Postgres community in China, also it will introduce some use cases.
15:00 - 15:50
【A3】「GPU が PostgreSQL を加速する ~ PG-Strom のご紹介 ~」
(海外 浩平)
GPU ってご存知ですか? 元々は画像処理用のプロセッサに起源を持ち、その高い演算能力~最新モデルでは 2000 コア/4.6 TFlops を越える~ ゆえに、HPC の領域では幅広い用途で実績のある半導体です。
PG-Strom は PostgreSQL 用の拡張モジュールで、CPU ボトルネックなワークロードを GPU にオフロードする事でクエリの応答速度を劇的に高速化する事を可能にします。 主要半導体ベンダ各社が CPU/GPU を混在したヘテロジニアス・コンピューティングを志向する中、 いち早く PostgreSQL の GPU 対応を行う取り組みとも言えるでしょう。
本セッションでは、GPU の特性や PostgreSQL のクエリ処理フローといった周辺技術の概要と、 PG-Strom がどのように高速化を実現しているのか、またその想定用途である BI(Business Intelligence)ツールでの利用についてご紹介します。
【B3】「Django / Celey を用いたデータ分析Web アプリケーションの開発」
(永安 悟史)
データ分析で用いられるアドホック/レポーティングのクエリは、 Web で一般的なクエリとは特性が違うため、Web とデータ分析のインテグレーションにおいては、 通常の Web 開発における MVC モデルに加えて工夫が必要になります。
講演では、PostgreSQL、Python 用 Web フレームワーク Django、および 非同期処理用ミドル Celey を用いたデータ分析 Web アプリケーションの開発事例についてご紹介します。
【C3】「O/R マッパーによるトラブルを未然にふせぐ」
(桑田 誠)
今にちでは O/R マッパーを使った開発が一般的になりました。 しかし O/R マッパーは、アプリ開発者にとっては便利でも、DB 管理者からみたらトラブルの種でもあります。
本発表では、O/R マッパーを使うとどのようなトラブルが発生しやすいか、 また DB 管理者はどう対処すればいいのかを説明します。
また本発表を通じて、アプリ開発者と DB 管理者とが仲良く協調できる世界を目指します。
【D3】「PostgreSQL SQL チューニング入門 入門編」
(下雅意 美紀)
PostgreSQL は最も効率的に SQL を実行するために、 データへのアクセス方法(アクセスパス)や結合(JOIN)などの処理方法を求め、それを元に実行計画を生成します。 この実行計画を理解することは SQL チューニングを行う上で大変重要なポイントとなりますが、 実行計画のパターンは SQL によって多岐にわたるので予備知識なしには難しいものがあります。
本セッションでは SQL の実行計画を表示する Explain コマンドを用い、 様々なパターンの SQL が PostgreSQL の内部でどのような計画で実行されるのかを読み解いていきます。
【E3】「Enterprise use of PostgreSQL in Australia」
(Arulappan, Arul Shaji)
This talk will look at the status of PostgreSQL adoption in Australia and New Zealand. In particular, what do enterprises think about PostgreSQL and what impediments are there for a wider adoption.
The talk will also cover what Fujitsu is doing to bridge the gap between Open Source PostgreSQL and Enterprise requirements in AU/NZ.
16:00 - 16:50
【A4】「RDS から始める PostgreSQL ~初心者さん大歓迎~」
(西尾 智弘)
タイトルどおり、RDS で PostgreSQL を簡単につかえますので、 それを使っての PostgreSQL デビューを行ないたい人などに対する初心者向けの内容になります。
また、オンプレミスとの比較を行ないますので、クラウドデビューをしたい人も楽しめる内容にします。 自分は、主に MySQL のヘビーユーザーなのですが、PostgreSQL も 2 年ほど前から使い始めたので、 使い始めてからのトラブルやこうした方がいい設定などを これから PostgreSQL を使ってみたい人に対して話を行ないます。
【B4】「あらためて、データベースのセキュリティを考える」
(北野 晴人)
2014 年は大規模な情報漏洩事件が話題となり、内部不正に関連したデータベースのセキュリティも注目されました。
このセッションでは外部からの攻撃、内部不正、標的型攻撃などを視野に入れ、 設計と権限付与、ログ取得に加えて暗号化機能の利用や ID 管理などの基本的な対策要素の復習、 課題となりがちな管理者権限の保護についてお話します。
また先日発表した調査報告「DBA 1000 人に聞きました」をもとに現状の課題をお話します。
【C4】「Hacking PostgreSQL」
(花田 茂)
PostgreSQL の内部構造や機能詳細について、開発環境の構築からソースコードリーディングの方法、 デバッガでの動作確認等を通じて解説します。 また、コミュニティでの PostgreSQL 開発の流れや開発関連リソースも紹介します。 PostgreSQL のアーキテクチャや動作の詳細をより深く理解したい方、 PostgreSQL 本体や周辺ツールの開発に興味があるという方向けの内容です。
【D4】「PostgreSQL SQL チューニング入門 実践編」
(山田 聡)
PostgreSQL の実行計画は SQL 毎に固定されたものではなく、 SQL の条件式やデータベースの内容に応じて、最適なアクセスパスや結合方法が選択されます。 しかし、運用が不適切であった場合などに最適ではないアクセスパスや結合方法を含んだ実行計画が 作成されてしまうことがあります。
本セッションでは実際の例を元に、Explain コマンドの結果から パフォーマンスが悪い SQL の問題点を見つけ出すまでの流れと 問題点への対処するための代表的な方法をご説明いたします。
【E4】「High-Availability and Load-balancing Solutions with PostgreSQL」
(Lucky Haryadi)
17:00 - 17:50
【A5】「Treasure Data での PostgreSQL 活用方法」
(斉藤 太郎)
Treasure Data では Fluentd などで収集したデータに対して Hive, Presto などの分散データベースエンジンを利用するサービスを提供しています。 PostgreSQL はこれらの大規模データの索引としてだけでなく、 Presto の低レイテンシクエリと Tableau など種々の BIツ ールをつなぐゲートウェイ(Prestogres)としても 活用されています。
本講演ではこれらの技術基盤と昨今の分散データベース事情について紹介します。
【B5】「PostgreSQL 9.4 の新機能 JSONB 型を使ってみよう」
(ぬこ@横浜)
近年、NoSQL が得意とするスキーマレスな情報源への検索が注目されています。 PostgreSQL でもスキーマレスなデータを扱う JSON 型があり、 PostgreSQL 9.4 では JSONB 型として更に強化されています。
本セッションでは JSON 型および JSONB 型の概要や両者の特徴や使い道を説明します。 また、JSONB 型を使ったサンプル・アプリケーションを通じてスキーマレスな情報の検索例や応用例を説明します。
【C5】「より深く知るオプティマイザとそのチューニング」
(早水 悠登、川道 亮治)
高性能なデータベースシステム構築においてはチューニングが不可欠ですが、 ことオプティマイザに関してはその難解さから話題に上る機会は多くありません。 しかしながら、大規模ストレージアレイや高速フラッシュSSD、あるいは クラウド技術の浸透などによって今日のデータベースの実行環境は非常に多様化しており、 オプティマイザの原理を理解し、個々の環境へと適応させる重要性がより高くなっています。
本講演では、PostgreSQLのオプティマイザをチューニングする上で、 その理解の要となるコストベース最適化について概説し、我々が現在取り組んでいる オプティマイザの実行環境適応のアプローチについて紹介します。
【D5】「Web エンジニアが PostgreSQL を選ぶ 3 つの理由」
(曽根 壮大)
Web アプリケーションを作るときに PostgresSQL 以外の RDB を選んでませんか?
PostgresSQL は Web アプリケーションと非常にマッチします。 その理由をテーブル設計、PHP を使った実際の使い方のデモも交えてお伝えします。
- ○ 対象レベル
- 初心者、中級者大歓迎!他の RDB を使ってるけど PostgreSQL はよく知らない方大歓迎!
- ○ 対象者
-
- 実務で Web アプリケーションを作る、設計をする立場の人
- 実務で DB で苦しんだことがある人
- 今から Web アプリケーションを作ってみたいと思ってる人
- ○ デモ内容
-
- 仕様変更に強いランキング検索を簡単に実装する方法
- JSON 型を使った可変なユーザ情報画面の作り方
- 堅牢なデータ格納と柔軟なデータ検索