O modelo de dados relacional é uma abordagem única para gerenciar parâmetros usando estrutura e linguagem de acordo com a lógica de predicado de ordem única. Foi descrito pela primeira vez em 1969 pelo cientista inglês Codd. Neste projeto, todos os parâmetros são apresentados como tuplas agrupadas em determinados relacionamentos.
A finalidade do modelo de dados relacional…
…é fornecer um método declarativo para especificar modelos e consultas.
Os usuários anotam diretamente quais informações o banco de dados contém e qual teoria eles querem dele. E também deixe o software de gerenciamento de banco de dados se encarregar de descrever as estruturas para armazená-lo. O procedimento de recuperação de informações para responder a solicitações também é importante.
A maioria dos RDBs usa definições de dados SQL e uma linguagem de pesquisa. Esses sistemas implementam o que pode ser visto como uma aproximação de engenharia paramodelo relacional.
Uma tabela em um esquema de banco de dados SQL corresponde a uma variável de predicado. As restrições de chave e as consultas SQL correspondem aos predicados.
No entanto, tais bancos de dados se desviam do modelo relacional em muitos detalhes, e Codd se opôs veementemente a mudanças que comprometem os princípios originais.
Visão Geral
A ideia principal do modelo de dados relacional é a descrição de todo o banco de dados como um conjunto de predicados para o componente final das variáveis, descrevendo as restrições de valores possíveis e suas combinações. O conteúdo a qualquer momento é o modelo final (lógico). Ou seja, um conjunto de relações, uma por variável predicada, para que todos os componentes sejam satisfeitos. Este é o modelo de dados relacional.
Alternativas
Outros modelos são sistemas hierárquicos e de rede. Alguns deles, usando arquiteturas mais antigas, ainda são populares em data centers de alta capacidade. Ou nos casos em que os sistemas existentes são tão complexos e abstratos que a transição para eles usando o modelo relacional seria proibitivamente cara. E também dignos de nota são os novos bancos de dados orientados a objetos.
Implementação
Houve várias tentativas de obter a verdadeira materialização do RMD, originalmente definido por Codd e explicado por outroscientistas.
O modelo de representação de dados relacional foi o principal do gênero, descrito em termos matemáticos formais. As bases hierárquicas e de rede existiam antes dos sistemas relacionais, mas suas especificações eram relativamente informais. Uma vez que o RMD foi definido, muitas tentativas foram feitas para comparar e contrastar diferentes modelos - e isso levou a descrições mais rigorosas dos primeiros sistemas. Embora a natureza procedimental das interfaces de manipulação de dados para bancos de dados hierárquicos e de rede tenha limitado as possibilidades de formalização.
Temas
A suposição fundamental sobre o conceito de um modelo de dados relacional é que todos eles são representados como um "p" matemático - relações típicas, "Cn" - um relacionamento de pares, que é um subconjunto no produto cartesiano de vários domínios. No modelo matemático, o raciocínio sobre tais dados é realizado em uma lógica de predicados de dois valores, o que significa que para cada sentença há duas avaliações possíveis: ou verdadeira ou falsa (e não há um terceiro valor, como desconhecido ou não aplicável)., cada um dos quais é frequentemente associado ao conceito de 0). Os dados são processados usando cálculo ou álgebra, que são equivalentes em poder expressivo.
Tipos de modelos de dados, modelo de dados relacional
RMD permite que o desenvolvedor crie uma visão consistente e lógica das informações. Tudo isso é obtido pela incorporação das restrições declaradas no design do banco de dados, comumente chamado de esquema lógico. A teoria é desenvolver um processonormalização do modelo, pelo qual um projeto com certas propriedades desejadas pode ser selecionado a partir de um conjunto de alternativas logicamente equivalentes. Nos planos de acesso e outras implementações e operações, os detalhes são tratados pelo mecanismo DBMS e não são refletidos no modelo lógico. Isso contrasta com a prática comum em que o ajuste de desempenho geralmente requer alterações na função lógica.
O modelo de dados relacional básico representa um bloco de construção - é um domínio ou tipo de informação, geralmente reduzido ao mínimo. Uma tupla é um conjunto ordenado de valores de atributos. E eles, por sua vez, são um par mútuo de nome e tipo. Pode ser um valor escalar ou mais complexo.
Uma relação consiste em um cabeçalho e um corpo
O primeiro é um conjunto de atributos.
O corpo (com a enésima relação) é um conjunto de tuplas.
O cabeçalho de tangência também é o assunto de cada estrutura.
O modelo de dados relacional é definido como um conjunto de n-tuplas. Tanto em matemática quanto em MRD, um conjunto é uma coleção não ordenada de elementos únicos não duplicados, embora alguns SGBDs imponham uma sequência em seus dados. Em matemática, uma tupla tem uma ordem e permite a duplicação. E. F. Codd originalmente configurou tuplas usando esta definição matemática.
Mais tarde, uma das grandes ideias de E. F. Codd foi que usar nomes de atributos em vez de ordenar seria muito mais conveniente (geralmentecaso) em uma linguagem de computador baseada em relacionamento. Esta declaração ainda é útil hoje. Embora o conceito tenha mudado, o nome "tupla" não foi transformado. Uma consequência imediata e importante dessa distinção é que no modelo relacional o produto cartesiano se torna comutativo.
Uma tabela é uma representação visual comum de relacionamentos. Uma tupla é semelhante ao conceito de uma string.
Relvar é uma variável nomeada de algum tipo particular de tangente à qual sempre alguma relação desse tipo é atribuída, embora o olhar possa conter tuplas nulas.
Noções básicas do modelo de dados relacional: todas as informações são representadas por valores de informações nos relacionamentos. De acordo com este princípio, a base relacional é um conjunto de relvars, e o resultado de cada consulta é representado como uma tangência.
A consistência de um banco de dados relacional não é imposta por regras embutidas nos aplicativos que o utilizam, mas sim por restrições declaradas como parte do esquema lógico e impostas pelo SGBD para todos os aplicativos. As restrições são expressas no uso de operadores de comparação relacional, dos quais apenas um é um subconjunto (⊆), teoricamente suficiente. Na prática, espera-se que vários atalhos úteis estejam disponíveis, dos quais as chaves candidatas e as restrições de fonte externa são as mais importantes. É disso que trata o modelo de dados relacionais.
Interpretação
Para apreciar plenamente o RMD, é necessário entender a interpretação pretendidacomo uma relação.
O corpo de um toque às vezes é chamado de extensão. Isso porque deve ser interpretado como representando um aumento em algum predicado. Este é o conjunto de sentenças verdadeiras que podem ser formadas substituindo cada variável livre por um nome.
Existe uma correspondência um-para-um entre os modelos de dados objeto-relacionais. Cada tupla do corpo da relação fornece valores de atributo para instanciar o predicado substituindo cada uma de suas variáveis livres. O resultado é uma afirmação que é considerada verdadeira devido à ocorrência de uma tupla no corpo da relação. Por outro lado, todo processo cujo título corresponde ao nome do relacionamento, mas não aparece no corpo, é considerado falso.
Esta suposição é conhecida como a hipótese do mundo fechado. Muitas vezes é violado em bancos de dados práticos, onde a ausência de uma tupla pode significar que a verdade da sentença correspondente é desconhecida. Por exemplo, a ausência de certos termos ("João", "Espanhol") no Quadro de Competências Linguísticas pode não ser necessariamente uma prova de que um menino chamado João não fala espanhol.
Aplicação a banco de dados, teoria da normalização
O assunto da informação usado em um RDM relacional típico pode ser um conjunto de inteiros, um conjunto de cadeias de caracteres que formam datas, ou dois booleanos true e false, e assim por diante. Os nomes de assunto correspondentes para essas figuras podem ser strings com os nomes "Índice", "Faça o trabalho necessário","Time", "Boolean" e assim por diante.
No entanto, é importante entender que a teoria relacional não especifica quais tipos devem ser suportados. E é verdade, atualmente espera-se que as provisões estejam disponíveis para entidades personalizadas além das incorporadas fornecidas pelo sistema.
Atributo
Este é o termo usado em teoria para o que normalmente é chamado de coluna. Da mesma forma, tabela é comumente usada no lugar do termo teórico tangência (embora não seja sinônimo de relação em SQL). A estrutura de dados de uma tabela é especificada como uma lista de definições de coluna, cada uma com um nome de coluna exclusivo e o tipo de valores permitidos para ela.
Valor do atributo é uma entrada em um local específico, como John Doe e 35.
Uma tupla é basicamente o mesmo que uma linha, exceto que no SQL RDBMS, onde os significados das colunas em uma linha são ordenados, as tuplas não são separadas. Em vez disso, cada valor de definição é identificado apenas por seu nome, não por sua posição ordinal na tupla. O nome do atributo pode ser Nome ou Idade.
Atitude
É uma tabela de definição de estrutura junto com a aparência dos dados nessa estrutura. A definição é o cabeçalho e os dados nele são o corpo, um conjunto de linhas. A variável de relacionamento geralmente é chamada de tabela principal. O título do valor atribuído a ele emany time corresponde ao especificado na célula fornecida, e seu corpo corresponde ao que foi atribuído pela última vez, invocando alguma instrução de atualização (geralmente INSERT, UPDATE ou DELETE).
Formulação da teoria dos conjuntos
Conceitos básicos no modelo relacional de relações são os nomes e os nomes dos atributos. Eles precisam ser representados como strings como "Pessoa" e "Nome" e geralmente precisam usar variáveis para explorá-los. Outro conceito básico é um conjunto de valores atômicos que contém significados necessários e importantes como números e strings.