迁移

从 Open-Elevation 迁移

Open-Elevation 是一个围绕简单想法构建的开源项目:发送一组经纬度坐标,返回一组以米为单位的海拔值。它通常是自托管的:轻度使用时对接项目的公共演示实例,更正式的用途则部署在加载了所选海拔数据集的私有基础设施上。请求格式的这种简洁确实是它的优势之一,任何值得做的迁移都应当保留它。

自托管带来的实际维护成本在一开始很容易被低估:海拔数据集占用可观的磁盘空间,服务器需要保持运行,底层数据的更新是一项手动工程,而不是自动发生的。在项目早期就搭建了这套系统的团队,有时会在一两年后发现,维护负担已经超过了当初选择自托管的理由。

My Geocode 的海拔查询是一个完全可用的端点,而不是只有响应结构的兼容层,因为这是可以直接展示真实结果的查询之一。对一对坐标发出请求,会返回该点以米为单位的地面海拔,数据来自我们自己的海拔数据,无需您自行获取、加载和维护数据集。详情见 /docs/elevation-lookup/

对于专门从 Open-Elevation 基于数组的请求和响应方式迁移过来的团队,实际区别如下:

  • 身份验证:Open-Elevation 的公共实例通常不需要身份验证,而 My Geocode 使用密钥,可通过 X-API-Key 请求头、Authorization: Bearer、HTTP Basic 认证或查询参数发送(每天 2,500 次请求完全不需要密钥)
  • 无需运行服务器,无需下载或更新数据集,也无需准备磁盘空间
  • 可预期的每日配额和超出后的清晰价格,而不是自行管理基础设施带来的可用性风险

除了不用密钥每天免费 2,500 次请求,以及每个密钥每天另有 2,500 次免费请求(按网络计算)之外,海拔查询与其他所有端点价格相同:按每次请求 €0.0001 使用预付额度,或使用每月 €50 的 Unlimited 密钥。

对于把海拔作为更大工作流程中一环来调用的应用,例如徒步或骑行路线剖面、无人机飞行规划或土地测量工具,请求格式与 Open-Elevation 原本的预期足够接近,因此这通常是一项小而独立的工作:替换端点和身份验证,其余保持不变。

如果当初选择自托管是为了完全避免持续费用,而不是为了掌控数据,那么在做决定之前,值得用您的实际调用量对照免费配额和每次请求的费率算一算,因为实际上很多海拔查询都完全在免费档所覆盖的范围之内。