Знайомтесь, Power BI. А, можливо, ви уже знайомі, — в будь-якому випадку сьогодні буде цікаво, обіцяємо. Power BI — модний сервіс для аналізу даних та їх візуалізації у вигляді інтерактивних звітів. Нещодавно ми робили огляд .NET core і ASP.NET core 1.0, а тепер обрали Power BI наступним новим та цікавим інструментом, про який хотіли би вам розповісти.
Найкращі поради щодо Power BI з інтерв’ю з Чарльзом Стерлінгом
“Я вважаю, що Power BI — один з найбільш недооцінених інструментів, які взагалі є в нашому арсеналі. Ця річ просто неймовірно крута! Ми неодноразово використовували її для створення звітів, а сьогодні ви нам покажете декілька ще крутіших речей. Ми розглянемо Power BI з тієї точки зору, як розробник використовує його у своїх додатках для звітів”.
Такими словами Роберт Грін, ведучий “Visual Studio Toolbox”, розпочав розмову з Чарльзом Стерлінгом з Microsoft. Чарльз прийшов, щоб показати всім, як використовувати Power BI в роботі розробника. Зокрема, як викликати REST APIs без написання жодного рядка коду, а також як створювати інтерактивні звіти, вбудовуючи візуалізації Power BI у веб-додатки. Ми висвітлимо декілька важливих моментів з цього інтерв’ю для вас.
Чудові новини: свобода від написання коду
Роберт: “Ви нам покажете речі, які робить Power BI і для яких в іншому випадку довелось би писати код?”
Чарлі: “Саме так. Останній раз я писав чотириста рядків коду, щоб викликати один REST endpoint!”.
Коли Чарлі відкрив для себе, що можна “викликати REST endpoint’и, парсити JSON і робити це доступним для веб-додатків” без написання коду, він дуже захотів поділитися цією корисною інформацією. Чарлі жартує, що на його клавіатурі навіть зникла крапка з комою, настільки в нього вже немає потреби писати код.
Отже, Чарлі починає свою розповідь з азів і показує глядачам на своєму комп’ютері Power BI Desktop.
Power BI desktop призначений для форматування даних, пояснює Чарлі. А якщо ви хочете ними поділитися, то тут до ваших послуг Power BI Service.
Отримання даних з інтернету
Один із напрямків роботи, який зараз покаже Чарлі, стосується того, як діставати дані з інтернету. Фактично ви можете “вихопити” будь-яку цікаву таблицю і принести її в Power BI. Це можна зробити з будь-якою таблицею майже на будь-якому сайті.
Отже, у нас тут URL із Вікіпедії.
Wikipedia правильно робить, що дає елементам своїх таблиць власні назви, пояснює Чарлі. В багатьох випадках це має сенс. Адже на більшості сайтів ми бачимо щось таке:
Для Power BI Service і Desktop виходять оновлення щомісяця. І нещодавно був доданий такий функціонал, як веб-вигляд:
Тож давайте розглянемо приклад. Чарлі певною мірою цікавиться президентськими виборами. Він може завантажити статистику або без змін, або обрати режим редагування і внести певні зміни до даних.
Експериментуємо з додаванням знаку відсотка та прибиранням його, а також з представленням результатів у вигляді цілих чисел.
Всі ваші дії зберігаються у списку справа, щоб можна було переглянути.
Потім можна повернутися “Home” у лівому верхньому кутку, обрати Close та Apply.
Тоді можна взяти щось на кшталт “Most recent polling” (“Останні результати опитувань”), відкрити це, обрати, наприклад, “State nationwide” (“Статистика по штату”) і просто перетягнути.
Керування мітапами
Оскільки Чарьлз останнім часом займався функціоналом щодо груп користувачів, йому цікаве питання керування мітапами. Отже, знову ідемо до “Get data”. І, що більшості людей невідомо, можна надати endpoint мітапу за допомогою свого ключа.
Дуже легко і абсолютно безкоштовно людина може сказати “дайте мені ключ” і приєднатися до міпапу девелоперів. Це RESTful API.
Тут воно ніби запитує у вас “Агов, у нас тут є JSON, що з ним робитимемо?”. А ви можете сказати “Хочу зробити з цього таблицю”, пояснює Чарлі.
Давайте зазирнемо в JSon, це дуже круто.
Ви бачите, що елементи батьківської ноди розширились. Якщо проскролити далі, ви побачите, що це деякі з них — просто колонки всередині батьківського JSON. Це дочірні елементи. І знову воно питає: хочете їх розширити?
Скролимо далі, ідемо до “Groups” і робимо в точності те саме.
А потім знову повторюємо операцію зі збереження змін.
Все!
Тепер давайте зробимо щось із цими даними. Для зручності відкриваємо нову сторінку.
Назвемо це “Meetup”, щоб пізніше не плутатися, а також розширимо його. Можна взяти ту карту, з якою ми працювали раніше.
Збільшимо її і подивимось, де проходять мітапи. Візьмемо “venue.lon” і “venue.lat”.
Клікнемо на “venue.name” і подивимось, як часто відбуваються мітапи. Розмістимо таблицю внизу.
“Вихопимо” декілька з них на кшталт “group.name” і тому подібних. Так Чарлі демонструє мітапи, які відвідує на постійній основі. Щоб отримати більше деталей, перетягнемо “link”.
Це не гіперпосилання, але ми можемо його відредагувати і зробити таким: Modelling — Data category — Change URL.
Одна з улюблених візуалізацій Чарльза — Attribute Slicer. Здається, її зараз тут немає, тож можна дістати її, натиснувши “Import a custom visual”:
Перетягнемо “Group.name” і “Venue.city”. І подивимось, наскільки активні певні міста з мітапами. Клікаємо на назву міста і бачимо інформацію по ньому. Або можна звузити пошук до слова або частини слова за допомогою пошукового поля. Обираємо “Save as” у лівому верхньому кутку, щоб зберегти результати. Чарлі зберігає це як “toolbox.pbix”. А потім вертаємось у браузер: ось онлайн-представлення Power BI.
Публікація в інтернет
Взагалі BI Desktop безкоштовний. Але є певний функціонал, який потребує оплати. Наприклад, “Publish to web”, який розглядаємо наступним. Для нього потрібна ліцензія, ціна — 9 доларів на місяць, хоча в клієнтів E5 це і так є в “Office 365”.
Клікнемо “Get data” і візьмемо файл, над яким щойно працювали — “Toolbox.pbix”.
Відволічемося на питання безпеки. За замовчуванням, дані закриті всередині Power BI. Ніхто не має до них доступу, окрім людини, яка залогінена (у цьому випадку, Чарлі). Ви можете поділитися даними, але користувачі повинні бути членами певних організацій і мати встановлений Power BI. Коли ви натискаєте “share”, вводите електронну адресу, а вони отримують електронний лист і натискають “Yes, I accept”. Звісно, цей спосіб не дуже підходить для передачі даних по всьому світу.
Отже, ми бачимо наш звіт і переходимо до File — Publish to web.
Клікаємо “create an embed code”, і цей URL працюватиме для всіх на планеті.
Можна скопіювати його в адресний рядок, але є альтернатива. Беремо embed-код, ідем у Wordpress, вставляємо його і натискаємо “Update”. Тепер ми бачимо звіт як частину блогу.
Це може бути доступним для будь-якого веб-додатку. Для тих, хто не будує веб-додатків, а, наприклад, мобільні додатки, є мобільний клієнт. Його можна просто зараз завантажити з магазину. Команда також працює над UWP-клієнтом.
В плані безпеки функція Publish to web дозволяє зробити певні налаштування.
Ідемо у Power BI settings, Admin Portal.
І найперше Tenant setting містить “Allow sharing content to external users” і “Publish to web”, що можна вмикати і вимикати.
Ось найкращі поради від Чарлі Стерлінга. Зацікавились? Як сказав Роберт Грін наприкінці розмови, Power BI дійсно дозволяє “створювати чудові звіти і вбудовувати їх у веб-додатки”. Сподіваємось, ви уже не можете дочекатися робити це, тож бажаємо великих успіхів у цьому!