Database Programming & Design

       

Две первые статьи


Как я уже отметил, первая статья Кодда "Derivability, Redundency, and Consistency of Relations Stored in Large Data Banks" была опубликована в 1969 г. К сожалению, эта статья являлась исследовательским отчетом IBM; поэтому к ней применялось Limited Distribution Notice, и ее не смогло увидеть столько людей, сколько должно было увидеть. (И правда, статья стала чем-то вроде предмета для коллекционирования.) Но на следующий год пересмотренный вариант этой первой статьи был напечатан в Communications of the ACM, и эта статья была гораздо более широко распространенной и получила гораздо большее внимание (по крайней мере, в академических кругах). Действительно, обычно считается, что эта версия 1970 г. "A Relational Model of Data for Large Shared Data Banks" положила начало всему направлению, хотя, возможно, это немного несправедливо по отношению к предшествовавшей статье. Эти две первые статьи Кодда являются необычными в одном отношении: они читаются и перечитываются спустя почти тридцать лет после публикации! Про сколько статей можно сказать то же самое? В то же время, необходимо сказать, что эти статьи не очень-то легко читать. Статьи изложены кратко и немного сухо, стиль изложения теоретический и академический, обозначения и примеры приводятся в математической манере. Я уверен, что буду прав, если скажу, что к сегодняшнему дню только незначительная часть профессионалов в области баз данных действительно читала эти статьи. Поэтому я подумал, что было бы интересно и полезно посвятить короткую серию статей тщательному и беспристрастному ретроспективному обзору и оценке первых двух статей Кодда.

Однако, когда я начал писать этот обзор, я пришел к выводу, что было бы лучше не ограничивать себя только первыми двумя статьями, а взглянуть на все ранние публикации Кодда, посвященные реляционным базам данных. В следующие несколько месяцев я планирую рассмотреть, кроме уже упомянутых, следующие важные статьи Кодда: "Relational Completeness of Data Base Sublanguages", "A Data Base Sublanguage Founded on the Relational Calculus", "Further Normalization of the Data Base Relational Model", "Interactive Support for Nonprogrammers: The Relational and Network Approaches" и "Extending the Relational Database Model to Capture More Meaning". Одно предварительное замечание. Я не собираюсь утверждать, что ранние статьи Кодда были абсолютно правильными вплоть до последней детали или что сам Кодд предвидел все последствия своих идей. Было бы удивительно, если бы все было именно так. Наличие небольших ошибок и некоторой степени путаницы является нормальным и естественным, когда крупное изобретение впервые видит свет; подумайте о телефоне, автомобиле или телевидении (или даже о самих компьютерах; вы помните предсказание, что трех компьютеров хватит, чтобы удовлетворить все вычислительные потребности Соединенных Штатов?). Как бы то ни было, в дальнейшем изложении я, конечно, буду применять принцип "уравновешенного взгляда в прошлое" ("20/20 hindsight"). Я действительно думаю, что интересно посмотреть, как развивались во времени некоторые аспекты реляционной модели.



Содержание раздела