เจกเฉเจข เจธเจพเจฒ เจชเจนเจฟเจฒเจพเจ
เจชเจฟเจเจฒเฉ เจฎเจนเฉเจจเจฟเจเจ เจตเจฟเฉฑเจ เจ
เจธเฉเจ เจเจธ เจฌเจพเจฐเฉ เจฌเจฃเจพเจเจ เจนเฉ
เจ
เจคเฉ เจนเฉเจฃ เจ
เจธเฉเจ เจจเจตเฉเจ เจฎเฉเจเจฟเจเจ เจฌเจพเจฐเฉ เจเฉฑเจฒ เจเจฐเจจ เจฒเจ เจคเจฟเจเจฐ เจนเจพเจ เจเฉ เจคเฉเจธเฉเจ เจตเจฐเจค เจธเจเจฆเฉ เจนเฉเฅค
เจตเฉฑเจ-เจตเฉฑเจ เจฏเฉเจเจจเจพ เจซเจพเจฐเจฎเฉเจเจพเจ เจฒเจ เจธเจฎเจฐเจฅเจจ
เจฌเฉเจจเจคเฉ เจฆเฉ เจจเจพเจฒ, เจฒเฉเจ เจคเฉเจ เจฏเฉเจเจจเจพ เจฌเจฃเจพเจ
เจเฉฐเจธเฉเจฒ เจคเฉเจ เจธเจฟเฉฑเจงเจพ, เจจเจพเจฒ เจฒเจพเจเจจ เจคเฉเจ เจธเจผเฉเจฐเฉ เจเจฐเจฆเฉ เจนเฉเจ, เจชเฉเจฐเฉ เจฌเจฒเจพเจ เจฆเฉ เจเฉเจฃ เจเจฐเฉ เจธเจตเจพเจฒ เจฆเจพ เจชเจพเจ , เจธเจพเจฐเฉเจเจ เจชเฉเจฐเจฎเฉเฉฑเจ เจฅเจพเจตเจพเจ เจฆเฉ เจจเจพเจฒ:
Query Text: INSERT INTO dicquery_20200604 VALUES ($1.*) ON CONFLICT (query)
DO NOTHING;
Insert on dicquery_20200604 (cost=0.00..0.05 rows=1 width=52) (actual time=40.376..40.376 rows=0 loops=1)
Conflict Resolution: NOTHING
Conflict Arbiter Indexes: dicquery_20200604_pkey
Tuples Inserted: 1
Conflicting Tuples: 0
Buffers: shared hit=9 read=1 dirtied=1
-> Result (cost=0.00..0.05 rows=1 width=52) (actual time=0.001..0.001 rows=1 loops=1)
... เจ เจคเฉ เจเจฟเจธเฉ เจตเฉ เจเฉเจเจผ เจจเฉเฉฐ เจตเฉฑเจ เจเฉเจคเฉ เจฌเจฟเจจเจพเจ, เจจเจเจฒ เจเฉเจคเฉ เจนเจฐ เจเฉเจเจผ เจจเฉเฉฐ เจธเจฟเฉฑเจงเฉ เจฏเฉเจเจจเจพ เจเฉเจคเจฐ เจตเจฟเฉฑเจ เจชเจพเจ:
เจ
เฉฐเจค เจตเจฟเฉฑเจ เจธเจพเจจเฉเฉฐ เจตเฉฑเจ เจเฉเจคเฉ เจฏเฉเจเจจเจพ เจฒเจ เจเฉฑเจ เจฌเฉเจจเจธ เจฎเจฟเจฒเจฆเจพ เจนเฉ เจ
เจคเฉ "เจชเฉเจฐเจธเฉฐเจ" เจเฉเจฌ, เจเจฟเฉฑเจฅเฉ เจธเจพเจกเฉ เจฌเฉเจจเจคเฉ เจเจธเจฆเฉ เจชเฉเจฐเฉ เจธเจผเจพเจจ เจตเจฟเฉฑเจ เจชเฉเจธเจผ เจเฉเจคเฉ เจเจ เจนเฉ:
JSON เจ เจคเฉ YAML
EXPLAIN (ANALYZE, BUFFERS, FORMAT JSON)
SELECT * FROM pg_class;
"[
{
"Plan": {
"Node Type": "Seq Scan",
"Parallel Aware": false,
"Relation Name": "pg_class",
"Alias": "pg_class",
"Startup Cost": 0.00,
"Total Cost": 1336.20,
"Plan Rows": 13804,
"Plan Width": 539,
"Actual Startup Time": 0.006,
"Actual Total Time": 1.838,
"Actual Rows": 10266,
"Actual Loops": 1,
"Shared Hit Blocks": 646,
"Shared Read Blocks": 0,
"Shared Dirtied Blocks": 0,
"Shared Written Blocks": 0,
"Local Hit Blocks": 0,
"Local Read Blocks": 0,
"Local Dirtied Blocks": 0,
"Local Written Blocks": 0,
"Temp Read Blocks": 0,
"Temp Written Blocks": 0
},
"Planning Time": 5.135,
"Triggers": [
],
"Execution Time": 2.389
}
]"
เจเจพเจ เจคเจพเจ เจฌเจพเจนเจฐเฉ เจเฉเจเจธ เจฆเฉ เจจเจพเจฒ, pgAdmin เจเจพเจชเฉเจเจ เจฆเฉ เจฐเฉเจช เจตเจฟเฉฑเจ, เจเจพเจ เจฌเจฟเจจเจพเจ - เจ เจธเฉเจ เจเจธเจจเฉเฉฐ เจเจธเฉ เจเฉเจคเจฐ เจตเจฟเฉฑเจ เจธเฉเฉฑเจ เจฆเจฟเฉฐเจฆเฉ เจนเจพเจ, เจ เจคเฉ เจเจเจเจชเฉเฉฑเจ เจธเฉเฉฐเจฆเจฐเจคเจพ เจนเฉ:
เจเจกเจตเจพเจเจธเจก เจตเจฟเจเจผเฉเจ เจฒเจพเจเจเจผเฉเจธเจผเจจ
เจชเจฒเฉเจจเจฟเฉฐเจ เจเจพเจเจฎ/เจเจเจเจผเฉเจเจฟเจเจธเจผเจจ เจเจพเจเจฎ
เจนเฉเจฃ เจคเฉเจธเฉเจ เจฌเจฟเจนเจคเจฐ เจขเฉฐเจ เจจเจพเจฒ เจฆเฉเจ เจธเจเจฆเฉ เจนเฉ เจเจฟ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจจเฉเฉฐ เจเจฒเจพเจเจฃ เจฒเจ เจตเจพเจงเฉ เจธเจฎเจพเจ เจเจฟเฉฑเจฅเฉ เจเจฐเจเจฟเจ เจเจฟเจ เจธเฉ:
I/O เจเจพเจเจฎเจฟเฉฐเจ
เจเจ เจตเจพเจฐ เจคเฉเจนเจพเจจเฉเฉฐ เจ เจเจฟเจนเฉ เจธเจฅเจฟเจคเฉ เจจเจพเจฒ เจจเจเจฟเฉฑเจ เจฃเจพ เจชเฉเจเจฆเจพ เจนเฉ เจเจฟเฉฑเจฅเฉ, เจธเจฐเฉเจคเจพเจ เจฆเฉ เจฐเฉเจช เจตเจฟเฉฑเจ, เจ เจเจฟเจนเจพ เจฒเจเจฆเจพ เจนเฉ เจเจฟ เจฌเจนเฉเจค เจเจผเจฟเจเจฆเจพ เจชเฉเฉเจนเจฟเจ เจ เจคเฉ เจฒเจฟเจเจฟเจ เจจเจนเฉเจ เจเจฟเจ เจธเฉ, เจชเจฐ เจฒเจพเจเฉ เจเจฐเจจ เจฆเจพ เจธเจฎเจพเจ เจ เจธเฉฐเจเจค เจฐเฉเจช เจตเจฟเฉฑเจ เจฒเฉฐเจฌเจพ เจเจพเจชเจฆเจพ เจนเฉ.
เจเฉฑเจฅเฉ เจธเจพเจจเฉเฉฐ เจเจนเจฟเจฃเจพ เจนเฉ: "เจเจน, เจธเจผเจพเจเจฆ เจเจธ เจธเจฎเฉเจ เจธเจฐเจตเจฐ 'เจคเฉ เจกเจฟเจธเจ เจฌเจนเฉเจค เจเจผเจฟเจเจฆเจพ เจฒเฉเจก เจนเฉ เจเจ เจธเฉ, เจเจธ เจฒเจ เจเจธเจจเฉเฉฐ เจชเฉเฉเจนเจจ เจตเจฟเฉฑเจ เจเฉฐเจจเจพ เจธเจฎเจพเจ เจฒเฉฑเจเจฟเจ!"เจชเจฐ เจเจฟเจธเฉ เจคเจฐเฉเจนเจพเจ เจเจน เจฌเจนเฉเจค เจธเจนเฉ เจจเจนเฉเจ เจนเฉ ...
เจชเจฐ เจเจน เจฌเจฟเจฒเจเฉเจฒ เจญเจฐเฉเจธเฉเจฏเฉเจ เจขเฉฐเจ เจจเจพเจฒ เจจเจฟเจฐเจงเจพเจฐเจค เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉ. เจคเฉฑเจฅ เจเจน เจนเฉ เจเจฟ เจชเฉเจเฉ เจธเจฐเจตเจฐ เจธเฉฐเจฐเจเจจเจพ เจตเจฟเจเจฒเจชเจพเจ เจตเจฟเฉฑเจเฉเจ เจเฉฑเจ เจนเฉ track_io_timing
I/O เจเจพเจฐเจตเจพเจเจเจ เจฆเฉ เจธเจฎเฉเจ เจจเฉเฉฐ เจธเจฎเจฐเฉฑเจฅ เจฌเจฃเจพเจเจเจฆเจพ เจนเฉเฅค เจเจน เจตเจฟเจเจฒเจช เจชเฉเจฐเจต-เจจเจฟเจฐเจงเจพเจฐเจค เจคเฉเจฐ 'เจคเฉ เจ เจธเจฎเจฐเฉฑเจฅ เจนเฉ เจเจฟเจเจเจเจฟ เจเจธเจจเฉเฉฐ เจฎเฉเจเฉเจฆเจพ เจธเจฎเฉเจ เจฒเจ เจฒเจเจพเจคเจพเจฐ เจเจชเจฐเฉเจเจฟเฉฐเจ เจธเจฟเจธเจเจฎ เจฆเฉ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเฉฐเจฆเฉ เจนเฉ, เจเฉ เจเฉเจ เจชเจฒเฉเจเจซเจพเจฐเจฎเจพเจ 'เจคเฉ เจเจพเจฐเจเฉเจเจผเจพเจฐเฉ เจจเฉเฉฐ เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจคเฉเจฐ 'เจคเฉ เจนเฉเจฒเฉ เจเจฐ เจธเจเจฆเจพ เจนเฉเฅค เจคเฉเจนเจพเจกเฉ เจชเจฒเฉเจเจซเจพเจฐเจฎ 'เจคเฉ เจธเจฎเฉเจ เจฆเฉ เจฒเจพเจเจค เจฆเจพ เจ เฉฐเจฆเจพเจเจผเจพ เจฒเจเจพเจเจฃ เจฒเจ, เจคเฉเจธเฉเจ pg_test_timing เจเจชเจฏเฉเจเจคเจพ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐ เจธเจเจฆเฉ เจนเฉเฅค I/O เจ เฉฐเจเฉเฉ pg_stat_database เจตเจฟเจ เจฐเจพเจนเฉเจ เจชเฉเจฐเจพเจชเจค เจเฉเจคเฉ เจเจพ เจธเจเจฆเฉ เจนเจจ, EXPLAIN เจเจเจเจชเฉเฉฑเจ เจตเจฟเฉฑเจ (เจเจฆเฉเจ BUFFERS เจชเฉเจฐเจพเจฎเฉเจเจฐ เจตเจฐเจคเจฟเจ เจเจพเจเจฆเจพ เจนเฉ) เจ เจคเฉ pg_stat_statements เจฆเฉเจฐเจฟเจธเจผ เจฆเฉเจเจฐเจพเฅค
เจเจน เจตเจฟเจเจฒเจช เจธเจฅเจพเจจเจ เจธเฉเจธเจผเจจ เจฆเฉ เจ เฉฐเจฆเจฐ เจตเฉ เจธเจฎเจฐเฉฑเจฅ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉ:
SET track_io_timing = TRUE;
เจเฉเจฐ, เจนเฉเจฃ เจธเจญ เจคเฉเจ เจตเจงเฉเจ เจเฉฑเจฒ เจเจน เจนเฉ เจเจฟ เจ เจธเฉเจ เจเจเจเจผเฉเจเจฟเจเจธเจผเจจ เจเฉเจฐเฉ เจฆเฉเจเจ เจธเจพเจฐเฉเจเจ เจคเจฌเจฆเฉเจฒเฉเจเจ เจจเฉเฉฐ เจงเจฟเจเจจ เจตเจฟเฉฑเจ เจฐเฉฑเจเจฆเฉ เจนเฉเจ เจเจธ เจกเฉเจเจพ เจจเฉเฉฐ เจธเจฎเจเจฃเจพ เจ เจคเฉ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจเจฐเจจเจพ เจธเจฟเฉฑเจเจฟเจ เจนเฉ:
เจเฉฑเจฅเฉ เจคเฉเจธเฉเจ เจฆเฉเจ เจธเจเจฆเฉ เจนเฉ เจเจฟ เจเฉเฉฑเจฒ เจเจเจเจผเฉเจเจฟเจเจธเจผเจจ เจธเจฎเฉเจ เจฆเฉ 0.790ms เจตเจฟเฉฑเจเฉเจ, 0.718ms เจจเฉ เจเฉฑเจ เจกเฉเจเจพ เจชเฉฐเจจเจพ เจชเฉเฉเจนเจฟเจ, 0.044ms เจจเฉ เจเจธเจจเฉเฉฐ เจฒเจฟเจเจฃ เจตเจฟเฉฑเจ เจฒเจฟเจ, เจ
เจคเฉ เจฌเจพเจเฉ เจธเจพเจฐเฉเจเจ เจเจชเจฏเฉเจเฉ เจเจคเฉเจตเจฟเจงเฉเจเจ 'เจคเฉ เจธเจฟเจฐเจซเจผ 0.028ms เจเจฐเจ เจเฉเจคเฉ เจเจ เจธเจจ!
PostgreSQL 13 เจฆเฉ เจจเจพเจฒ เจญเจตเจฟเฉฑเจ
เจคเฉเจธเฉเจ เจจเจตเฉเจจเจคเจพเจตเจพเจ เจฆเฉ เจชเฉเจฐเฉ เจธเฉฐเจเฉเจช เจเจพเจฃเจเจพเจฐเฉ เจฒเฉฑเจญ เจธเจเจฆเฉ เจนเฉ
เจฏเฉเจเจจเจพเจฌเฉฐเจฆเฉ เจฌเจซเจฐ
เจธเจผเจกเจฟเจเจฒเจฐ เจจเฉเฉฐ เจ เจฒเจพเจ เจเฉเจคเฉ เจธเจฐเฉเจคเจพเจ เจฆเจพ เจฒเฉเจเจพ-เจเฉเจเจพ เจเฉฑเจ เจนเฉเจฐ เจชเฉเจ เจตเจฟเฉฑเจ เจชเฉเจฐเจคเฉเจฌเจฟเฉฐเจฌเจฟเจค เจนเฉเฉฐเจฆเจพ เจนเฉ เจเฉ pg_stat_statements เจจเจพเจฒ เจธเฉฐเจฌเฉฐเจงเจฟเจค เจจเจนเฉเจ เจนเฉเฅค BUFFERS เจตเจฟเจเจฒเจช เจฆเฉ เจจเจพเจฒ เจตเจฟเจเจเจฟเจ เจเจฐเฉ เจฏเฉเจเจจเจพ เจชเฉเจพเจ เจฆเฉ เจฆเฉเจฐเจพเจจ เจตเจฐเจคเฉ เจเจ เจฌเจซเจฐเจพเจ เจฆเฉ เจธเฉฐเจเจฟเจ เจฆเฉ เจฐเจฟเจชเฉเจฐเจ เจเจฐเฉเจเจพ:
Seq Scan on pg_class (actual rows=386 loops=1) Buffers: shared hit=9 read=4 Planning Time: 0.782 ms Buffers: shared hit=103 read=11 Execution Time: 0.219 ms
เจตเจงเจฆเฉ เจเจพเจเจเฉ
เจเจนเจจเจพเจ เจฎเจพเจฎเจฒเจฟเจเจ เจตเจฟเฉฑเจ เจเจฟเฉฑเจฅเฉ เจเจ เจเฉเฉฐเจเฉเจเจ (k1, k2, k3...) 'เจคเฉ เจเจพเจเจเฉ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเฉฐเจฆเฉ เจนเฉ, เจฏเฉเจเจจเจพเจเจพเจฐ เจนเฉเจฃ เจเจธ เจเจฟเจเจจ เจฆเจพ เจซเจพเจเจฆเจพ เจเจ เจพ เจธเจเจฆเจพ เจนเฉ เจเจฟ เจกเฉเจเจพ เจชเจนเจฟเจฒเจพเจ เจนเฉ เจเจ เจชเจนเจฟเจฒเฉเจเจ เจเฉเฉฐเจเฉเจเจ (เจเจฆเจพเจนเจฐเจจ เจฒเจ, k1 เจ เจคเฉ k2) 'เจคเฉ เจเจพเจเจเจฟเจ เจนเฉเจเจ เจนเฉเฅค เจเจธ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ, เจคเฉเจธเฉเจ เจธเจพเจฐเฉ เจกเฉเจเจพ เจจเฉเฉฐ เจฆเฉเจฌเจพเจฐเจพ เจเฉเจฐเจฎเจฌเฉฑเจง เจจเจนเฉเจ เจเจฐ เจธเจเจฆเฉ เจนเฉ, เจชเจฐ เจเจธเจจเฉเฉฐ k1 เจ เจคเฉ k2 เจฆเฉ เจธเจฎเจพเจจ เจฎเฉเฉฑเจฒเจพเจ เจฆเฉ เจจเจพเจฒ เจฒเจเจพเจคเจพเจฐ เจธเจฎเฉเจนเจพเจ เจตเจฟเฉฑเจ เจตเฉฐเจก เจธเจเจฆเฉ เจนเฉ, เจ เจคเฉ เจเจธเจจเฉเฉฐ k3 เจเฉเฉฐเจเฉ เจฆเฉเจเจฐเจพ "เจฎเฉเฉ-เจเฉเจฐเจฎเจฌเฉฑเจง" เจเจฐ เจธเจเจฆเฉ เจนเฉเฅค
เจเจธ เจคเจฐเฉเจนเจพเจ, เจธเจฎเฉเฉฑเจเฉ เจเจพเจเจเฉ เจจเฉเฉฐ เจเฉเจเฉ เจเจเจพเจฐ เจฆเฉเจเจ เจเจ เจฒเฉเฉเจตเจพเจฐ เจเจฟเจธเจฎเจพเจ เจตเจฟเฉฑเจ เจตเฉฐเจกเจฟเจ เจเจฟเจ เจนเฉเฅค เจเจน เจฒเฉเฉเฉเจเจฆเฉ เจฎเฉเจฎเฉเจฐเฉ เจฆเฉ เจฎเจพเจคเจฐเจพ เจจเฉเฉฐ เจเจเจพเจเจเจฆเจพ เจนเฉ เจ เจคเฉ เจชเฉเจฐเฉ เจเจพเจเจเฉ เจชเฉเจฐเฉ เจนเฉเจฃ เจคเฉเจ เจชเจนเจฟเจฒเจพเจ เจชเจนเจฟเจฒเฉ เจกเฉเจเจพ เจจเฉเฉฐ เจเจเจเจชเฉเฉฑเจ เจเจฐเจจ เจฆเฉ เจเจเจฟเจ เจฆเจฟเฉฐเจฆเจพ เจนเฉเฅค
Incremental Sort (actual rows=2949857 loops=1) Sort Key: ticket_no, passenger_id Presorted Key: ticket_no Full-sort Groups: 92184 Sort Method: quicksort Memory: avg=31kB peak=31kB -> Index Scan using tickets_pkey on tickets (actual rows=2949857 loops=1) Planning Time: 2.137 ms Execution Time: 2230.019 ms
UI/UX เจธเฉเจงเจพเจฐ
เจธเจเฉเจฐเฉเจจเจธเจผเจพเจ, เจเจน เจนเจฐ เจเจเฉเจนเจพ เจนเจจ!
เจนเฉเจฃ เจนเจฐ เจเฉฑเจ เจเฉเจฌ 'เจคเฉ เจคเฉเจเจผเฉ เจจเจพเจฒ เจเจฐเจจ เจฆเจพ เจฎเฉเจเจพ เจนเฉ เจเฉเจฌ เจฆเจพ เจเฉฑเจ เจธเจเฉเจฐเฉเจจเจธเจผเฉเจ เจเจฒเจฟเฉฑเจชเจฌเฉเจฐเจก เจตเจฟเฉฑเจ เจฒเจ เจเฉเจฌ เจฆเฉ เจชเฉเจฐเฉ เจเฉเฉเจพเจ เจ เจคเฉ เจกเฉเฉฐเจเจพเจ - เจธเฉฑเจเฉ เจธเจฟเจเจฐ 'เจคเฉ "เจฆเฉเจฐเจฟเจธเจผเจเฉ":
เจตเจพเจธเจคเจต เจตเจฟเฉฑเจ, เจเจธ เจชเฉเจฐเจเจพเจธเจผเจจ เจฒเจ เจเจผเจฟเจเจฆเจพเจคเจฐ เจคเจธเจตเฉเจฐเจพเจ เจเจธ เจคเจฐเฉเจเฉ เจจเจพเจฒ เจชเฉเจฐเจพเจชเจค เจเฉเจคเฉเจเจ เจเจเจเจ เจธเจจ.
เจจเฉเจกเจพเจ 'เจคเฉ เจธเจฟเจซเจผเจพเจฐเจฟเจธเจผเจพเจ
เจจเจพ เจธเจฟเจฐเจซ เจเจนเจจเจพเจ เจตเจฟเฉฑเจเฉเจ เจฌเจนเฉเจค เจธเจพเจฐเฉ เจฌเจฃ เจเจ เจนเจจ, เจชเจฐ เจคเฉเจธเฉเจ เจนเจฐเฉเจ เจฌเจพเจฐเฉ เจเฉฑเจฒ เจตเฉ เจเจฐ เจธเจเจฆเฉ เจนเฉ
เจเจฐเจเจพเจเจต เจคเฉเจ เจฎเจฟเจเจพเจเจ เจเจพ เจฐเจฟเจนเจพ เจนเฉ
เจเฉเจ เจฒเฉเจเจพเจ เจจเฉ เจ เจธเจฒ เจตเจฟเฉฑเจ เจตเจฟเจเจฒเจช เจจเฉเฉฐ เจเฉเฉเจจ เจฒเจ เจเจฟเจนเจพ "เจชเฉเจฐเฉ เจคเจฐเฉเจนเจพเจ" เจฎเจฟเจเจพเจ เจเจน เจฏเฉเจเจจเจพเจตเจพเจ เจตเฉ เจเฉ เจชเฉเจฐเจพเจฒเฉเจ เจตเจฟเฉฑเจ เจชเฉเจฐเจเจพเจธเจผเจฟเจค เจจเจนเฉเจ เจนเจจ - เจเจฟเจฐเจชเจพ เจเจฐเจเฉ เจธเจฟเจฐเจซเจผ เจเจเจฟเจค เจเจเจเจจ 'เจคเฉ เจเจฒเจฟเฉฑเจ เจเจฐเฉ:
เจเฉเจฐ, เจเจน เจจเจพ เจญเฉเฉฑเจฒเฉ เจเจฟ เจธเจพเจกเฉ เจเฉเจฒ เจนเฉ
เจธเจฐเฉเจค: www.habr.com