저는 초보자 DBA이고 Microsoft SQL Server에 경험이 있지만 FLOSS로 넘어 가고 싶습니다.
회사를 시작하고 Postgres 백엔드를 사용하여 앱 (PHP)을 개발했으며 MySQL과 비교하여 몇 가지 테스트를 수행했습니다. MySQL은 PostgreSQL보다 두 배 빠릅니다.
나는 확실한 성능 테스트를 수행했습니다.
- 동등한 열 데이터 유형이있는 테이블의 동일한 열
- 같은 수의 행.
- 둘 다 동일한 인덱스 (기본 키 포함).
- CPU로드가 유휴 상태이며 Postgres 시스템이 훨씬 좋습니다.
- 그리고 같은 쿼리입니다.
내가 무엇을 잘못하고 있지?
추신 : 데이터베이스 엔진의 성능 조정에 대한 많은 "방법"을 읽었습니다.
PS (2) : MySQL 데이터베이스에서 InnoDB (테이블 당 하나의 파일)를 사용하고 있습니다.
안녕 매트!
세 가지 일반적인 선택 및 가장 어려운 쿼리를 수행했습니다.
디스크에 관한 질문은 확실히 동일하지 않습니다. Postgres에서 SSD는 거의 3 배 빠른 SSD입니다.
MySQL 캐시 데이터 :
+------------------------------+----------------------+
| Variable_name | Value |
+------------------------------+----------------------+
| binlog_cache_size | 32768 |
| have_query_cache | YES |
| key_cache_age_threshold | 300 |
| key_cache_block_size | 1024 |
| key_cache_division_limit | 100 |
| max_binlog_cache_size | 18446744073709547520 |
| query_cache_limit | 1048576 |
| query_cache_min_res_unit | 4096 |
| query_cache_size | 16777216 |
| query_cache_type | ON |
| query_cache_wlock_invalidate | OFF |
| table_definition_cache | 256 |
| table_open_cache | 64 |
| thread_cache_size | 8 |
+------------------------------+----------------------+
PostgreSQL에서 이것을 보는 방법을 모르겠습니다.
미리 감사드립니다.
explain analyze
. 쉽게 읽을 수 있도록하기 위해, 당신은에 계획을 업로드 할 수 있습니다 explain.depesz.com
postgresql.conf