VertiPaq LuckyTemplates: как кодируются столбцы

В этом руководстве вы узнаете о методах кодирования столбцов с помощью VertiPaq в LuckyTemplates . Вы поймете, как работает каждый метод и как он влияет на производительность вашего DAX.

Каждый метод имеет свой собственный стиль сжатия данных, чтобы обеспечить более быстрые и плавные транзакции.

Оглавление

Кодирование значений с помощью VertiPaq в LuckyTemplates

Первый тип сжатия данных — Value Encoding . Это происходит в столбцах целочисленного типа.

Это пример столбца исходных затрат:

VertiPaq LuckyTemplates: как кодируются столбцы

Вы можете видеть, что внутри есть значения.

Теперь, если VertiPaq сохранит эти данные в столбце как есть, ему потребуется 12 бит памяти.

Однако VertiPaq  ищет способы минимизировать объем памяти, необходимый для хранения данных. Он найдет минимальное значение столбца, а затем закодирует этот столбец, вычитая 3004 из каждого значения. Таким образом, ему потребуется всего 9 бит памяти.

VertiPaq LuckyTemplates: как кодируются столбцы

VertiPaq уменьшил объем необходимой памяти, благодаря чему ваш код стал выполняться быстрее.

Кодировка словаря

Следующий метод сжатия данных — это кодирование по словарю или хэш- кодирование , которое применяется к столбцам с нецелыми или текстовыми значениями.

Это пример столбца с повторяющимися названиями продуктов:

VertiPaq LuckyTemplates: как кодируются столбцы

VertiPaq имеет функцию, которая помогает сжимать нецелочисленные столбцы. Он создает список различны�� значений в этом столбце, а затем присваивает им номер.

VertiPaq LuckyTemplates: как кодируются столбцы

Вы можете видеть, что он применяет номер, соответствующий названиям продуктов.

Затем он заменяет значения названий продуктов целыми значениями.

VertiPaq LuckyTemplates: как кодируются столбцы

Для хранения целочисленных значений требуется меньше битов, чем для хранения текстовых значений.

Это то, что делают DAX и Storage Engine при кодировании.

Кодирование длины цикла с помощью VertiPaq в LuckyTemplates

Последний тип кодирования называется Run Length Encoding . Он ищет повторяющиеся значения и сохраняет начало и конец.

Это пример таблицы с  идентификатором продавца и  строками :

VertiPaq LuckyTemplates: как кодируются столбцы

А это таблица, закодированная с использованием кодирования длин серий:

VertiPaq LuckyTemplates: как кодируются столбцы

Он знает, что продавец с идентификатором EMP1017 переходит из строки 1 в строку 363.

Вы увидите, что он имеет начало строки, конец строки, а также показывает, сколько повторяющихся значений находится между ними. Таким образом, нет необходимости хранить EMP1017 362 раза, потому что он знает, где он начинается и где заканчивается.

Кодирование длин серий с использованием закодированных столбцов

Еще одна замечательная особенность VertiPaq заключается в том, что он может запускать кодирование длины для столбцов, которые были закодированы с помощью кодирования значений или словаря.

Это таблица, закодированная с помощью Dictionary Encoding:

VertiPaq LuckyTemplates: как кодируются столбцы

Вы заметите, что столбец NameID повторяется. Это означает, что вы можете использовать кодирование длин серий со столбцом.

В этом случае VertiPaq будет искать только NameID, Row Start и Row End.

VertiPaq LuckyTemplates: как кодируются столбцы

Таким образом, вместо того, чтобы хранить целочисленные значения 3 раза, теперь он сохраняет их один раз.


Оптимизируйте функции DAX с помощью этого нового
показателя курса в LuckyTemplates: советы и методы оптимизации
Дополнительные советы по оптимизации таблицы LuckyTemplates

Заключение

Внутри VertiPaq Storage Engine есть 3 метода сжатия данных, которые отвечают за более плавную работу вашего кода DAX.

Как только вы поймете, как каждый метод работает в ваших вычислениях, вы сможете использовать и максимизировать любой из них, чтобы повысить производительность вашего кода и легко извлекать данные, которые вам нужны в ваших отчетах.

Leave a Comment

Расчет недельных продаж с помощью DAX в LuckyTemplates

Расчет недельных продаж с помощью DAX в LuckyTemplates

В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Как сохранить и загрузить файл RDS в R

Как сохранить и загрузить файл RDS в R

Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.

Введение в фильтрацию контекста в LuckyTemplates

Введение в фильтрацию контекста в LuckyTemplates

В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.

Идеи материализации кэшей данных в DAX Studio

Идеи материализации кэшей данных в DAX Studio

В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.

Бизнес-отчетность с использованием LuckyTemplates

Бизнес-отчетность с использованием LuckyTemplates

Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.