Big Data
«Великі дані (Big Data) – позначення структурованих и неструктурованих даних величезних обсягів і значного розмаїття, що піддаються ефективній обробці програмних інструментів, які горизонтально масштабуються та з’явились у кінці 2000-х років, і альтернативних традиційних систем управління базами даних і рішенням класу рішень Business Intelligence».
Як бачимо, у цьому визначені присутні такі неоднозначні терміни, як «величезних», «значного», «ефективній» та «альтернативних». Навіть сама назва доволі суб’єктивна. Наприклад, 4 Терабайти (ємкість сучасного зовнішнього жорсткого диску для ноутбуку) – це вже великі дані чи ні? До цього визначення Вікіпедія додає наступне: «в широкому сенсі про «великі дані» говорять, як про соціально-економічний феномен, пов’язаний з появою технологічних можливостей аналізувати величезні масиви інформації, у деяких проблемних галузях – весь світовий об’єм даних, і трансформаційні наслідки, які з цього випливають.»
Аналітики компанії IBS «весь світовий объём даних» оцінили такими величинами:
2003 г. — 5 ексабайтів даних (1 ЭБ = 1 млрд гігабайтів)
2008 г. — 0,18 зеттабайта (1 ЗБ = 1024 ексабайта)
2015 г. — более 6,5 зеттабайтів
2020 г. — 40–44 зеттабайта (прогноз)
2025 г. — цей об’єм збільшується ще у 10 разів.
У доповіді також підкреслюється, що більшу частину даних генерувати будуть не звичайні споживачі, а підприємства (згадаймо Промисловий інтернет речей).
Можна користуватись і більш простим визначенням, яке цілком відповідає усталеним і більш простим визначенням, що цілком відповідають думці журналістів і маркетологів. «Великі дані – це сукупність технологій, покликаних здійснювати три операції:
1. Обробляти більші, у порівнянні зі «стандартними» сценаріями, об’єми даних.
2. Уміти працювати з даними, що швидко надходять у дуже великих об’ємах. Тобто даних не просто багато, а їх постійно стає все більше й більше.
3. Вміти працювати зі структурованими і мало стуктурованими даними паралельно і у різних аспектах.»
Вважається, що ці «вміння» дозволяють виявляти приховані закономірності, що вислизають від обмеженого людського сприйняття. Це дає безпрецедентні можливості оптимізації багатьох сфер нашого життя: державного управління, медицини, телекомунікацій, фінансів, транспорту, виробництва і так далі. Не дивно, що журналісти і маркетологи так часто використовували словосполучення Big Data, що багато експертів вважають цей термін дикредитованим і пропонують від нього відмовитись.
Більш того, у жовтні 2015 року компанія Gartner виключила Big Data з числа популярных трендів. Своє рішення аналітики компанії пояснили тим, що до складу поняття «великі дані» входить значна кількість технологій, які вже активно застосовуються на підприємствах, вони частково стосуються інших популярних сфер і тенденцій і стали повсякденним робочим інструментом.
Як би не було, термін Big Data як і раніше широко використовується, підтвердженням чому і є наша стаття.
Три "V" (4, 5, 7) і три принципи роботи з великими даними
Визначальними характеристиками для великих даних є, окрім їх фізичного об’єму, й інші, які підкреслюють складність задачі обробки і аналізу цих даних. Набір даних VVV (volume, velocity, variety — фізичний об’єм, швидкість приросту даних і необхідність їх швидкої обробки, здатність обробляти дані різних типів) був розроблений компанією Meta Group у 2001 році з метою вказати на рівну значимість управління даними по всім трьом аспектам.
У подальшому з’явилась інтерпретація з чотирьома V (додалась veracity – достовірність), п’ятю V (viability – життєздатність і value – цінність), семи V (variability – змінність та visualization – візуалізація). Але компанія IDC, наприклад, інтерпретує саме четверте V як value (цінність), пікреслюючи економічну доцільність обробки великих об’ємів даних у відповідних умовах.5
Виходячи з вищеназваних визначень, основні принципи роботи з великими даними такі:
- Горизонтальна масштабованість. Це — базовий принцип обробки великих данных. Як вже було зазначено, великих даних з кожним днем стає все більше. Відповідно, необхідно збільшувати кількість обчислювальних вузлів, за якими розподіляються ці дані, при чому обробка має відбуватись без погіршення продуктивності
- Відмовостійкість. Цей принцип витікає з попереднього. Оскільки обчислювальних вузлів у кластері може бути багато (іноді десятки тисяч) та їх кількість, не виключено, буде збільшуватись, зростає ймовірність виходу машин з ладу. Методи роботи з великими даними мають враховувати ймовірність таких ситуацій і передбачати превентивні заходи
- Локальність даних. Оскільки дані розподілені по великій кількості обчислювальних вузлів, то, якщо вони фізично знаходяться на одному сервері, а обробляються на іншому, витрати на передачу даних можуть бути невиправдано великими. Тому обробку даних бажано проводити на тій же машині, на якій вони зберігаються
Ці принципи відрізняються від тих, які характерні для традиційних, централізованих, вертикальних моделей зберігання добре структурованих даних. Власне, для роботи з великими даними розробляються підходи і технології.
Технології і тенденції роботи з Big Data
Початково у сукупність підходів і технологій включались засоби масово-паралельної обробки невизначено-структурованих даних, такі як СУБД NoSQL, алгоритми MapReduce і засоби проекту Hadoop. У подальшому до технологій великих даних почали відносити й інші рішення, що забезпечують схожі за характеристиками можливості обробки надвеликих масивів даних, а також деякі апаратні засоби.
- MapReduce — модель розподілених обчислювань у комп’ютерних кластерах, представлена компанією Google. Згідно з цією моделлю, додаток розділяється на значну кількість однакових елементарних завдань, що виконуються на вузлах кластера і потім, природнім шляхом зводяться у кінцевий результат.
- NoSQL (від англ. Not Only SQL, не лише SQL) — загальний термін для різних нереляційних баз даних і сховищ, не означає якусь конкретну технологію чи продукт. Звичайні реляційні бази даних добре підходять для досить швидких і однотипних запитів, а на складних і гнучко побудованих запитах, характерних для великих даних, навантаження перевищує розумні межі і використання СУБД стає неефективним.
- Hadoop — набор утилітів, бібліотек і фреймворків, що вільно розповсюджується, для розробки і виконання розподілених програм, які працюють на кластерах із сотень і тисяч вузлів. Вважається однією з основоположних технологій більшості даних.
- R — мова програмування для статистичної обробки даних і роботи з графікою. Широко використовується для аналізу даних і фактично став стандартом для статистичних програм.
- Апаратні рішення. Корпорації Teradata, EMC та ін. др. пропонують апаратно-програмні комплекси, призначені для обробки великих даних. Ці комплекси поставляються як готові до установки телекомунікаційні шафи, що містять кластер серверів і керівне програмне забезпечення для масово-паралельної обробки. Сюди іноді відносять апаратні рішення для аналітичної обробки в оперативній пам’яті, зокрема, апаратно-програмні комплекси Hana компанії SAP і комплекс Exalytics компанії Oracle, незважаючи на те, що така обробка початково не є масово-паралельною, а об’єми оперативної пам’яті одного вузлаобмежуються кількома терабайтами.
Консалтингова компанія McKinsey, окрім технологій NoSQL, MapReduce, Hadoop, R, які розглядає більшість аналітиків, включає у контекст придатності для обробки великих даних також технології Business Intelligence і реляційні системи управління базами даних з підтримкою мови SQL.
Методи і техніка анализу великих даних
Міжнародна консалтингова компанія McKinsey, що спеціалізується на розв’язанні задач, пов’язаних зі стратегічним управлінням, виділяє 11 методів і технік аналізу, що застосовуються до великих даних.
- Методи классу Data Mining (видобуток даних, інтелектуальний аналіз даних, глибинний аналіз данних) — сукупність методів виявлення у даних раніше невідомих, нетривіальних, практично корисних знань, необхідних для прийняття рішень. До таких методів, зокрема, належать: навчання асоціативним правилам (association rule learning), класифікація (разгалуження на категорії), кластерний аналіз, регресійний аналіз, виявлення і аналіз відхилень тощо.
- Краудсорсинг — класифікація і збагачення даних силами широкого, неозначеного кола особистостей, що виконують цю роботу без вступу у трудові стосунки.
- Змішання та інтеграція даних (data fusion and integration) — набір технік, що дозволяють інтегрувати різнорідні дані з розмаїття джерел з метою проведення глибинного аналізу (наприклад, цифрова обробка сигналів, обробка природньої мови, включно з тональним аналізом).
- Машинне навчання, включаючи навчання з учителем і без учителя – використання моделей, побудованих на базі статистичного аналізучи машинного навчання для отримання комплексних прогнозів на основі базових моделей.
- Штучні нейронні мережі, мережевий аналіз, оптимізація, у тому числі генетичні алгоритми (genetic algorithm — евристичні алгоритми пошуку, що використовуються для розв’язання задач оптимізації і моделювання шляхом випадкового підбору, комбінування і варіації потрібних параметрів з використанням механізмів, аналогічних натуральному відбору у природі)
- Розпізнавання образів
- Прогнозна аналітика
- Імітаційне моделювання (simulation) — метод, що дозволяє будувати моделі, що описують процеси так, як вони би проходили у дійсності. Імітаційне моделювання модна розглядати як різновид експериментальних випробувань.
- Просторовий аналіз (spatial analysis) — клас методів, що використовують топологічну, геометричну і географічну інформацію, що вилучається із даних.
- Статистичний аналіз — аналіз часових рядів, A/B-тестування (A/B testing, split testing — метод маркетингового дослідження; при його використанні контрольна група елементів порівнюється із набором тестових груп, у яких один чи кілька показників були змінені, щоб з’ясувати, які зі змін покращують цільовий показник.
- Візуалізація аналітичних даних — подання інформації у вигляді малюнків, діаграм, з використанням інтерактивних можливостей і анімації, як для отримання результатів, так і для використання у якості вихідних даних для подальшого аналізу. Дуже важливий етап аналізу великих даних, що дозволяє показати найважливіші результати аналізу у найбільш зручному для сприйняття вигляді.
Великі дані у промисловості
Згідно звіту компанії McKinsey «Global Institute, Big data: The next frontier for innovation, competition, and productivity», дані стали таким само важливим фактором виробництва, як трудові ресурси чи виробничі активи. За рахунок використання великих даних, компанії можуть отримувати відчутні конкурентні переваги. Технології Big Data можуть бути корисними при вирішенні наступних задач:
- прогнозування ринкової ситуації;
- маркетинг і оптимізація продажів;
- вдосконалення продукції;
- ухвалення управлінських рішень;
- підвищення продуктивності праці;
- ефективна логістика;
- моніторинг стану основних фондів.
На виробничих підприємствах великі дані генеруються також внаслідок впровадження підприємства, великі дані генеруються також внаслідок впровадження технологій Промислового інтернету речей. У ході цього процесу основні вузли і деталі станків і машин оснащуються датчиками, виконавчими пристроями, контролерами та, іноді, недорогими процесорами, здатними виробляти граничні (туманні) обчислення. В процесі виробничого процесу здійснюється постійний збір даних і, можливо, їх попередня обробка (наприклад, фільтрація). Аналітичні платформи обробляють результати у найбільш зручному для сприйняття вигляді і зберігають для подальшого використання. На основі аналізу отриманих даних робляться висновки про стан обладнання, ефективність внесених змін у технологічні процеси.
Завдяки моніторингу інформації у режимі реального часу персонал підприємства має змогу:
- скорочувати кількість простоїв;
- підвищувати продуктивність обладнання;
- зменшувати витрати на експлуатацію обладнання;
- запобігати нещасним випадкам.
Останній пункт особливо важливий. Наприклад, оператори, що працюють на підприємствах нафтопереробної промисловості, отримують у середньому біля 1500 аварійних повідомлень на день, тобто більше одного повідомлення у хвилину. Це призводить до підвищеної втоми операторів, яким доводиться постійно приймати миттєві рішення про те, як реагує платформа на той чи інший сигнал. Але аналітична платформа може відфільтровувати другорядну інформацію, і тоді оператори отримують можливість зосередитись у першу чергу а критичних ситуаціях. Це дозволяє їм більш ефективно виявити чи попередити аварії і, можливо, нещасні випадки. В результаті підвищуються рівні надійності виробництва, промислової безпеки, готовності технологічного обладнання, відповідності нормативним вимогам.
Крім того, за результатами анализу великих даних можна розрахувати строки окупності обладнання, перспективи змін технологічних режимів, скорочення обслуговуючого персоналу – тобто приймати стратегічні рішеня стосовно подальшого розвитку підприємства.