PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Kinerja jenis UUID PostgreSQL

Kami memiliki tabel dengan sekitar 30 ribu baris yang (untuk alasan arsitektur tertentu yang tidak terkait) menyimpan UUID dalam bidang teks dan diindeks. Saya perhatikan bahwa kinerja kueri lebih lambat dari yang saya harapkan. Saya membuat kolom UUID baru, menyalin kunci utama uuid teks dan membandingkannya di bawah ini. 2,652ms vs 0,029ms. Perbedaan yang cukup jauh!

 -- With text index
    QUERY PLAN
    Index Scan using tmptable_pkey on tmptable (cost=0.41..1024.34 rows=1 width=1797) (actual time=0.183..2.632 rows=1 loops=1)
      Index Cond: (primarykey = '755ad490-9a34-4c9f-8027-45fa37632b04'::text)
    Planning time: 0.121 ms
    Execution time: 2.652 ms

    -- With a uuid index 
    QUERY PLAN
    Index Scan using idx_tmptable on tmptable (cost=0.29..2.51 rows=1 width=1797) (actual time=0.012..0.013 rows=1 loops=1)
      Index Cond: (uuidkey = '755ad490-9a34-4c9f-8027-45fa37632b04'::uuid)
    Planning time: 0.109 ms
    Execution time: 0.029 ms


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hindari kesalahan PG::InvalidTextRepresentation saat menggunakan Postgres UUID di Rails

  2. Hapus baris duplikat dari tabel kecil

  3. Array konversi PostgreSQL dikembalikan dari fungsi ke kolom

  4. Presisi stempel waktu JOOQ pada kueri

  5. Konfigurasikan JPA/Hibernate/PostgreSQL tanpa XML