Acessando a estrutura de dados interna que armazena o índice espacial do Postgis (PostGres GiST)

13

Estou curioso para saber como as estruturas de dados internas e o mecanismo de armazenamento do índice espacial GiST no Postgis. No Oracle, eu gostava de mostrar como os índices SDO eram "apenas outra tabela", e como os níveis eram atributos dos índices, e as bboxes das geometrias indexadas eram armazenadas como blobs (que podiam ser extraídos). Como o postgis armazena os índices e onde?

As tabelas do sistema http://www.postgresql.org/docs/8.3/static/catalogs.html podem ser usadas para identificar índices, mas não sei como acessar o armazenamento real (se realmente são tabelas)

MartinT
fonte
Eu encontrei o seguinte: < sai.msu.su/~megera/postgres/gist/gevel/README.gevel >. O Gevel deve ser capaz de visualizar isso, mas não consigo executar isso com o postgis.app (mac osx) com o PostGIS 2.0.
MartinT
1
Eles não são "apenas mais uma tabela" no PostgreSQL. Eles são relações de índice com um formato totalmente diferente.
Craig Ringer
Eu acho que gevel é o que existe. Portanto, talvez você deva reformular sua pergunta com os problemas que você tem ao instalar o gevel. Pergunta interessante, com certeza.
John Powell
Obrigado pelos comentários. Craig, gostaria de votar se você fornecesse uma resposta em vão do que comentou, mas com mais detalhes ou links para os materiais relevantes. Estou interessado em como isso é armazenado. John, farei uma pergunta em separado. Ainda assim, um apontador para a documentação de como o armazenamento é alcançado é o que eu estou procurando.
precisa saber é o seguinte
Adicionei
MartinT

Respostas:

2

Como Craig menciona, os índices espaciais não são apenas outra tabela. Em vez disso, o PostGis usa o GiST como base estrutural para armazenar detalhes de bbox. Sim, isso é (ao usar padrões) diferente e mais eficiente e menos preciso que as Árvores B ou Árvores R .... mas você pode especificar parâmetros que tornam os índices GiST semelhantes aos índices espaciais de outro armazenamento.

Aqui está a documentação sobre como trabalhar com eles (incluindo estendê-los.)

Dig.

JasonInVegas
fonte