powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / неявные временные таблицы
15 сообщений из 15, страница 1 из 1
неявные временные таблицы
    #33156747
Shket
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как определить создается ли в результате запроса неявная временная таблица? Какое имя приписывет ей система?
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33156945
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем вам это?
ShketКак определить создается ли в результате запроса неявная временная таблица?

План посмотреть.
onstat -g ses
sysmaster:sysconblock

Shket
Какое имя приписывет ей система?
Какое захочет.
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33156985
Shket
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Журавлев ДенисА зачем вам это?


Для того, чтобы проводить мониторинг временных таблиц, не только явных.
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33156989
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shket Журавлев ДенисА зачем вам это?


Для того, чтобы проводить мониторинг временных таблиц, не только явных.
Тогда никак, да и не зачем.
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33157061
Shket
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как мне это видится, нагрузку на временные таблицы можно определить следующим образом :
Onstat – g ses – общая информация по сессиям. Onstat –g ses NSES (номер сессии ) показывает созданные временные таблицы в конкретной сессии. Соответственно, используя утилиту oncheck –pe и зная имя временной таблицы, можно определить в каком чанке она находится, так как утилита oncheck –pe показывает список всех таблиц для каждого чанка. Утилита onstat –d показывает в каком DB-пространстве расположены какие чанки. Таким образом можно узнать в каком DB-пространстве какая временная таблица расположена.
Чтобы посмотреть, как эти таблицы влияют на нагрузку (интенсивность ввода-вывода), необходимо использовать утилиту onstat - g iof, которая показывает статистические показатели использования каждого чанка..
МОжно ли по такому алгоритму определить нагрузку на неявные врем таблицы?
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33157073
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShketКак мне это видится, нагрузку на временные таблицы можно определить следующим образом :

Зачем такой гемор? Может проще disksort/(memsort+disksort) ?
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33157114
Shket
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Журавлев Денис ShketКак мне это видится, нагрузку на временные таблицы можно определить следующим образом :

Зачем такой гемор? Может проще disksort/(memsort+disksort) ?
Может и проще :) а откуда получить значения параметров memsort, disksort?
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33157189
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shket
Может и проще :) а откуда получить значения параметров memsort, disksort?

faq? dsksorts/total_sorts
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33157236
Shket
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сенкс! сейчас заценю!
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33157318
Shket
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
еще один вопрос по поводу следующего запроса из DBA Tools :

set isolation to dirty read;
select tn.tabname temp_table
,tn.dbsname db_name
,tn.owner
,s.name dbspace
,substr(bitval(ti_flags,32),1,1) sys
,substr(bitval(ti_flags,64),1,1) usr
,substr(bitval(ti_flags,128),1,2) srt
from systabnames tn,systabinfo ti,sysdbspaces s
where tn.partnum = ti.ti_partnum
and s.dbsnum=partdbsnum(ti_partnum)
and (bitval(ti_flags,32)=1 or bitval(ti_flags,64)=1 or
bitval(ti_flags,128)=1)
order by 3,2,1,4

результатом этого запроса являются все временные таблицы, в том числе и неявные, а временные файлы??
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33157470
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shket... а временные файлы??
А что за временные файлы?

А вот еще можно попробовать:
Select value From sysshmhdr Where name='pf_totalsorts'
Select value From sysshmhdr Where name='pf_memsorts'
Select value From sysshmhdr Where name='pf_disksorts'
Select value From sysshmhdr Where name='pf_maxsortspace'
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33157795
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shketеще один вопрос по поводу следующего запроса из DBA Tools :
set isolation to dirty read;
select tn.tabname temp_table
,tn.dbsname db_name
,tn.owner
,s.name dbspace
,substr(bitval(ti_flags,32),1,1) sys
,substr(bitval(ti_flags,64),1,1) usr
,substr(bitval(ti_flags,128),1,2) srt
from systabnames tn,systabinfo ti,sysdbspaces s
where tn.partnum = ti.ti_partnum
and s.dbsnum=partdbsnum(ti_partnum)
and (bitval(ti_flags,32)=1 or bitval(ti_flags,64)=1 or
bitval(ti_flags,128)=1)
order by 3,2,1,4
результатом этого запроса являются все временные таблицы, в том числе и неявные, а временные файлы??
Я вижу по тексту, что вариант DBA_Tools очень старый (еще для 7.хх).
Вот более свежий (по флагам видно, какие виды таблиц и файлов показываются):
-----------------------------------------------------------
-- List all TEMP tables from instance
-- (sorted by owner, dbname, table)
-- V.Shulzhenko DBA_Tools
-----------------------------------------------------------
set isolation to dirty read;
select tn.tabname[1,18] temp_table
,tn.dbsname[1,18] db_name
,tn.owner[1,8] owner
,s.name[1,18] dbspace
-- ,ti_partnum partnum
-- ,ti_flags
,substr(bitval(ti_flags,32),1,1) sys
,substr(bitval(ti_flags,64),1,1) log
,substr(bitval(ti_flags,128),1,2) srt
from systabnames tn,systabinfo ti,sysdbspaces s
where tn.partnum = ti.ti_partnum
and s.dbsnum=partdbsnum(ti_partnum)
-- and trunc( mod(ti_flags,128) / 64,0) = 1
and (bitval(ti_flags,32)=1 or bitval(ti_flags,64)=1 or bitval(ti_flags,128)=1)
order by 3,2,1,4
--------------------------------------------------------------
-- flags partition_header
--
-- 1 Page Level Locking
-- 2 Row Level Locking
-- 32 System created Temp Table
-- 64 User created Temp Table (logged dbspace - V.Shulzhenko)
-- 128 Sort File
-- 256 Contains Varchar Data Type
-- 512 Contains BLOBSpace BLOBS
-- 1024 Contains TBLSpace BLOBS
-- 2048 Contains either Varchars,BLOBS or Rows > PAGESIZE-
-- 4096 Contains optical Sub-System BLOBS
-- 8192 Permanent System created Table ( undroppable )
-- 16384 Special Function Temp Tables, no Bitmap Maintenanc

Там еще множество запросов (свыше десятка), которые начинаются с temptables_* - рекомендую познакомиться
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33157802
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShketКак мне это видится, нагрузку на временные таблицы можно определить следующим образом :
Onstat –g ses NSES (номер сессии ) показывает созданные временные таблицы в конкретной сессии. ...
К сожалению, показывает не все. Правда, не уверен, что на всех версиях.
Чтобы проверить, можно воспользоваться простеньким запросом (для stores7 - явные и неявные, логируемые и нет и файлы сортировки) и из другого окна промониторить разными способами, в т.ч. и приведенным выше.
-----------------------------------------------------------
-- (DBACCESS only) - Create all kinds temp tables into current session
-- IDS 7.1+
-- V.Shulzhenko DBA Tools 02-2002
-----------------------------------------------------------
select * from items,customer
into temp temp_select_nolog with no log;
----------------------------
select * from items
into temp temp_select_log ;
----------------------------
create temp table temp_create_log
(a1 char, a2 dec(5,2) );
----------------------------
create temp table temp_create_nolog
(a1 char, a2 dec(5,2) )
with no log;
----------------------------
-- sort tempfile
select * from items,customer
order by 4;
----------------------------
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33159041
Shket
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Cпасибо действительно все работает :)
Остался один вопрос: Флаги sys, srt, log что означают? У меня, есть свои предположения, но хотелось бы точно знать..
Если я выполняю запросы под пользователем Informix, то флаг sys=1 всегда. Почему?
...
Рейтинг: 0 / 0
неявные временные таблицы
    #33159283
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShketОстался один вопрос: Флаги sys, srt, log что означают?
А что мешает свести в единую логическую цепочку уже имеющуюся информацию из запроса?
...
,substr(bitval(ti_flags,32),1,1) sys
,substr(bitval(ti_flags,64),1,1) log
,substr(bitval(ti_flags,128),1,2) srt
...
and (bitval(ti_flags,32)=1 or bitval(ti_flags,64)=1 or bitval(ti_flags,128)=1)
...
-- 32 System created Temp Table
-- 64 User created Temp Table (logged dbspace - V.Shulzhenko)
-- 128 Sort File
К тому же пример создания разных типов файлов-таблиц, котрый я ранее приводил, позволяет легко провести эксперименты и найти все ответы. Есть еще и документация, коорую вы упорно не хотите читать :)
ShketЕсли я выполняю запросы под пользователем Informix, то флаг sys=1 всегда. Почему?
Наверное, потому, что сам сервер работает с правами этого пользователя.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Informix [игнор отключен] [закрыт для гостей] / неявные временные таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]