タグ

PostgreSQLに関するarray08_12のブックマーク (22)

  • PostgreSQLのログをFluentdで収集する - Tech-Sketch

    PostgreSQLの運用管理にログの情報は不可欠ですが、PostgreSQLが出力するログは直接取り扱うのに適した形式とは言えません。ここではFluentdを使って運用管理に活用しやすい形にPostgreSQLのログを加工する方法を紹介します。 PostgreSQLの運用管理とログ データベースの運用管理には 死活監視、リソース監視 性能分析、チューニング バックアップ、リストア といったものが考えられますが、現状を把握しなければ何も対策できないので、まずは必要な監視を正しく行うことが重要です。PostgreSQLで監視に使える機能には稼働統計情報とログがありますが、今回はログに注目してみます。 PostgreSQLのログからわかること PostgreSQLが出力するログからは以下の様なことがわかります。 何らかの異常(エラー)が発生したこと 処理されたSQL チェックポイント、自動VA

    PostgreSQLのログをFluentdで収集する - Tech-Sketch
  • PostgreSQLでテストデータを作成する | Let's POSTGRES

    笠原 辰仁 記事は2013年のPostgreSQL Advent Calendar の 12/25 の記事です(地味なトピックになってしまいすいません)。PostgreSQLでのテストデータ作成に役立つ機能を紹介します。 はじめに PostgreSQLを対象としたの性能検証や機能検証を行う際に、開発環境や試験環境でスキーマ(テーブルやインデックス)を作成し、ダミーのデータを投入してSQLのチェックを行うことが多々あるかと思います。単純な機能の正常試験であれば少量のデータ投入で事足りると思いますが、大量のデータに対する検索処理やバッチ処理を試す際は、それなりの量の試験データを生成し、DBに投入する必要があります。 通常、試験データは、例えば専用のジェネレータを作る、実際のデータをマスキングしたものを使う、サンプルとして存在するデータ(郵便番号のデータなど)を利用する、といったことが多いと思

  • タグ検索するならPostgreSQLで決まり!

    (Last Updated On: )PostgreSQL Advent Calender 2013、13日目のエントリです。 表題の通り「タグ検索するならPostgreSQLで決まり!」です。 追記:JSONの場合はPostgreSQLのJSONB型を利用してタグ検索を行うを参照 RDBはタグが苦手 WebアプリではRDBでは取り扱いづらいデータを取り扱う事がよくあります。タグの管理・検索はその一つです。 RDBはタグ情報の管理・検索をしっかりやれますが、どちらかと言うと苦手な分野です。しかし、PostgreSQLの 配列 GIN(Generalized Inverse Index – 転置インデックス) を使うと簡単かつ高速に処理できます。 PostgreSQLを使うとタグ検索が簡単・高速に実現できますが、Googleで「タグ検索 PostgreSQL」と検索しても全く出てきません。「

    タグ検索するならPostgreSQLで決まり!
  • PostgreSQL 9.xにおける日本語全文検索について調べてみた - longkey1's blog

    調べた経緯 データベースの内容を全文検索したいという要望は定期的にあるので、常に情報は探しているんだけど、PostgreSQLに関しては調べたことなかったので色々調べてみた。 Senna Senna 組み込み型全文検索エンジン - Senna 組み込み型全文検索エンジン これがスタンダードだった時期もあるんだろうけど、結局PostgreSQL9.x系にインストール出来なかった。 textsearch_sennaを使って動かそうとしたんだけど、そもそも公式サイトで配布されている圧縮ファイルをダウンロードしても、ちゃんとインストール出来ない。 CVSでソースコードをダウンロードして・・・という手順だと動くとMLに書かれていたので、チャレンジしてみたけど結局ダウンロード出来なかった。 ダウンロード出来たとしても、Senna体が2010年からリリースされてないみたいだから、はっきりいって今更感が

  • Postgre sql9.3新機能 (OSC hiroshima 2013)

    High-load performance testing: Firebird 2.5, 3.0, 4.0

    Postgre sql9.3新機能 (OSC hiroshima 2013)
  • PostgreSQL 9.3 新機能の概要 | マイナビニュース

    お疲れ様です。稲垣です。 PostgreSQL 9.3 がこの秋に正式にリリースされる予定です。ブログの執筆時点では Beta2 がリリースされています。今回は、現時点でリリースが確定している機能をご紹介します。 ■PostgreSQL9.3 の新機能一覧 新しい機能や高速化された全ての機能を紹介することは難しい為、これらの機能の内の幾つかをピックアップして後ほど簡単に紹介します。 【追加機能】 マテリアライズドビュー データが更新されないビューhttp://www.postgresql.org/docs/9.3/static/rules-materializedviews.html http://www.postgresql.org/docs/9.3/static/sql-creatematerializedview.html 更新可能ビュー ビューの定義と同時に更新ルールを定義htt

  • PostgreSQL INSERT で外部キーの被参照テーブルに ROW SHARE ロックがかかる

    PostgreSQL で、トランザクション処理中にあるテーブルに INSERT 文を発行すると、並列で実行している別処理にて、そのテーブルの外部キーの被参照テーブルへのEXCLUSIVE ロックが取得できない現象があったのでメモ。 再現 検証用にテーブルを2つ(products, orders)を用意します。orders テーブルの product_no には products テーブルへの外部キーを設定します。 CREATE TABLE products ( product_no integer PRIMARY KEY, name text, price numeric ); CREATE TABLE orders ( order_id serial PRIMARY KEY, product_no integer REFERENCES products (product_no), qua

  • PostgreSQLエンタープライズ利用の指針が続々公開へ

    PostgreSQLエンタープライズ利用の指針が続々公開へ:Database Watch(2013年5月版)(1/2 ページ) OSSながら、堅牢性やスケーラビリティの面からエンタープライズ用途でも採用されることの多いPostgreSQL。大規模運用のための指針や移行のノウハウを公開する動きが活発化しています。今回はPGECの活動成果をウォッチ! 4月22日、PostgreSQLエンタープライズ・コンソーシアム(以下、PGEC)は設立1周年を迎えるとともに、2012年度の活動成果を発表しました。活動成果は性能WGと設計運用WGから報告され、報告書は同会サイトにて公開(リンク)されています。いずれも企業へのPostgreSQL導入で直面する疑問をテーマとしており、とても実践的な内容となっています。 性能WG:スケールアップとスケールアウト検証結果 性能WGからは大規模運用を想定し、Postg

    PostgreSQLエンタープライズ利用の指針が続々公開へ
  • pgsqlenvをリリースしました | 独り言v6

    mysqlenvというツールがリリースされているのを見て、ふと昔とった杵柄と思って移植してpgsqlenvを作ってgithubに公開しました。 https://github.com/yutakat/pgsqlenv 一応説明すると、自分のユーザーディレクトリの下に、複数のバージョンのPostgreSQLをソースコードから自前コンパイルでインストールし、また起動停止等がコマンドラインから一元管理できるツールです。多分UNIXとMacOSXで動作すると思いますが、さくらVPSでしかテストしていません。 ご存知の人はご存知と思いますが、L.starの昔の仕事は多数のPostgreSQLのバージョンを扱う関連のお仕事で、その関係上、homebrewに近いシステムを自分で作って運用したりしてたのですが、その時のことを思い出しながら作りました。当時の俺得ツールです。そのへんは、「UNIXアカウントと同

  • PostgreSQL 9.2の同期レプリケーションを利用する際の勘所

    DBMSの可用性とPostgreSQLのレプリケーション 勤怠管理やERPなど会社内の業務に欠かせないシステムはもちろんのこと、SNSやECサイトなど個人で利用するシステムでも、何かしらのDBMSを利用をするのが一般的です。 もしDBMSで障害が発生した場合、データの参照・更新が滞り、システム全体として役割を果たすことができなくなります。そのためユーザが利用したいときにシステムを利用可能にするためにはDBMSが継続的に稼働していることがとても重要です。 世の中にはDBMSは多数存在し、またDBMSの可用性を上げる機能やツールなどもさまざまに存在します。OSSの代表的なDBMSの一つであるPostgreSQLには可用性向上機能の一つであるレプリケーションが用意されています。 今回は最新バージョンであるPostgreSQL 9.2のレプリケーションについて、機能の紹介、利用時の注意点、設定によ

    PostgreSQL 9.2の同期レプリケーションを利用する際の勘所
  • SQLアンチパターンにおけるPostgreSQLパッチ #sqlap - やさしいデスマーチ

    SQLアンチパターンはMySQLがベースになっているのでPostgreSQLではそのまま動かない。とりあえずサンプルデータベースの変更ポイント。 BLOBをBYTEAに変更 UNSIGNGEDがないので省略 DATETIMEをTIMESTAMPに変更 テーブルを削除したい場合はDROP文をIF EXISTSオプションを付けて冒頭に書いておけばOK。 DROP TABLE IF EXISTS Accounts, BugStatus, Bugs, Comments, Screenshots, Tags, Products, BugsProducts; 修正後のSQLって公開してもいいのかな? id:t-wada さんに公開OKといただきました。 (追記)リポジトリ公開しました 写経しながらとなりますが、こちらのリポジトリにおいておきます。 https://bitbucket.org/shuji

    SQLアンチパターンにおけるPostgreSQLパッチ #sqlap - やさしいデスマーチ
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • [PostgreSQL]Explain Analyzeで、多重JOINしたSQLをチューニングする · DQNEO日記

    Sec ScanのないSQLをどうやって高速化するのか 当に難しいのはここから。 例えば、Explain Analyzeの結果が下記のようなものだったら、どうしますか? どこにボトルネックがあるか、わかりますか? QUERY PLAN ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Sort (cost=1568.27..1568.51 rows=96 width=260) (actual time=822.175..822.259 rows=

  • 共有システムカタログのインデックス破損時のリカバリ - matsuou1の日記

    ついカッとなって、PostgreSQLの共有システムカタログのインデックスを壊してリカバリすることにしてみた。 マニュアルに一応、やり方は書いてあるのですが実際にやった人のブログ等ないので、やって見ます。 1.共有システムカタログ(今回は、pg_database)のインデックスのfilenodeを確認 testdb=# select relname , relfilenode from pg_class where relname like 'pg_database_%'; relname | relfilenode ---------------------------+------------- pg_database_datname_index | 2671 pg_database_oid_index | 2672 対象のインデックスのfilenodeは2671と2672であることが

    共有システムカタログのインデックス破損時のリカバリ - matsuou1の日記
  • PostgreSQLに興味がある人向けにまとめてみた。|PostgreSQL|お仕事メモ|Pictnotes

    PostgreSQL9.2がでたのと、一部で?またPostgreSQLを使いたいと思ってる人が多くなったとかあるみたいなので 4〜5年触ってなかったか、全然知らない人向けとおさらいとしてまとめてみた。 ざっくり書いてるので、詳しい人からみるとおかしい点もあるかと思いますが、気になった点はより詳しい記事が あると思うので、調べてみてください。 明らかな間違え等々は、修正加筆したいので、コメントか twitterの @itm_kiyoまで、御願いします。 Q. なんて読むの?書くの? A. PostgreSQL(ぽすとぐれすきゅーえる)、PとSQLは大文字。ちなみにMySQL(y以外は大文字)なんで、小文字と大文字の区別をきちんとするとその界隈の人がよろこびます。 でも、「postgres」 とか 、「Postgres」や「ポスグレ」とか書かれてることも多いです。 Q. どのバージョンを使うの

  • PostgreSQL 9.2 リリース! — Let's Postgres

    ニュースは、石井達夫氏による紹介 を 転載させていただいています。 ※ Let's Postgres では近日、それぞれの新機能について詳しく紹介する予定です。ご期待ください! 待望の PostgreSQL 9.2.0 がついにリリースされました。 PostgreSQL 9.2.0 では、大幅な性能改善や各種の機能追加が行なわれています。 検索性能の大幅な改善。マルチ CPU 環境では最高 64 コアまで検索性能が向上することが確認されています。 インデックスだけを見て検索を行なう "index only scan" により、 特に大規模データで数十倍の性能向上が得られる場合があります。 スタンバイサーバから更に別のスタンバイサーバにレプリケーションを行なう カスケードレプリケーション アナウンス(英語) http://www.postgresql.org/about/news/14

  • Mac+HomeBrew+Postgresql+pg - NowTomの日記

    MacでPostgresqlを使おうとしてはまったことをメモ。 Posgtgresqlのインストール HomeBrewを導入しているのでインストール自体は下記のコマンドで一発。 $ brew install postgresql Postgresqlの初期設定 データベースの初期化をする $ initdb /usr/local/var/postgres Postgresqlの起動と終了 まずは起動。 pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start次に終了。 pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start自動で起動する場合は、下記のコマンドを実行する。 $ launchctl u

    Mac+HomeBrew+Postgresql+pg - NowTomの日記
  • Uptime Technologies, LLC » いまさら聞けないPostgreSQL運用管理

    2012年5月24日に開催された「第2回『いまさら聞けない!システム運用・管理のコツ』」での弊社・永安のセッション「いまさら聞けないPostgreSQL運用管理」の講演資料です。

  • 待望のPostgreSQL 9.2は大幅性能アップするのか?(1/2) - @IT

    Database Watch 2012年3月版 待望のPostgreSQL 9.2は大幅性能アップするのか? PostgreSQL Conferenceではコミッターから次期バージョン9.2の紹介がありました。従来のボトルネックを解消し、性能の大きな飛躍が期待できそうです。また3月には、IBMデータ分析ソフトウェアの2つの新製品が発表になりました。 PostgreSQL 9.2では大幅な性能アップが実現するか 2月24日、日PostgreSQLユーザー会(JPUG)が毎年恒例の「PostgreSQL Conference」を開催しました。JPUGのサイトには講演資料の一部が公開されています。基調講演では、EnterpriseDB Senior Database ArchitectのRobert Haas(ロバート・ハース)氏(写真)が次期バージョンとなるPostgreSQL 9.2を紹介

  • PHPから見たPostgreSQLの数値データ型(数値リテラル) | Let's POSTGRES

    smallintはint2、integerはint4 およびint、bigintはint8と同意です。またsequenceを使うという機能を除けば、serialはintegerと、bigserialはbigintと同様の動きをします。これらは小数点以下のない「整数値」です。 serial、bigserialの値のフォーマット・範囲のチェックなどはinteger、bigintと同じですので、以下はそれぞれに読み替えてください。 64bitシステムでの整数値のチェック smallintとinteger まず、値が負でない(すなわちマイナス記号がつかない)ことを必須にしてしまってよければ、smallintやintegerのチェックは簡単です。 if(!ctype_digit($_REQUEST['num']) || $_REQUEST['num'] > 32767) { // NG処理 } これ