Форум программистов, компьютерный форум, киберфорум
GPSS
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 5
1

Моделирование запросов к таблицам БД

16.01.2014, 16:07. Показов 1429. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Система управления БД обрабатывает запросы к БД, содержащей N таблиц. Запросы бывают на запись и на чтение. Интервалы времени между поступление запросов на запись и на чтение распределены экспоненциально. Запросы ко всем таблицам равновероятны. В каждый момент времени для каждой таблицы может выполнятся только 1 запрос на запись либо произвольное количество запросов на чтение. Время записи распределено равномерно в интервале от t min до t max, а время чтения в интервале от t min До t max.

У меня получилось примерно вот так :

Код
KolTable variable (RN100@15)
GENERATE (EXPONENTIAL(100,12,1))

ASSIGN Cnt,V$KolTable
Again QUEUE OCHERED 
SEIZE Dev 
DEPART OCHERED 
ADVANCE 1
RELEASE Dev 

Again1 QUEUE OCHERED 
SEIZE Dev1 
DEPART OCHERED 
ADVANCE 1 
RELEASE Dev1
LOOP Cnt,Again
TERMINATE 1
START 100
Конечно я понимаю что не правильно, но в чем тут ошибка я понять не могу. И еще 1 вопрос как будет код выглядеть, если например мы захотим с запросами на запись и на чтение смоделировать запросы на изменение схемы данных, и интервал времени между поступлением запросов тоже будет распределенный экспоненциально, и выполнение запроса не может перекрываться с выполнением каких либо других запросов к БД.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.01.2014, 16:07
Ответы с готовыми решениями:

Построение запросов к одиночной таблице и связанным таблицам
Уважаемые друзья, будьте любезны помочь мне в данном задании ( задание в прикркпленном файле). ...

Создание запросов и дополнительных запросов MS Access. Как првильно делать.
Здрасте всем. Может кто-то может мне тупому объяснить что-нибудь по запросам и дополнительным...

Хранение текста запросов в таблице. Как реализовать выполнение запросов с параметрами и Select?
День добрый! По тексту кода часто встречаются одни и те же фиксированные запросы, бывает длинные....

Запуск нескольких запросов на обновление кодом VBA (часть запросов пустые т.е. без отобранных записей)
Форумчане, доброго времени суток! Прошу Вашей помощи! есть таблица со списком Заказчиков. Этот...

12
1816 / 1030 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
16.01.2014, 16:47 2
Что такое DEV, KolTable,Cnt и комментарии к коду, тогда продолжим беседу, а так прочитав задачу и посмотрев на код - ну никак не бьётся.
0
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 5
16.01.2014, 16:56  [ТС] 3
Цитата Сообщение от Dukalys Посмотреть сообщение
Что такое DEV, KolTable,Cnt и комментарии к коду, тогда продолжим беседу, а так прочитав задачу и посмотрев на код - ну никак не бьётся.
Dev, Dev1 - устройство, я просто думала что, например, что с одного устройства он будет читать какую то запись, а в другое записывать, но не кажется это полная бессмыслеца( но я хотя бы решила попробывать).

KolTable - это количество таблиц, тут сделала что бы было случайным числом от 0 до 14.

Cnt - это параметр.

Добавлено через 3 минуты
KolTable variable (RN100@15) - тут генерируется случайное число от 0 до 14 ( количество наших таблиц)
GENERATE (EXPONENTIAL(100,12,1)) - порождение транзакций через случайные промежутки времени, распеределеные экспоненциально

ASSIGN Cnt,V$KolTable - установка значений параметра транзакций
Again QUEUE OCHERED - регистрация входа
SEIZE Dev - занатие устройства
DEPART OCHERED - регистрация выхода
ADVANCE 1 - задержка
RELEASE Dev - освобождение

Код
Again1 QUEUE OCHERED 
SEIZE Dev1 
DEPART OCHERED 
ADVANCE 1 
RELEASE Dev1
LOOP Cnt,Again
TERMINATE 1
START 100
0
1816 / 1030 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
16.01.2014, 17:39 4
1.
GENERATE (EXPONENTIAL(100,12,1)) - порождение транзакций через случайные промежутки времени, распеределеные экспоненциально
переобдумать параметры exponential 100 12 1

2. KolTable variable (RN100@15) - тут генерируется случайное число от 0 до 14 ( количество наших таблиц)
А что такое @ ? не суть важно.
ЗАПРОС ФОРМИРУЕТСЯ ПО ЗАДАЧЕ К 1 ТАБЛИЦЕ, равновероятно - т.е. означает - если 100 таблиц, то входящий запрос с вероятностью 1% может быть направлен к 1 из таблиц.

3.
Структура программы
GENERATE ... ; формируем по 1ой заявке за запись или чтение
ASSIGN задём различнве параметры, например TIP_ZAPROSA =1 для чтение, 2 = для записи

; далее в зависимости от типа направляем заявку либо на чтение либо на запись, Возможно сделать проверку идёт ли уже чтения или запись - и либо ждать, либо перенаправлять (см. ниже - !НО)
TRANSFER

CHTENIE ... обслуживание чтения, любое количество запросов чтения, НО! нужно делать проверку TEST что не обслуживается запись

TERMINATE

ZAPIS ... обслуживание записи, но нужно делать проверку что нет заявок на чтении

TERMINATE
0
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 5
16.01.2014, 18:52  [ТС] 5
Вот попыталась сделать:

Код
GENERATE (EXPONENTIAL(100,2,1))

ASSIGN TIP_ZAPROSA,1
ASSIGN TIP_ZAPROSA,2

TRANSFER BOTH,Chtenie,Zapis,1

Again QUEUE OCHERED
Chtenie TEST E TIP_ZAPROSA,1
        SEIZE Dev
        ADVANCE 1
        RELEASE Dev
        TERMINATE 1
Zapis   TEST E TIP_ZAPROSA,2
        SEIZE Dev1
        ADVANCE 1
        RELEASE Dev1
        TERMINATE 1
LOOP TIP_ZAPROSA,Again
START 100
Можете сказать что я не правильно сделала?
0
1816 / 1030 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
16.01.2014, 19:04 6
GENERATE (EXPONENTIAL(100,2,1))

ASSIGN TIP_ZAPROSA,1
ASSIGN TIP_ZAPROSA,2
программа выполняется последовательно от строчки к строчке.

тип запроса всегда будет =2

Добавлено через 1 минуту
EXPONENTIAL(A,B,C) a - номер генератора 1..8 B - отступ С - среднее значение времени между заявками

Добавлено через 1 минуту
TRANSFER BOTH,Chtenie,Zapis,1
BOTH не так работает как думаете - всегда в чтение пойдёт

Добавлено через 1 минуту

Chtenie TEST E TIP_ZAPROSA,1
...
Zapis TEST E TIP_ZAPROSA,2
У вас уже определено куда идёт заявка чтение или запись - какого? ещё проверка нужна?

Добавлено через 29 секунд
Не вижу N таблиц.
0
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 5
16.01.2014, 19:17  [ТС] 7
Не совсем поняла как исправлять, я просто в отличии от вас этим четвертый день занимаюсь, и просто можете более понятно для меня объяснить?
0
1816 / 1030 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
16.01.2014, 20:05 8
Я просто всё разжевал. книги переписывать не смогу.
Кудрявцев Имитационное моделирование на gpss там все ответы. про структуру программы уже сказал, теперь всё в ваших руках как вы логику реализуете.
0
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 5
17.01.2014, 22:14 9
Цитата Сообщение от Dukalys Посмотреть сообщение
Я просто всё разжевал. книги переписывать не смогу.
Кудрявцев Имитационное моделирование на gpss там все ответы. про структуру программы уже сказал, теперь всё в ваших руках как вы логику реализуете.
Может Вы нам напишете правильный код, так как должно все быть? Вы то в этом мастер.
0
1816 / 1030 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
17.01.2014, 22:17 10
Я то напишу.
Смотреть туда.
https://www.cyberforum.ru/free... 20642.html

Только определитесь какую вам задачу нужно решить
Система управления БД обрабатывает запросы к БД, содержащей N таблиц. Запросы бывают на запись и на чтение. Интервалы времени между поступление запросов на запись и на чтение распределены экспоненциально. Запросы ко всем таблицам равновероятны. В каждый момент времени для каждой таблицы может выполнятся только 1 запрос на запись либо произвольное количество запросов на чтение. Время записи распределено равномерно в интервале от t min до t max, а время чтения в интервале от t min До t max.
или

Вычислительная система способна выполнять несколько заданий
одновременно в режиме разделения времени. Новые задачи поступают
через интервалы времени распределенные экспоненциально со средним
з. Продолжительность выполнения заданий распределена равномерно в
интервале от tз.мин до tз.макс. Через одинаковые моменты времени tт про-
исходит прерывание таймера, использующееся для переключения задач,
таким образом, что каждая задача может занимать процессор в течении
не более чем n интервалов таймера, после чего она отправляется в ко-
нец очереди задач. Кроме этого, в моменты времени, интервалы между
которыми распределены экспоненциально со средним п возникают пре-
рывания от устройств ввода-вывода, прерывающие выполнение заданий
на время распределенное экспоненциально со средним tп. Прерывания от
устройств ввода-вывода имеют более низкий приоритет по сравнению с
прерываниями таймера.
0
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 5
17.01.2014, 22:21 11
Цитата Сообщение от Dukalys Посмотреть сообщение
Я то напишу.
Смотреть туда.
https://www.cyberforum.ru/free... 20642.html

Только определитесь какую вам задачу нужно решить


или
Верхнее. То, что в этой теме
0
1816 / 1030 / 285
Регистрация: 13.02.2012
Сообщений: 3,339
17.01.2014, 22:23 12
Контакты в этой теме (ваши мне не известны)
https://www.cyberforum.ru/free... 20642.html
0
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 5
17.01.2014, 22:26 13
Цитата Сообщение от Dukalys Посмотреть сообщение
Контакты в этой теме (ваши мне не известны)
https://www.cyberforum.ru/free... 20642.html
dashatokareva@lenta.ru
0
17.01.2014, 22:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.01.2014, 22:26
Помогаю со студенческими работами здесь

Запрос к 4 таблицам
Народ, помогите, запутался полностью, есть 4 таблицы с полями Т1 – ID, Поле2.. ПолеN Т2 – ID,...

Раскидать по таблицам
«Распределение студентов по группам» 1. Ф. И. О. Студента 2. Номер студбилета 3. Место рождения...

Запрос к 2-м таблицам
Всем привет. Дело такое. Имеется 2 таблицы в каждой из которой имеется столбец под названием...

Доступы к таблицам
Столкнулся с проблемой созданные таблицы и функции работают только под админовским логином....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru