|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
гы.. вот я тоже люблю больше всего фокспро.. но, при этом мне бы и в голову не пришло пихаться на вакансию "Админ SQL+Axapta "... ИМХО конечно... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2004, 09:15 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Ха! Если уж пошли признания в любви, то и я признаюсь, что из всех продуктов, с которыми мне приходилось работать, фокс мною наиболее любим. Но это само по себе ровным счетом ничего не значит ;-). Вполне может быть, что это просто тоска по безвозвратно ушедшей молодости ;-))). ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2004, 10:33 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Или склонность к мазохизму... :) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2004, 10:51 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Любителям фокса посвящается : БД с одновременным коннектом числа пользователей пятого порядка тоже на фоксе создавать будете? Когда речь идёт о выборе СУБД, нужно руководствоваться не любовью, а бизнесс-требованиями. ----- Все великие дела совершаются в командной строке ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2004, 11:11 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
дік я живу в таком месте, где БД с таким количеством подключений просто нереальні и только то..... так что фокс типа рулит.. а 2-е дайте мне разработчика БД под ОРАКЛ (или книгу) и я на фоксе напишу клиентсткую часть к ОРАКЛУ и только -то.. клиент-то не важен на чем.... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2004, 13:54 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
автор Я юзаю курсоры с рабочей станции...) Когда я такое слышу, моя рука тянется к ручке пистолета .... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2004, 19:05 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Вот прикольный топик! Можно свои 5 копеек. Дело в том, что в запросе типа select sin(FLD1), (FLD1/FLD2*100) Percent from TABLE1 - sin, / , *100 это уже "Хранимые Процедуры" (ХП). Вопрос: они нужны? наверное все ответят - "да"!!! Все остальные ХП, как встроеныые, так и определяемые пользователями(разработчиками) просто являются более навороченными. - Типа выражение "Дашь палец, так тебе и руку откусят" То есть если кто против, пусть откажется от (sin, cos, +, -, /, substr...) А также агрегаций типа sum, count, avg... И всё считает на клиенте!!! А то мало ли как реализатор SQL сервера реализовал операцию деления (/). :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2004, 20:38 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
beginner_7 sin, / , *100 это уже "Хранимые Процедуры" (ХП). IT консультант пишет, однако. Знать необязательно, главное уметь консультировать ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2004, 10:47 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
2SergSuper >Знать необязательно Не понял! То есть sin это не хранимая процедура (функция)? Объясни! Некоторые "выдержки" из спецификации пакета SYS.STANDARD БД Oracle: .... function '+' (LEFT NUMBER, RIGHT NUMBER) return NUMBER; pragma BUILTIN('+',14, 2, 8); -- PEMS_NUMBER, NUM_ADD function '-' (LEFT NUMBER, RIGHT NUMBER) return NUMBER; pragma BUILTIN('-',15, 2, 9); -- PEMS_NUMBER, NUM_SUB function '*' (LEFT NUMBER, RIGHT NUMBER) return NUMBER; pragma BUILTIN('*',17, 2, 10); -- PEMS_NUMBER, NUM_MUL function '/' (LEFT NUMBER, RIGHT NUMBER) return NUMBER; pragma BUILTIN('/',18, 2, 11); -- PEMS_NUMBER, NUM_DIV .... function COS(N NUMBER) return NUMBER; function SIN(N NUMBER) return NUMBER; function TAN(N NUMBER) return NUMBER; function COSH(N NUMBER) return NUMBER; function SINH(N NUMBER) return NUMBER; function TANH(N NUMBER) return NUMBER; function EXP(N NUMBER) return NUMBER; function LN(N NUMBER) return NUMBER; .... Реализация, к сожалению, "скрыта" (закодирована) фирмой Oracle. Или под Заявлением "Знать необязательно, главное уметь консультировать" скрывается еще что-то? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2004, 18:13 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Давно я так не смеялся. Ответ. ХП нужны того, что бы 1. Ограничить права юзера по работе с таблицами только тем, что ему положено. 2. Изолировать реализацию логики приложения от клиентской части. Это прямое следствие 8-го и 9-го правила Кодда о независимости прикладных программ от изменений в базе. В приципе, любую прогу мы можем расматривать как СУБД и применять к ней Коддтовские правила. ===== P.S. Писано 08.04.2004 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2004, 18:29 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
2 beginner_7 sin - это встроенная функция ну как-то странно мне учить человека который вот стал IT консультантом ... |
|||
:
Нравится:
Не нравится:
|
|||
09.04.2004, 19:00 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
>Ответ. ХП нужны того, что бы >1. Ограничить права юзера по работе с таблицами только тем, что ему >положено. >2. Изолировать реализацию логики приложения от клиентской части. Вы считаете что только с помощью ХП можно скрыть структуру таблиц от и ограничить права юзеров?.. ой как глубоко заблуждаетесь.)) ХП прежде всего выигрывают в производительности 1) используется предкомпиляция и оптимизация (хотя не только в ХП, но и вложенный SQL на это оч способен, причем вложенный SQL гораздо быстрее и легче писать) 2) увеличение производительности обработки информации за счет уменьшения накладных расходов на передачу данных между хранилищем (СУБД) данных и приложением (уменьшение трафика в сети) А вот тоже интересный вопрос: изолируем мы логику приложения от клиентской части, мы где тут получим выигрыш в производительности? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2004, 11:30 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
автор2) увеличение производительности обработки информации за счет уменьшения накладных расходов на передачу данных между хранилищем (СУБД) данных и приложением (уменьшение трафика в сети) Да что же вы к трафику то привязались? Да не играет он почти никакой роли в производительности при клиент-серверной архитектуре. Только время на передачу данных - но это не производительность, скорее время отклика. авторА вот тоже интересный вопрос: изолируем мы логику приложения от клиентской части, мы где тут получим выигрыш в производительности? Да везде. Хотя бы то, что для увеличения производительности нужно менять только сервер, а не 50 клиентов. Да вообще, странный какой-то разговор - все-равно что говорить, чем лучше круглые колеса вместо квадратных -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 11:52 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Вопрос- какие бывают велосипеды? 1)трехколесные 2)двухколесные 3)одноколесные 4)водный велосипед 5)воздушный (с пропеллером) 6)велосипед с моторчиком и т.д... к чему это я?... Да здравствуют изобретатели велосипедов! Еще не все велосипебы изобретены! изобретатели велосипедов всех стран, присоединяйтесь! *крик души* ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 12:16 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Дорогой Тигра. Ты не прав. Примерная цепочка рассуждений 1) Медленная сеть => данные дольше передаются на клиента 2) Данные дольше передаются => Ресурсы дольше освобождаются 3) Ресурсы дольше освобождаются => меньше свободных ресурсов 4) уменьшение свободных ресурсов в общем случае приводит к уменьшениию производительности Время отклика здесь следствие P.S. В больших системах IMHO сервер БД это узкое место. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 12:55 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Классные рассуждения, можно я тоже так попробую. 1. Когда человек стоит голова находится дальше от центра земли 2. голова находится дальше от центра земли => при беге она проходит большее расстояние 3. раз голова проходит большее расстояние => она имеет большую скорость 4. голова при беге она имеет большую скорость => при старте требуется большее усилие чтобы её разогнать 5. если лечь голова будет находиться ближе к центру земли => спортсменам-спринтерам легче было бы бежать лёжа ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 14:24 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Сейчас мне опять скажут - "если нечего сказать - промолчи".... но не могу я удержаться... авторВ больших системах сервер БД это узкое место ДАЕШЬ!!! уберем это "узкое место" нафиг!!!... ....и большой системы не станет вообще. Что касаемо хранимых процедур, то ИМХО надо понять, что, что данные, описывающие предметную область - это не только цифры и буквы, но и ...мммм... возможные зависимости между этими цифрами и буквами, а эти зависимости должны быть реализованы неким функционалом. То факт, что цифры и буквы храняться на сервере, а функционал - еще где-то, фактически означает, что на сервере хранятья НЕ ВСЕ данные о предметной области. Мне это не нравиться. Опять же, всем известно, что данные должны быть неизбыточны и непротиворечивы. Дык вот, система, где данные храняться в одном месте а обрабатываются в другом, (если рассматривать ее в целом) принципиально и вызывающе нарущает эти требования, поскольку на определенном этапе одно и то же может существовать в разных местах, причем в одном месте оно еще старое, а в другом мы его уже изменили. Хранимые процедуры позволяют избежать это. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 14:45 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Друзья U-gene, SergSuper во первых не надо передергивать. Что вы называете большими системами??? Давайте начнем с определений. Я нигде не говорил что клиeнт-сервер отстой и ему пора на свалку истории. Но в больших системах СУБД это узкое место так как его сложнее масштабировать в лоб: увеличивая мегагерцы, гигабайты и дисковые массивы. Если это не так давайте доказывайте. SergSuper, в твоих рассуждениях много правильно. Только разница про которую ты говоришь настолько мала что ей можно пренебречь. А сетевым трафиком в сильно нагруженной системе пренебречь нельзя. Так что ищи другой пример. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 18:28 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Нет проблем с маштабированием в лоб : добавляй процессоров, памяти сколько влезет (мы вот скоро получим новую технику, эххх заживем !!!:). А на Оракле еще лучше - там кластер можно наращивать, пока не надоест. В общем.... О чем это мы? :) -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 18:38 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Пардонте, а фраза xz321 P.S. В больших системах IMHO сервер БД это узкое место. чья? то есть Вы что-то сказали о "больших системах" , а мы теперь тут это дружно "определяй" давай? Фигушки!!! :). Кто первый сказал, тот пусть и "начинает с определения". Если честно, я тут мысль теряю. Точнее не то что бы теряю, но это что-то типа " я не говорю, что фон-неймановские машины - отстой, и им пора на свалку истории, но если на пентюхе запустить 250 разных программ, то он точно зависнет"... и что теперь говорить?... где тут причинно-следственная связь то?....смещались в кучу принципы и реализация, логика и технологии...я это "начинать с определния" не хочу...напрасный труд хуже пьянства. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 18:59 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
xz321 А сетевым трафиком в сильно нагруженной системе пренебречь нельзя. При правильно спроектированном клиент-сервере - можно. Во всяком случае у меня такая проблемма никогда не стояла, тормоза в основном из-за обработки на сервере. Если у тебя другой опыт - поделись. Я допускаю что в каких-то системах трафик может играть роль - допустим тысячи активно работающих клиентов. Но в таким случиях о файл-серверах никто даже и не задумывается. Да, в больших системах СУБД это узкое место, его сложнее масштабировать, но альтернатива - вместо одного узкого места сделать тысячи узких мест. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 19:36 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Да у меня другой опыт. Знали бы вы когда когда у тебя один запрос по хранилищу данных сжирает 1ТБ и ResultSet у него такой что Фокспрошникам даже и не снилось. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 20:10 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
уточнение 1 ТБ в temporary tablespace. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 20:11 |
|
Зачем нужны хранимые процедуры?
|
|||
---|---|---|---|
#18+
Код: plaintext
Если это в MSSQL, то у него такое случается иногда, если производятся запросы к таблицам, объёмы данных в которых могут очень сильно меняться в момент выполнения хранимой процедуры. Оптимизатор глючит и выбирает не самый оптимальный план. Самое смешное, что если заменить запрос на динамический exec('....'), то всё работает быстро и сжирает памяти мало. Всё равно это не повод отказываться от ХП - надо лишь немножко её доработать. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2004, 20:17 |
|
|
start [/forum/topic.php?fid=35&msg=32478179&tid=1552669]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
26ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 139ms |
0 / 0 |