你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
AzureDLFileSystem 类
像访问文件系统一样访问 Azure DataLake 存储
- 继承
-
builtins.objectAzureDLFileSystem
构造函数
AzureDLFileSystem(token=None, per_call_timeout_seconds=60, **kwargs)
参数
名称 | 说明 |
---|---|
store_name
必需
|
str(<xref:
”” )
要连接到的存储名称。 |
token
|
<xref:<xref:azure.datalake.store.core.credentials object>>
设置新连接时,这包含授权凭据 (请参阅 lib.auth () ) 。 默认值: None
|
url_suffix
必需
|
要向其发送 REST 请求的域。 终结点 URL 是使用此和store_name构造的。 如果“无”,请使用默认值。 |
api_version
必需
|
str(<xref:2018-09-01>)
要以请求为目标的 API 版本。 更改此值将更改请求的行为,并可能导致意外行为或中断性变更。 应谨慎更改此值。 |
per_call_timeout_seconds
|
float(<xref:60>)
这是每个请求库调用的超时。 默认值: 60
|
kwargs
必需
|
<xref:<xref:azure.datalake.store.core.optional key/values>>
请参阅 |
方法
access |
是否存在此类文件/目录? |
cat |
返回文件的内容 |
chmod |
更改路径的访问模式 请注意,这不是递归的。 |
chown |
更改所有者和/或拥有组 请注意,这不是递归的。 |
concat |
将文件列表串联到一个新文件中 |
connect |
建立连接对象。 |
cp |
未实现。 在 ADL 上的位置之间复制文件 |
current |
返回最近创建的 AzureDLFileSystem |
df |
路径的资源摘要 |
du |
路径处密钥中的字节数 |
exists |
是否存在此类文件/目录? |
get |
将数据从路径中的文件流式传输到本地文件名 |
get_acl_status |
获取指定文件或目录) 项访问控制列表 (ACL。 |
glob |
查找 (不是通过 glob 匹配) 目录的文件。 |
head |
返回文件的第一个字节 |
info |
路径的文件信息 |
invalidate_cache |
从对象文件缓存中删除条目 |
listdir |
列出使用路径指定的目录下的所有元素 |
ls |
列出使用路径指定的目录下的所有元素 |
merge |
将文件列表串联到一个新文件中 |
mkdir |
创建新目录 |
modify_acl_entries |
修改现有访问控制列表 (ACL) 文件或文件夹上的条目。 如果该条目不存在,则会添加它,否则会根据传入的规范对其进行更新。 此过程不会删除任何条目, (与set_acl) 不同。 注意:默认情况下,这不是递归的,仅适用于指定的文件或文件夹。 |
mv |
在 ADL 上的位置之间移动文件 |
open |
打开文件进行读取或写入 |
put |
将数据从本地文件名流式传输到路径处的文件 |
read_block |
从 ADL 文件中读取字节块 从
如果 offset+length 超出 eof,则 读取到 eof。 |
remove |
删除文件或目录 |
remove_acl |
从文件或文件夹中删除整个非默认的 ACL,包括未命名的条目。 无法以这种方式删除默认条目,请使用remove_default_acl。 注意:这不是递归的,仅适用于指定的文件或文件夹。 |
remove_acl_entries |
删除文件或文件夹上的现有、命名访问控制列表 (ACL) 条目。 如果该条目尚不存在,则忽略它。 无法以这种方式删除默认条目,请使用remove_default_acl。 无法以这种方式删除未命名的条目,请使用remove_acl。 注意:默认情况下,这不是递归的,仅适用于指定的文件或文件夹。 |
remove_default_acl |
从文件夹中删除整个默认 ACL。 文件中不存在默认条目,如果指定了文件,此操作不执行任何操作。 注意:这不是递归的,仅适用于指定的文件夹。 |
rename |
在 ADL 上的位置之间移动文件 |
rm |
删除文件或目录 |
rmdir |
删除空目录 |
set_acl |
为文件或文件夹设置访问控制列表 (ACL) 。 注意:默认情况下,这不是递归的,仅适用于指定的文件或文件夹。 |
set_expiry |
设置或删除指定文件的过期时间。 此操作只能对文件执行。 注意:不支持文件夹。 |
stat |
路径的文件信息 |
tail |
返回文件的最后字节数 |
touch |
创建空文件 |
unlink |
删除文件或目录 |
walk |
获取给定路径下的所有文件 |
access
是否存在此类文件/目录?
access(path, invalidate_cache=True)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
invalidate_cache
|
是否使缓存失效 默认值: True
|
返回
类型 | 说明 |
---|---|
True,
<xref:false> <xref:depending> <xref:on> <xref:whether> <xref:the> <xref:path> <xref:exists.>
|
cat
返回文件的内容
cat(path)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
返回
类型 | 说明 |
---|---|
<xref:azure.datalake.store.core.Contents> <xref:of> <xref:azure.datalake.store.core.file>
|
chmod
更改路径的访问模式
请注意,这不是递归的。
chmod(path, mod)
参数
名称 | 说明 |
---|---|
path
必需
|
要更改的位置 |
mod
必需
|
访问的八进制表示形式,例如公共读/写的“0777”。 请参阅 文档 |
chown
更改所有者和/或拥有组
请注意,这不是递归的。
chown(path, owner=None, group=None)
参数
名称 | 说明 |
---|---|
path
必需
|
要更改的位置 |
owner
|
拥有实体的 UUID 默认值: None
|
group
|
组的 UUID 默认值: None
|
concat
将文件列表串联到一个新文件中
concat(outfile, filelist, delete_source=False)
参数
名称 | 说明 |
---|---|
outfile
必需
|
<xref:azure.datalake.store.core.path>
将连接到 的文件。 如果已存在,则会追加额外的部分。 |
filelist
必需
|
list of <xref:azure.datalake.store.core.paths>
要连接的现有 adl 文件(按顺序排列) |
delete_source
|
如果为 True,则假定要连接的路径单独存在于目录中,并在完成后删除整个目录。 默认值: False
|
返回
类型 | 说明 |
---|---|
connect
建立连接对象。
connect()
cp
未实现。 在 ADL 上的位置之间复制文件
cp(path1, path2)
参数
名称 | 说明 |
---|---|
path1
必需
|
|
path2
必需
|
|
current
返回最近创建的 AzureDLFileSystem
current()
df
du
路径处密钥中的字节数
du(path, total=False, deep=False, invalidate_cache=True)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
total
|
返回列表中的总和 默认值: False
|
deep
|
以递归方式枚举或仅使用当前目录下的文件 默认值: False
|
invalidate_cache
|
是否使缓存失效 默认值: True
|
返回
类型 | 说明 |
---|---|
<xref:size> <xref:pairs>,
<xref:total> <xref:size.>
|
名称的听写列表 |
exists
是否存在此类文件/目录?
exists(path, invalidate_cache=True)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
invalidate_cache
|
是否使缓存失效 默认值: True
|
返回
类型 | 说明 |
---|---|
True,
<xref:false> <xref:depending> <xref:on> <xref:whether> <xref:the> <xref:path> <xref:exists.>
|
get
将数据从路径中的文件流式传输到本地文件名
get(path, filename)
参数
名称 | 说明 |
---|---|
path
必需
|
要读取的 ADL 路径 |
filename
必需
|
str 或
<xref:azure.datalake.store.core.Path>
要写入的本地文件路径 |
返回
类型 | 说明 |
---|---|
get_acl_status
glob
查找 (不是通过 glob 匹配) 目录的文件。
glob(path, details=False, invalidate_cache=True)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
details
|
是否包括文件详细信息 默认值: False
|
invalidate_cache
|
是否使缓存失效 默认值: True
|
返回
类型 | 说明 |
---|---|
List <xref:of> <xref:azure.datalake.store.core.files>
|
head
返回文件的第一个字节
head(path, size=1024)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
size
|
要返回的字节数 默认值: 1024
|
返回
类型 | 说明 |
---|---|
<xref:First>(<xref:size>) bytes <xref:of> <xref:azure.datalake.store.core.file>
|
info
路径的文件信息
info(path, invalidate_cache=True, expected_error_code=None)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
invalidate_cache
|
是否使缓存失效 默认值: True
|
expected_error_code
|
(可选)指示特定的预期错误代码(如果有)。 默认值: None
|
返回
类型 | 说明 |
---|---|
File <xref:information>
|
invalidate_cache
从对象文件缓存中删除条目
invalidate_cache(path=None)
参数
名称 | 说明 |
---|---|
path
|
从对象文件缓存中删除路径 默认值: None
|
返回
类型 | 说明 |
---|---|
listdir
列出使用路径指定的目录下的所有元素
listdir(path='', detail=False, invalidate_cache=True)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
detail
|
详细信息与否。 默认值: False
|
invalidate_cache
|
是否使缓存失效 默认值: True
|
返回
类型 | 说明 |
---|---|
List <xref:of> <xref:elements> <xref:under> <xref:directory> <xref:specified> <xref:with> <xref:path>
|
ls
列出使用路径指定的目录下的所有元素
ls(path='', detail=False, invalidate_cache=True)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
detail
|
详细信息与否。 默认值: False
|
invalidate_cache
|
是否使缓存失效 默认值: True
|
返回
类型 | 说明 |
---|---|
List <xref:of> <xref:elements> <xref:under> <xref:directory> <xref:specified> <xref:with> <xref:path>
|
merge
将文件列表串联到一个新文件中
merge(outfile, filelist, delete_source=False)
参数
名称 | 说明 |
---|---|
outfile
必需
|
<xref:azure.datalake.store.core.path>
将连接到 的文件。 如果已存在,则会追加额外的部分。 |
filelist
必需
|
list of <xref:azure.datalake.store.core.paths>
要连接的现有 adl 文件(按顺序排列) |
delete_source
|
如果为 True,则假定要连接的路径单独存在于目录中,并在完成后删除整个目录。 默认值: False
|
返回
类型 | 说明 |
---|---|
mkdir
modify_acl_entries
修改现有访问控制列表 (ACL) 文件或文件夹上的条目。 如果该条目不存在,则会添加它,否则会根据传入的规范对其进行更新。 此过程不会删除任何条目, (与set_acl) 不同。
注意:默认情况下,这不是递归的,仅适用于指定的文件或文件夹。
modify_acl_entries(path, acl_spec, recursive=False, number_of_sub_process=None)
参数
名称 | 说明 |
---|---|
path
必需
|
要设置 ACL 条目的位置。 |
acl_spec
必需
|
修改路径中的 ACL 规范,格式为“[default:]user|group|other:[entity id or UPN]:r|-w|-x|-x|,[default:]user|group|other:[entity id or UPN]:r|-w|-x|-,...” |
recursive
|
指定是否以递归方式修改 ACL 默认值: False
|
number_of_sub_process
|
默认值: None
|
mv
open
打开文件进行读取或写入
open(path, mode='rb', blocksize=33554432, delimiter=None)
参数
名称 | 说明 |
---|---|
path
必需
|
<xref:azure.datalake.store.core.string>
ADL 上的文件路径 |
mode
|
<xref:azure.datalake.store.core.string>
“rb”、“ab”或“wb”之一 默认值: rb
|
blocksize
|
读取数据节点块的大小 默认值: 33554432
|
delimiter
|
<xref:byte>(<xref:s>) 或
None
用于编写以分隔符结尾的块 默认值: None
|
put
将数据从本地文件名流式传输到路径处的文件
put(filename, path, delimiter=None)
参数
名称 | 说明 |
---|---|
filename
必需
|
str 或
<xref:azure.datalake.store.core.Path>
要从中读取的本地文件路径 |
path
必需
|
要写入的 ADL 路径 |
delimiter
|
分隔符结束块的可选 delimeter 默认值: None
|
返回
类型 | 说明 |
---|---|
read_block
从 ADL 文件中读取字节块
从 offset
文件开始,读取 length
字节。 如果 delimiter
设置了 ,则确保读取在遵循位置和 offset
“offset”的分隔符边界处开始和停止
- length
. If
offset' 为零,然后我们从零开始。 返回的 bytestring 将包含结束分隔符字符串。
如果 offset+length 超出 eof,则 读取到 eof。
read_block(fn, offset, length, delimiter=None)
参数
名称 | 说明 |
---|---|
fn
必需
|
<xref:azure.datalake.store.core.string>
ADL 上的文件名路径 |
offset
必需
|
开始读取的字节偏移量 |
length
必需
|
要读取的字节数 |
delimiter
|
bytes(<xref:optional>)
确保读取在分隔符字节数处开始和停止 默认值: None
|
示例
>>> adl.read_block('data/file.csv', 0, 13)
b'Alice, 100\nBo'
>>> adl.read_block('data/file.csv', 0, 13, delimiter=b'\n')
b'Alice, 100\nBob, 200\n'
使用 length=None
读取到文件末尾。
adl.read_block ('data/file.csv', 0, None, delimiter=b'n') # doctest: +SKIP b'Alice, 100nBob, 200nCharlie, 300'
- 另请参阅
-
<xref:distributed.utils.read_block>
remove
删除文件或目录
remove(path, recursive=False)
参数
名称 | 说明 |
---|---|
path
必需
|
要删除的位置。 |
recursive
|
是否还要删除以下所有条目,即 由 walk () 返回的条目。 默认值: False
|
返回
类型 | 说明 |
---|---|
remove_acl
从文件或文件夹中删除整个非默认的 ACL,包括未命名的条目。 无法以这种方式删除默认条目,请使用remove_default_acl。
注意:这不是递归的,仅适用于指定的文件或文件夹。
remove_acl(path)
参数
名称 | 说明 |
---|---|
path
必需
|
要删除 ACL 的位置。 |
remove_acl_entries
删除文件或文件夹上的现有、命名访问控制列表 (ACL) 条目。 如果该条目尚不存在,则忽略它。 无法以这种方式删除默认条目,请使用remove_default_acl。 无法以这种方式删除未命名的条目,请使用remove_acl。
注意:默认情况下,这不是递归的,仅适用于指定的文件或文件夹。
remove_acl_entries(path, acl_spec, recursive=False, number_of_sub_process=None)
参数
名称 | 说明 |
---|---|
path
必需
|
删除 ACL 条目的位置。 |
acl_spec
必需
|
要从路径的 ACL 中删除的 ACL 规范 (请注意,权限部分缺少) “[default:]user|group|other:[entity id or UPN],[default:]user|group|other:[entity id or UPN],...” |
recursive
|
指定是否以递归方式删除 ACL 默认值: False
|
number_of_sub_process
|
默认值: None
|
remove_default_acl
从文件夹中删除整个默认 ACL。 文件中不存在默认条目,如果指定了文件,此操作不执行任何操作。
注意:这不是递归的,仅适用于指定的文件夹。
remove_default_acl(path)
参数
名称 | 说明 |
---|---|
path
必需
|
要设置 ACL 的位置。 |
rename
rm
删除文件或目录
rm(path, recursive=False)
参数
名称 | 说明 |
---|---|
path
必需
|
要删除的位置。 |
recursive
|
是否还要删除以下所有条目,即 由 walk () 返回的条目。 默认值: False
|
返回
类型 | 说明 |
---|---|
rmdir
set_acl
为文件或文件夹设置访问控制列表 (ACL) 。
注意:默认情况下,这不是递归的,仅适用于指定的文件或文件夹。
set_acl(path, acl_spec, recursive=False, number_of_sub_process=None)
参数
名称 | 说明 |
---|---|
path
必需
|
要设置 ACL 的位置。 |
acl_spec
必需
|
要在路径上设置的 ACL 规范,格式为“[default:]user|group|other:[entity id or UPN]:r|-w|-x|-,[default:]user|group|other:[entity id or UPN]:r|-w|-x|-,...” |
recursive
|
指定是否以递归方式设置 ACL 默认值: False
|
number_of_sub_process
|
默认值: None
|
set_expiry
设置或删除指定文件的过期时间。 此操作只能对文件执行。
注意:不支持文件夹。
set_expiry(path, expiry_option, expire_time=None)
参数
名称 | 说明 |
---|---|
path
必需
|
用于设置或删除过期时间的文件路径 |
expire_time
|
文件过期的时间,对应于设置的expiry_option 默认值: None
|
expiry_option
必需
|
指示要用于文件的过期类型:
|
stat
路径的文件信息
stat(path, invalidate_cache=True, expected_error_code=None)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
invalidate_cache
|
是否使缓存失效 默认值: True
|
expected_error_code
|
(可选)指示特定的预期错误代码(如果有)。 默认值: None
|
返回
类型 | 说明 |
---|---|
File <xref:information>
|
tail
返回文件的最后字节数
tail(path, size=1024)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
size
|
要返回的字节数 默认值: 1024
|
返回
类型 | 说明 |
---|---|
<xref:Last>(<xref:size>) bytes <xref:of> <xref:azure.datalake.store.core.file>
|
touch
unlink
删除文件或目录
unlink(path, recursive=False)
参数
名称 | 说明 |
---|---|
path
必需
|
要删除的位置。 |
recursive
|
是否还要删除以下所有条目,即 由 walk () 返回的条目。 默认值: False
|
返回
类型 | 说明 |
---|---|
walk
获取给定路径下的所有文件
walk(path='', details=False, invalidate_cache=True)
参数
名称 | 说明 |
---|---|
path
必需
|
查询路径 |
details
|
是否包括文件详细信息 默认值: False
|
invalidate_cache
|
是否使缓存失效 默认值: True
|
返回
类型 | 说明 |
---|---|
List <xref:of> <xref:azure.datalake.store.core.files>
|
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈