Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Oracle Table as Temp Table / 9 сообщений из 9, страница 1 из 1
12.06.2018, 13:33
    #39659678
lalafa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Table as Temp Table
Здр-те инопланетяне. Скажите, пожалуйста, нормально ли использовать обычную таблицы в качестве временного хранилища. Нужна таблица, в которую постоянно будут закидываться новые записи и удаляться старые. Видеть данные должны разные сессии. Могу ли я для этого использовать обычную таблицу? Не будет ли бардака в блоках, екстендах и т.д при этом?
...
Рейтинг: 0 / 0
12.06.2018, 13:37
    #39659682
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Table as Temp Table
Все инопланетяне улетели, но на прощанье сказали, что тебе можно всё.
...
Рейтинг: 0 / 0
12.06.2018, 14:58
    #39659724
Stax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Table as Temp Table
lalafa,
с учетом "Видеть данные должны разные сессии", что Вы подразумеваете под "необычными" таблицами?

....
stax
...
Рейтинг: 0 / 0
12.06.2018, 18:52
    #39659819
Viewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Table as Temp Table
Stax,
разрешите вас перефразировать...

lalafa,
с учетом "Видеть данные должны разные сессии", что Вы подразумеваете под
"данными" ... shared? ... private?
...
Рейтинг: 0 / 0
12.06.2018, 20:15
    #39659847
lalafa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Table as Temp Table
ViewerStax,
разрешите вас перефразировать...

lalafa,
с учетом "Видеть данные должны разные сессии", что Вы подразумеваете под
"данными" ... shared? ... private?

Я создал обычную таблицу(не temporary) с полями id и timestamp. Можно ее назвать в кавычках - ТЕМП
1) Есть триггер(after insert or update), которой срабатывает и кладет id записи, на которой он срабатывает, в мою созданную таблицу.
Моя созданная таблица как бы временное хранилище id-ишников, которые нужно обработать. Эти айдишники могут повторяться.
2) Есть JOB который пробегает по моей "ТЕМП" таблице, берет уникальные АЙДИ, выполняет некую логику, затем удаляет обработанные АЙДИ.

Этот процесс очень живой. Постоянно бросаются данные в мою ТЕМП таблицу, и JOB запускается каждые 5 минут.

Вопрос. Правильно ли использовать обычную таблицу для таких задач? Постоянное добавлять и удалять данные. Просто мне кажется, настоящая ТЕМПОРАРИ таблица подошла бы лучше, она больше рассчитана на такое постоянное дрочилово.
...
Рейтинг: 0 / 0
13.06.2018, 07:41
    #39659973
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Table as Temp Table
lalafaПросто мне кажется,Верующий? - Почаще крестись.
lalafaнастоящая ТЕМПОРАРИ таблица подошла бы лучше, она больше рассчитана на такое постоянное дрочилово.Раз уж ты не в состоянии понять из документации предназначение временных таблиц, то почему не попытался реализовать свою навязчивую идею на практике?
...
Рейтинг: 0 / 0
13.06.2018, 12:17
    #39660185
lalafa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Table as Temp Table
Elic,

Вы не в состоянии понять мой вопрос ). Причем тут временные таблицы?(Разные сессии не видят данные друг друга.) У меня вопрос про обычную таблицу.
...
Рейтинг: 0 / 0
13.06.2018, 17:40
    #39660426
XMLer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Table as Temp Table
lalafaЯ создал обычную таблицу(не temporary) с полями id и timestamp. Можно ее назвать в кавычках - ТЕМП
1) Есть триггер(after insert or update), которой срабатывает и кладет id записи, на которой он срабатывает, в мою созданную таблицу.
Моя созданная таблица как бы временное хранилище id-ишников, которые нужно обработать. Эти айдишники могут повторяться.
2) Есть JOB который пробегает по моей "ТЕМП" таблице, берет уникальные АЙДИ, выполняет некую логику, затем удаляет обработанные АЙДИ.

Этот процесс очень живой. Постоянно бросаются данные в мою ТЕМП таблицу, и JOB запускается каждые 5 минут.

Вопрос. Правильно ли использовать обычную таблицу для таких задач? Постоянное добавлять и удалять данные. Просто мне кажется, настоящая ТЕМПОРАРИ таблица подошла бы лучше, она больше рассчитана на такое постоянное дрочилово.
То что ты описываешь очень похоже на очередь. Ну так и используй очередь
...
Рейтинг: 0 / 0
13.06.2018, 22:22
    #39660528
andrey_anonymous
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Table as Temp Table
lalafaЗдр-те инопланетяне. Скажите, пожалуйста, нормально ли использовать обычную таблицы в качестве временного хранилища. Нужна таблица, в которую постоянно будут закидываться новые записи и удаляться старые. Видеть данные должны разные сессии. Могу ли я для этого использовать обычную таблицу? Не будет ли бардака в блоках, екстендах и т.д при этом?
Можете.
Цена вопроса:
1. UNDO, REDO - будет много. Можно слегка съэкономить, если таблицу создать nologging и использовать для вставки bulk-операции, а delete по возможности заменить на truncate.
2. В некоторых сценариях возможно распухание сегмента таблицы (а-ля wasted space) - следует озаботиться каким-то housekeeping.

Согласно более поздним сообщениям, наполнять планируете триггером.
Не советовал бы.
По многим причинам.

Если более подробно распишете задачу и укажете версию + редакцию сервера - возможно, Вам порекомендуют более подходящие механизмы. От банального mat.view, не вполне банального AQ через ништяки вроде ODCIIndex и по самый по GoldenGate.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Oracle Table as Temp Table / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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