PowerBI и собственная обработка JSON
PowerBI — одна из замечательных новых сред отчетности, которую вы можете использовать для визуализации данных. Одним из больших преимуществ PowerBI является его собственная поддержка JSON и встроенный программируемый механизм преобразования. Power-BI может просто напрямую общаться с Couchbase Server и сообщать о данных. Драйвер ODBC или JDBC не требуется!
Визуализация данных в Couchbase Server v4 за 4 шага
Давайте пройдемся по 3 шагам, чтобы визуализировать данные вашего сервера Couchbase в PowerBI:
# 1 Получить пример данных:
Я использую корзину примеров путешествий, которая поставляется с Couchbase Server 4. Установите этот набор данных с помощью вкладки «настройки» в консоли администратора или во время установки. Вы сможете следовать вместе с примерами.
# 2 Запрос через N1QL REST API:
Я буду использовать довольно простой запрос для примера: этот запрос возвращает полный список всех авиакомпаний с общим количеством рейсов в каждый аэропорт назначения.
SELECT a.name, r.destinationairport, count(a.name) as total_flights
FROM `travel-sample` r JOIN `travel-sample` a ON KEYS r.airlineid
WHERE r.type ="route" AND a.type="airline"
GROUP BY r.destinationairport, a.name
ORDER BY r.destinationairport
Связать PowerBI с N1QL. Мы будем использовать N1QL REST API для выполнения запроса. Некоторые могут этого не знать, но N1QL поставляется с REST API, который принимает специальную инструкцию. N1QL REST API документирован здесь , и вы можете использовать осведомленный инструмент JSON вашего выбора напрямую ударить этот API. Мой инструмент выбора — Почтальон (также доступен на Chrome MacketPlace). API REST N1QL в сочетании с почтальоном дает мне полное представление о том, что происходит по проводам
На следующем рисунке я подключаюсь к локальному узлу кластера на порту 8093 с помощью вышеуказанного запроса с почтальоном.
Мы передадим закодированный URL-адрес в Power BI, и он будет выглядеть следующим образом:
http://10.0.0.52:8093/query/service?statement=select%20a.name,r.destinationairport,%20count(a.name)%20total_flights%20from%20`travel-sample`%20r%20join%20`travel-sample`%20a%20on%20keys%20r.airlineid%20where%20r.type%20=%22route%22%20and%20a.type=%22airline%22%20group%20by%20r.destinationairport,%20a.name%20order%20by%20r.destinationairport
# 3 Отправка и преобразование данных в PowerBI:
Наконец, вам нужно запустить настольную версию Power BI, чтобы привести свою память в порядок. Настольная версия бесплатна и доступна здесь .
- Как только результаты передаются в Power BI, вы увидите атрибуты JSON, которые возвращаются из N1QL. Разверните «результаты», щелкнув ссылку «Список» на экране.
# 4 Визуализация данных в PowerBI:
Мне нравится использовать визуализацию TreeMap для отображения наиболее популярных направлений для каждой авиакомпании. Попасть туда,
- Перетащите «Column1.destinationairport» в группу
- Перетащите «Column1.total_flights» в значения.
- Перетащите «Column1.name» на « Фильтры уровня страницы» и разверните поле для фильтрации «Air Foyle».
Вы также измените тип данных для total_flights. Чтобы попасть туда, есть еще 2 клика. Следуйте Green Plus на рисунке ниже.
- Измените тип данных для столбца total_flights на «Весь номер».
- Измените Агрегацию на total_flights на «Сумма».
И все готово!
В предыдущие десятилетия реляционные данные с таблицами и столбцами были самой популярной формой. ODBC и JDBC обеспечили большую простоту подключения к этим данным. Couchbase Server также предоставляет эту возможность. Вот ссылка для загрузки бесплатных драйверов ODBC и JDBC для Couchbase Server. Однако … Что я вижу в современном мире, так это то, что большинство новых данных, которые генерируются и хранятся, находятся в формате JSON. Благодаря этим изменениям новые платформы визуализации данных добавляют мощную поддержку JSON. PowerBI проделал большую работу, чтобы упростить работу с данными на Couchbase Server без драйвера ODBC.