<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>概念 on PIG.CENTER</title><link>https://pig.center/ja/categories/%E6%A6%82%E5%BF%B5/</link><description>Recent content in 概念 on PIG.CENTER</description><generator>Hugo</generator><language>ja-JP</language><lastBuildDate>Tue, 08 Sep 2026 21:29:01 +0800</lastBuildDate><atom:link href="https://pig.center/ja/categories/%E6%A6%82%E5%BF%B5/index.xml" rel="self" type="application/rss+xml"/><item><title>Patroni 4.1.5ドキュメント</title><link>https://pig.center/ja/docs/patroni/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/patroni/</guid><description>&lt;div class="td-callout td-callout--warning" role="note"&gt;&#10; &lt;div class="td-callout__title"&gt;&lt;i class="td-callout__icon fa-solid fa-triangle-exclamation" aria-hidden="true"&gt;&lt;/i&gt;&lt;span class="td-callout__label"&gt;警告&lt;/span&gt;&lt;/div&gt;&#10; &lt;div class="td-callout__body"&gt;&#10;&lt;p&gt;&lt;strong&gt;Python 3.11+を使用する、メモリー制限のあるシステム&lt;/strong&gt;でのPatroniの実行&lt;/p&gt;&#10; &lt;/div&gt;&#10;&lt;/div&gt;&lt;p&gt;たとえば&lt;code&gt;vm.overcommit_memory=2&lt;/code&gt;（PostgreSQLで推奨）を設定したような、メモリー制限が厳しいシステムでPatroniを実行し、Python 3.11以降を使用すると、予期しない動作が見られる場合があります。&lt;/p&gt;</description></item><item><title>はじめに</title><link>https://pig.center/ja/docs/patroni/readme/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/patroni/readme/</guid><description>&lt;p&gt;&lt;a id="readme"&gt;&lt;/a&gt;&#10;Patroniは、Pythonを使用した高可用性（HA）PostgreSQLソリューションのテンプレートです。PatroniはComposeのプロジェクトである&lt;a href="https://github.com/compose/governor"&gt;Governor&lt;/a&gt;&#10;のフォークとして誕生し、多くの新機能を備えています。&lt;/p&gt;</description></item><item><title>機能</title><link>https://pig.center/ja/docs/pgbouncer/features/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/pgbouncer/features/</guid><description>&lt;ul&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;接続をローテートする際の幾つかのレベルの厳しさ：&lt;/p&gt;&#10;&lt;dl&gt;&#10;&lt;dt&gt;&lt;strong&gt;セッションプーリング&lt;/strong&gt;&lt;/dt&gt;&#10;&lt;dd&gt;最も丁寧な方法です。クライアントが接続すると、そのクライアントが接続を維持している間は、サーバー接続が常に割り当てられます。クライアントが切断すると、そのサーバー接続はプールに戻されます。このモードは、すべての PostgreSQL 機能をサポートしています。&lt;/dd&gt;&#10;&lt;dt&gt;&lt;strong&gt;トランザクションプーリング&lt;/strong&gt;&lt;/dt&gt;&#10;&lt;dd&gt;クライアントにサーバー接続が割り当てられるのは、トランザクション中に限られます。PgBouncer がトランザクションの終了を検知すると、サーバーはプールに戻されます。このモードでは、PostgreSQL のセッションベースの機能の一部が動作しなくなります。アプリケーションが、破損を引き起こす機能を使用しないよう協力する場合にのみ利用できます。互換性のない機能については、以下の表を参照してください。&lt;/dd&gt;&#10;&lt;dt&gt;&lt;strong&gt;ステートメントプーリング&lt;/strong&gt;&lt;/dt&gt;&#10;&lt;dd&gt;最も攻撃的な方法です。これはトランザクションプーリングの一種ですが、複数文のトランザクションを許可しない点が特徴です。これはクライアント上で「autocommit」モードを強制することを目的としており、主に PL/Proxy を対象としています。&lt;/dd&gt;&#10;&lt;/dl&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;メモリ要件が低く（デフォルトで接続あたり 2 kB）、これは PgBouncer が一度に完全なパケットを確認する必要がないためです。&lt;/p&gt;</description></item><item><title>pgBackRest 2.59.1 ドキュメント</title><link>https://pig.center/ja/docs/pgbackrest/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/pgbackrest/</guid><description>&lt;hr&gt;&#10;&lt;h2 id="introduction"&gt;はじめに&#10;&lt;/h2&gt;&#10;&lt;p&gt;pgBackRestは、最大規模のデータベースやワークロードにもシームレスに対応できる、PostgreSQL向けの信頼性の高いバックアップとリストアのソリューションです。&lt;/p&gt;</description></item><item><title>PgBouncer 1.25.2 ドキュメント</title><link>https://pig.center/ja/docs/pgbouncer/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/pgbouncer/</guid><description>&lt;p&gt;&lt;strong&gt;pgbouncer&lt;/strong&gt; は PostgreSQL のコネクションプーラーです。任意の対象アプリケーションは、実際のサーバーのように &lt;strong&gt;pgbouncer&lt;/strong&gt; に接続できます。このとき、&lt;strong&gt;pgbouncer&lt;/strong&gt; は実際に接続先のサーバーに接続するか、既存の接続を再利用します。&lt;/p&gt;</description></item><item><title>pgBadger 13.2ドキュメント</title><link>https://pig.center/ja/docs/pgbadger/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/pgbadger/</guid><description>&lt;img class="td-image" src="https://pig.center/img/docs/pgbadger/logo.png" alt="pgBadgerロゴ" title="pgBadger" loading="lazy" decoding="async"&gt;&lt;p&gt;&lt;strong&gt;pgBadger&lt;/strong&gt;は、Perlで書かれた高速な単体動作のPostgreSQLログアナライザーです。PostgreSQLまたはPgBouncerのログを読み取り、詳細なHTML、テキスト、バイナリ、JSON、または生のCSVを出力します。HTMLレポートは自己完結型で、操作や拡大縮小が可能です。閲覧に必要なのはウェブブラウザーだけです。&lt;/p&gt;&#10;&lt;h2 id="why-pgbadger"&gt;pgBadgerを選ぶ理由&#10;&lt;/h2&gt;&#10;&lt;p&gt;pgBadgerは、大きなログの解析と運用での利用を想定して設計されています。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;単一のPerlプログラムであり、Perlコア以外の必須モジュールはありません。&lt;/li&gt;&#10;&lt;li&gt;&lt;code&gt;stderr&lt;/code&gt;、&lt;code&gt;syslog&lt;/code&gt;、&lt;code&gt;csvlog&lt;/code&gt;、&lt;code&gt;jsonlog&lt;/code&gt;、RDS、Cloud SQL、logplex、Redshift、PgBouncerの入力を自動検出します。&lt;/li&gt;&#10;&lt;li&gt;ローカルファイル、標準入力、SSH経由のリモートファイル、HTTP・FTP・SFTPのURLを直接読み取ります。&lt;/li&gt;&#10;&lt;li&gt;gzip、bzip2、lz4、xz、zip、zstdの圧縮入力に対応します。&lt;/li&gt;&#10;&lt;li&gt;単一の大きなファイル、または多数の小さなファイルを並列に解析します。&lt;/li&gt;&#10;&lt;li&gt;日次、週次、および必要に応じた月次の増分レポートを生成します。&lt;/li&gt;&#10;&lt;li&gt;時刻、データベース、ユーザー、クライアント、アプリケーション、プロセス、セッション、クエリーパターンで絞り込めます。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="report-coverage"&gt;レポートの内容&#10;&lt;/h2&gt;&#10;&lt;p&gt;PostgreSQLのレポートには次の内容が含まれます。&lt;/p&gt;</description></item><item><title>etcd 3.7 ドキュメント</title><link>https://pig.center/ja/docs/etcd/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/etcd/</guid><description>&lt;p&gt;etcdは、強い整合性を備えた分散キー・バリューストアです。これらのガイドでは、etcdのインストールと運用、APIを使用したアプリケーションの構築、設計の理解、性能の測定、3.7リリース系列でのクラスターのアップグレードとダウングレードについて説明します。&lt;/p&gt;</description></item><item><title>レプリケーションモード</title><link>https://pig.center/ja/docs/patroni/replication_modes/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/patroni/replication_modes/</guid><description>&lt;p&gt;&lt;a id="replication_modes"&gt;&lt;/a&gt;&#10;PatroniはPostgreSQLのストリーミングレプリケーションを使用します。ストリーミングレプリケーションの詳細は&lt;a href="http://www.postgresql.org/docs/current/static/warm-standby.html#STREAMING-REPLICATION"&gt;Postgresのドキュメント&lt;/a&gt;&#10;を参照してください。デフォルトでは、PatroniはPostgreSQLに非同期レプリケーションを設定します。レプリケーション方式の選択は業務上の要件によって異なります。非同期と同期の両方式、および他の高可用性ソリューションを検討し、最適なものを判断してください。&lt;/p&gt;</description></item><item><title>コミュニティ</title><link>https://pig.center/ja/docs/pgbouncer/community/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/pgbouncer/community/</guid><description>&lt;hr&gt;&#10;&lt;h2 id="tutorials"&gt;チュートリアル&#10;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://get.enterprisedb.com/docs/Tutorial_All_PPSS_pgBouncer.pdf"&gt;Postgres Plus Standard Server 用に PgBouncer を設定する方法&lt;/a&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;PgBouncer の概念についての良い概要。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="http://www.depesz.com/2012/12/02/what-is-the-point-of-bouncing/"&gt;バウンシングの意味とは何か。&lt;/a&gt;&#10;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;プーリングモードの違いについて説明します。&lt;/p&gt;</description></item><item><title>プロジェクトの指標</title><link>https://pig.center/ja/docs/pgbackrest/metric/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/pgbackrest/metric/</guid><description>&lt;hr&gt;&#10;&lt;h2 id="code-coverage"&gt;コードカバレッジ&#10;&lt;/h2&gt;&#10;&lt;p&gt;pgBackRest は、&lt;code&gt;/src&lt;/code&gt; のコア C コードを完全に function/branch/line カバーすることを目指しています。&lt;/p&gt;&#10;&lt;p&gt;関数/行は例外なく完全にカバーされています。&lt;/p&gt;</description></item><item><title>ウォッチドッグのサポート</title><link>https://pig.center/ja/docs/patroni/watchdog/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/patroni/watchdog/</guid><description>&lt;p&gt;&lt;a id="watchdog"&gt;&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;複数のPostgreSQLサーバーがプライマリーとして動作すると、タイムラインが分岐してトランザクションが失われる可能性があります。この状況はスプリットブレイン問題とも呼ばれます。スプリットブレインを避けるには、DCS内のリーダーキーが期限切れになった後にPostgreSQLがトランザクションのコミットを受け付けないよう、Patroniが保証する必要があります。通常、Patroniは何らかの理由でリーダーロックの更新に失敗すると、PostgreSQLを停止することでこれを実現しようとします。しかし、次のようなさまざまな理由で実行できない場合があります。&lt;/p&gt;</description></item><item><title>補完製品と代替製品</title><link>https://pig.center/ja/docs/haproxy/ecosystem/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/haproxy/ecosystem/</guid><description>&lt;!-- Generated by scripts/generate-haproxy-docs.py from pinned upstream text. --&gt;&#10;&lt;p&gt;HAProxy は、以下に挙げる製品の一部と非常にうまく連携します。そのため、HAProxy に直接関連しないものもここで紹介します。&lt;/p&gt;&#10;&lt;h2 id="section-4-1"&gt;4.1. Apache HTTP server&#10;&lt;/h2&gt;&#10;&lt;p&gt;Apache は、事実上の標準となっている HTTP サーバーです。非常に充実したモジュール構成のプロジェクトで、ファイル配信と動的コンテンツの両方をサポートします。一部のアプリケーションサーバーのフロントエンドとしても使用でき、リクエストのプロキシやレスポンスのキャッシュも行えます。いずれの用途でも、通常は前段にロードバランサーが必要です。Apache にはさまざまな動作モードがあり、モードによって負荷が異なります。一部のモジュールでは、依然として負荷の大きい prefork モデルが必要なため、接続数が増えるとうまくスケールできません。この場合、HAProxy でサーバーごとの同時接続数を安全な値に制限すると、大きな効果があります。サーバーを大幅に高速化し、そのリソースを確保してアプリケーションで有効に利用できます。&lt;/p&gt;</description></item><item><title>DCSフェイルセーフモード</title><link>https://pig.center/ja/docs/patroni/dcs_failsafe_mode/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/patroni/dcs_failsafe_mode/</guid><description>&lt;p&gt;&lt;a id="dcs_failsafe_mode"&gt;&lt;/a&gt;&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="the-problem"&gt;問題&#10;&lt;/h2&gt;&#10;&lt;p&gt;Patroniは、リーダー選出とネットワーク分断の検出を行うため、分散構成ストア（DCS）に大きく依存しています。つまり、DCS内のリーダーロックを更新できる場合に限り、ノードはPostgresをプライマリーとして実行できます。リーダーロックの更新に失敗すると、Postgresはただちに降格し、読み取り専用として起動します。この「問題」が発生する可能性は、使用するDCSによって異なります。たとえば、Patroni専用のetcdでは発生する可能性はほぼゼロですが、etcdを基盤に持つK8s APIでは、より頻繁に観測される可能性があります。&lt;/p&gt;</description></item><item><title>Citusサポート</title><link>https://pig.center/ja/docs/patroni/citus/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/patroni/citus/</guid><description>&lt;p&gt;&lt;a id="citus"&gt;&lt;/a&gt;&#10;Patroniを使用すると、&lt;a href="https://docs.citusdata.com/en/stable/installation/multi_node.html"&gt;マルチノードCitus&lt;/a&gt;&#10;クラスターを非常に簡単に構築できます。&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="tldr"&gt;要点&#10;&lt;/h2&gt;&#10;&lt;p&gt;必要なのは、次の簡単なルールに従うことだけです。&lt;/p&gt;</description></item><item><title>他のツールとの統合</title><link>https://pig.center/ja/docs/patroni/tools_integration/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/patroni/tools_integration/</guid><description>&lt;p&gt;&lt;a id="tools_integration"&gt;&lt;/a&gt;&#10;Patroni は、スタック内の他のツールと統合できます。このセクションでは、Patroni が他のツールと統合する方法についてのアイデアを提供する例を示します。ただし、すべての例を網羅しているわけではありません。&lt;/p&gt;</description></item><item><title>セキュリティに関する考慮事項</title><link>https://pig.center/ja/docs/patroni/security/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/patroni/security/</guid><description>&lt;p&gt;&lt;a id="security"&gt;&lt;/a&gt;&#10;Patroni クラスターには、不正アクセスから保護すべき2つのインターフェースがあります。1つは分散型構成ストレージ（DCS）、もう1つは Patroni REST API です。&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="protecting-dcs"&gt;DCS の保護&#10;&lt;/h2&gt;&#10;&lt;p&gt;Patroni と &lt;a href="https://pig.center/ja/docs/patroni/patronictl/#patronictl"&gt;patronictl&lt;/a&gt;&#10; は、DCS に対してデータの格納および取得を行います。&lt;/p&gt;</description></item><item><title>複数のデータセンターにまたがるHA</title><link>https://pig.center/ja/docs/patroni/ha_multi_dc/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/patroni/ha_multi_dc/</guid><description>&lt;p&gt;&lt;a id="ha_multi_dc"&gt;&lt;/a&gt;&#10;複数のデータセンターにデプロイしたPostgreSQLクラスターの高可用性は、レプリケーションに基づきます。レプリケーションには同期と非同期があります（&lt;a href="https://pig.center/ja/docs/patroni/replication_modes/#replication_modes"&gt;レプリケーションモード&lt;/a&gt;&#10;を参照）。&lt;/p&gt;</description></item><item><title>2. HAProxy のアーキテクチャ</title><link>https://pig.center/ja/docs/haproxy/management-architecture/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/haproxy/management-architecture/</guid><description>&lt;!-- Generated by scripts/generate-haproxy-docs.py from pinned upstream text. --&gt;&#10;&lt;p&gt;HAProxy は、マルチスレッドで動作するイベント駆動型のノンブロッキングデーモンです。複数の処理の切り替えをシステムのスケジューリングに任せず、イベントの多重化によってすべての処理をスケジュールします。通常は単一プロセスとして動作するため、システム上で &amp;ldquo;ps aux&amp;rdquo; を実行すると &amp;ldquo;haproxy&amp;rdquo; プロセスは一つだけ表示されます。ただし、ソフトリロード中に、新しいプロセスと並行して古いプロセスが残りの処理を終えている場合は例外です。このため、strace ユーティリティで動作を簡単に追跡できます。利用可能なプロセッサー数に応じて性能を拡張するため、haproxy はデフォルトで、実行を許可されたプロセッサーごとにワーカースレッドを一つ起動します。明示的に別の設定をしない限り、受信トラフィックはこれらすべてのスレッドに分散され、各スレッドは同じイベントループを実行します。ほぼ線形のスケーラビリティを実現するため、スレッド間の依存関係を必要最小限に抑えるよう細心の注意を払っています。その影響の一つとして、各接続は単一のスレッドで処理されます。したがって、利用可能な処理能力をすべて使うには、少なくともスレッド数と同じだけの接続が必要です。この条件は、ほぼ常に満たされます。&lt;/p&gt;</description></item><item><title>内部実装</title><link>https://pig.center/ja/docs/etcd/dev-internal/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/etcd/dev-internal/</guid><description>&lt;!-- Local OINK section index for the upstream dev-internal document group. --&gt;</description></item><item><title>学習</title><link>https://pig.center/ja/docs/etcd/learning/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/etcd/learning/</guid><description/></item><item><title>バージョン管理</title><link>https://pig.center/ja/docs/etcd/op-guide/versioning/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pig.center/ja/docs/etcd/op-guide/versioning/</guid><description>&lt;p&gt;このドキュメントでは、etcdプロジェクトでサポートされるバージョンについて説明します。&lt;/p&gt;&#10;&lt;h2 id="service-versioning-and-supported-versions"&gt;サービスのバージョン管理とサポート対象バージョン&#10;&lt;/h2&gt;&#10;&lt;p&gt;etcdのバージョンは、&lt;a href="https://semver.org/"&gt;セマンティックバージョニング&lt;/a&gt;&#10;の用語に従い、&lt;strong&gt;x.y.z&lt;/strong&gt;と表記します。&lt;strong&gt;x&lt;/strong&gt;はメジャーバージョン、&lt;strong&gt;y&lt;/strong&gt;はマイナーバージョン、&lt;strong&gt;z&lt;/strong&gt;はパッチバージョンです。新しいマイナーバージョンでは、APIに機能が追加される場合があります。&lt;/p&gt;</description></item></channel></rss>