Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
Интересует меня вопрос: используются ли внешние ключи (Foreign Key) в системах ERP? Насколько мне подсказывает логика, то не должны, т.к. использование ключей - выше надежность и ниже производительность. А в ERP производительность крайне важна. Если я для одной транзакции залочу 5-7 таблиц активно используемых, то все остальные будут курить пока моя транзакция не докомитится. Интересует этот вопрос и по 1С и по Галактике и в принципе по всем системам Добрый день кстати :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 10:49 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
ключи надо искать на альтовисте а не здесь просить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 10:54 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
Эстонский големключи надо искать на альтовисте а не здесь просить мне не ключи доступа нужны а архитектура БД систем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 10:57 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
В OEBS нету внешних ключей, ВЫ совершенно правы.Но объяснение этой особенности проблемами производительности можно принять, если доказать, что внешнии ключи съедают хотябы 5-10% процентов производительности. Но есть ли у кого такая статистика? Согласитесь, что из-за 0.2% производительности отказываться от внешних ключей смысла нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 11:23 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
IgorTvиспользование ключей - выше надежность и ниже производительность. А в ERP производительность крайне важна Система не может жертвовать надежностью ради производительности. Так что это не аргумент. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 11:31 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
В большинстве ERP не используют ключи по банальной причине: Система разработки должна быть максимально независимой от СУБД. Поэтому проверка целостности делается на клиенте с вытекающими отсюда последствиями. Так делается в большинстве западных систем. И многих отечественных тоже. >> А в ERP производительность крайне важна судя по тому, как там организованы схема данных/поля/таблицы производительность второстепенна. Отсюда и почти фантастические требования под необходимое оборудование. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 12:03 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
IgorTvиспользование ключей - выше надежность и ниже производительность. А в ERP производительность крайне важна В OEBS вещи типа ключей, триггеров и пр. использованы по минимуму в первую очередь потому, что это трехзвенное приложение. Здесь за целостность системы отвечает по большей части сервер приложений, а не сервер БД. И в итоге в производительности вы только выигрываете, кстати. По своему печальному опыту могу сказать, что подавляющее большинство триггеров, вкоряченных талантливыми руками внедренцев в таблицы OEBS, дают ощутимую потерю скорости обработки данных. Про сопровождение системы, масштабирование и пр. правильные слова я и не говорю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 12:18 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
9В OEBS нету внешних ключей, ВЫ совершенно правы. Вы в этом уверены? (Hint: HR, GM%, ABM, AX...) IgorTvЕсли я для одной транзакции залочу 5-7 таблиц активно используемых, то все остальные будут курить пока моя транзакция не докомитится. Каким образом наличие FK (с индексами) может залочить 5-7 таблиц применительно к Oracle? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 12:28 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
автор Про сопровождение системы, масштабирование и пр. правильные слова я и не говорю так а вы скажите. почему это для 3x звенки ключи стали вдруг ненужны. Пока слышно только про проблему производительности ( ито никто не может сказать на сколько выигрыш по скорости). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 12:31 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
IgorTvЕсли я для одной транзакции залочу 5-7 таблиц активно используемых, то все остальные будут курить пока моя транзакция не докомитится. WhatevaКаким образом наличие FK (с индексами) может залочить 5-7 таблиц применительно к Oracle? Ну если я не ошибаюсь, то таблицы, на которых навешаны FK нужно обрабатывать в одной транзакции. А пока пардон тарнзакция по апдейту 5-7 таблиц не дойдет до конца, то таблицы залоченны (не углубляясь в подробности со страницами и т.д.) Пока транзакция идет использование таблиц в ней участвующих - ограничено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 12:38 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
9 автор Про сопровождение системы, масштабирование и пр. правильные слова я и не говорю так а вы скажите. почему это для 3x звенки ключи стали вдруг ненужны. Пока слышно только про проблему производительности ( ито никто не может сказать на сколько выигрыш по скорости). Ключи нужны для целостности и облегчения программирования, но при большом количестве пользователей (сотни-тысячи) будут сильно тормозить. При достижении определенного порога будет именно обвал производительности. Если ключи не использовать - сложнее программировать, целостность иногда теряется (изза ошибок программирования) но производительность будет выше т.к. грубо говоря 1 строка в таблице - 1 транзакция ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 12:44 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
9 так а вы скажите. почему это для 3x звенки ключи стали вдруг ненужны. Пока слышно только про проблему производительности ( ито никто не может сказать на сколько выигрыш по скорости). По-моему, ключи - это лишь один из инструментов обеспечения бизнес-логики, которая в OEBS, в частности, весьма сложна. Какой смысл разбрасывать реализацию этой логики по разным компонентам системы, если все можно держать на сервере приложений? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 12:47 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
IgorTv Ну если я не ошибаюсь, то таблицы, на которых навешаны FK нужно обрабатывать в одной транзакции. А пока пардон тарнзакция по апдейту 5-7 таблиц не дойдет до конца, то таблицы залоченны (не углубляясь в подробности со страницами и т.д.) Пока транзакция идет использование таблиц в ней участвующих - ограничено. Ошибаетесь. Ошибаетесь в том плане, что апдейт таблицы не лочит таблицу целиком. Почитайте мануал к разным БД. Что касается например R/3, то в принципе, возможность задания foreign key существует. Но, если честно, пока я еще не встретил ни одной таблицы для которой эти ключи определены :) Правда нельзя сказать что я целенаправлено искал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 12:49 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
IgorTv Ключи нужны для целостности и облегчения программирования, но при большом количестве пользователей (сотни-тысячи) будут сильно тормозить. При достижении определенного порога будет именно обвал производительности. Если ключи не использовать - сложнее программировать, целостность иногда теряется (изза ошибок программирования) но производительность будет выше т.к. грубо говоря 1 строка в таблице - 1 транзакция Если стандартный API использовать, с целостностью ничего не станется, и производительность будет прогнозируемой (это не менее важно, чем скорость) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 12:51 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
IgorTvНу если я не ошибаюсь, то таблицы, на которых навешаны FK нужно обрабатывать в одной транзакции. А пока пардон тарнзакция по апдейту 5-7 таблиц не дойдет до конца, то таблицы залоченны (не углубляясь в подробности со страницами и т.д.) Oracle залочит только те записи которые участвуют в транзакции (типа PO header -> PO lines -> Shipments). Собственно говоря наличие/отсутствие FK здесь иррелевантно: для консистентности данных их в любом случае надо блокировать. IgorTvПока транзакция идет использование таблиц в ней участвующих - ограничено. Ограниченно это будет только для транзакций пытающихся обновить/удалить заблокированные записи . Для всех других - без ограничений. Блокировка таблицы - это как-то слишком дорого для OLTP. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 12:52 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
автор Какой смысл разбрасывать реализацию этой логики по разным компонентам системы, если все можно держать на сервере приложений? проще всего как раз сделать внешнии ключи и не писать больше ни одной строчки исходного кода. попробуйте сами. замерьте сколько у вас уйдет времения на написания кода для проверки внешнего ключа и сколько уйдет времени на добавление внешнего ключа средствами СУБД. Пример вот я пишу код для внешего ключа alter table HR.PAY_PAYROLL_ACTIONS add constraint PAY_PAYROLL_ACTIONS_FK1 foreign key (BUSINESS_GROUP_ID) references HR.HR_ALL_ORGANIZATION_UNITS (ORGANIZATION_ID) сколько ты будешь писать код на сервере приложений для реализации этого функционала? ( Кстати это пример я взял из OEBS т.е там все-такие есть FK, но используются они редко...) автор Ключи нужны для целостности и облегчения программирования, но при большом количестве пользователей (сотни-тысячи) будут сильно тормозить. это только так кажется. нужны исследования. Думаю всем было бы интересно узнать действительно ли это так. и при каких параметрах начинается торможение. ( хотя если проверки делать самому, Наприме с помощью процедур, то они тоже буду вызывать торможение) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 14:07 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
AndreyЧто касается например R/3, то в принципе, возможность задания foreign key существует. Но, если честно, пока я еще не встретил ни одной таблицы для которой эти ключи определены :) Правда нельзя сказать что я целенаправлено искал. Значит мало работали. Очень много таблиц с FK в САПе (EKKO, EKPO, ... всего две, потому как пример. А так почти любую не справочную открывай, не ошибешься). Это и по сабжу. По крайней мере в R/3 FK широко используются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 15:06 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
В OEBS улючи достаточно редки в GL не встречал :) в Scala есть, в Парусе есть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 15:40 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
Блокировки: читать мануалы по конкретным БД. Скорость: проверка проводится при добавлении записи либо изменении ключа, при запросах производительность в основном ухудшаеццо за счет того, что приходиццо подымать индексные массивы и если они в одних и тех же файлах, что и обычные индексы, то возникает задержка с перепозиционированием в файле по станицам. Нужно ли ERP внешние клюи: безсмысленный вопрос, ERP-концепкия, внешние ключи - поддержка целостности данных в различных таблицах. в 1С нет внешних ключей, потому что dbf-ки их не поддерживают, и говорить нужны они или нет - нет смысла :) Галактика - не показатель в принципе... Но тем не менее в зависимости от модели хранения объектов в БД внешние ключи могут быть не применимы, но это совсем не ERP :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 15:49 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
Tov. Drujba AndreyЧто касается например R/3, то в принципе, возможность задания foreign key существует. Но, если честно, пока я еще не встретил ни одной таблицы для которой эти ключи определены :) Правда нельзя сказать что я целенаправлено искал. Значит мало работали. Очень много таблиц с FK в САПе (EKKO, EKPO, ... всего две, потому как пример. А так почти любую не справочную открывай, не ошибешься). Это и по сабжу. По крайней мере в R/3 FK широко используются. А вещи типа автоинкремент или ограничение значений в полях таблиц используются? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 17:00 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
IgorTvА вещи типа автоинкремент или ограничение значений в полях таблиц используются? Именно в R/3 понятия автоинкремент нет. Если надо что-то подобное, приходится реализовывать руками. По второму пункту не понял. Что Вы имеете в виду под "ограничением значений"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 17:08 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
Валентин К Нужно ли ERP внешние ключи: БЕССМЫСЛЕННЫЙ вопрос, ERP-концепция, внешние ключи - поддержка целостности данных в различных таблицах. Полностью согласен, точнее не скажешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 17:08 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
IgorTv[А вещи типа автоинкремент или ограничение значений в полях таблиц используются? А зачем вы это спрашиваете, вы, случайно, не в милиции работаете ? (c) Вы свою систему проетирует или обзор какой-то делаете? Вас только конкретные системы интересуют? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 17:08 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
OA User Валентин К Нужно ли ERP внешние ключи: БЕССМЫСЛЕННЫЙ вопрос, ERP-концепция, внешние ключи - поддержка целостности данных в различных таблицах. Полностью согласен, точнее не скажешь. К словам придераетесь или я не так вопрос задал. Меня интересуют реализации работы с БД конкретных ERP систем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 17:15 |
|
||
|
Внешние ключи в OEBS, SAP, Axapta и тд.
|
|||
|---|---|---|---|
|
#18+
michael_ IgorTv[А вещи типа автоинкремент или ограничение значений в полях таблиц используются? Вы свою систему проетирует или обзор какой-то делаете? Вас только конкретные системы интересуют? Пытаюсь сделать постановку задачи для интеграции многих маленьких систем и JDEdwards. Вот зашел спор с разработчиками маленьких, но гордых, систем как нужно БД проектировать совместного пользования, чтоб не писать в каждой системе интерфейс под каждую, а написать один общий, но чтоб все его понимали. Я считаю, что внешние ключи будут только тормозить БД при большом количестве операций, хотя без внешних ключей код писать тяжелее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 17:21 |
|
||
|
|

start [/forum/topic.php?fid=29&msg=33410740&tid=1528199]: |
0ms |
get settings: |
6ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
54ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
71ms |
get tp. blocked users: |
2ms |
| others: | 223ms |
| total: | 385ms |

| 0 / 0 |
