Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
2009 г.

О пользе классики, полу-классики и не-классики вообще

Сергей Кузнецов

К написанию этой заметки меня подвигло создание в разделе «Базы данных» библиотеки CITForum.ru раздела Классика. За многолетнюю историю исследований и разработок в области баз данных были написаны тысячи статей, посвященных различным проблемам теории и практики этой дисциплины, многие из которых оказали существенное влияние на развитие области. В мировом сообществе баз данных принято считать, что знание этих статей является необходимым не только для его членов, но и для студентов и аспирантов, специализирующихся в области компьютерных наук вообще, а также для грамотных разработчиков приложений и пользователей баз данных.

Об этом, в частности, свидетельствует успех хрестоматии Майкла Стоунбрейкера (Michael Stonebraker) и Джозефа Хеллерстейна (Joseph M. Hellerstein) Readings in Database Systems, выдержавшей уже четыре издания (причем состав каждого нового издания хрестоматии существенно обновлялся). К сожалению, эти хрестоматии недоступны в Internet в полностью открытом доступе. Чтобы иметь возможность читать классику систем баз данных в подборке Стоунбрейкера&Хеллерстейна, необходимо подписаться на услуги электронной библиотеки ACM или, по крайней мере, получить доступ к оффлайновой антологии ACM SIGMOD.

Мне всегда хотелось, чтобы лучшие статьи из области баз данных можно было читать по-русски. Возможно, я не совсем прав, поскольку в современном мире все компьютерные профессионалы обязаны уметь без проблем читать технические английские тексты, но мне нравится, когда у хороших статей (и книг) имеются (хорошие!) переводы на русский язык. Поэтому в течение многих лет я сам переводил нравящиеся мне статьи и стимулировал это занятие у других людей.

Однако до начала 2009 г. эти переводы были частично рассеяны среди других материалов библиотеки CITForum.ru, а частично погружены в глубокие Internet-запасники издательского дома «Открытые системы», где они в свое время публиковались в журнале «Системы управления базами данных (СУБД)». Статьи, которые с самого начала публиковались на CITForum.ru, переводил я, а переводчиком многих статей для журнала «СУБД» являлся Михаил Рувимович Когаловский.

К настоящему времени (середина марта 2009 г.) работа по начальному формированию раздела Классика почти завершена. Она оказалось не очень легкой и быстрой, поскольку переводы из журнала «СУБД» пришлось основательно редактировать, улучшать качество верстки и т.д. (все-таки после их исходной публикации прошло изрядное время, и мои требования к качеству переводов стали строже). Почти во всех случаях удалось обеспечить ссылку на свободно доступный в Internet оригинал статьи.

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

Так, например, статьи Эдгара Кода (E.F. Codd) Реляционная модель данных для больших совместно используемых банков данных, Дона Чемберлина (D.D. Chamberlin) и др. SEQUEL 2: унифицированный подход к определению, манипулированию и контролю данных , Мойше Злуфа (M. M. Zloof) Query-by-Example: язык баз данных, Питера Чена (Peter Pin-Shan Chen) Модель "сущность-связь" – шаг к единому представлению о данных , Пола МакДжонса (Paul McJones, ред.) Воссоединение SQL в 1995 г.: люди, проекты, политика позволяют лучше понять пути, которые привели к сегодняшним «реляционным» системам управления базами данных.

Статьи Патриции Селинджер (P. Griffiths Selinger) и др. Выбор пути доступа в реляционной системе управления базами данных, Матиаса Ярке (Matthias Jarke) и Юргена Коха (Jurgen Koch) Оптимизация запросов в системах баз данных, Сураджита Чаудхари (Surajit Chaudhari) Обзор методов оптимизации запросов в реляционных системах, к которым я нескромно добавлю свою («не классическую») старую статью Методы оптимизации выполнения запросов в реляционных СУБД, дают представление о том, как производится компиляция и оптимизация SQL-запросов.

В статьях Малькольма Аткинсона (Malcolm Atkinson) и др. Манифест систем объектно-ориентированных баз данных, Майкла Стоунбрейкера и др. Системы баз данных третьего поколения: Манифест, Хью Дарвена (Hugh Darwen) и Кристофера Дейта (C.J.Date) Третий манифест, к которым я (опять-таки нескромно) добавлю свою обзорную статью Три манифеста баз данных: ретроспектива и перспективы, описываются идеи трех основных конкурирующих направлений в области баз данных.

Статьи Филиппа Бернштейна (Phil Bernstein) и др. Асиломарский отчет об исследованиях в области баз данных, Джима Грея (Jim Gray) и др. Управление научными данными в следующем десятилетии, Ави Зильбершатца (Avi Silberschatz), Майкла Стоунбрейкера и Джеффа Ульмана (Jeff Ullman) (ред.) Базы данных: достижения и перспективы на пороге 21-го столетия, Ракеша Агравала (Rakesh Agrawal) и др. Клермонтский отчет об исследованиях в области баз данных, к которым я снова вынужден присоединить свои обзоры Крупные проблемы и текущие задачи исследований в области баз данных, Будущие направления исследований в области баз данных: десять лет спустя и Ландшафт области управления данными: аналитический обзор дают представление о наиболее важных теоретических и практических проблемах, которые приходилось (и приходится) решать в области баз данных в течение последних двадцати лет.

И так далее. Классика есть классика. Можно относиться к ней по-разному, но знать нужно обязательно.

Однако это еще далеко не все, что я хотел сказать в этой заметке. В библиотеке CITForum.ru раздела Классика накопилось множество материалов, посвященных тематике баз данных. Некоторые из них являются безусловными претендентами на перенос в раздел Классика, но я пока на это не решился, а другие на это не претендуют, но, тем не менее, заслуживают пристального внимания. Я обнаружил, что по причине очень большого числа публикаций в них трудно ориентироваться даже мне самому, и решил в этой заметке навести хотя бы относительный порядок.

Начну с колонок Криса Дейта. В 1998 г. он вел свою колонку в журнале DataBase Programming & Design OnLine. В свое время я пересказал несколько таких заметок, и, на мой взгляд, они представляют интерес и сейчас. Заметка «Обсуждение избыточности языка SQL» была опубликована в двух частях, переводы которых находятся здесь и здесь. В этой заметке обсуждается избыточность конструкций GROUP BY и HAVING. В заметке «Инкапсуляция сбивает с толку» Дейт объясняет подход к инкапсуляции скалярных типов, принятый в Третьем манифесте.

В октябре 1998 г. журнал DataBase Programming & Design перестал существовать как отдельная сущность, и Дейт стал вести колонку в журнале Intelligent Enterprise. Первая его заметка в колонке этого журнала называлась «Рождение реляционной модели». Она была опубликована в трех частях, переводы которых находятся здесь, здесь и здесь. Эту заметку очень полезно читать вместе со статьей Кодда Реляционная модель данных для больших совместно используемых банков данных. За ней последовали заметки Реляционная алгебра Кодда и «Подъязык данных Alpha». Последняя заметка была также опубликована в двух частях, перевод которых можно найти здесь и здесь. За этим последовала замечательная серия заметок, посвященных 30-летию реляционной модели данных: Анализ вклада Кодда в Великий Спор, Когда расширение не является расширением? и Реляционная модель выдержит испытание временем. Не следует думать, что чтение этих заметок можно заменить чтением книг Дейта, переведенных на русский язык. Заметки написаны гораздо более живым языком, содержат много полемики и действительно помогают понять суть реляционной модели данных.

Я очень люблю читать и переводить статьи и книги Кристофера Дейта. В нашей библиотеке можно найти еще много других переводов статей этого автора, но здесь я воздержусь от их перечисления. В конце концов, все они ищутся поиском по ключевому слову «Дейт».

Интересный набор статей имеется на тему представления в базах данных отсутствующей информации. Здесь я укажу на статью Тома Джонсона (Tom Johnson) Неудача со значениями по умолчанию, свою статью Дубликаты, неопределенные значения, первичные и возможные ключи и другие экзотические прелести языка SQL, статью Клода Рубинсона (Claude Rubinson) NULL, трехзначная логика и неопределенность в SQL: критика критики Дейта и свою заметку Критика критики критики Дейта, а также на статьи Криса Дейта Критика статьи Клода Рубинсона «NULL, трехзначная логика и неопределенность в SQL: критика критики Дейта», Джона Гранта (John Grant) Неопределенные значения в SQL и опять же свою заметку И снова о вечной проблеме отсутствующей информации. Чтение этого материала представляется мне интересным и очень поучительным.

В библиотеке CITForum.ru опубликованы переводы основных статей Майкла Стоунбрейкера и его коллег относительно преимуществ специализированных средств управления данными. Многие авторитетные специалисты считают этот подход наиболее пригодным для будущего развития технологии баз данных. Стоит прочитать статьи «Один размер пригоден для всех»: идея, время которой пришло и ушло, Пригоден ли один размер для всех? Часть 2: результаты тестовых испытаний, Конец архитектурной эпохи, или Наступило время полностью переписывать системы управления данными, СУБД с хранением данных по столбцами и по строкам: насколько они отличаются в действительности? и мою заметку Универсальность и специализация: время разбивать камни?.

Для тех, кого волнуют проблемы объектно-ориентированного программирования баз данных и объектно-реляционного отображения, в нашей библиотеке имеются переводы статей Теда Ньюарда (Ted Neward) Вьетнам компьютерной науки и дискуссии Персистентность данных в объектно-ориентированных приложениях (Часть 1 и Часть 2).

Наконец, хочу обратить внимание на (пока) одиночные статьи, которые представляют значительный интерес. В статье Майкла Франклина (Michael Franklin), Элона Хэлеви9Alon Halevy) и Дэвида Майера (David Maier) От баз данных к пространствам данных: новая абстракция управления информацией предлагается новая концепция управления разнородными и распределенными данными. При таком подходе данные интегрируются ровно настолько, насколько это требуется в конкретном приложении. Используются разнообразные методы и средства управления данными. Возможно, вместе с этой статьей не помешает прочитать и мою статью Предвестники новых манифестов управления данными.

Пока в нашей библиотеке имеется перевод всего одной статьи, посвященной транзакционной памяти – подходу, позволяющему использоваться свойство атомарности транзакционных транзакций при параллельном программировании. Статья Джеймса Ляруса (James Larus) и Кристоса Козиракиса (Christos Kozyrakis) Транзакционная память является хорошим введением в этот предмет. Перевод помещен в раздел «Базы данных», потому что я считаю это направление очень перспективным для будущих систем управления базами данных в основной памяти.

Наконец, хочу обратить внимание на статью Гоца Грейфа (Goetz Graefe) Правило пяти минут двадцать лет спустя, и как флэш-память изменяет правила. В этой статье, ранние варианты которой писались Грейфом вместе в Джимом Греем, демонстрируется перспективность флэш-памяти для организации систем управления данными. Не исключено, что прогресс в технологии твердотельных накопителей приведет к революции в области баз данных.

Не следует думать, что в этой небольшой заметке мне удалось коснуться всех богатств раздела «Базы данных» нашей библиотеки. Обратите внимание, что все это абсолютно свободно доступно. Хотелось бы, чтобы накопленные материалы использовались максимально эффективно.

Новости мира IT:

Архив новостей

Последние комментарии:

Группа ЕСН купила РБК (1)
Monday 19.06, 11:46
Loading

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 985 1945361
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2015 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...