You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Snowflake中获取汇率(历史及每日更新)?Snowflake Marketplace有无免费日更提供商?

在Snowflake中获取汇率数据(历史+每日更新)及免费选项指南

一、获取汇率数据的常见方法

1. 直接通过Snowflake Marketplace集成第三方数据源

这是最省心的方式,Marketplace上的数据源大多已经预配置好历史数据和每日更新机制,订阅后就能直接查询使用,不用自己搭建数据管道。

2. 自建数据管道拉取公开汇率API

如果想自定义数据逻辑,可以自己写脚本拉取公开的免费汇率API(比如欧洲央行ECB、IMF的公开数据),再同步到Snowflake。

举个Python脚本示例,拉取ECB历史汇率并写入Snowflake:

import requests
import pandas as pd
from snowflake.connector import connect

# 拉取ECB的历史汇率XML数据
response = requests.get('https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.xml')
df = pd.read_xml(response.content)

# 连接Snowflake并追加数据到表中
conn = connect(
    user='你的用户名',
    password='你的密码',
    account='你的账号标识',
    warehouse='你的仓库',
    database='目标数据库',
    schema='目标 schema'
)
df.to_sql('EXCHANGE_RATES_HIST', conn, if_exists='append', index=False)
conn.close()

之后可以通过Snowflake的Task功能设置每日自动执行这个脚本,实现每日更新。

3. 创建外部表直接访问公开存储的汇率数据

部分公开数据源会把数据托管在S3、GCS等公开存储桶中,比如ECB的汇率CSV文件就放在公开S3桶里。你可以创建Snowflake外部表直接查询这些数据,无需加载到内部表:

CREATE OR REPLACE EXTERNAL TABLE ECB_EXCHANGE_RATES_EXT
WITH LOCATION = 's3://ecb-eurofxref/eurofxref-hist/'
FILE_FORMAT = (TYPE = CSV FIELD_OPTIONALLY_ENCLOSED_BY '"' SKIP_HEADER = 1)
AUTO_REFRESH = TRUE; -- 开启自动刷新,自动获取每日更新的数据

二、Snowflake Marketplace中的免费每日更新汇率选项

目前Marketplace上有几个免费的汇率数据源,支持每日更新和历史数据查询:

  • Free Foreign Exchange Rates (ECB):基于欧洲央行官方数据,覆盖1999年至今的历史数据,每日自动同步,支持绝大多数主流货币对,完全免费,订阅后直接可用。
  • Open Exchange Rates Free Tier:提供基础每日汇率数据,历史数据覆盖最近数年,免费版有一定的访问限制,但中小规模使用足够,每日更新。
  • CurrencyLayer Free:免费版支持168种货币的每日汇率,历史数据可回溯至2000年,自动每日同步,适合非商业场景使用。

注意:免费版通常有数据范围或使用限制(比如仅支持主要货币对、历史数据时长有限),订阅前建议仔细查看服务商的具体条款。

内容的提问来源于stack exchange,提问作者Felipe Hoffa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 22:18:10