Большие данные (Big Data) — это структурированные, частично структурированные или неструктурированные большие массивы данных.
Также под Big Data понимают обработку, хранение и анализ огромных объемов данных. Большие данные помогают анализировать текущее состояние бизнеса, строить прогнозы и автоматизировать рутинные процессы.
- Структурированные данные: хранятся в таблицах и реляционных базах данных
- Частично структурированные данные: данные не подходят для таблиц, но могут быть систематизированы; текстовые документы или файлы с записями о событиях.
- Неструктурированные данные: не имеют организованной структуры; аудио- и видеоматериалы, фото и другие изображения
С практической точки зрения большими называют данные, которые характеризуются следующими свойствами (3V):
- Объем (Volume): данных действительно много (терабайты, петабайты)
- Разнообразие (Variety): они имеют различную структуру, поступают из различных источников
- Скорость (Velocity): данные генерируются и обрабатываются с огромной скоростью
Большие данные — это когда хранить их все дешевле, чем определять, какая часть из них имеет ценность.
Вводятся дополнительные признаки больших данных (6V):
- Достоверность (Veracity): важны качество и точность данных, а также корректность способа, с помощью которого их получили
- Вариативность (Variability): значение одних и тех же данных может меняться с течением времени, поэтому оценивать их нужно в общем контексте
- Ценность (Value): анализ данных способен принести пользу бизнесу
Каноническими примерами больших данных:
- логи информационных систем
- информация о транзакциях в банке
- информация о покупках в интернет-магазине
- информация о перемещении объекта (GPS)
Средства = программы = сервисы, запускаемые в ОС на серверах.
Основные особенности:
- масштабируемость (предполагается горизонтальная за счет увеличения количества серверов)
- параллельная обработка данных
- распределенность (один сервис может быть размещен на нескольких серверах таким образом, что каждый сервер будет играть свою определенную роль в процессе функционирования сервиса)
На рисунке ниже отражены основные актуальные сегодня средства работы с большими данными:

Основные действия, совершаемые с большими данными:
- сбор (скрапперы, парсеры, датчики, сенсоры, брокеры сообщений)
- хранение (SQL и NoSQL базы данных, DWH и DL)
- обработка и анализ (Hadoop и Spark)
- представление (визуализация как частный случай)
Самое первое, чему необходимо научиться - это разворачивать и настраивать сервера с целью последующего за этим включения их в систему хранения, обработки и анализа данных за счет развертывания специализированных сервисов
Научиться создавать и настраивать для удаленного управления сервер с ОС Ubuntu на примере виртуальной машины. В дальнейшем такие сервера могут использоваться в качестве компонентов системы обработки больших данных.
Замечание: вместо рекомендованного Virtual Box можно использовать Multipass и аналоги; инструкция предполагает, что на устройстве студента установлена ОС Windows 10 и выше.
- установить Virtual Box для вашей ОС
- при использовании Virtual Box загрузить образ Ubuntu Server актуальной версии с официального сайта
- создать виртуальную машину и установить образ операционной системы (вам может помочь эта статья и эта статья); размер ОЗУ и количество ядер процессора выбирайте на ваш вкус, но без фанатизма
Обратите внимание: следует выделить под виртуальную машину минимум 40 гб физической памяти (жесткого диска). Это важно для выполнения последующих лабораторных работ
- настроить статический IP адрес для вашей виртуальной машины (вам необходимо настроить виртуальный адаптер и план сети
Информация по настройке SSH есть в видеозаписи занятия
Обратите внимание: в этой лабораторной работе запрещается менять стандартный порт SSH (22)
- выполните команду
ping и проверьте доступность виртуальной машины
- настройте подключение к виртуальной машине с использованием SSH с беспарольным доступом (потребуется не только сгенерировать ключи, но и передать открытый ключ на виртуальную машину; может быть полезна эта статья; обратите внимание, что команды
ssh-copy-id на Windows нет, но ключ всегда можно копировать и вставить в нужное место в ручную; также имейте в виду, что в актуальных версиях Windows есть поддержка работы по SSH в терминале, клиенты по типу PUTTY не потребуются). Настройки ssh config, чтобы не вводить каждый раз имя пользователя и ip: https://linuxize.com/post/using-the-ssh-config-file/#ssh-config-file-example
- самостоятельно разберитесь с процессом копирования файлов с основной машины на виртуальную посредством команды
scp
- клонируйте виртуальную машину с помощью Virtual Box - теперь вы сможете создавать сервера из шаблона (при создании серверов из шаблона не забывайте назначать им различные IP адреса и хостнеймы)
Клонирование виртуальной машины на данном этапе существенно упростит выполнение последующих лабораторных работ, где вы сможете создавать новые машины на основе настроенного шаблона
Создан шаблон виртуального сервера, к которому можно подключиться удаленно по SSH без пароля. Продемонстрировано подключение по SSH, выполнение команды scp и сетевые настройки.
- нужно проверить статус ssh сервера:
service sshd status
- проверить конфиг: /etc/ssh/sshd_config
- Порт
- PasswordAuthentication