- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
CREATE MATERIALIZED VIEW LEASE_NODES_SUMMARY_SDS
...
AS
SELECT
...
FROM lease_nodes_sds;
DECLARE
v_count NUMBER:=0;
BEGIN
LOOP
SELECT COUNT(1) INTO v_count FROM lease_nodes_summary_sds;
EXIT WHEN v_count>0;
END LOOP;
END;
Dummy00001 28.10.2011 16:18 # 0
у меня было такое впечатление что базы так и не научились делать real-time notifications. и не собираются, потому что, типа, они только данные хранят и все. (это отмазка которую я от оракла слышал.)
wecanstoptrain 28.10.2011 16:36 # +1
там есть уведомления, но не real-time:
Oracle Streams Advanced Queuing называется - очередь сообщений с транзакциями и гарантированной доставкой, позволяет вешать различные callback'и (в т.ч. и pl/sql).
лехко интегрируется с другими реализациями очередей (напрямую с JMS, или через messaging gateway с другими реализациями очередей)
Если чо в рил-тайме надо, то через триггеры.
Dummy00001 28.10.2011 16:43 # −2
wecanstoptrain 28.10.2011 16:45 # +3
Dummy00001 28.10.2011 16:59 # −1
что бы вот до таких дрочений как в ГК не опускатся.
у нас в проекте есть пара модулей которые раз в секунду данные опрашивают в базе. тоже говно. почему у нас народ и забацал свою in-memory DB со всеми причиндалами, используя RDBMS только как бэкап. но для пары вещей та пара модулей так и остались - тихо в сторонке дрочат запросами в вечном цикле - база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных, база дай данных...
wecanstoptrain 28.10.2011 17:03 # +2
Dummy00001 28.10.2011 17:13 # −3
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_alert.htm
не вижу как сделать M читающий приложений и N пишущих приложений, ну да это пока сам руками не пощупаешь - не въедешь.
akaDElpher 28.10.2011 19:55 # 0
Dummy00001 30.10.2011 15:13 # +1
akaDElpher 30.10.2011 21:09 # 0
Тоже распространенная задача, например *сообщения пользователя*.
Решается либо процедурами и полным ограничением на привычные CRUD операции.
Либо опять же сервисом. (В большинстве случаев это web-сайт).
---
Или я не прав? Есть еще варианты решения?
slbsomeone 31.10.2011 17:00 # +1
В Oracle (с 8i) есть Fine Grained Access Control. Уверен что и в других СУБД есть что-то подобное.
Неужели Вы думаете что Вы первый столкнулись с этой (или любой другой) задачей?
То с чем сталкивается большинство уже десятки (если не сотни раз) было решено. Просто откройте глаза и посмотрите вокруг. И найдете вариант, подходящий для Вашей задачи.
akaDElpher 31.10.2011 22:39 # 0
В моём случае Firebird и MSSQL. Про то, что в oracle что-то есть слышал, но так же слышал, что это больше фитча, чем решение.
Я правда может не нашел.
Вот вопрос мой:
http://social.msdn.microsoft.com/Forums/ru-RU/fordataru/thread/99539982-e063-4679-8232-bcf15c8cc9ab
Там отправили на ответ:
http://social.msdn.microsoft.com/Forums/ru-RU/fordataru/thread/21a0b5dc-b33a-4fe1-a662-046d6624cf40
Где советуют WCF.
PS
Еще появилась ссылка на http://technet.microsoft.com/en-us/library/cc966395.aspx
"Implementing Row- and Cell-Level Security in Classified Databases Using SQL Server 2005"
. Посмотрю её тоже.
slbsomeone 30.10.2011 14:54 # 0
Я звоню - вызываю такси.
Мне отвечают - "Ваш заказ принят, звоните каждую минуту спрашивайте подъехала ли машина."
На моё удивлённое - "Ни х...я себе!"
Мне отвечают - "Это хорошая реализация. У всех клиентов каждую минуту актуальная информация", "А как Вы узнаете что за Вами приехали" и "Это не дело нашей фирмы раздавать real-time notifications"
Со мной такого не случалось, но если случится я подумаю, что попал в компанию идиотов, и буду вызывать такси в другой фирме.
P.S. у меня намек не слишком тонкий?
slbsomeone 30.10.2011 15:02 # −2
Зачем "real-time notifications"? Что хотите получить? Может стоит пересмотреть архитектуру приложения?
guest8 09.04.2019 11:50 # −999
cp7 25.08.2021 02:48 # 0