18 основних програм, про які повинен знати кожен фахівець з даних

Наука про дані для тих, хто любить розплутувати заплутані речі та відкривати приховані чудеса в очевидному безладі.

Це як шукати голки в стогах сіна; лише те, що науковцям даних зовсім не потрібно бруднити руки. Використовуючи привабливі інструменти з барвистими діаграмами та дивлячись на купи чисел, вони просто занурюються в копиці даних і знаходять цінні голки у вигляді ідей високої цінності для бізнесу.

Типовий науковець даних toolbox має включати принаймні один елемент кожної з цих категорій: реляційні бази даних, бази даних NoSQL, фреймворки великих даних, інструменти візуалізації, інструменти копіювання, мови програмування, IDE та інструменти глибокого навчання.

Реляційні бази даних

Реляційна база даних — це сукупність даних, структурованих у вигляді таблиць з атрибутами. Таблиці можна пов’язувати одна з одною, визначаючи зв’язки та обмеження та створюючи те, що називається моделлю даних. Для роботи з реляційними базами даних ви зазвичай використовуєте мову під назвою SQL (Structured Query Language).

Програми, які керують структурою та даними в реляційних базах даних, називаються RDBMS (системи управління реляційними базами даних). Таких додатків багато, і найбільш актуальні нещодавно почали зосереджуватися на галузі даних, додаючи функціональність для роботи зі сховищами великих даних і застосовуючи такі методи, як аналіз даних і машинне навчання.

SQL Server

РСУБД Microsoft, розвивається вже більше 20 років, постійно розширюючи свою корпоративну функціональність. Починаючи з версії 2016 року, SQL Server пропонує портфоліо послуг, які включають підтримку вбудованого коду R. SQL Server 2017 підвищує ставку, перейменувавши свої R-сервіси на Machine Language Services і додавши підтримку мови Python (докладніше про ці дві мови нижче).

Завдяки цим важливим доповненням SQL Server призначений для спеціалістів із обробки даних, які можуть не мати досвіду роботи з Transact SQL, рідною мовою запитів Microsoft SQL Server.

SQL Server далеко не безкоштовний продукт. Ви можете придбати ліцензії, щоб інсталювати його на Windows Server (ціна змінюватиметься залежно від кількості одночасних користувачів) або використовувати його як платну послугу через хмару Microsoft Azure. Вивчити Microsoft SQL Server легко.

MySQL

Щодо програмного забезпечення з відкритим кодом, MySQL має корону популярності RDBMS. Незважаючи на те, що Oracle наразі володіє нею, вона все ще безкоштовна та має відкритий вихідний код згідно з умовами GNU General Public License. Більшість веб-додатків використовують MySQL як базове сховище даних завдяки його відповідності стандарту SQL.

Його популярності також сприяють прості процедури встановлення, велика спільнота розробників, безліч вичерпної документації та інструменти сторонніх розробників, такі як phpMyAdmin, які спрощують повсякденне керування. Хоча MySQL не має власних функцій для аналізу даних, його відкритість дозволяє інтегрувати його майже з будь-яким інструментом візуалізації, звітності та бізнес-аналітики, який ви можете вибрати.

PostgreSQL

Ще один варіант RDBMS з відкритим кодом позtgreSQL. Хоча PostgreSQL не такий популярний, як MySQL, він виділяється своєю гнучкістю та розширюваністю, а також підтримкою складних запитів, які виходять за рамки базових операторів, таких як SELECT, WHERE та GROUP BY.

Завдяки цим функціям він стає популярним серед дослідників даних. Ще одна цікава особливість — підтримка кількох середовищ, що дозволяє використовувати його в хмарних і локальних середовищах або в поєднанні обох, широко відомих як гібридні хмарні середовища.

PostgreSQL здатний поєднувати онлайн-аналітичну обробку (OLAP) з онлайн-обробкою транзакцій (OLTP), працюючи в режимі, що називається гібридною транзакційно-аналітичною обробкою (HTAP). Він також добре підходить для роботи з великими даними завдяки додаванню PostGIS для географічних даних і JSON-B для документів. PostgreSQL також підтримує неструктуровані дані, що дозволяє їм бути в обох категоріях: бази даних SQL і NoSQL.

Бази даних NoSQL

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

Оскільки в сховищах даних NoSQL немає SQL, єдиним способом запиту до такої бази даних є використання мов низького рівня, і немає такої мови, яка була б так широко прийнята, як SQL. Крім того, немає стандартних специфікацій для NoSQL. Ось чому, за іронією долі, деякі бази даних NoSQL починають додавати підтримку сценаріїв SQL.

  Як змінити номер телефону на PS4

MongoDB

MongoDB це популярна система баз даних NoSQL, яка зберігає дані у формі документів JSON. Основна увага зосереджена на масштабованості та гнучкості зберігання даних у неструктурований спосіб. Це означає, що немає фіксованого списку полів, який повинен дотримуватися в усіх збережених елементах. Крім того, структура даних може змінюватися з часом, що в реляційній базі даних передбачає високий ризик впливу на запущені програми.

Технологія в MongoDB дозволяє індексувати, робити спеціальні запити та агрегувати дані, що забезпечує міцну основу для аналізу даних. Розподілений характер бази даних забезпечує високу доступність, масштабування та географічний розподіл без потреби у складних інструментах.

Redis

Це один є ще одним варіантом у відкритому коді NoSQL. По суті, це сховище структури даних, яке працює в пам’яті, і, окрім надання послуг бази даних, воно також працює як кеш-пам’ять і брокер повідомлень.

Він підтримує безліч нетрадиційних структур даних, включаючи хеші, геопросторові індекси, списки та відсортовані набори. Він добре підходить для обробки даних завдяки високій продуктивності в задачах, що містять інтенсивні дані, наприклад обчислення перетину набору, сортування довгих списків або створення складних рейтингів. Причиною видатної продуктивності Redis є його робота в пам’яті. Його можна налаштувати для вибіркового збереження даних.

Фреймворки великих даних

Припустимо, вам потрібно проаналізувати дані, які користувачі Facebook генерують протягом місяця. Ми говоримо про фото, відео, повідомлення, про все це. З огляду на те, що користувачі соціальної мережі щодня додають понад 500 терабайт даних, важко виміряти обсяг даних за цілий місяць.

Щоб ефективно маніпулювати цією величезною кількістю даних, вам потрібна відповідна структура, здатна обчислювати статистику на основі розподіленої архітектури. На ринку є два фреймворки: Hadoop і Spark.

Hadoop

Як структура великих даних, Hadoop має справу зі складнощами, пов’язаними з пошуком, обробкою та зберіганням величезних куп даних. Hadoop працює в розподіленому середовищі, що складається з комп’ютерних кластерів, які обробляють прості алгоритми. Існує алгоритм оркестровки під назвою MapReduce, який розділяє великі завдання на маленькі частини, а потім розподіляє ці маленькі завдання між доступними кластерами.

Hadoop рекомендовано для сховищ даних корпоративного класу, які потребують швидкого доступу та високої доступності, і все це в недорогій схемі. Але вам потрібен адміністратор Linux із глибиною Знання Hadoop підтримувати структуру в робочому стані.

Іскра

Hadoop — не єдиний фреймворк, доступний для маніпулювання великими даними. Ще одне гучне ім’я в цій області Іскра. Механізм Spark був розроблений, щоб перевершити Hadoop за швидкістю аналітики та простотою використання. Очевидно, він досяг цієї мети: деякі порівняння говорять, що Spark працює в 10 разів швидше, ніж Hadoop, коли працює на диску, і в 100 разів швидше, якщо працює в пам’яті. Крім того, для обробки того самого обсягу даних потрібна менша кількість машин.

Окрім швидкості, ще однією перевагою Spark є підтримка потокової обробки. Цей тип обробки даних, також званий обробкою в реальному часі, передбачає безперервне введення та виведення даних.

Інструменти візуалізації

Поширений жарт між науковцями даних говорить, що якщо ви мучите дані досить довго, вони зізнаються в тому, що вам потрібно знати. У цьому випадку «катування» означає маніпулювання даними шляхом їх перетворення та фільтрації, щоб краще їх візуалізувати. І тут на сцену виходять інструменти візуалізації даних. Ці інструменти беруть попередньо оброблені дані з багатьох джерел і показують їх виявлені істини в графічній, зрозумілій формі.

До цієї категорії відносяться сотні інструментів. Подобається вам це чи ні, але найбільш широко використовуваним є Microsoft Excel і його інструменти для створення діаграм. Діаграми Excel доступні кожному, хто використовує Excel, але вони мають обмежену функціональність. Те саме стосується інших програм для роботи з електронними таблицями, таких як Google Sheets і Libre Office. Але тут ми говоримо про більш конкретні інструменти, спеціально розроблені для бізнес-аналітики (BI) і аналізу даних.

Power BI

Не так давно Microsoft випустила свій Power BI додаток візуалізації. Він може брати дані з різних джерел, таких як текстові файли, бази даних, електронні таблиці та багато онлайнових служб даних, включаючи Facebook і Twitter, і використовувати їх для створення інформаційних панелей, наповнених діаграмами, таблицями, картами та багатьма іншими об’єктами візуалізації. Об’єкти інформаційної панелі є інтерактивними, тобто ви можете клацнути ряд даних на діаграмі, щоб вибрати його та використати як фільтр для інших об’єктів на дошці.

  Як вимкнути журнал і сповіщення про ризик зараження COVID-19 на iPhone

Power BI — це комбінація настільної програми Windows (частина пакету Office 365), веб-програми та онлайн-служби для публікації інформаційних панелей в Інтернеті та надання доступу до них користувачам. Сервіс дозволяє створювати та керувати дозволами для надання доступу до дощок лише певним людям.

Таблиця

Таблиця це ще один варіант створення інтерактивних інформаційних панелей із комбінації кількох джерел даних. Він також пропонує настільну версію, веб-версію та онлайн-сервіс для спільного використання створених вами інформаційних панелей. Він працює природно, «як ви думаєте» (як стверджується), і його легко використовувати для людей, які не мають технічних знань, що покращується завдяки численним посібникам і онлайн-відео.

Одними з найвидатніших особливостей Tableau є його необмежену кількість конекторів для передачі даних, живі дані та дані в пам’яті, а також дизайн, оптимізований для мобільних пристроїв.

QlikView

QlikView пропонує простий і зрозумілий інтерфейс користувача, який допомагає аналітикам відкривати нові ідеї на основі наявних даних за допомогою візуальних елементів, які легко зрозумілі кожному.

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

За допомогою QlikView ви можете співпрацювати з партнерами в режимі реального часу, проводячи порівняльний аналіз. Усі відповідні дані можна об’єднати в одну програму з функціями безпеки, які обмежують доступ до даних.

Скребкові інструменти

У часи, коли Інтернет тільки зароджувався, веб-сканери почали мандрувати разом із мережами, збираючи інформацію на своєму шляху. З розвитком технологій термін веб-сканування змінився на веб-скрапінг, але означає те саме: автоматичне вилучення інформації з веб-сайтів. Щоб зробити веб-скрапінг, ви використовуєте автоматизовані процеси або ботів, які переходять з однієї веб-сторінки на іншу, витягуючи з них дані та експортуючи їх у різні формати або вставляючи в бази даних для подальшого аналізу.

Нижче ми підсумовуємо характеристики трьох найпопулярніших веб-скребків, доступних сьогодні.

Октопарс

Октопарс веб-скребок пропонує деякі цікаві характеристики, включаючи вбудовані інструменти для отримання інформації з веб-сайтів, які не спрощують роботам-скребкам виконувати свою роботу. Це настільна програма, яка не вимагає кодування, зі зручним інтерфейсом користувача, який дозволяє візуалізувати процес вилучення за допомогою графічного дизайнера робочого процесу.

Разом із автономною програмою Octoparse пропонує хмарний сервіс для прискорення процесу вилучення даних. Користувачі можуть отримати приріст швидкості від 4 до 10 разів, використовуючи хмарний сервіс замість настільного додатка. Якщо ви дотримуєтесь настільної версії, ви можете використовувати Octoparse безкоштовно. Але якщо ви віддаєте перевагу користуватися хмарним сервісом, вам доведеться вибрати один із його платних планів.

Захоплювач вмісту

Якщо ви шукаєте багатофункціональний інструмент скребка, вам слід звернути увагу на нього Захоплювач вмісту. На відміну від Octoparse, щоб використовувати Content Grabber, необхідно мати розширені навички програмування. Натомість ви отримуєте редагування сценаріїв, інтерфейси налагодження та інші розширені функції. За допомогою Content Grabber ви можете використовувати мови .Net для написання регулярних виразів. Таким чином, вам не потрібно генерувати вирази за допомогою вбудованого інструменту.

Інструмент пропонує API (інтерфейс прикладного програмування), який можна використовувати для додавання можливостей копіювання до настільних і веб-додатків. Щоб використовувати цей API, розробникам потрібно отримати доступ до служби Windows Content Grabber.

ParseHub

Цей скребок може працювати з широким списком різних типів вмісту, включаючи форуми, вкладені коментарі, календарі та карти. Він також може працювати зі сторінками, які містять автентифікацію, Javascript, Ajax тощо. ParseHub можна використовувати як веб-програму або програму для робочого столу, яка може працювати в Windows, macOS X і Linux.

Як і Content Grabber, рекомендується мати певні знання програмування, щоб отримати максимальну віддачу від ParseHub. У нього є безкоштовна версія, обмежена 5 проектами та 200 сторінками за один запуск.

Мови програмування

Подібно до того, як згадана раніше мова SQL розроблена спеціально для роботи з реляційними базами даних, існують інші мови, створені з чітким фокусом на науці про дані. Ці мови дозволяють розробникам писати програми для аналізу масивних даних, таких як статистика та машинне навчання.

  Як довго MoneyGram зберігає гроші

SQL також вважається важливою навичкою, якою повинні володіти розробники для вивчення даних, але це тому, що більшість організацій все ще мають багато даних у реляційних базах даних. «Справжніми» мовами науки про дані є R і Python.

Python

Python це високорівнева інтерпретована мова програмування загального призначення, яка добре підходить для швидкої розробки програм. Він має простий і легкий для вивчення синтаксис, який дозволяє швидко навчатися та зменшити витрати на підтримку програми. Є багато причин, чому ця мова є кращою для науки про дані. Ось деякі з них: потенціал сценаріїв, багатослівність, портативність і продуктивність.

Ця мова є хорошою відправною точкою для дослідників даних, які планують багато експериментувати, перш ніж приступити до справжньої та складної обробки даних, і хто хоче розробляти повні програми.

Р

The мова R в основному використовується для статистичної обробки даних і побудови графіків. Незважаючи на те, що R не призначений для розробки повноцінних програм, як у випадку з Python, останніми роками R став дуже популярним завдяки своєму потенціалу для інтелектуального аналізу та аналізу даних.

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

Цю мову непросто вивчити, але як тільки ви ознайомитеся з її філософією, ви будете робити статистичні обчислення як професіонали.

IDE

Якщо ви серйозно плануєте присвятити себе науці про дані, вам потрібно буде ретельно вибрати інтегроване середовище розробки (IDE), яке відповідає вашим потребам, оскільки ви та ваша IDE витрачатимете багато часу, працюючи разом.

Ідеальна IDE повинна об’єднувати всі інструменти, необхідні для щоденної роботи кодера: текстовий редактор із підсвічуванням синтаксису та автозавершенням, потужний налагоджувач, браузер об’єктів і легкий доступ до зовнішніх інструментів. Крім того, вона має бути сумісною з мовою, яку ви вподобаєте, тому доцільно вибрати IDE після того, як ви дізнаєтеся, яку мову ви використовуватимете.

Спайдер

Це загальна IDE здебільшого призначена для науковців і аналітиків, яким також потрібно кодувати. Щоб зробити їх зручними, він не обмежується функціональністю IDE – він також надає інструменти для дослідження/візуалізації даних та інтерактивного виконання, як це можна знайти в науковому пакеті. Редактор у Spyder підтримує кілька мов і додає браузер класів, розділення вікон, перехід до визначення, автоматичне завершення коду та навіть інструмент аналізу коду.

Налагоджувач допомагає відстежувати кожен рядок коду в інтерактивному режимі, а профайлер допомагає знаходити та усувати неефективність.

PyCharm

Якщо ви програмуєте на Python, швидше за все, ви виберете IDE PyCharm. Він має інтелектуальний редактор коду з розумним пошуком, доповненням коду, виявленням і виправленням помилок. Лише одним клацанням миші ви можете перейти від редактора коду до будь-якого вікна, пов’язаного з контекстом, включаючи вікно тесту, суперметоду, реалізації, оголошення тощо. PyCharm підтримує Anaconda та багато наукових пакетів, таких як NumPy і Matplotlib, якщо назвати лише два з них.

Він пропонує інтеграцію з найважливішими системами контролю версій, а також із програмою виконання тестів, профайлером і налагоджувачем. Щоб завершити угоду, він також інтегрується з Docker і Vagrant, щоб забезпечити кросплатформну розробку та контейнеризацію.

RStudio

Для тих спеціалістів із обробки даних, які віддають перевагу команді R, слід обрати IDE RStudio, через його багато функцій. Ви можете встановити його на робочому столі з Windows, macOS або Linux або запустити його з веб-браузера, якщо ви не хочете інсталювати його локально. Обидві версії пропонують такі переваги, як підсвічування синтаксису, розумні відступи та доповнення коду. Існує інтегрований засіб перегляду даних, який стане в нагоді, коли вам потрібно переглянути табличні дані.

Режим налагодження дозволяє переглядати, як динамічно оновлюються дані під час виконання програми або сценарію крок за кроком. Для контролю версій RStudio інтегрує підтримку SVN і Git. Приємним плюсом є можливість створювати інтерактивну графіку з бібліотеками Shiny і дає.

Ваш персональний інструментарій

На цьому етапі ви повинні мати повне уявлення про інструменти, які вам потрібно знати, щоб досягти успіху в науці про дані. Крім того, ми сподіваємося, що ми надали вам достатньо інформації, щоб вирішити, який варіант є найзручнішим у кожній категорії інструментів. Тепер справа за вами. Наука про дані є процвітаючою сферою розвивати кар’єру. Але якщо ви хочете це зробити, ви повинні бути в курсі змін у трендах і технологіях, оскільки вони відбуваються майже щодня.