python - 从谷歌云存储桶直接读取netCDF文件到python
问题描述
我在谷歌云上有一个包含多个 netcdf 文件的存储桶。通常,当文件存储在本地时,我会执行:
import netCDF4
nc = netCDF4.Dataset('path/to/netcdf.nc')
是否可以直接从谷歌云在 python 中执行此操作,而无需先从存储桶中下载文件?
解决方案
我不确定如何使用 Google 对象存储,但您可以通过以下方法从包含文件中所有字节的内存缓冲区中打开 netCDF 文件:
from netCDF4 import Dataset
fobj = open('path/to/netcdf.nc', 'rb')
data = fobj.read()
nc = Dataset('memory', memory=data)
所以前进的道路是从对象存储中读取所有数据,然后使用该命令来读取它。这对于大型 netcdf 文件会有一些缺点,因为您将所有这些字节都放在系统内存中。
推荐阅读
- ubuntu - Proxmox | /etc/default/pveproxy
- css - 让多列布局中的内容使用所有列
- neo4j - 使用 Cypher 在具有集合属性的所有节点之间创建关系
- python - Keras:使用 model.fit() 洗牌数据不会做出改变,但 sklearn.train_test_split() 会
- javascript - 仅在单击按钮时可视化传单地图
- python - 如何对包含列表的列进行分组
- python-3.x - 转换卷曲请求
- javascript - 在 HTML 中的函数名之后定义索引时,设置 timeout() 方法不起作用?
- python - 使用 Django 在 PostgreSQL 中查询 jsonb 字段:IN vs. CONTAINS
- c++ - 如何结合使用thrust和valgrind来检测内存泄漏?