powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / select into #t и tempdb
15 сообщений из 15, страница 1 из 1
select into #t и tempdb
    #34789600
Kru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ситуация - 20 разных сессий в которых одновременно запускается один и тот же запрос создающий временную. таблицу - например select * into #temp_table from table_a (скажем в ней пара тысяч записей).

Что произойдёт с базой tempdb? Могут ли некоторые сессии отвалиться? Почему?
Что делать?

Вопрос очень теоретический, но тем кто будет искать роботу за рубежом, к подобным вопросам желательно быть готовым.

Всем заранее спасибо
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34789601
Kru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забыл важную деталь - сервер баз данных ASE 12.x

Всем заранее спасибо
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34789641
Rubber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
KruСитуация - 20 разных сессий в которых одновременно запускается один и тот же запрос создающий временную. таблицу - например select * into #temp_table from table_a (скажем в ней пара тысяч записей).
- а какой размер tempdb ? :)


Kruскажем в ней пара тысяч записей
- а полей сколько ? :)
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34789648
Rubber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
KruЧто произойдёт с базой tempdb? Могут ли некоторые сессии отвалиться? Почему?
Сесси не отвалятся, но, если свободное место в tempdb закончится, отвалится весь сервер
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34789665
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну раз вопрос очень теоретический, то я бы рассуждал так:
Так как все-все промежуточные выборки ASE помещает в tempdb, а tempdb это практически самостоятельная база лежащая на самостоятельном физическом устройстве (в идеале) либо в отдельном файле в файловой системе, то в принципе возможно переполнение tempdb. Хотя в случае 20 сессий создающих временные таблицы по паре тысяч записей это очень маловероятно. Но допустим что у нас для temdb выделено очень мало места - что произойдет с сессиями? Скорее всего они получат соответсвующую ошибку о переполнении и последний запрос не будет выполнен, но выкинут ли сессии с сервера? Вряд-ли, потому что не очень ясен критерий какие из сессий надо выкинуть. Вот то что в новых коннектах откажут - в этом я уверен, а существующие скорее всего будут сохранены, именно потому что не ясно какие из сессий выгонять.
Что делать? Сессиям - ждать цать секунд и повторять запрос. Админу - увеличивать пространство для temdb, например перенести его на диск большего объема.
Но это я рассуждаю чисто теоретически, потому что с ASE я знаком только пару недель...

А вообще, технические интервью при устройстве на работу это вещь такая странная.... Вот меня например, на интервью дама из отдела кадров спрашивала по каким критериям я решаю надо ли создавать индексы на таблицу и какими администраторскими утилитами я пользуюсь для тюнинга пользовательских запросов. А после нее пришли пара ребят из IT отдела и самый технический вопрос который они смогли придумать это: "чем отличается union от join?". Это я устраиваюсь на работу DBA на ASE 12.5, собственно говоря почему я ASE и начал изучать :)


---
http://www.rusug.ru] Портал русскоязычной группы пользователей Sybase
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34789717
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kru пишет:

> Ситуация - 20 разных сессий в которых одновременно запускается один и
> тот же запрос создающий временную. таблицу - например select * into
> #temp_table from table_a (скажем в ней пара тысяч записей).
>
> Что произойдёт с базой tempdb?

Будет интенсивно заполняться.

Могут ли некоторые сессии отвалиться?

Куда отвалиться ? если место в tempdb кончится, никто работать
не сможет.

Почему?
tempdb используется почти всеми запросами. Без нее сервер
фактикески неработоспособен.

> Что делать?

Делать отдельные tempdb хотя бы для администраторов.

Не понятно, что тут теоретического в запросах.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34789790
Kru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В целом понятно что будет.
Всем спасибо
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34790325
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KruВ целом понятно что будет.
Всем спасибо
при плотном потоке создания временных таблиц будет "битва" за tempdb..sysobjects
суровая битва, с жертвами ;)
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34790333
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KruСитуация - 20 разных сессий в которых одновременно запускается один и тот же запрос создающий временную. таблицу - например select * into #temp_table from table_a (скажем в ней пара тысяч записей).

Что произойдёт с базой tempdb? Могут ли некоторые сессии отвалиться? Почему?
Что делать?


кстати, судя по направленности вопросов идея была в конкуренции за sysobjects, это как пить дать!
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34790747
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
особенно если учесть, что lock datarows появилось только в 15-ке (ASE)
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34791076
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
komrad пишет:
> кстати, судя по направленности вопросов идея была в конкуренции за
> sysobjects, это как пить дать!

Нет. Тогда бы было "много сессий в транзакции создают временные таблицы".
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34792169
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv
komrad пишет:
> кстати, судя по направленности вопросов идея была в конкуренции за
> sysobjects, это как пить дать!

Нет. Тогда бы было "много сессий в транзакции создают временные таблицы".
Posted via ActualForum NNTP Server 1.4
мало данных, чтобы спорить
имхо, остальные варианты банальны
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34792370
Sasha11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Надо создать много tempdb для пользователей, обязательно с кэшами.
Блокировок при создании/удалении #-таблиц будет меньше, или вообще не будет.
Сессии будут распределяться сервером по разным tempdb_xx, таким образом, конкуренция за системные таблицы в каждой tempdb_xx будет меньше.
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34792394
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sasha11Надо создать много tempdb для пользователей, обязательно с кэшами.
Блокировок при создании/удалении #-таблиц будет меньше, или вообще не будет.
Сессии будут распределяться сервером по разным tempdb_xx, таким образом, конкуренция за системные таблицы в каждой tempdb_xx будет меньше.

афаир, только с версии 12.5.1


автор
Забыл важную деталь - сервер баз данных ASE 12.x
...
Рейтинг: 0 / 0
select into #t и tempdb
    #34792454
Sasha11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
по моему, много tempdb можно делать начиная с версии ASE 12.5.0.3
на сколько я помню, этого в доках нет, была pdf-ка на эту тему...
давно я это делал...
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / select into #t и tempdb
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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