static - 如何更新本地存储的 GTFS 静态数据
问题描述
代理机构通过其文本文件提供的 GTFS 静态数据的定期更新应如何处理?
是否应该从数据存储中删除所有这些静态数据,然后从机构的新 GTFS 文本文件中完全重新加载?
如果可以在更新之间重新分配 Route_id、Trip_id 或 stop_id 的标识符,则将使用此方法。
例如,新的 GTFS 数据文件显示分配给行程“Y”的 Stop_id“x”现在分配给行程“Z”。
如果这些实体标识符从未重新分配,则需要将新的 GTFS 文件与本地数据进行比较并基于结果;记录需要被删除、更新或添加到每个表中。
埃里克。
解决方案
唯一安全的方法是完全加载新提要,然后在成功完成后切换到它。虽然 GTFS 最佳实践在
https://gtfs.org/best-practices/#dataset-publishing--general-practices
建议提供者在可能的情况下维护 stop_id、route_id 和 Agency_id 的持久标识符,这不是规范的要求,实际上他们经常(特别是 stop_id)在提要中进行更改。
推荐阅读
- python - 在熊猫数据框中将数据从列堆叠到行
- airflow - 具有不同调度程序间隔的 Airflow ExternalTaskSensor
- opencv - 清理扫描不良的乐谱的工作流程
- python - 你能在一个类中创建一个 *not* 的抽象数据类型吗?
- ionic-framework - Ionic 5 Image Picker 在 iOS 模拟器中崩溃
- google-cloud-platform - grant_type=refresh_token 的 Google 操作请求不会使用新的访问令牌更新对话对象
- next.js - Next.js:无法部署生产构建;在开发中工作;我是否正确使用了异步功能?
- python - 使用 Python 和 Selenium 从动态网站抓取网页
- p5.js - 当我在 p5.js 中将歌曲音量设置为 0 时使用 fft 分析歌曲文件
- c++ - 为什么 C++ 标准允许声明指向不存在类型的类成员的指针?