2008-10-03 4 views
2

У меня есть несколько вопросов об оптимизации этого типа загрузки.Загрузка таблицы через Exchange Partition Exchange (Oracle 10g)

Создает новую таблицу данных для загрузки в секционированную таблицу, а затем строит индексы в этой новой таблице.

  1. Если вы строите индекс с опцией COMPUTE СТАТИСТИКИ или использовать опцию каскад DBMS_STATS?

  2. Следует ли собирать статистику на столе перед свопом или на разделе после обмена?

  3. Если вы сделаете это после обмена и укажите имя раздела в списке параметров, какое взаимодействие имеет параметр детализации? Например, если я укажу имя раздела, а затем задаю гранулярность в «GLOBAL AND PARTITION», что вообще делает Global? Делает ли это только что один раздел?

ответ

1

Если вы строите индекс с опцией COMPUTE СТАТИСТИКИ или использовать опцию каскад DBMS_STATS?

Если это хранилище данных, тогда сначала рассмотрите возможность не собирать статистику вообще и использовать динамическую выборку. Во-вторых, если вы собираете статистику, то, во всяком случае, используйте статистику вычислений по индексу.

Следует ли собирать статистику на столе перед свопом или на перегородке после обмена?

Сбор статистики по таблице данных нового до свопа, чтобы получить статистику раздела на новых данных - сбор статистики по секционированной таблице после сбора статистики таблицы

Если вы делаете это после того, как swap и укажите имя раздела в списке параметров, какое взаимодействие имеет параметр детализации? Например, если я укажу имя раздела, а затем задаю гранулярность в «GLOBAL AND PARTITION», что вообще делает Global? Делает ли это только один раздел?

См. Выше.

Серьезно, не давайте статистике и динамической выборке шанс.

+0

это таблица отчетов. Комплексный запрос, который реализуется один раз в день. Это DW? Наверное, нет, может быть, немного. Это действительно хороший совет о динамической выборке, мне придется попробовать. А часть таблицы и раздела - это то, где она опирается. Имеет смысл. – 2008-10-07 18:22:17

0
  1. DBMS_STATS считается надлежащим образом рассчитать статистику для этой версии. Создание индекса с помощью COMPUTE STATISTICS выполнимо, но обычно вы хотите рассчитать всю свою статистику за один раз и сделать моментальные снимки.

  2. Вы хотите собрать статистику после обмена. Таким образом, оптимизатор сделает наилучшее предположение для выполнения запросов с использованием данных разделов.

  3. Зачем вам стоить?

+0

Зачем ты ставил оба? Как таблица, так и статистика разбиения? потому что они используются независимо и оба необходимы. – 2008-10-07 18:23:32