id
による数百万のポストグレスクル行の高性能削除何百万ものデータベース行を削除すると、パフォーマンスに深刻な影響を与える可能性があります。この記事では、IDSのリストを使用して、一般的なボトルネックに対処するPostgreSQLデータベースから約200万行を削除するための効率的な戦略を検証します。
課題:
タスクには、提供されたIDリストに基づいて大きなデータセットを削除することが含まれます。 バッチの削除や句のクエリなどの標準的な方法は、このスケールに対して非効率的であることが多いことがよくあります。
IN
最良のアプローチは、いくつかの要因に依存します:
- 同時アクセス:
- 同時書の存在がプロセスをかなり簡素化する。 インデックス作成:
- 一時的に不要なインデックスをドロップし(削除に重要なものを除く)、その後それらを再構築すると速度が向上する可能性があります。 トリガー: 削除プロセス中にトリガーを非アクティブ化または削除すると、パフォーマンスが大幅に改善される可能性があります。
- 外国の鍵:外国のキー関係を慎重に管理します。削除を容易にするために、一時的な無効化または変更を検討してください
- autovacuum:running事前にパフォーマンスを最適化できます
- メモリー内アプローチ(残りのデータセットが小さい場合):削除後に残っているデータが元のテーブルよりも大幅に小さく、この非常に効率的な方法を検討してください。
VACUUM ANALYZE
これにより、外国の鍵、ビュー、その他の依存関係が保持されているため、清潔で最適化されたテーブルが生まれます。
- vs.
BEGIN; SET LOCAL temp_buffers = '1000MB'; CREATE TEMP TABLE tmp AS SELECT t.* FROM tbl t LEFT JOIN del_list d USING (id) WHERE d.id IS NULL; -- copy remaining rows TRUNCATE tbl; -- clear the table INSERT INTO tbl SELECT * FROM tmp; -- re-insert remaining data COMMIT;:小さいテーブルの場合、
は、トリガーと外部キーの制約を維持するため、
よりも高速になる可能性があります。-
主要な考慮事項:
DELETE
TRUNCATE
すべての参照テーブルも同時に切り捨てられない限り、DELETE
TRUNCATE
外部キー参照のテーブルでは使用できません。
トリガーをトリガーしません。 削除後
(または- )は、ディスクのスペースを取り戻し、テーブルサイズを最適化するために重要です。
- >
TRUNCATE
以上がPostgreSQLでIDで何百万ものデータベース行を効率的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

この記事では、MySQLの「共有ライブラリを開くことができない」エラーについて説明します。 この問題は、必要な共有ライブラリ(.so/.dllファイル)を見つけることができないMySQLの障害に起因しています。ソリューションには、システムのパッケージMを介してライブラリのインストールを確認することが含まれます。

この記事では、DockerのMySQLメモリ使用量を最適化することを調査します。 監視手法(Docker統計、パフォーマンススキーマ、外部ツール)および構成戦略について説明します。 これらには、Dockerメモリの制限、スワッピング、およびcgroupsが含まれます

この記事では、MySQLのAlter Tableステートメントを使用して、列の追加/ドロップ、テーブル/列の名前の変更、列データ型の変更など、テーブルを変更することについて説明します。

この記事では、PHPMyAdminの有無にかかわらず、LinuxにMySQLを直接インストールするのとPodmanコンテナを使用します。 それは、各方法のインストール手順を詳述し、孤立、携帯性、再現性におけるポッドマンの利点を強調しますが、

この記事では、自己完結型のサーバーレスリレーショナルデータベースであるSQLiteの包括的な概要を説明します。 SQLiteの利点(シンプルさ、移植性、使いやすさ)と短所(同時性の制限、スケーラビリティの課題)を詳しく説明しています。 c

記事では、証明書の生成と検証を含むMySQL用のSSL/TLS暗号化の構成について説明します。主な問題は、セルフ署名証明書のセキュリティへの影響を使用することです。[文字カウント:159]

このガイドは、HomeBrewを使用してMacOSに複数のMySQLバージョンをインストールおよび管理することを示しています。 Homebrewを使用して設置を分離し、紛争を防ぐことを強調しています。 この記事では、インストール、開始/停止サービス、および最高のPRAを詳述しています

記事では、MySQLワークベンチやPHPMyAdminなどの人気のあるMySQL GUIツールについて説明し、初心者と上級ユーザーの機能と適合性を比較します。[159文字]


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

ホットトピック









