#powerbi #dax #powerquery #powerpivot
#powerbi #dax #powerquery #powerpivot
Вопрос:
В моей модели данных есть несколько таблиц фактов с миллионами строк. Каждая таблица имеет свой собственный цикл обновления. Теперь я добавил системную дату в каждую таблицу в Power Query в качестве нового столбца, чтобы показать последнее обновление. Я использую эту функцию:
DateTime.LocalNow() as datetime
Поскольку таблицы содержат миллионы строк, я спрашиваю, какой тип данных здесь лучший?
Я мог бы преобразовать дату-время в десятичное число, а затем изменить ФОРМАТ в Power BI и при необходимости измерить десятичное число обратно в DateTime.
Как бы вы это сделали?
Дата запуска модели как десятичное число или как дата-время?
Есть ли какая-либо разница с точки зрения памяти?
Комментарии:
1. Разные типы данных могут иметь разное сжатие в памяти. Вы можете проверить, в каком столбце вашей модели требуется максимум места. Кроме того, o вам действительно нужно добавить этот столбец в основной набор данных? Возможно, вы можете создать новую таблицу, содержащую только 1 строку с информацией. sqlbi.com/tv /…
2. @msta42a: Большое спасибо за вашу поддержку! Как бы вы создали новую таблицу, содержащую для каждой таблицы информацию о времени последнего обновления? Время обновления отличается для каждой таблицы.
3. Я не тестировал его для вашего сценария, но вы можете ссылаться на один «запрос» / «Таблицу» в другом в качестве источника. пример. У меня есть имя набора данных «Зарплата» и некоторая дата столбца, расходы, имя. Я могу создать новый пустой запрос, в котором в расширенном редакторе я могу указать: let Source = Зарплата [Дата] #»Удаленные дубликаты» = List.Distinct(Источник) в #»Удаленные дубликаты», который дает мне список уникальных дат из моей таблицы зарплат. На следующем шаге вы можете добавить столбец с именем исходной таблицы. Повторите для всей таблицы, затем добавьте запросы
4. @msta42a: Потрясающе! Спасибо за это. И как я могу добавить данные запуска модели для каждой таблицы в эту новую таблицу? Я имею в виду, мне все еще нужна эта информация в исходной таблице, верно? Новая таблица — это просто выдержка с датами запуска модели. Как поможет эта новая таблица?
Ответ №1:
В Power BI используется сжатие по столбцам, так что объем памяти столбца в основном зависит от количества различных значений в этом столбце. Из-за этого любой столбец, содержащий только одно значение, будет незначительным с точки зрения объема памяти, а тип данных не будет иметь никакого существенного значения.