Что такое большие данные? Характеристики, типы и технологии

Большие данные — это современная аналитическая тенденция, которая позволяет компаниям принимать больше решений на основе данных, чем когда-либо прежде. При анализе эти большие объемы данных позволяют увидеть реальные коммерческие возможности, будь то маркетинг, разработка продуктов или ценообразование.

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

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

Вот что мы пройдем сегодня:

  • Что такое большие данные
  • Для чего используются большие данные?
  • Как работают большие данные?
  • Терминология больших данных
  • Технологии больших данных
  • Что следует изучить дальше

Начните свою карьеру в области науки о данных с прочным фундаментом

Изучите навыки работы с большими данными и инструменты, которые нужны работодателям.

Введение в большие данные и Hadoop

Что такое большие данные?

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

Новые разработки программного обеспечения недавно сделали возможным использование и отслеживание больших наборов данных. эта пользовательская информация может показаться бессмысленной и не связанной с человеческим глазом. Однако инструменты анализа больших данных могут отслеживать взаимосвязи между сотнями типов и источников данных для получения полезной бизнес-аналитики.

Все наборы больших данных имеют три определяющих свойства, известных как 3 V :

  • Volume : наборы больших данных должны включать миллионы неструктурированных данных с низкой плотностью точки. Компании, использующие большие данные, могут хранить от десятков терабайт до сотен петабайт пользовательских данных. С появлением облачных вычислений у компаний теперь есть доступ к зеттабайтам данных! Все данные сохраняются независимо от кажущейся важности. Специалисты по большим данным утверждают, что иногда ответы на вопросы бизнеса могут заключаться в неожиданных данных..

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

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

Корреляция и причинно-следственная связь

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

Аналитики данных должны решить, какие отношения данных являются действенными, а какие — просто случайными корреляциями. .

История больших данных

Концепция больших данных существует с 1960-х и 1970-х годов, но в то время у них не было средств для сбора и хранения такого количества данных.

Практические большие данные начали развиваться только примерно в 2005 году, когда разработчики в таких организациях, как YouTube и Facebook, осознали объем данных, которые они генерируют в своих повседневные операции.

Примерно в то же время новые передовые инфраструктуры и системы хранения, такие как базы данных Hadoop и NoSQL, позволили специалистам по данным хранить и анализировать более крупные наборы данных, чем когда-либо прежде. Фреймворки с открытым исходным кодом, такие как Apache Hadoop и Apache Spark, обеспечивают идеальную платформу для роста больших данных.

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

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

Для чего используются большие данные?

Приложения для больших данных полезны во всем мире бизнеса, а не только в сфере технологий. Вот несколько примеров использования больших данных:

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

  • Тестирование : большой data может анализировать миллионы отчетов об ошибках, спецификации оборудования, показания датчиков и прошлые изменения, чтобы распознавать точки отказа в системе до того, как они произойдут. Это помогает командам обслуживания предотвратить проблемы и дорогостоящие простои системы.

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

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

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

  • Машинное обучение : большие данные стали важной частью технологий машинного обучения и искусственного интеллекта, поскольку они предлагают огромный объем данных, из которых можно извлечь. Инженеры машинного обучения используют большие наборы данных в качестве разнообразных обучающих данных для создания более точных и устойчивых систем прогнозирования.

Как работают большие данные?

Сами по себе большие данные не могут обеспечить бизнес-аналитику, которую ищут многие компании. Вам нужно будет обработать данные, прежде чем они смогут дать полезную информацию.

Этот процесс включает 3 основных этапа:

1. Получение потока данных

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

Система вашей компании должна иметь мощность обработки данных и хранилище способность обрабатывать такой объем данных. Локальное хранилище является наиболее безопасным, но в зависимости от объема оно может быть перегружено.

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

2. Анализ данных

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

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

На этом этапе у вас будут необработанные результаты, но не то, что с ними делать. . Например, служба совместного использования пассажиров может обнаружить, что более 50% пользователей отменят поездку, если приближающийся водитель будет остановлен более чем на 1 минуту.

3. Принятие решений на основе данных

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

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

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

Продолжайте изучать большие данные

Практикуйтесь с лучшими инструментами, такими как Hadoop, Apache Spark, MapReduce и другими. Образовательные курсы позволяют пропустить видео по настройке и обучающие видео, чтобы сразу перейти к необходимому практическому обучению.

Введение в большие данные и Hadoop

Терминология больших данных

Структурированные данные :

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

Неструктурированные данные :

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

База данных:

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

Система управления базами данных :

Обычно, когда Говоря о базах данных, таких как MySQL и PostgreSQL, мы говорим о системе, называемой системой управления базами данных. СУБД — это программное обеспечение для создания, обслуживания и удаления нескольких отдельных баз данных. Он предоставляет периферийные службы и интерфейсы для взаимодействия конечного пользователя с базами данных.

Реляционная база данных (SQL) :

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

Например, форум, подобный Reddit, будет использовать реляционную базу данных, поскольку логическая структура данных такова, что у пользователей есть список следующих форумов, форумы содержат список сообщений, а сообщения содержат список опубликованных комментариев. Популярные реализации включают Oracle, DB2, Microsoft SQL Server, PostgreSQL и MySQL.

Нереляционная база данных :

Нереляционные базы данных не имеют жесткой схемы и содержат неструктурированные данные. Данные внутри не имеют логической связи с другими данными в базе данных и организованы по-разному в зависимости от потребностей компании. Некоторые распространенные типы включают хранилища ключей и значений (Redis, Amazon Dynamo DB), хранилища столбцов (HBase, Cassandra), хранилища документов (Mongo DB, Couchbase), графические базы данных (Neo4J) и поисковые системы (Solr, ElasticSearch, Splunk). Большая часть больших данных хранится в нереляционных базах данных, поскольку они могут содержать данные нескольких типов.

Data Lake :

Репозиторий данных, хранящихся в необработанном виде. Как и в случае с водой, все данные перемешаны, и никакие данные сбора нельзя использовать, прежде чем их можно будет отделить от озера. Данные в озере данных пока не обязательно должны иметь определенную цель. Он сохраняется на случай, если использование будет обнаружено позже.

Data Warehouse :

Репозиторий для отфильтрованных и структурированные данные с заранее определенной целью. По сути, это структурированный эквивалент озера данных.

Технологии больших данных

Наконец, мы рассмотрим основные инструменты, используемые современными специалистами по данным при создании больших Решения для обработки данных.

Hadoop

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

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

Hadoop иногда используется как общий термин, относящийся ко всем инструментам в данных Apache. научная экосистема.

MapReduce

MapReduce — это модель программирования, используемая в кластере компьютеров для обработки и создавать наборы больших данных с помощью параллельного распределенного алгоритма. Его можно реализовать на Hadoop и других подобных платформах.

Программа MapReduce содержит процедуру map , которая фильтрует и сортирует данные в удобную для использования форму. После сопоставления данных они передаются в процедуру reduce , которая суммирует тенденции данных. Несколько компьютеров в системе могут выполнять этот процесс одновременно, чтобы быстро обрабатывать данные из озера необработанных данных и получать полезные результаты.

Модель программирования MapReduce имеет следующие характеристики:

  • Распределенный : MapReduce — это распределенная структура, состоящая из кластеров стандартного оборудования, на которых выполняется map или reduce задач.

  • Parallel : задачи сопоставления и сокращения всегда работают параллельно.

  • Отказоустойчивый : в случае сбоя какой-либо задачи она переносится на другой узел.

  • Масштабируемость : масштабирование можно произвольно. По мере того, как проблема становится больше, можно добавить больше машин для решения проблемы в разумные сроки; фреймворк может масштабироваться по горизонтали, а не по вертикали.

Класс Mapper в Java

Давайте посмотрим, как мы можем реализовать MapReduce в Java.

Сначала мы будем использовать класс Mapper, добавленный пакетом Hadoop ( org.apache.hadoop.mapreduce ), чтобы создать map операция. Этот класс сопоставляет входные пары ключ/значение с набором промежуточных пар ключ/значение.. Концептуально средство сопоставления выполняет синтаксический анализ, проекцию (выбор интересующих полей из входных данных) и фильтрацию (удаление неинтересных или искаженных записей).

Для примера мы создадим средство сопоставления, которое принимает список автомобилей и возвращает марку автомобиля и итератор; список Honda Pilot и Honda Civic вернет (Honda 1) , (Honda 1) .

 публичный класс CarMapper расширяет Mapper  {@Override protected void map (LongWritable key, Text value, Context context) вызывает IOException, InterruptedException {//Мы можем игнорировать ключ и работать только со значением String [] words = value.toString (). Split ("  ");  для (Строковое слово: слова) {context.write (новый текст (word.toLowerCase ()), новый IntWritable (1));  }}} 

Класс Mapper в Hadoop

Самая важная часть этого кода — в строке 9 . Здесь мы выводим пары ключ/значение, которые позже сортируются и агрегируются редукторами.

Не путайте ключ и значение, которые мы пишем, с ключом и значениями, передаваемыми в метод map (...) . Ключ — это название марки автомобиля. Поскольку каждое вхождение ключа обозначает один физический счетчик этой марки автомобиля, мы выводим 1 в качестве значения. Мы хотим вывести тип ключа, который является как сериализуемым, так и сопоставимым, но тип значения должен быть только сериализуемым.

Класс редуктора в Java

Далее мы реализуем операцию reduce , используя класс Reducer , добавленный Hadoop. Reducer автоматически принимает выходные данные Mapper и возвращает общее количество автомобилей каждой марки.

Задача уменьшения — это разделить между одним или несколькими узлами-редукторами для более быстрой обработки. Все задачи одного ключа (бренда) выполняются одним и тем же узлом.

 открытый класс CarReducer extends Reducer  {@Override protected void reduce (Text key, Iterable  values, Context context) вызывает исключение IOException  , InterruptedException {длинная сумма = 0;  для (вхождение IntWritable: значения) {сумма + = вхождение.get ();  } контекст. write (ключ, новый LongWritable (сумма));  }} 

Класс Reducer в Hadoop

Строки 8-10 перебираем каждую карту одного и того же ключа и суммируем общее количество с помощью переменной sum .

Mapper и Reducer — это основа многих решений Hadoop. Вы можете расширить эти базовые формы для обработки огромных объемов данных или сократить до очень конкретных сводок.

Что изучать дальше

С этим введением в большие данные вы готовы начать практиковаться с общими инструментами науки о данных и передовыми аналитическими концепциями.

Вот некоторые следующие шаги, на которые следует обратить внимание:

  • Изучите Hadoop Distributed Файловая система (HDFS)

  • Построить модель с помощью Apache Spark

  • Полученные результаты с использованием MapReduce

  • Ознакомьтесь с различными форматами ввода/вывода

Чтобы помочь вам овладеть этими навыками и продолжайте свой путь к большим данным, компания Educative разработала курс Введение в большие данные и Hadoop . Этот курс даст вам практические навыки работы с Hadoop, Spark и MapReduce — инструментами, используемыми специалистами по обработке данных каждый день.

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

Удачного обучения!

Читать далее о больших данных и науке о данных

  • Прикладная наука о данных: бессерверные функции, конвейеры и PySpark
  • 10 лучших алгоритмов машинного обучения для науки о данных за 5 минут
  • Data Science Simplified: что такое языковое моделирование для НЛП?
Оцените статью
nanomode.ru
Добавить комментарий