Несоответствие точности временной метки при чтении таблицы Delta от ADLS Gen2 с Python (Pandas/Polars)Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Несоответствие точности временной метки при чтении таблицы Delta от ADLS Gen2 с Python (Pandas/Polars)

Сообщение Anonymous »

Описание проблемы < /h2>
Я испытываю проблемы с точностью метки времени при чтении таблиц Delta, созданных с помощью операций CDC Factory Azure. Трубопровод извлекает данные из базы данных Azure SQL в Azure Data Lake Gen2 в качестве формата Delta, но чтение таблицы Delta с библиотеками Python не выполняется из -за несоответствий точностью timestamp. < /P>
. Извлечение)
[*] назначение : data Data Lake Gen2 (формат таблицы дельта)
[*] etl tool : фабрика данных Azure
[*] libraries : python с pandas/polars + deltak /> < /ul>
код и ошибки < /h2>
подход Pandas < /h3>

Код: Выделить всё

from deltalake import DeltaTable

delta_table_uri = f"abfss://{container}@{account_name}.dfs.core.windows.net/{table_path}"
dt = DeltaTable(delta_table_uri)
df = dt.to_pandas()
ошибка:

Код: Выделить всё

ArrowInvalid: Casting from timestamp[ns] to timestamp[us, tz=UTC] would lose data: 4379020357742690304
< /code>
 подход Polars < /h3>
import polars as pl

df = pl.read_delta(delta_table_uri, storage_options=storage_options)
ошибка:

Код: Выделить всё

SchemaError: data type mismatch for column DeliveryDate: expected: datetime[μs, UTC], found: datetime[ns]
< /code>
 анализ < /h2>
[list]
 Столбцы базы данных DateTime2 Azure SQL устанавливаются в Precision 3 (Millisecond Precision) < /li>
 Схема таблицы Delta показывает точность Microsecond (точноdatetime[μs, UTC]
)
[*] Однако фактические данные, по -видимому, хранятся как наносекундная точность (

Код: Выделить всё

timestamp[ns]
)
[*]This suggests Azure Data Factory/Spark may be writing timestamps using int96 format, causing precision escalation
[/list]
What I've Tried

[*]Verified that the source SQL Server timestamps are millisecond precision (DateTime2 (3)) < /li>
Подтвердила схема Delta Table сообщает о микросекундной точке < /li>
Исследованная формата хранения Timestamp Spark int96 < /li>
< /ul>
Вопросы < /h2>

< /h2. несоответствие между схемой Delta Table (микросекунд) и фактической точностью данных (наносекунд)?

фабрика данных Azure : lit at adf для контроля временной метки при написании на формат дельтат? /> обходной путь Python < /strong>: как я могу прочитать эту таблицу дельты в Python при обработке несоответствия точности? Существуют ли конкретные параметры для Deltalake или Polars, чтобы справиться с этим? />
Таблица Delta была создана с помощью встроенной поддержки Delta Format Format Azure Data Pactory < /li>
Эта проблема возникает конкретно с столбцами DateTime из таблицы CDC < /li>
. Выпуск был бы очень признательен!

Подробнее здесь: https://stackoverflow.com/questions/796 ... ith-python
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Производительность чтения таблицы Delta при использовании API Python delta-rs?
    Anonymous » » в форуме Python
    0 Ответы
    36 Просмотры
    Последнее сообщение Anonymous
  • Подключение и аутентификация к Delta Lake в Azure Data Lake Storage Gen 2 с использованием API Python delta-rs
    Anonymous » » в форуме Python
    0 Ответы
    36 Просмотры
    Последнее сообщение Anonymous
  • Участник группы Delta Delta Expand
    Anonymous » » в форуме C#
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Участник группы Delta Delta Expand
    Anonymous » » в форуме C#
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Используя специальную грамматику MariaDb для точности временной метки Carbon с Laravel, приложение аварийно завершает ра
    Anonymous » » в форуме Php
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»