- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个几千兆字节的 CSV 文件驻留在 Azure Data Lake 中。使用 Dask,我可以在一分钟内读取这个文件,如下所示:
>>> import dask.dataframe as dd
>>> adl_path = 'adl://...'
>>> df = dd.read_csv(adl_path, storage_options={...})
>>> len(df.compute())
但是,我不想将其读入 Dask 或 Pandas DataFrame——我想直接访问底层文件。 (目前它是 CSV,但我也希望能够处理 Parquet 文件。)所以我也在尝试使用 adlfs 0.2.0 :
>>> import fsspec
>>> adl = fsspec.filesystem('adl', store_name='...', tenant_id=...)
>>> lines = 0
>>> with adl.open(adl_path) as fh:
>>> for line in fh:
>>> lines += 1
在与 Dask 进程相同的时间内,此方法仅读取了 0.1% 的输入。
我试过使用fsspec
的缓存,认为这会在the initial caching完成后加速访问:
>>> fs = fsspec.filesystem("filecache", target_protocol='adl', target_options={...}, cache_storage='/tmp/files/')
>>> fs.exists(adl_path) # False
>>> fs.size(adl_path) # FileNotFoundError
>>> # Using a relative path instead of fully-qualified (FQ) path:
>>> abs_adl_path = 'absolute/path/to/my/file.csv'
>>> fs.exists(abs_adl_path) # True
>>> fs.size(abs_adl_path) # 1234567890 -- correct size in bytes
>>> fs.get(abs_adl_path, local_path) # FileNotFoundError
>>> handle = fs.open(abs_adl_path) # FileNotFoundError
有没有一种高效的方法可以将 CSV(以及 Parquet)作为普通的 Python 文件句柄远程读取,而无需首先将其作为 Dask DataFrame 加载?
最佳答案
我不知道为什么 fs.get
不起作用,但请在最后一行试试这个:
handle = fs.open(adl_path)
即,您打开原始路径,但您在“/tmp/files/”某处获得本地文件的文件句柄(一旦复制完成)。
关于python - 如何加快从 adl ://with fsspec+adlfs? 读取 CSV/Parquet 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60646151/
我正在尝试使用 Pandas read_csv方法。一切正常。我保存了所有内容并在第二天开始处理它,但随后我不断收到此错误: ImportError: Pandas requires version
如何从 FSSpec 获取 NSString(Unix 样式路径) 问候,达纳。 最佳答案 为 FSSpec 创建 FSRef。 Create a CFURL for the FSRef . 使用 t
从 django REST API View 中,我尝试访问存储在 azure 存储 blob 中的文件。我想打开它而不将其下载到文件中,如图here 。读取权限就足够了。 为此,我这样勾勒出我的观点
从 django REST API View 中,我尝试访问存储在 azure 存储 blob 中的文件。我想打开它而不将其下载到文件中,如图here 。读取权限就足够了。 为此,我这样勾勒出我的观点
我有一个几千兆字节的 CSV 文件驻留在 Azure Data Lake 中。使用 Dask,我可以在一分钟内读取这个文件,如下所示: >>> import dask.dataframe as dd
我已经注册了一个 ADLS 数据存储。 datastore = mlclient.datastores.get(ds_name) from azureml.fsspec import AzureMac
我使用 Python 3.7.13 版并为 MLOps 项目创建虚拟环境 (venv)。 这个venv中安装了兼容Python== 3.7.13的dvc包(=2.10.2)。 (venv) (base
我已经注册了一个 ADLS 数据存储。 datastore = mlclient.datastores.get(ds_name) from azureml.fsspec import AzureMac
我使用 Python 3.7.13 版并为 MLOps 项目创建虚拟环境 (venv)。 这个venv中安装了兼容Python== 3.7.13的dvc包(=2.10.2)。 (venv) (base
我正在将公司的一款应用程序迁移到 64 位环境,因此无法再访问 FSSpec 函数。 我们的文件格式中有一些数据结构,它们将旧 FSSpec 格式中的 vRefNum 和 dirID 保存到文件中..
我是一名优秀的程序员,十分优秀!