Question

J'ai une énorme liste de tableaux entiers (300 000 000 de disques) stockés dans Postgres 9,2 dB. Je veux rechercher efficacement ces enregistrements pour un correspondance exacte (égalité uniquement). J'ai entendu parler du module INTARRAY et des index GIST-Pin correspondants. Je voudrais poser les questions suivantes:

  • PostgreSQL utilise-t-il une fonction de hachage pour vérifier l'égalité des tableaux entiers ou effectue-t-il un algorithme de force brute en comparant un par un des éléments du tableau?
  • Si PostgreSQL utilise une fonction de hachage, existe-t-il un code de fonction PostgreSQL pour obtenir réellement le résultat de la fonction de hachage pour un tableau particulier?
  • Quel index sera le mieux pour une telle tâche? B-Tree, ou les index Gist - Gin fournis par le module INTARRAY? L'ensemble de données sera statique, c'est-à-dire une fois que tous les enregistrements seront insérés, il n'y aura plus d'insertions. Ainsi, la construction d'index / temps d'index à jour n'est pas importante pour moi.

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à dba.stackexchange
scroll top