Лучшие практики использования SQL по версии Metabase.
Некоторые советы действительно ценные. Из того, что реально встречалось на практике особенно выделил бы один, так как в свое время удалось существенно оптимизировать время выполнения запроса:
Prefer EXISTS to IN
If you just need to verify the existence of a value in a table, prefer EXISTS to IN, as the EXISTS process exits as soon as it finds the search value, whereas IN will scan the entire table. IN should be used for finding values in lists.
Metabase довольно интересный инструмент, на одном из проектов используем его, надо бы записать видео в продолжение Гайда по BI.
Если у кого-то есть время и интерес поисследовать Metabase, а также записать видео, пишите мне в DM: @valiotti.
Некоторые советы действительно ценные. Из того, что реально встречалось на практике особенно выделил бы один, так как в свое время удалось существенно оптимизировать время выполнения запроса:
Prefer EXISTS to IN
If you just need to verify the existence of a value in a table, prefer EXISTS to IN, as the EXISTS process exits as soon as it finds the search value, whereas IN will scan the entire table. IN should be used for finding values in lists.
Metabase довольно интересный инструмент, на одном из проектов используем его, надо бы записать видео в продолжение Гайда по BI.
Если у кого-то есть время и интерес поисследовать Metabase, а также записать видео, пишите мне в DM: @valiotti.
Metabase | Business Intelligence, Dashboards, and Data Visualization
Best practices for writing SQL queries | Metabase Learn
SQL best practices: a brief guide to writing better SQL queries.
Для работы с SQL-кодом и подключением к разным базам данных я достаточно давно использую DBeaver, это довольно удобный инструмент для работы с большим количеством разнообразных БД, у которого есть Community версия (читай, бесплатная).
И вот наткнулся на CloudBeaver (от создателей, разумеется), который умеет все то же самое через браузер.
И вот наткнулся на CloudBeaver (от создателей, разумеется), который умеет все то же самое через браузер.
Fivetran прислали письмо, в котором рассказывают про свою конференцию Modern Data Stack на ЕMEA, которая состоится 25го мая.
Думал, как это увязать с аналитикой и понял, что, наверное, никак, но и не поделиться не могу 🙂 Если кто-то вдруг заскучал по старому плееру Winamp, поддержка которого прекращена, поностальгируйте и скрасьте свой день с веб-версией Winamp ⚡️⚡️⚡️
webamp.org
Webamp • Winamp in your browser
Winamp reimplemented in HTML5 and JavaScript
Forwarded from DataEng
Про Query Plan в PostgreSQL: https://arctype.com/blog/postgresql-query-plan-anatomy/
Продолжаем цикл материалов про работу с веб-фреймворком Dash. Ранее мы рассказывали про развертывание дашбордов на AWS Elastic Beanstalk. Если у вас уже есть виртуальная машина на Amazon EC2, то дашборд можно развернуть как веб-приложение на вашем инстансе. О том, как это сделать, читайте в новом материале на нашем сайте:
https://leftjoin.ru/all/deploy-dashboard-ec2/
https://leftjoin.ru/all/deploy-dashboard-ec2/
LEFT JOIN
Деплой дашборда на виртуальной машине Amazon EC2
Мы уже рассказывали о том, как развернуть дашборд с помощью сервиса Elastic Beanstalk от Amazon Web Services. В этом материале расскажем как развертывать дашборды на виртуальной машине Amazon EC2. Подготовка Начало работы с платформой AWS и создание сервера…
Любопытное аналитическое исследование о том, как поменялась предвзятость судей к гостевым командам в виду отсутствия зрителей на стадионе с момента начала COVID.
#link
#link
RunRepeat - Athletic shoe reviews
Referees’ Home-Bias in Football Disappears without Audience [Study]
We analyzed referees’ performances in 1283 games from the top four Eu
Анализа данных с помощью SQL
Достаточно прикольный и полезный гайд по использованию SQL для анализа данных вместо Pandas.
Автор делится рядом любоптных идей: train/test split, линейная регрессия (оказывается, есть по умолчанию в PostgreSQL) и много других полезностей, собранных в одном месте, рекомендую!
Кстати, Mode когда-то тоже предлагали несколько изощренный способ построения регрессии с помощью SQL.
#link
Достаточно прикольный и полезный гайд по использованию SQL для анализа данных вместо Pandas.
Автор делится рядом любоптных идей: train/test split, линейная регрессия (оказывается, есть по умолчанию в PostgreSQL) и много других полезностей, собранных в одном месте, рекомендую!
Кстати, Mode когда-то тоже предлагали несколько изощренный способ построения регрессии с помощью SQL.
#link
Hakibenita
Practical SQL for Data Analysis
What you can do without Pandas
И немножко околокликхаусных новостей:
▪ Altinity рассказывает об использовании Superset на Clickhouse (погдлядел в @superset_ru). Материал в нескольких частях.
▪ Создан профайл для работы с Clickhouse через dbt, ссылка на github (сам нашел).
Еще не тестировали, но очень интересно.
▪ Altinity рассказывает об использовании Superset на Clickhouse (погдлядел в @superset_ru). Материал в нескольких частях.
▪ Создан профайл для работы с Clickhouse через dbt, ссылка на github (сам нашел).
Еще не тестировали, но очень интересно.
Altinity | Run open source ClickHouse® better
Visualizing ClickHouse® Data with Apache Superset, Part 1: Installation
Superset offers creative displays for ClickHouse data. Learn how to install Superset and connect to ClickHouse servers.
А вот Дмитрий в комментариях пишет о результатах тестирования профайла dbt для Clickhouse.
Forwarded from Дмитрий Володин
Тестировали профайл клика для dbt. Сырой, особенно тяжко, если клик on cluster, потому что этот функционал не реализован. Но если клик на одной ноде - всё ок.
Также есть проблемы с тем, что настройки подключения не передать в профайле. Лечится созданием специальной роли по dbt скрипты, чтобы использовались подходящие настройки.
Ну и хочется материализации специфичные для кликхауса. Типа матпредставлений и, может быть, движков таблиц кафка и прочих подобных. Думаем допиливать под себя.
В движках, кстати, есть проблема. В конфиге модели указывается просто *MergeTree, без скобок, соответственно без параметров. Мне бывает нужно в ReplacingMergeTree указать таймстемп, особенно если оставить надо не последнюю пришедшую запись.
Резюме краткое: многое лечится кастомными макросами, благо dbt использует те, что в проекте, если находит несколько с одинаковым именем. Но хочется, чтобы адаптер не заглох. Будем контрибьютить, если
Также есть проблемы с тем, что настройки подключения не передать в профайле. Лечится созданием специальной роли по dbt скрипты, чтобы использовались подходящие настройки.
Ну и хочется материализации специфичные для кликхауса. Типа матпредставлений и, может быть, движков таблиц кафка и прочих подобных. Думаем допиливать под себя.
В движках, кстати, есть проблема. В конфиге модели указывается просто *MergeTree, без скобок, соответственно без параметров. Мне бывает нужно в ReplacingMergeTree указать таймстемп, особенно если оставить надо не последнюю пришедшую запись.
Резюме краткое: многое лечится кастомными макросами, благо dbt использует те, что в проекте, если находит несколько с одинаковым именем. Но хочется, чтобы адаптер не заглох. Будем контрибьютить, если
Timescale DB подняли инвестиции в размере 40 млн долларов. В статье о том, что Timescale DB — это Postgres для Time Series data, что вообще такое Time series data и как появилась Timescale DB.
Timescale Blog
$40 million to help developers measure everything that matters
We just raised a $40M Series B to bring our relational database for time-series to developers everywhere. Learn how we got started and what’s still yet to come 🚀.
Pattern matching в Python
Это весной вышла альфа-версия Python 3.10, в которой, помимо прочего, реализовано структурное сопоставление шаблонов (structural pattern matching).
Раньше как таковой конструкции типа switch/case в Python не существовало. Насущные проблемы решались с помощью конструкции if/elif/else или поиском по словарю. Такие конструкции объемны и затрудняют читабельность кода.
Pattern matching в новой версии Python реализован через конструкцию match/case. Станет ли это панацеей для разработчиков, судить рано. Но как применяется match/case на практике уже можно посмотреть в нашем переводе статьи от InfoWorld.
https://leftjoin.ru/all/pattern-matching-v-python/
Это весной вышла альфа-версия Python 3.10, в которой, помимо прочего, реализовано структурное сопоставление шаблонов (structural pattern matching).
Раньше как таковой конструкции типа switch/case в Python не существовало. Насущные проблемы решались с помощью конструкции if/elif/else или поиском по словарю. Такие конструкции объемны и затрудняют читабельность кода.
Pattern matching в новой версии Python реализован через конструкцию match/case. Станет ли это панацеей для разработчиков, судить рано. Но как применяется match/case на практике уже можно посмотреть в нашем переводе статьи от InfoWorld.
https://leftjoin.ru/all/pattern-matching-v-python/
LEFT JOIN
В Python 3.10 появился pattern matching
Этот материал — перевод статьи «How to use structural pattern matching in Python» В новом релизе Python 3.10 появились операторы case/match, которые отвечают за реализацию в языке синтаксиса pattern-matching. Python, несмотря на его простоту и популярность…
Библиотека Clustergram для Python
Интересный пост про библиотеку Clustergram для Python. При построении кластеризации методом K-Means число кластеров заранее неизвестно и традиционный подход предполагает построение так называемого Elbow-chart (да, локоть), который показывает общую внутригрупповую сумму квадратов для разного числа кластеров. Этот график не очень информативен для принятия однозначного решения по поводу числа кластеров.
Предлагаемая библиотека усовершенствует подход к обнаружению числа кластеров: позволяет визуализировать разбиение на кластеры и толщиной линии отображает дополнительную информацию, получаемую от этого разбиения.
Интересный пост про библиотеку Clustergram для Python. При построении кластеризации методом K-Means число кластеров заранее неизвестно и традиционный подход предполагает построение так называемого Elbow-chart (да, локоть), который показывает общую внутригрупповую сумму квадратов для разного числа кластеров. Этот график не очень информативен для принятия однозначного решения по поводу числа кластеров.
Предлагаемая библиотека усовершенствует подход к обнаружению числа кластеров: позволяет визуализировать разбиение на кластеры и толщиной линии отображает дополнительную информацию, получаемую от этого разбиения.
Статья про то, как AirBnb добились констистентности метрик. Внутри про используемые решения и про их архитектуру данных.
#link
#link
Medium
How Airbnb Achieved Metric Consistency at Scale
Part-I: Introducing Minerva — Airbnb’s Metric Platform
Рекомендации по использованию PostgreSQL в качестве хранилища данных. Внутри статьи любопытная ссылка на предостережение по использованию CTE в PostgreSQL (все от того же автора, на которого недавно ссылался по SQL для анализа данных)
Narrator Data Blog | Narrator.ai
Using PostgreSQL as a Data Warehouse
With some tweaking Postgres can be a great data warehouse. Here's how to configure it.
Часто для ML-моделей нужно подготовить датасет: масштабировать или нормализовать признаки, чтобы получить корректные результаты работы алгоритма. Такого рода подготовку можно провести прямо в процессе выгрузки данных из БД.
В новом материале мы собрали несколько методов для нормализации атрибутов средствами SQL сразу двумя способами: через подзапрос и с помощью оконной функции.
https://leftjoin.ru/all/data-scaling-with-sql/
В новом материале мы собрали несколько методов для нормализации атрибутов средствами SQL сразу двумя способами: через подзапрос и с помощью оконной функции.
https://leftjoin.ru/all/data-scaling-with-sql/
leftjoin.ru
Нормализация данных через запрос в SQL
Georgia Institute of Technology. Online Master of Science in Analytics.
В 2020 году я загорелся желанием освежить свое фундаментальное образование. На рынке сейчас представлено очень много разных курсов, но мне было интересно посмотреть как выглядит изнутри система образования в США. В последние годы, и особенно после начала пандемии COVID-19, онлайн-образование набрало невероятную популярность. Теперь даже топовые американские ВУЗы предлагают получить магистерскую степень онлайн. И я решил пройти этот путь 😎
Несмотря на то, что у меня уже есть наша PhD, я подал заявку на программу OMSA (Online Masters of Science in Analytics) в Georgia Institute of Technology. Ранее я уже приводил ряд ссылок на курсы этого ВУЗа (доступные бесплатно), но сам решил поступать на полноценную магистерскую программу. Меня привлекло то, что Georgia Tech занимает высокие позиции в рейтингах по Computer Science среди американских ВУЗов.
Надо сказать, что процесс поступления занял больше полугода. Нужно было предоставить сертификат TOEFL с высоким баллом (не менее 100 из 120), три рекомендательных письма из своей alma mater, сопроводительное письмо, CV и всю информацию о предыдущем образовании. И в ноябре 2020-го я получил долгожданное письмо о том, что меня приняли (приложил его)! Теперь я принадлежу к коммьюнити с маскотом пчелы 🐝 (Buzz).
Само образование построено в темпе “self-paced”, то есть в семестр можно набрать столько курсов, сколько сможешь унести (но, кажется, не более трех или четырех). На старте с учетом своего графика я взял только один курс — ISYE6501 (Intro Analytics Modeling), который является одним из обязательных и фундаментальных в программе. И вот позавчера получил свою первую оценку B за его прохождение. 🍾
В связи с этим ниже опрос — рассказать ли об этом опыте подробнее? Насколько вам интересен контент об американском образовании? Могу поделиться впечатлениями об этом курсе и о следующих: рассказать насколько учеба интенсивна, а содержание полезно.
В 2020 году я загорелся желанием освежить свое фундаментальное образование. На рынке сейчас представлено очень много разных курсов, но мне было интересно посмотреть как выглядит изнутри система образования в США. В последние годы, и особенно после начала пандемии COVID-19, онлайн-образование набрало невероятную популярность. Теперь даже топовые американские ВУЗы предлагают получить магистерскую степень онлайн. И я решил пройти этот путь 😎
Несмотря на то, что у меня уже есть наша PhD, я подал заявку на программу OMSA (Online Masters of Science in Analytics) в Georgia Institute of Technology. Ранее я уже приводил ряд ссылок на курсы этого ВУЗа (доступные бесплатно), но сам решил поступать на полноценную магистерскую программу. Меня привлекло то, что Georgia Tech занимает высокие позиции в рейтингах по Computer Science среди американских ВУЗов.
Надо сказать, что процесс поступления занял больше полугода. Нужно было предоставить сертификат TOEFL с высоким баллом (не менее 100 из 120), три рекомендательных письма из своей alma mater, сопроводительное письмо, CV и всю информацию о предыдущем образовании. И в ноябре 2020-го я получил долгожданное письмо о том, что меня приняли (приложил его)! Теперь я принадлежу к коммьюнити с маскотом пчелы 🐝 (Buzz).
Само образование построено в темпе “self-paced”, то есть в семестр можно набрать столько курсов, сколько сможешь унести (но, кажется, не более трех или четырех). На старте с учетом своего графика я взял только один курс — ISYE6501 (Intro Analytics Modeling), который является одним из обязательных и фундаментальных в программе. И вот позавчера получил свою первую оценку B за его прохождение. 🍾
В связи с этим ниже опрос — рассказать ли об этом опыте подробнее? Насколько вам интересен контент об американском образовании? Могу поделиться впечатлениями об этом курсе и о следующих: рассказать насколько учеба интенсивна, а содержание полезно.
Georgia Tech Professional Education
Online Master of Science in Analytics
Georgia Tech’s Online Master of Science in Analytics (OMS Analytics) is a top-5 nationally ranked data science and analytics program. As an interdisciplinary data science and analytics degree program, OMS Analytics leverages three of Georgia Tech’s top-ranked…
Интересно ли почитать об американском образовании (в частности, Georgia Tech)
Anonymous Poll
83%
Да, весьма
17%
Нет, не очень