如何解决如何从我的电脑中的自定义 Python 中提取 Palantir-Foundry 数据
我们正在尝试读取大文件。但是我们无法从 tableau live connection 或 power BI 中提取巨大的 palantir-foundry 文件数据。所以我们试图从python连接到Palantir。任何人都可以提出任何其他方法来从 palantir 中提取大文件。或者如何从我本地系统的自定义 python 连接到 palantir。
我试图在互联网上找到一些参考资料,但我总是以 pyspark 风格的 palantir 编码结束。我在下面找到了用于提取 palantir 数据帧的 python 代码。但为此我也面临一些问题,比如错误代码 400。然后“最大重试次数超过 url:/foundry-data”。我们的 palantir 基本网址就像 https://XXXX.palantirfoundry.com/。当我提供我们公司的这个基本网址时,我收到了 405 错误。有人可以帮忙吗。
import requests
import pandas as pd
def query_foundry_sql(query,token,branch='master',base_url='https://foundry-instance.com') -> (list,list):
"""
Queries the dataproxy query API with spark sql.
Example: query_foundry_sql("SELECT * FROM `/path/to/dataset` Limit 5000","ey...")
Args:
query: the sql query
branch: the branch of the dataset / query
Returns: (columns,data) tuple. data contains the data matrix,columns the list of columns
Can be converted to a pandas Dataframe:
pd.DataFrame(data,columns)
"""
response = requests.post(f"{base_url}/foundry-data-proxy/api/dataproxy/queryWithFallbacks",headers={'Authorization': f'Bearer {token}'},params={'fallbackBranchIds': [branch]},json={'query': query})
response.raise_for_status()
json = response.json()
columns = [e['name'] for e in json['foundrySchema']['fieldSchemaList']]
return columns,json['rows']
columns,data = query_foundry_sql("SELECT * FROM `/Global/Foundry
Operations/Foundry Support/iris` Limit 5000","ey...",base_url="https://foundry-instance.com")
df = pd.DataFrame(data=data,columns=columns)
df.head(5)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。