Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Долго открывется вновьсозданная таблица  [new]
judas777
Member

Откуда: Винница
Сообщений: 17
Здравствуйте уважаемая публика СУБД администраторов !
Вопрос следующего плана.
Имеется база данных Оракл версии 8. База данных заполнена информацией и её общий размер (холодная копия) 12-18 ГБ.
В базе данных создаётся таблица следующим скриптом:

create table XXX
(
kid integer not null primary key,
field1 char(8)
)

После создания таблицы, время её открытия (800 мсек - 4 сек) . Следует заметить - таблица полностью пустая!
время запросов и обращений к таблице, пропорционально вышеуказанному интервалу для всех таблиц которые как то ссылаются на мою вновь созданную (reference, сложный запрос и.т.п)
----
При создании таблицы вот так:

create table XXX
(
kid integer not null,
field1 char(8)
)

время обращения к ней - соизмеримо с уже существующими таблицами БД.

Вопрос. Почему primary key затормаживает работу ПУСТОЙ таблицы в сотни(тысячи раз) ???
Может кто встречался с подобным эффектом ?
10 мар 12, 13:57    [12220491]     Ответить | Цитировать Сообщить модератору
 Re: Долго открывется вновьсозданная таблица  [new]
nullable
Member

Откуда:
Сообщений: 18
judas777,

стоит включить трассировку и посмотреть, куда уходит детство время...
10 мар 12, 14:05    [12220511]     Ответить | Цитировать Сообщить модератору
 Re: Долго открывется вновьсозданная таблица  [new]
denix1
Member

Откуда: Киев
Сообщений: 4656
judas777
После создания таблицы, время её открытия (800 мсек - 4 сек)
а как вы ее "открываете" ? ;)

поддерживаю совет про детство время
10 мар 12, 14:16    [12220569]     Ответить | Цитировать Сообщить модератору
 Re: Долго открывется вновьсозданная таблица  [new]
andreymx
Member

Откуда: Запорожье
Сообщений: 54383
сколько таблиц хочет создавать ТС в одну секунду?
10 мар 12, 19:07    [12221670]     Ответить | Цитировать Сообщить модератору
 Re: Долго открывется вновьсозданная таблица  [new]
judas777
Member

Откуда: Винница
Сообщений: 17
nullable - 99% времени уходит на выполнения запроса, точнее его подготовку. Проблема в том что выбирать то с таблицы нечего она пуста.

denix1 - Toad и ODAC для Delphi

andreymx - ваш вопрос непонял
10 мар 12, 21:30    [12222476]     Ответить | Цитировать Сообщить модератору
 Re: Долго открывется вновьсозданная таблица  [new]
pravednik
Member

Откуда: Jacksonville, FL
Сообщений: 16268
judas777,
между
delete from table_name;
и
truncate table_name;
есть разница
10 мар 12, 22:30    [12222764]     Ответить | Цитировать Сообщить модератору
 Re: Долго открывется вновьсозданная таблица  [new]
denix1
Member

Откуда: Киев
Сообщений: 4656
pravednik,

ну зачем так жестко ? ;)

judas777,
вы бы проверили воспроизводимость ситуации из SQL*Plus
и если бы она воспроизвелась,
то выложили трейсик соответствующей сессии с собранной информацией об ожиданиях
ЗЫ:
есть еще crazy-подозрение что ваш оракл 8... случаем не фантом-бетка 8.0.3 ? ;)
теряется от конструкции
kid integer not null primary key
а именно от выделенной части
10 мар 12, 23:47    [12223015]     Ответить | Цитировать Сообщить модератору
 Re: Долго открывется вновьсозданная таблица  [new]
andreymx
Member

Откуда: Запорожье
Сообщений: 54383
как вариант - большое время обращения к системным представляниям (USER_INDEXES, USER_CONSTRAINTS) Одака и Жабы

правда, с очень небольшой вероятностью :)
10 мар 12, 23:57    [12223048]     Ответить | Цитировать Сообщить модератору
 Re: Долго открывется вновьсозданная таблица  [new]
judas777
Member

Откуда: Винница
Сообщений: 17
pravednik - я думаю что процесс удаления записей и физическое освобождения дискогвого пространства во вновь созданной таблицы с уникальным именем - неуместно так как в ней ещё ничего нет кроме самой таблицы.

denix1 - оракл точно не бэтта.
По поводу этого -
автор
теряется от конструкции
kid integer not null primary key
а именно от выделенной части
если можно поподробней. Многие спецы говорят что таблицу перед использованием нужно создать без ничего и только после этого проиндексировать. В связи с тем что познания в процессах администрирования СУБД оракл у меня неахти, я юлльше специализируюсь на написании кода под готовую структуру, хотелось бы в двух словах понять почему подобный конструкции непрокатывают.

andreymx - ваш ответ как и ответ denix1 скорее всего и есть проблемой. МОгли бы вы растолковать га пальцах физическую сущность вашего ответа.

МОжет поможет тот факт что клиент 10-й а сервер 8-й? Может несовместимости какие-то в клиент-серверном обмене ?
--------
Заранее благодарю всех откликнувшихся. Постю тут по причине того что в моём кругу такой специфический феномен никто не встречал
11 мар 12, 01:19    [12223211]     Ответить | Цитировать Сообщить модератору
 Re: Долго открывется вновьсозданная таблица  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18484
Версию оракла точно укажи
Ограничение PRIMARY KEY включает в себя NOT NULL, поэтому явное задание NOT NULL не нужно.
И, как уже сказано, сделай запрос через SQL*Plus со включенной трассировкой
11 мар 12, 01:39    [12223243]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить