Strannik223 wrote:И причина этому на мой взгляд такова что именно база обычно является узким местом в смысле производительности.
Поэтому дизайн делается не так как удобнее програмить а так как быстрее будет работать
Сразу после ваших слов вспомнился фундаментальный проект. В 1995-96 году организация POSC (Petrotechnical Open Software Corporation) попробовала создать универсальную модель базы данных для нефтяной компании. Они собрали экспертов по всем направленям и сильных программистов. Написали объектно-ориентированную модель Epicenter, с использованием языка EXPRESS. Причем проект был в очень зрелой стадии - были написаны всякие специфические leader-ы, проведена огромная работа по соотвествию стандартам по каждому направлению.
Многие фирмы уже начали писать программные продукты на основе этой модели, а POSC отвоевывал право быть стандартом по всей нефтяной промышленности.
Я тогда работала на французскую фирму, которая начала писать банк данных для нефтяной компании. Поскольку проект грандиозный, они написали каркас и потом сразу стали искать заинтересованных клиентов, чтобы это дело далее финансировать. Добрались и до российского Лукойла. Мне тогда повезло, я под это дело съездила в Англию и Францию на учебу по поводу Epicenter и того самого каркаса, что наши французские кодописатели написали.
Сама модель меня просто поразила, кроме шуток. Это было грандиознейшее создание, которое очень близко к сути отражало весь процесс разведки и разработки на нефть и газ. Если в институте мне казалось, что половина курсов, что читали, нам никогда в жизни не понадобиться, тот тут я сильно пожалела, что не училась еще параллельно на разработке (моя специальность - разведка).
Был создан офигенный браузер по этой модели, по обоим логической и физической частям. До entity можно было добраться буквально из картинки представляющей тот или иной этап рабочего цикла нефтяной компании.
C entity одним кликом можно было перейти на детально описанную физическую таблицу, все нужные словари и проч. Правда в той модели (более 200 таблиц) все логические entity почти до единого аттрибута соответствовали физическим таблицам. Но видно для тогдашнего уровня технологий это было вполне нормально.
Модель точно была максимально возможно универсальна , потому что мы за месяц частично загрузили в нее Лукойловские данные и несмотря на несоответствие стандартов и форматов, все в конечном итоге ложилось в нее ровно и последовательно.
Спросите меня что с этим проектом сейчас? Почил в бозе. Якобы потому, что конкретный переход компаний на эту модель был очень costly, соответственно то что на ее основе написали, не продавалось и все потихоньку сошло на нет. То есть POSC есть и даже модель по-прежнему поддерживает, но они тише воды, ниже травы. Какие уж тут стандарты для всей отрасли. Особенно мне интересно про Алжир, где ихняя государственная нефтяная компания закупила наш продукт и устроила грандиозный проект по перегонке всех алжирских данных за многие годы в Epicenter.
Мораль такова - не доросли мы еще до уровня абстракции, когда все вокруг можно будет представить как entitites. В смысле умом дорасли, а вот материально не тянем
Сабина