Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (4) 1 2 [3] 4  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Триггер
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата (chee @ 6.01.2017 - 00:53)
Guest, ну тут ты его не совсем понял, речь шла о двух приложениях у которых, допустим, 50% уникальной функциональности, а 50% общей. Я думаю он это имел ввиду.

Ну я уже немного троллю его. Просто ему нужно гуглить, а не рассуждать о дублировании.
https://ru.wikipedia.org/Микросервисы
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 5662
Пользователь №: 35718
На форуме: 4 года, 8 месяцев, 7 дней
Карма: 176




что-то ваши холивары начинают меня утомлять... старею наверно
Скажу только одно триггеры и хранимые процедуры очень полезная, но в большинстве случаев ненужная вещь. Многие программисты озабочены нагрузкой на БД и доводя это до абсурда сокращают количество запросов к БД ради самого сокращения количества запросов, и при этом с лёгкостью херачат туда триггеры, которые сами по себе не "пряник".
Триггеры нужны там где без них не обойтись, а не там где "не хватает ума написать обычный запрос".
Ну и, для общего развития, при работе с денюжкой чаще помогают транзакции нежели триггеры.


--------------------
wmr - R281553014107
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
chee  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Сын полка
Сообщений: 1976
Пользователь №: 38654
На форуме: 3 года, 6 месяцев, 24 дня
Карма: 46




Цитата (depp @ 6.01.2017 - 01:16)
триггеры это прежде всего целостность данных. и никто в жизни не сможет доказать что на уровне приложения можно поддержать целостность данных лучше, чем на уровне встроенных средств бд.

Я не эксперт в этом, потому я не скажу, лучше ли они справляются в этом деле чем клиентская аппликуха (но возможно тут я соглашусь, так как у тригерров данные с которыми они будут работать имеют вероятнсоть быть более персистентными чем в апликухи). Но опять же, я тут поднимал вообще другую тему, применимость всех этих извращений(триггеров, процедур, планировщика, расчет времени в СУБД) в повседневных задачах программиста.

Valick, ну в принципе, я с тобой согласен.


--------------------
Люди, имеющие низкий уровень квалификации, делают ошибочные выводы, принимают неудачные решения и при этом неспособны осознавать свои ошибки в силу низкого уровня своей квалификации

Мой блог
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата (depp @ 6.01.2017 - 01:16)
вот у вас спор то тут. тут как с дампами. также и программисты. те кто не использует триггеры и те кто уже использует. видимо, еще не дорос. не в обиду сказано.
триггеры это прежде всего целостность данных. и никто в жизни не сможет доказать что на уровне приложения можно поддержать целостность данных лучше, чем на уровне встроенных средств бд.

Ну да, у тех кто не дорос (не в обиду сказано), часто бывает бзик по поводу целостности данных, ведь они еще ничего не слышали о eventual consistency и распределенных систем не писали. Распределенные приложения вообще никогда не бывают в согласованном состоянии в один момент времени. Например все видели, что с банковского счета списывают средства сразу, но на другом они появляются только спустя N времени. Всё это время целостность данных нарушена.

Просто есть приложения, которые не уживаются в рамках одного сервера. И всё, к чему ты привык триггеры, ACID, транзакции и целостность данных прямо в этот момент это всё не работает в распределенных системах.

Цитата
триггеры это прежде всего целостность данных

Ок. В монго нет триггеров. По твоему у неё проблемы с целостностью данных или может всё же проблемы у программиста?
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
depp  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 392
Пользователь №: 40589
На форуме: 2 года, 7 месяцев, 23 дня
Карма: 22




Цитата (Guest @ 6.01.2017 - 01:53)
с банковского счета списывают средства сразу, но на другом они появляются только спустя N времени

как раз работаю с финансами. и хочу сообщить вам, что это не имеет ничего общего с распределенными системами.

монго - nosql база. у нее по определению не может быть триггеров. это просто хранилище.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









За всех говорить не нужно. Всем понятно, что бывают межбанковские переводы. И всё представление о триггерах, acid, транзакциях моментально рухнет. sad.gif
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
depp  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 392
Пользователь №: 40589
На форуме: 2 года, 7 месяцев, 23 дня
Карма: 22




я вам еще раз повторю. я работаю с финансами. и использовать в своей сфере не реляционные бд подобно разорению. банальная ситуация: человек хочет перевести средства. мы проверяем есть ли нужная сумма. nosql со своим "eventual consistency" ответит что да. а на самом деле - нет. понимаете?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата (depp @ 6.01.2017 - 01:58)
монго - nosql база. у нее по определению не может быть триггеров. это просто хранилище.

Я вас прошу, не топите себя. Ваше "по определению" не верно. Cassandra, DynamoDB и еще куча баз данных тоже nosql, но поддерживают триггеры. Даже для монго фанатами написаны костыли добавляющие триггеры.
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата (depp @ 6.01.2017 - 02:18)
я вам еще раз повторю. я работаю с финансами. и использовать в своей сфере не реляционные бд подобно разорению. банальная ситуация: человек хочет перевести средства. мы проверяем есть ли нужная сумма. nosql со своим "eventual consistency" ответит что да. а на самом деле - нет. понимаете?

Я вам еще раз повторяю, что средства списываются сразу. Зачисляются спустя время. Eventual consistency ответит что нет. а на самом деле - тоже нет. понимаете?

Eventual consistency это не что-то из мира nosql. Это просто подход. И может применяться в контексте реляционных, графовых, объектных и каких угодно баз данных.
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
depp  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 392
Пользователь №: 40589
На форуме: 2 года, 7 месяцев, 23 дня
Карма: 22




вы меня не передразниваете. nosql базы это хранилища. использовать хранилища и делать из них sql базу? не вижу ни одной задачи для nosql баз, кроме логгирования.
вопрос был про триггеры. вы приплели тут и mongodb и eventual consistency. и еще Cassandra с DynamoDB. в чем смысл вашего сообщения? триггеры для вас это плохо? не используйте.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









depp, нет не плохо. Плохо то, что программисты не понимают, когда использовать, а когда не использовать. Даже в этой ветке, кто-то использует, чтобы сохранить целостность, кто-то устранить дублирование. Кто что. И гуглить не хотят, что для решения всех этих задач есть подходы лучше. Что триггеры имеет смысл использовать, если бек это тонкая прослойка без логики для передачи данных с базы на фронт.
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата
в чем смысл вашего сообщения?

Вы написали про целостность данных. Я вам немного рассказал, что целостность она разная бывает. И что поддерживать её можно другими средствами, без размазывания логики между бекендом и базой.
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
depp  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 392
Пользователь №: 40589
На форуме: 2 года, 7 месяцев, 23 дня
Карма: 22




вы меня удивляете своими сообщениями. в чем по вашему смысл триггеров? и не надо в гугл отправлять.
Цитата (Guest @ 6.01.2017 - 03:23)
Даже в этой ветке, кто-то использует, чтобы сохранить целостность, кто-то устранить дублирование. Кто что. И гуглить не хотят, что для решения всех этих задач есть подходы лучше

опишите тогда эти подходы.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата (depp @ 6.01.2017 - 03:51)
в чем по вашему смысл триггеров?

Я уже писал, использовал если бы не было бекенда как такового, но кое какая минимальная логика присутствала. Можете ознакомиться почему триггеры это зло http://allthingsoracle.com/the-problem-with-triggers/

Посмотрите, что пытается сделать ТС. Для решения его задачи не нужен триггер. Ему нужно сделать это в приложении внутри тразакции. Никто потом при рефакторинге не вспомнит, что кто-то N времени назад добавил триггер. Даже сам этот кто-то не вспомнит. И потратят кучу времени на деббагинг, прежде чем поймут, что за чудеса происходят. Остальное проблемы, которые вам могут подарить триггеры, читайте в статье, ну или гуглите. Найдете то, что подавляющее большинство хейтят триггеры и с ними невозможно не согласиться.

Цитата
опишите тогда эти подходы.

Я уже писал. Нужна целостность - используйте транзакции, если распределенное приложение - используйте eventual consistency.
Нужно устранить дублирование - используйте SOA/микросервисы. Сделайте вместо триггера сервис и пусть другие сервисы обращаются к этому сервису, когда им нужно выполнить данную функциональность.

Всё это гуглится за несколько секунд, во всех подробностях.
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5583
Пользователь №: 32538
На форуме: 5 лет, 2 месяца, 1 день
Карма: 56




Valick
тут обучающий момент для меня больше, чем выполнение задания. Условие: данные будут вводиться на прямую через бд. Т.е. нуден триггер, чтоб самому не высчитывать и не править еще огдни данные
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (4) 1 2 [3] 4  Ответ в темуСоздание новой темыСоздание опроса