Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 [5] 6   вперед  Ctrl      все
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
Bfink
Member

Откуда: Москва
Сообщений: 2797
andrey_anonymous
Bfink
Тогда будет явно видно, что в момент записи родительский ключ существует и, соответственно, с точки зрения целостности таблиц ошибка не должна возникать.

Не согласен. Memento ACID :)


мой тезис - целостность в реляционной базе, в частности PK и FK, никак не связана транзакционной моделью, она работает на базу в целом, а не на уровне отдельной транзакции или их группы.
20 ноя 10, 16:57    [9813268]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
АнтиТехничкин
Guest
Техничкин,

Ты хочешь сказать что автономка выдаcт parent key not found?
20 ноя 10, 17:08    [9813299]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
SY
Member

Откуда: Middlebury, CT USA
Сообщений: 10040
Bfink
мой тезис - целостность в реляционной базе, в частности PK и FK, никак не связана транзакционной моделью, она работает на базу в целом, а не на уровне отдельной транзакции или их группы.


Consistency != Isolation

SY.

Сообщение было отредактировано: 20 ноя 10, 17:36
20 ноя 10, 17:33    [9813375]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
softwarer, честно говоря, совсем не понимаю зачем такой вопрос задавать на собеседовании. Понятно, если бы вопрос звучал: Как бы вы реализовали создание инициализационной записи в дочерней таблицы при вставке в родительскую?
Но такой вопрос удивляет... Впрочем гуру я себя не считаю, поэтому не знаю от чего вы отталкивались.
Вы знали сами, что конкретно будет не пробуя? А если не пробовали, как такой вопрос вообще мог придти в голову? По-моему совершенно адекватно не задаваться таким вопросом вообще - такая реализация изначально ошибочна.

ЗЫ. Теперь я понимаю человека, который против использования триггеров(даже для заполнения пк сиквенсами), потому что девелоперы, создавая дополнительные уровни абстракций, сами напрашиваются на ошибки.
20 ноя 10, 17:34    [9813383]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
Bfink
Member

Откуда: Москва
Сообщений: 2797
SY
Bfink
мой тезис - целостность в реляционной базе, в частности PK и FK, никак не связана транзакционной моделью, она работает на базу в целом, а не на уровне отдельной транзакции или их группы.


Consistency != Isolation

SY.



Consistency != integrity
20 ноя 10, 17:37    [9813399]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
-2-
Member

Откуда:
Сообщений: 15330
xtender,

Знание особенностей реализации позволяет не наступать труднооткапываемые грабли. Да и вопрос не только на знание, если не сталкивался с такой проблемой, еще лучше - покажешь способность трезво рассуждать.
20 ноя 10, 17:39    [9813406]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
suPPLer
Member

Откуда: Харків, Україна
Сообщений: 7794
Блог
xtender
Теперь я понимаю человека, который против использования триггеров(даже для заполнения пк сиквенсами)


Зачастую абсолютизм и категоричность ошибочны. Как говорится, "всё зависит от".
20 ноя 10, 17:44    [9813416]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
SY
Member

Откуда: Middlebury, CT USA
Сообщений: 10040
xtender
softwarer, честно говоря, совсем не понимаю зачем такой вопрос задавать на собеседовании.


This is a typical method used in interviews. You ask a question where answer itself (in terms of correct/incorrect) is not that important. What is important is "thread of thought" you hear from candidate. And that "thread of thought" shows candidate's professional level.

SY.
20 ноя 10, 17:44    [9813417]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
-2-, я не гуру, все номера ошибок я не зазубрю и с абсолютным большинством не сталкивался(надеюсь, и не столкнусь), поэтому спрашивать какая именно ошибка возникнет в какой-то конкретной ошибочной реализации смысла не будет... имхо, в любом случае это вопрос не для junior'a
20 ноя 10, 17:48    [9813429]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
suPPLer, не, он не говорил про абсолютно всегда, он говорил про "желательно"
20 ноя 10, 17:49    [9813433]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
SY, я понимаю, это и думаю, что как раз тогда правильнее было бы задать вопрос как это сделать, а не что будет, если напортачить.
20 ноя 10, 17:51    [9813437]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
suPPLer
Member

Откуда: Харків, Україна
Сообщений: 7794
Блог
xtender,

а и не надо помнить номера и сообщения ошибок. Нужно понимать, когда возникнет какая ошибка и почему. Иногда с последним в Oracle сюрпризы...

Желательность тоже должна чем-то обосновываться. Иногда бритвы Оккама недостаточно.
20 ноя 10, 17:51    [9813438]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
suPPLer, это приблизительно разница игры в шахмат компьютера и человека. Человек тем и хорош, что отсекает лишние(ну иногда и чуть больше :)) варианты не просчитывая их до конечного получения "северной лисички" из определенного набора веселых зверюшек.
20 ноя 10, 17:57    [9813451]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
-2-
Member

Откуда:
Сообщений: 15330
xtender
имхо, в любом случае это вопрос не для junior'a
Знание ответа понижает ценность исследования. У джуниора есть шанс, не зная результат, делать выводы правильные или ошибочные. Работодатель сможет оценить возможности роста кандидата, а у кандитат оценить берут ли его для роста или на мясо.
20 ноя 10, 17:59    [9813463]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 63933
Блог
xtender
softwarer, честно говоря, совсем не понимаю зачем такой вопрос задавать на собеседовании.

А кто сказал, что я его задаю на собеседовании? Я придумал эту задачку когда читал курсы по ораклу, чтобы "только что всё понявшие и потому круче яиц" студенты поломали головы и осознали, что они далеко не всё поняли :)

xtender
Но такой вопрос удивляет...

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

xtender
Вы знали сами, что конкретно будет не пробуя?

Поскольку это было лет восемь назад, сейчас уже могу ответить только "не помню". Deadlock, который я увидел, когда воспроизводил года три назад, для меня явился сюрпризом, я помнил parent key not found. Не исключено, что пытаясь "тогда" проверить, я совершил ту же ошибку, что и брадобрей :) Без проверки я бы не дал задачу студентам, это факт.

xtender
ЗЫ. Теперь я понимаю человека, который против использования триггеров(даже для заполнения пк сиквенсами),

Это в общем действительно уродливо. Ну... триггера можно использовать, но в последние годы я нахожу для них мало места, уровня "штук пять триггеров на сотню таблиц".
20 ноя 10, 18:07    [9813500]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
softwarer
Это в общем действительно уродливо. Ну... триггера можно использовать, но в последние годы я нахожу для них мало места, уровня "штук пять триггеров на сотню таблиц".

Да, дело даже не в триггерах, а гораздо шире - именно в уровнях абстракции и сокрытии инкапсулированного, но это настолько неоднозначная вещь, что тут скорее дело во вкусах.
20 ноя 10, 18:18    [9813529]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
Техничкин
Guest
xtender
сокрытии инкапсулированного


Есть такое правило: никогда не говори во время жевания не употребляй слова, смысл которых ты плохо понимаешь.
20 ноя 10, 18:24    [9813548]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
АнтиТехничкин
Guest
Техничкин,

И все-таки ты не ответил.
АнтиТехничкин
Техничкин,

Ты хочешь сказать что автономка выдаcт parent key not found?
20 ноя 10, 18:26    [9813554]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
Техничкин, как мне нравится этот снобизм) не нравится тафтология - читайте только половину двух слов)
20 ноя 10, 18:30    [9813560]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
Техничкин
Guest
АнтиТехничкин
Техничкин,

Ты хочешь сказать что автономка выдаcт parent key not found?


Нет, глупые дети. Я хочу сказать, что использование автономных транзакций ограничено очень узким кругом задач (к примеру - аудит, логгинг), по своей природе (архитектуре).
Т.е. теми задачами, в которых в принципе не предусматривается вот такая вот ссылочная целостность, да еще и на транзакционном уровне.

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

По той простой причине, что думать оно (о природе вещей и применимости инструментов к задачам) - не в состоянии.

Вот и все.

Почему-то ни у кого в мире не возникает вопрос о том, что чувак, который, к примеру, в автосервисе вдруг начнет
решать вопрос установки на BMW X5 парового двигателя и гусеничного хода (за счет клиента) - не подлежит немедленному увольнению.

А тут вона - решают чего-то. Еще и требуют дескать обосновать ход мышления (у ремонтника!), почему это нельзя на легковушки ставить гусеницы. Да можно! Кто запрещает. И ездить будет.
Запросто. Вот только эксплуатационные вопросы... А дальнейшее сопровождение?

Ку?
20 ноя 10, 18:31    [9813562]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 63933
Блог
SY
What is important is "thread of thought" you hear from candidate.

Безусловно.
20 ноя 10, 18:33    [9813568]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
Bfink
Member

Откуда: Москва
Сообщений: 2797
Техничкин
не предусматривается вот такая вот ссылочная целостность, да еще и на транзакционном уровне


белиберда в голове, видимо недостаток образования...
20 ноя 10, 18:43    [9813597]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
comphead
Member

Откуда: Киев
Сообщений: 3390
xtender,

уже в принципе ответили коллеги. добавлю от себя, что на собеседованиях при приеме в гугл, принято задавать вопросы не совсем по профилю. допустим в какой то момент вас могут спросить, почему канализационные люки делают круглыми. им интересно насколько вы умеете рассуждать и применять вашу инженерную мысль, даже если не дадите абсолютно верного ответа.
20 ноя 10, 19:25    [9813696]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
xtender
Member

Откуда: Мск
Сообщений: 5704
comphead, знаю, наслышан, но при чем тут это? вы видимо плохо прочли:
автор
честно говоря, совсем не понимаю зачем такой вопрос задавать на собеседовании. Понятно, если бы вопрос звучал: Как бы вы реализовали создание инициализационной записи в дочерней таблицы при вставке в родительскую?
20 ноя 10, 19:44    [9813734]     Ответить | Цитировать Сообщить модератору
 Re: Каверзные вопросы на собеседовании на вакансию Oracle Developer .  [new]
Владимир Бегун
Member

Откуда: Redwood Shores, CA USA
Сообщений: 1707
Я бы задал вот эти вопросы перед тем как переходить к ответу на основной (триггеры, к которому, отношения не имеют никакого):
softwarer
Вешаем на таблицу-мастер триггер after insert
Зачем так сделано?
softwarer
Теперь берём и начинаем выполнять тело этого триггера в автономной транзакции
Зачем так вот "брать и начинать" использовать автономные транзакции?

Боюсь делать негативные предположения, но очень похоже, что практический опыт неправильного использования автономных транзакций (применение которых в Oracle RDBMS должно быть лимитированно; в моей практике только logging и сугубо специфическое трюкачество связанное с очисткой "временных" таблиц, в виду того что жизнь предыдущих поколений разработчиков была, сплошной борьбой незнаний с неуменнием; плюс, в общем случае триггер -- косталь, кроме системных триггеров), заставил автора вопроса начать спрашивать о подобных ошибках у остальных. :)
20 ноя 10, 20:20    [9813831]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 [5] 6   вперед  Ctrl      все
Все форумы / Oracle Ответить