Loading...
Loading...
诊断并修复代码库中Postgres的过度出口流量(网络数据传输)问题。当用户提到数据库费用过高、意外的数据传输成本、网络传输费用、出口流量激增、“为什么我的Neon账单这么高”、“数据库成本骤增”、SELECT * 优化、查询过度获取数据、降低Neon成本、优化数据库使用,或者希望减少从数据库发送到应用程序的数据量时,可使用本指南。此外,即使用户没有明确提到出口流量或数据传输,在审查查询模式以提升成本效益时也可使用。
npx skill4agent add neondatabase/agent-skills neon-postgres-egress-optimizerpg_stat_statementsSELECT 1 FROM pg_stat_statements LIMIT 1;CREATE EXTENSION IF NOT EXISTS pg_stat_statements;SELECT pg_stat_statements_reset();SELECT query, calls, rows AS total_rows, rows / calls AS avg_rows_per_call
FROM pg_stat_statements
WHERE calls > 0
ORDER BY rows DESC
LIMIT 10;SELECT query, calls, rows AS total_rows, rows / calls AS avg_rows_per_call
FROM pg_stat_statements
WHERE calls > 0
ORDER BY avg_rows_per_call DESC
LIMIT 10;SELECT query, calls, rows AS total_rows, rows / calls AS avg_rows_per_call
FROM pg_stat_statements
WHERE calls > 0
ORDER BY calls DESC
LIMIT 10;SELECT query, calls, rows AS total_rows,
round(total_exec_time::numeric, 2) AS total_exec_time_ms
FROM pg_stat_statements
WHERE calls > 0
ORDER BY total_exec_time DESC
LIMIT 10;SELECT * FROM products;SELECT id, name, price, image_urls FROM products;SELECT id, name, price FROM products;SELECT id, name, price FROM products
ORDER BY id
LIMIT 50 OFFSET 0;pg_stat_statements.reduce()SELECT p.category_id,
AVG(r.rating) AS avg_rating,
COUNT(r.id) AS review_count
FROM reviews r
INNER JOIN products p ON r.product_id = p.id
GROUP BY p.category_id;SELECT * FROM products
LEFT JOIN reviews ON reviews.product_id = products.id
WHERE products.id = 1;SELECT id, name, price, description, image_urls FROM products WHERE id = 1;
SELECT id, user_name, rating, body FROM reviews WHERE product_id = 1;SELECT pg_stat_statements_reset();