stringtranslate.com

База данных в виде плоских файлов

Пример модели плоского файла [1]

База данных с плоским файлом — это база данных , хранящаяся в файле, называемом плоским файлом . Записи имеют единый формат, и не существует структур для индексации или распознавания связей между записями. Файл простой. Плоский файл может быть обычным текстовым файлом (например , csv , txt или tsv ) или двоичным файлом . Отношения можно вывести из данных в базе данных, но сам формат базы данных не делает эти отношения явными.

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

Обзор

Обычные текстовые файлы обычно содержат одну запись в строке. [2] Существуют различные соглашения для изображения данных. В файлах значений, разделенных запятыми, и файлах значений, разделенных разделителями , поля могут быть разделены разделителями , такими как запятая или символы табуляции . В других случаях каждое поле может иметь фиксированную длину; короткие значения могут быть дополнены пробелами . Чтобы избежать столкновения разделителей , может потребоваться дополнительное форматирование .

Использование разделителей влечет за собой некоторые накладные расходы при их поиске каждый раз при их обработке (в отличие от форматирования с фиксированной шириной), что может повлиять на производительность . Однако использование разделителей символов (особенно запятых) также является грубой формой сжатия данных , которая может повысить общую производительность за счет уменьшения объемов данных — особенно для целей передачи данных . Использование разделителей символов, включающих компонент длины ( декларативная нотация ), сравнительно редко, но значительно снижает накладные расходы, связанные с определением размера каждого поля.

Примеры плоских файлов включают в себя и /etc/passwdUnix -подобные операционные системы. Другой пример плоского файла — список имен и адресов с полями «Имя» , «Адрес» и «Номер телефона» ./etc/group

Список имен, адресов и номеров телефонов, написанный от руки на листе бумаги, представляет собой базу данных в виде плоского файла. Это также можно сделать с помощью любой пишущей машинки или текстового процессора . Для реализации базы данных в виде плоского файла можно использовать программу электронных таблиц или текстовый редактор, которую затем можно распечатать или использовать в Интернете для улучшения возможностей поиска.

История

Работа Германа Холлерита для Бюро переписи населения США, впервые реализованная во время переписи населения США 1890 года , с использованием данных, табулированных с помощью дыроколов в бумажных карточках, [3] иногда считается первой компьютеризированной базой данных в виде плоских файлов, поскольку она не включала в себя никаких карточек, индексирующих другие данные. карты или иным образом связывать отдельные карты друг с другом, за исключением их членства в группе. [ нужна цитата ]

В 1980-е годы настраиваемые компьютерные приложения баз данных с плоскими файлами были популярны на IBM PC и Macintosh . Эти программы были разработаны, чтобы облегчить людям разработку и использование собственных баз данных, и по популярности почти сравнялись с текстовыми процессорами и электронными таблицами . [ нужна цитация ] Примеры программного обеспечения для баз данных с плоскими файлами включают ранние версии FileMaker , а также условно-бесплатную версию PC-File и популярную dBase .

Базы данных в виде плоских файлов распространены и повсеместно распространены, поскольку их легко писать и редактировать, и они несложно подходят для множества целей.

Современные реализации

Линейные хранилища данных NoSQL, данные в формате JSON , примитивные электронные таблицы (возможно, разделенные запятыми или символами табуляции) и текстовые файлы — все это можно рассматривать как базы данных с плоскими файлами, поскольку в них отсутствуют интегрированные индексы, встроенные ссылки между элементами данных и т. д. или сложные типы данных. Программы для управления коллекциями книг или встреч и адресной книгой могут использовать, по существу, одноцелевые базы данных в виде плоских файлов, сохраняя и извлекая информацию из плоских файлов, не украшенных индексами или системами указателей.

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

Пример базы данных

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

Столбцы включают: имя (имя человека, второй столбец); команда (название спортивной команды, которую поддерживает лицо, третий столбец); и числовой уникальный идентификатор (используется для уникальной идентификации записей, первый столбец).

Вот пример текстового представления описываемых данных:

идентификатор названия команды1 Эми Блюз2 Боба Редса3 Чак Блюз4 Ричард Блюз5 Этель Редс6 Фред Блюз7 Джилли Блюз8 Хэнк Редс9 Хэнк Блюз

Этот тип представления данных вполне стандартен для баз данных в виде плоских файлов, хотя есть некоторые дополнительные соображения, которые не совсем очевидны из текста:

Смотрите также

Рекомендации

  1. Глоссарий по интеграции данных. Архивировано 20 марта 2009 г. в Wayback Machine , Министерство транспорта США, август 2001 г.
  2. ^ Фаулер, Гленн (1994), «cql: язык запросов к базе данных плоских файлов», WTEC'94: Материалы технической конференции USENIX зимой 1994 г. на технической конференции USENIX зимой 1994 г.
  3. ^ Блоджетт, Джон Х.; Шульц, Клэр К. (1969). «Герман Холлерит: пионер обработки данных». Американская документация . 20 (3): 221–226. дои : 10.1002/asi.4630200307. ISSN  1936-6108.