Ликбез По Работе С Перфокартами (Или Рассказ О Том, Как Обрабатывались «Большие Данные» С 1890 По 1970 Годы)

В период 1890–1970 годов вся обработка больших данных осуществлялась с помощью перфокарт. Перфокарты, в свою очередь, обрабатывались с помощью т. н.

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

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



Ликбез по работе с перфокартами (или рассказ о том, как обрабатывались «большие данные» с 1890 по 1970 годы)

  • Яркая особенность записывающей аппаратуры докомпьютерных времен: изначально она была полностью электромеханической.

    Там еще даже не было ламповой электроники.

    «Интеллект» записывающей аппаратуры был построен из проволочных щеток (для распознавания дырок в перфокартах), электромеханического реле и механических колес (для суммирования значений).

    Несмотря на свою технологическую примитивность, «записывающая техника» в свое время произвела революцию в обработке больших данных.



Как люди работали с перфокартами?

  • На каждой перфокарте хранилась одна запись данных (до 80 цифр или символов).

    Каждая запись данных состояла из нескольких полей.

    Сортировщик перфокарт раскладывал карты в требуемом оператором порядке (по одному из полей данных), после чего машина, называемая «табулятором», считывала отсортированные перфокарты, извлекала из них нужные поля (опять же указанные оператор) и распечатал отчет.

  • В качестве примера давайте посмотрим, как перфокарты использовались для обработки счетов.

    Компании имели отдельную перфокарту для каждого счета, выставленного к оплате (см.

    пример на рисунке ниже).

    На перфокарте были указаны такие поля данных, как номер поставщика, дата платежа, сумма платежа и т. д.

    Ликбез по работе с перфокартами (или рассказ о том, как обрабатывались «большие данные» с 1890 по 1970 годы)

  • Соответствующий бизнес-процесс автоматизированной обработки данных выглядит следующим образом.

    Сортировщик перфокарт получает команду сортировать перфокарты по номеру поставщика.

    После завершения сортировки перфокарты передаются в табулятор, который формирует отчет путем считывания нужной строки с каждой перфокарты.

    Механический счетчик, встроенный в табулятор, автоматически подсчитывает итоговую сумму.

  • Многие другие бизнес-процессы, такие как расчет заработной платы, инвентаризация и выставление счетов, выполнялись аналогичным образом в докомпьютерные времена.



Принцип работы электромеханического сортировщика перфокарт.

  • Сортировщик принимает стопку перфокарт и сортирует их по полю данных, указанному оператором.

    Например, по принадлежности сотрудников к определенному отделу.

    За что? Как вариант, предварительно сгруппировав сотрудников по отделам, затем сформировать отчет о выполнении плана продаж каждым из отделов компании.

  • Чтобы решить эту проблему, перфокарты сначала сортируются по полю отдела, а затем передаются в табулятор, который суммирует поле продаж и печатает промежуточные итоги для каждого отдела в отчете.

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

    Сортировщик считывает перфокарты и распределяет их по 13 карманам: десяти цифровым, двум «зональным» (для обработки строковых значений); и один для выброшенных перфокарт (для которых не установлено значение для сортировки).



    Ликбез по работе с перфокартами (или рассказ о том, как обрабатывались «большие данные» с 1890 по 1970 годы)

  • Алгоритм, по которому работает сортировщик перфокарт, сильно отличается от общепринятых сегодня алгоритмов.

    Ключевое отличие состоит в том, что перфокарты не сравниваются друг с другом.



Алгоритм поразрядной сортировки чисел

Как же тогда сортировщик перфокарт справляется со своей работой? Он реализует элегантный алгоритм «поразрядной сортировки».

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

Итак, алгоритм:

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

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

  2. После того, как сортировщик закончил раздачу перфокарт по карманам, оператор вынимает их и складывает в общую стопку.

    По порядку: начиная с нулевого кармана и заканчивая девятым.

  3. Оператор помещает собранную стопку перфокарт обратно в сортировщик и повторяет шаги 1 и 2 последовательно для каждой цифры.

  4. Всё, теперь перфокарты разобраны.



Преимущества алгоритма поразрядной сортировки

  • Алгоритм поразрядной сортировки элегантен и быстр.

    Его вычислительная сложность составляет O(n log n).

    Другими словами, с увеличением количества карт продолжительность работы алгоритма увеличивается линейно, а не экспоненциально.

  • Алгоритм побитовой сортировки технически может быть реализован в виде простой электромеханической конструкции.

  • Хотя входной лоток сортировщика перфокарт вмещает не более 3600 карт, он может сортировать гораздо больше перфокарт, если оператор своевременно выполняет следующие две вещи: (1) своевременно загружает в лоток новые стопки перфокарт. манера; (2) своевременно опорожнять цифровые карманы (чтобы они не переполнялись).



Как кодируются строковые данные

  • Как отмечалось выше, числовые значения закодированы на перфокарте с отверстиями.

    Одно отверстие на колонку.

    Мы уже разобрались с ними.

    Теперь осталось понять, как кодируются строки на перфокарте и как их сортирует перфокарточный сортировщик.

  • Для работы со строками сортировщик перфокарт имеет два «зонных» кармана (11-й и 12-й), помимо 10 цифровых.

    Принцип кодирования буквенных символов следующий (см.

    рисунок ниже).

    Каждая буква кодируется двумя отверстиями на перфокарте: отверстием для цифры (от 1 до 9) и отверстием для «зоны» (0, 11 или 12).



    Ликбез по работе с перфокартами (или рассказ о том, как обрабатывались «большие данные» с 1890 по 1970 годы)

  • Обратите внимание: строка с нулями является числовой при обработке числовых полей данных и «зональной» при обработке строковых полей данных.



Алгоритм сортировки строк символов

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

Для этого ему потребуется два пробега.

Алгоритм следующий:

  1. При первом запуске сортировщик перфокарт сортирует карты почти так же, как он сортирует числовые поля данных.

    Разница в том, что при сортировке по алфавиту используется всего девять карманов: с 1-го по 9-й.

  2. По завершении сортировки оператор извлекает перфокарты из цифровых карманов.

    Опять же по порядку (как и в случае с упорядочиванием по числовому полю данных): начиная с первого кармана и заканчивая девятым.

    Собранную колоду карт оператор отправляет на сортировку второй раз.

  3. При втором запуске сортировщик перфокарт считывает только строки «зоны» (0, 11 и 12), а строки с цифрами игнорирует.
  4. В результате заказанные перфокарты сортировщиком распределяются по трем «зональным» карманам: от А до I помещаются в 12-й карман; от J до R – в 11-м; от S до Z – в 0-м.

  5. Если вам нужно выполнить сортировку не только по первому символу, а, например, по первым двум или трем, то описанный выше процесс (шаги с первого по четвертый) выполняется последовательно для каждого символа.

    Те.

    Для каждого символа производится два прохода через сортировщик перфокарт.



Ликбез по работе с перфокартами (или рассказ о том, как обрабатывались «большие данные» с 1890 по 1970 годы)

Итак, когда не было компьютеров, предприятия обрабатывали большие данные с помощью перфокарт. Несмотря на то, что перфокарты безвозвратно устарели, мы до сих пор сталкиваемся с их влиянием на современное состояние компьютерных технологий — всякий раз, когда нам приходится мириться с форматированием текста в 80-символьные строки.

Нечто подобное наблюдается, например, при работе с Far Manager. Теги: #математика #История ИТ #Устройства хранения данных #Большие данные #Старое оборудование #сортировка #антиквариат #перфокарты

Вместе с данным постом часто просматривают: