Banco de dados de arquivo simples - Flat-file database

Exemplo de um modelo de arquivo simples

Um banco de dados de arquivo simples é um banco de dados armazenado em um arquivo denominado arquivo simples . Os registros seguem um formato uniforme e não há estruturas para indexar ou reconhecer relacionamentos entre os registros. O arquivo é simples. Um arquivo simples pode ser um arquivo de texto simples ou um arquivo binário . Os relacionamentos podem ser inferidos dos dados no banco de dados, mas o formato do banco de dados em si não torna esses relacionamentos explícitos.

O termo geralmente implica um banco de dados pequeno, mas bancos de dados muito grandes também podem ser simples.

Visão geral

Os arquivos de texto simples geralmente contêm um registro por linha. Existem diferentes convenções para representar dados. Em valores separados por vírgulas e valores separados por delimitadores de ficheiros, os campos podem ser separados por delimitadores tais como vírgula ou guia caracteres. Em outros casos, cada campo pode ter um comprimento fixo; os valores curtos podem ser preenchidos com caracteres de espaço . Formatação extra pode ser necessária para evitar a colisão do delimitador .

O uso de delimitadores incorre em alguma sobrecarga ao localizá-los sempre que são processados ​​(ao contrário da formatação de largura fixa), o que pode ter implicações de desempenho . No entanto, o uso de delimitadores de caracteres (especialmente vírgulas) também é uma forma rudimentar de compactação de dados que pode ajudar no desempenho geral, reduzindo os volumes de dados - especialmente para fins de transmissão de dados . O uso de delimitadores de caracteres que incluem um componente de comprimento ( notação declarativa ) é comparativamente raro, mas reduz enormemente a sobrecarga associada à localização da extensão de cada campo.

Exemplos de arquivos simples incluem /etc/passwd e /etc/group em sistemas operacionais do tipo Unix. Outro exemplo de arquivo simples é uma lista de nomes e endereços com os campos Nome , Endereço e Número de telefone .

Uma lista de nomes, endereços e números de telefone escritos à mão em uma folha de papel é um banco de dados de arquivo simples. Isso também pode ser feito com qualquer máquina de escrever ou processador de texto . Uma planilha ou programa de editor de texto pode ser usado para implementar um banco de dados de arquivo simples, que pode então ser impresso ou usado online para recursos de pesquisa aprimorados.

História

O trabalho de Herman Hollerith para o US Census Bureau exercido pela primeira vez no Censo dos Estados Unidos de 1890 , envolvendo dados tabulados por meio de furos em cartões de papel, pode ser considerado o primeiro banco de dados de arquivo plano computadorizado, visto que (presumivelmente) não incluía cartões indexando outros cartões, ou de outra forma relacionando os registros individuais (ou seja, os cartões individuais) entre si, salvo por sua participação no grupo.

Na década de 1980, os aplicativos configuráveis ​​de banco de dados de arquivo simples eram populares no IBM PC e no Macintosh . Esses programas foram projetados para tornar mais fácil para os indivíduos projetar e usar seus próprios bancos de dados, e estavam quase no mesmo nível que processadores de texto e planilhas em popularidade. Exemplos de software de banco de dados de arquivo simples incluem versões anteriores do FileMaker e do shareware PC-File e do popular dBase .

Os bancos de dados de arquivo simples são comuns e onipresentes porque são fáceis de escrever e editar e atendem a uma infinidade de finalidades de uma maneira descomplicada.

Implementações modernas

Armazenamentos lineares de dados NoSQL, dados formatados em JSON , planilhas primitivas (talvez separados por vírgula ou delimitados por tabulação) e arquivos de texto podem ser vistos como bancos de dados de arquivo simples, porque carecem de índices integrados, referências integradas entre os elementos de dados, ou tipos de dados complexos. Programas para gerenciar coleções de livros ou compromissos e agenda de endereços podem usar bancos de dados de arquivo simples de propósito essencialmente único, armazenando e recuperando informações de arquivos simples sem adornos com índices ou sistemas apontadores.

Embora um usuário possa escrever um índice analítico em um arquivo de texto, o formato do arquivo de texto em si não inclui o conceito de índice analítico. Embora um usuário possa escrever "amigos de Kathy" na seção "Notas" para obter as informações de contato de John, isso é interpretado pelo usuário em vez de um recurso interno do banco de dados. Quando um sistema de banco de dados começa a reconhecer e codificar relacionamentos entre registros, ele começa a deixar de ser "plano" e, quando tem um sistema detalhado para descrever tipos e relacionamentos hierárquicos, agora está muito estruturado para ser considerado "plano".

Banco de dados de exemplo

O exemplo a seguir ilustra os elementos típicos de um banco de dados de arquivo simples. A organização dos dados consiste em uma série de colunas e linhas organizadas em um formato tabular . Este exemplo específico usa apenas uma tabela.

As colunas incluem: nome (o nome de uma pessoa, segunda coluna); equipe (o nome de uma equipe atlética apoiada pela pessoa, terceira coluna); e um ID numérico único (usado para identificar registros de maneira única, primeira coluna).

Aqui está um exemplo de representação textual dos dados descritos:

id    name    team
1     Amy     Blues
2     Bob     Reds
3     Chuck   Blues
4     Richard Blues
5     Ethel   Reds
6     Fred    Blues
7     Gilly   Blues
8     Hank    Reds
9     Hank    Blues

Este tipo de representação de dados é bastante padrão para um banco de dados de arquivo simples, embora haja algumas considerações adicionais que não são imediatamente aparentes no texto:

  • Tipos de dados: cada coluna em uma tabela de banco de dados como a acima é normalmente restrita a um tipo de dados específico . Essas restrições são geralmente estabelecidas por convenção, mas não formalmente indicadas, a menos que os dados sejam transferidos para um sistema de banco de dados relacional .
  • Colunas separadas: no exemplo acima, as colunas individuais são separadas usando caracteres de espaço em branco . Isso também é chamado de recuo ou formatação de dados de "largura fixa". Outra convenção comum é separar colunas usando um ou mais caracteres delimitadores , como tabulação ou vírgula.
  • Álgebra relacional: cada linha ou registro na tabela acima atende à definição padrão de uma tupla na álgebra relacional (o exemplo acima descreve uma série de três tuplas). Além disso, a primeira linha especifica os nomes dos campos associados aos valores de cada linha.
  • Sistema de gerenciamento de banco de dados: Como as operações formais possíveis com um arquivo de texto são geralmente mais limitadas do que o desejado, o texto no exemplo acima normalmente representaria um estado intermediário dos dados antes de serem transferidos para um sistema de gerenciamento de banco de dados .

Veja também

  • / etc / passwd - um arquivo simples comumente usado, usado para detalhar usuários no UNIX
  • CSV (valores separados por vírgulas padrão)
  • Berkeley DB (banco de dados de arquivo simples típico)
  • Awk (processador clássico de arquivo simples)
  • Recfiles (formato de arquivo de banco de dados de texto simples)

Referências