PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Търсете в 300 милиона адреса с pg_trgm

Разделянето на таблицата няма да помогне въобще .

Но да, има добър начин:Надстройка към текуща версия на Postgres. Има много подобрения за GiST индексите, по-специално за модула pg_trgm и за големите данни като цяло. Би трябвало да е значително по-бързо с Postgres 10.

Вашето търсене на „най-близък съсед“ изглежда правилно, но за малък LIMIT вместо това използвайте тази еквивалентна заявка:

SELECT address, similarity(address, '981 maun st') AS sml 
FROM   addresses 
WHERE  address % '981 maun st' 
ORDER  BY address &lt-> '981 maun st'
LIMIT  10;

Цитиране на ръководството:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. В защита на sar (и как да го конфигурирате)

  2. PostgreSQL:Какъв е максималният брой таблици, които могат да се съхраняват в базата данни на postgreSQL?

  3. Как да възстановим една таблица от .sql postgresql архив?

  4. Разлика в производителността:условието е поставено в клауза INNER JOIN спрямо WHERE

  5. postgres truncate е бавен