sql >> データベース >  >> RDS >> PostgreSQL

Postgresqlテーブルの最大(使用可能な)行数

    それは単なる「一連のチューニング(インデックスなど)」ではありません。これは非常に重要であり、実行する必要があります。

    詳細をいくつか投稿しましたが、試してみましょう。

    ルールは次のとおりです。最も一般的なワーキングセットを見つけてみてください。 RAMに収まるかどうかを確認します。ハードウェア、PG / OSバッファー設定、およびPGインデックス/クラスタリングを最適化します。それ以外の場合は集計を探します。それが受け入れられず、完全にランダムアクセスが必要な場合は、どのハードウェアが妥当な時間内にテーブル全体をスキャンできるかを考えてください。

    テーブルの大きさ(ギガバイト単位)はどれくらいですか?合計RAMと比較してどうですか? shared_buffersやeffective_cache_sizeなどのPG設定は何ですか?これは専用サーバーですか? 250ギガバイトのテーブルと約10GBのRAMがある場合、それはテーブルの4%しか収まらないことを意味します。

    状態や日付など、フィルタリングに一般的に使用される列はありますか? (先月だけのように)最も一般的に使用されているワーキングセットを特定できますか?その場合は、これらの列のパーティション化またはクラスタリングを検討し、確実にインデックスを作成してください。基本的に、ワーキングセットのできるだけ多くがRAMに収まるようにしようとしています。

    テーブルがRAMに収まらない場合は、テーブルをスキャンしないでください。絶対にランダムアクセスが本当に必要な場合、それを使用できる唯一の方法は本当に洗練されたハードウェアです。妥当な時間で250GBを読み取ることができる永続的なストレージ/RAM構成が必要になります。




    1. 2019データベースのトレンド– SQLとNoSQL、トップデータベース、単一データベースと複数データベースの使用

    2. SQLAlchemyパスワードが提供されていませんエラー

    3. ユーザーに自分でフォークするように指示する

    4. PythonでJSONBをPostgresqlに挿入する方法は?