Я создал UDF и могу получить данные ответа из API я попытался сохранить эти данные с помощью session.write_pandas, но получаю сообщение об ошибке pyarrow.lib.ArrowInvalid: («невозможно смешивать список и значения, не входящие в список, ненулевые значения», «Ошибка преобразования для столбца fimFranchisee с типом объекта')
Вот мой пример кода:
Код: Выделить всё
CREATE OR REPLACE PROCEDURE fetch_api_data()
RETURNS STRING
LANGUAGE PYTHON
RUNTIME_VERSION = 3.8
PACKAGES = ('requests', 'pandas', 'snowflake-snowpark-python')
HANDLER = 'getData'
EXTERNAL_ACCESS_INTEGRATIONS = (access_integration)
SECRETS = ('api_key' = api_key)
AS
$$
import requests as rq
import pandas as pd
import snowflake.snowpark as snowpark
def getData (session: snowpark.Session):
apiurl = 'https://exmaple.com'
header = {
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': 'Bearer bearer_token'
}
response = rq.post(apiurl, headers = header)
data = response.json()
df = pd.DataFrame(data)
session.write_pandas(df, table_name= 'RAW_SEGMENT', database='DEV_1_RAW', schema='SCHEMA!', auto_create_table=True, overwrite=True)
return data
$$;
CALL fetch_api_data();
Есть ли способ сохранить эти неструктурированные данные в таблице? Для меня достаточно, если все данные будут сохранены как тип данных объекта.
Подробнее здесь: https://stackoverflow.com/questions/793 ... nowflake-u
Мобильная версия