Temos um banco de dados de dados de versão do arcsde (arcgis 9.3.1 no oracle 10g) com um modelo de dados bastante complexo que inclui cerca de 100 classes de recurso e tabelas não espaciais, uma rede geométrica e muitas classes de relacionamento.
Os dados são editados diariamente por 5 ou 6 usuários do arcmap utilizando o versionamento sde. Além disso, as versões são criadas por serviços automáticos que fazem interface com outros sistemas de negócios para realizar edições no geodatabase. O desempenho da consulta diminui visivelmente durante o dia, por isso implementamos um script noturno para obter uma compactação completa. Nas ocasiões em que um número relativamente grande de edições é realizado, o sistema pode se tornar inutilizável até depois de uma compactação completa.
Foi sugerido que o oracle configurado não pode apresentar planos de execução decentes quando confrontado com essas tabelas delta voláteis. Esta é uma explicação razoável? Que abordagem deve ser adotada para resolvê-lo?
Atualização em resposta a comentários
- No final do dia, a árvore de estados é muito linear, com apenas um pouco de ramificação.
- Nós compactamos todas as noites (obtenha uma compactação completa excluindo todas as versões).
- As tabelas de negócios são analisadas regularmente.
- As tabelas delta não são analisadas. Eles estão bloqueados (a tentativa de analisar retorna o erro "as estatísticas do objeto ORA-20005 estão bloqueadas"). Nem as tabelas voláteis no esquema sde - STATES, STATE_LINEAGES.