[ Russian ] [ English ]

Автоматическая генерация схемы реляционной базы данных на основе объектной схемы данных

Богданов Алексей Александрович,
ВМиК МГУ,
alxbog@gmail.com

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

В докладе рассматриваются существующие подходы к решению проблемы объектно-реляционного отображения, приводятся их преимущества и недостатки. Также обсуждается необходимость решения данной проблемы в целом. Предлагается новый подход к решению вопросов персистентности в строго типизированных объектно-ориентированных языках программирования и рассматривается возможность задания схемы хранимых данных в терминах этих языков и последующей автоматической генерации схемы реляционной БД. Ориентация на объектную, а не реляционную модель данных, позволит существенно упростить процесс разработки слоя данных прикладного программного обеспечения, а также сделать этот процесс более контролируемым со стороны компилятора языка программирования. Это в итоге приведет к уменьшению количества допускаемых ошибок на единицу кода.

Также рассматриваются вопросы производительности предлагаемого решения в сравнении существующими решениями.

Слайды к докладу в презентации PowerPoint: bogdanov20110331.ppt

Литература:

  1. Рубанов В. В. Способы отображения объектов в реляционных базах данных. Труды ИСП РАН, том 3. 2002. – С. 137-162.
  2. Richardson, Chris. ORM in Dynamic Languages. Queue. 2008, Т. 6, 3.
  3. Кузнецов С.Д. Основы баз данных.- М.: Интернет-университет информационных технологий, 2007.
  4. Фаулер М. Архитектура корпоративных программных приложений. – М.: Вильямс, 2006.
  5. Mike Keith, Ted Neward, Carl Rosenberger, Craig Russell. Java Object Persistance: State of the Union // ODBMS.org panel discussion. - 2008. http://www.infoq.com/articles/java-object-persistence-panel
Supported by Synthesis Group