четверг, 7 августа 2014 г.

Стакан скомпилированного молока

Проблема со стаканом молока о которой могут прочитать все и даже все смогут понять.

 - Дорогой! Налей, пожалуйста мне в стакан молока.
- А где ж я возьму тебе молоко?
- В холодильнике.
- Да нет у нас в холодильнике молока.
Почему нет? Разве трудно было подоить корову и поставить молоко в холодильник?
- Так ведь и коровы у нас тоже нет.
- Разве трудно купить? Надо купить корову, доить её по утрам и ставить свежее молоко в холодильник, чтобы всегда можно было налить его в стакан.
- Да, но ведь нужно знать где, у кого, когда и какую корову можно купить. Да и потом содержать её: кормить, поить. Да и где-то же она должна жить. Это ведь и сарай надо строить, и корма заготавливать. И т.д. и т.п.
О том что ещё может потянуть за собой нить рассуждений о корове, начавшиеся со стакана молока, думать уже не хотелось.

Не совсем уверен, что эту часть все смогут прочитать, а то что не все смогут понять, то в этом я уверен.

Вчера мой коллега по работе прислал сообщение, в котором попросил меня перекомпилировать вью – view (представление). И даже указал в какой схеме и в какой базе данных это вью находится. Ну, - подумал я, - делов-то. Сейчас полезу в TOAD, выберу нужную базу и схему, найду это злополучное вью, стукну по нему правой клавишей мышки, выберу нужное меню и, ... вуаля – готово!
Но нужной схемы в этой базе в моём TOADе не было. Не беда! Сейчас посмотрим туда, где у нас хранится вся информация о нужных базах и схемах, найдём то что надо и сохраним в TOADе, чтобы в следующий раз этими поисками не заниматься. Посмотрел туда куда было нужно и того что мне надо было там найти, не нашёл. Хм! Вот незадача-то. Звоню коллеге и говорю, что так вот мол и так.
- Странно. У меня это есть. Может тебе надо обновить свою локальную папку с сервера, где это хранится? – отвечает коллега.
- Уже сделал.
- Ну и что?
- Всё равно нет. Ты, наверное, у себя локально сохранил, а на сервере не актуализировал. Что делать будем?
- Ладно! Уже всё равно поздно. Давай оставим на завтра.
- Хорошо, согласился я.
На следующий день с утра звонит мой коллега и говорит, что актуализировал сервер.
- Ну и славненько, - подумал я, - сейчас этим и займёмся.
Включил TOAD, сохранил там новую схему, нашёл это злополучное вью, выбрал мышкой нужную запись в меню, и... Ошибка: «ORA-04063: view "------" has errors»! Этого ещё не хватало. Что делать? Давай смотреть скрипт. Так! Какие таблицы запрашиваются? Так они в другой схеме. Иду в другую схему, открываю карту с таблицами и... не нахожу там ни одной. Смотрю в другой системной среде. Там всё на месте и рабатает. Значит кто-то в этой системной среде этих таблиц не создал. Звоню коллеге.
- Слушай! Не получается с компиляцией.
- Почему?
- Таблиц, на которых строится это вью просто-напросто не существует.
- Ну, так что ж делать? Может скопировать из другой среды?
- Да это не проблема. Сами таблицы скопировать несложно. А что делать с данными? Где их брать?
- Ну, так ведь в этой среде тоже должны быть ETL-процессы, которые заполняют эти таблицы.
- Ты ведь знаешь, что это тестовая среда. Откуда я знаю существуют ли для неё ETL-процессы. И если да, то в работоспособном ли они состоянии. И если да, то есть-ли подходящий источник данных. И...и...и... У меня что другой работы нету?
- Но ведь мне это тоже нужно для теста.
- Давай подключать руководителя. Пускай решает. Что вперёд, а что потом.
Разговор закончился. А я начал себе представлять маленькое рабочее совещание, отнимающее время. Затем какие-то доплнительные организационные мероприятия. Возможные заминки. Неувязки. И кто знает, что ещё может всплыть. Потом посмотрел на существующие таблицы и просто начал их копировать из одной среды в другую вместе с данными. Так что когда коллега минут через пятнадцать-двадцать зашёл ко мне всё было почти готово. Коллега вопросительно посмотрел на меня.
Знаешь что? – начал я. Я тут проверил эти таблицы. В них только временные промежуточные данные. Которые при следующем процессе всё равно удалятся и перепишутся. Так что для твоего теста пойдёт, а время зато съэкономим.
- Отлично! – Воскликнул коллега.
Довольные таким разрешением проблемы мы сгрызли по сухарику с чаем и распрощались друг с другом.



Не знаю будет ли у кого желание читать самую важную и заключительную часть этой поучительной истории.

P. S. Вот потом я и подумал, что совсем не обязательно покупать корову, если хочешь выпить стакан молока. Можно его купить в ближайщем магазине съэкономив при этом деньги, время и нервы.

Ганновер, четверг, 07.08.2014

Комментариев нет:

Отправить комментарий