我在C#中编写了一个Azure finction,它递归遍历数据湖并生成一个文件,其中包含datalake中所有文件和文件夹的元数据(文件名,路径,大小等)。
这需要很长时间,因为我们有很多文件和foders。所以我只是想知道是否有一个元数据存储我们可以直接从中提取这些数据?我在考虑像SQL Server中的sys表这样的东西。
提前致谢!
答案 0 :(得分:3)
文件信息中有一些功能很快就会发布,它们会为您提供一些文件系统元数据属性。但是您仍然需要自己枚举文件夹层次结构。
例如:
@data =
EXTRACT
vehicle_id int
, entry_id long
, event_date DateTime
, latitude float
, longitude float
, speed int
, direction string
, trip_id int?
, uri = FILE.URI()
, modified_date = FILE.MODIFIED()
, created_date = FILE.CREATED()
, file_sz = FILE.LENGTH()
FROM "/Samples/Data/AmbulanceData/vehicle{*}"
USING Extractors.Csv();
OUTPUT @data
TO "/output/releasenotes/winter2018/fileprops.csv"
USING Outputters.Csv(outputHeader : true);
我建议您在http://aka.ms/adlfeedback处提交文件系统元数据目录视图(例如usql.files
和usql.filesystem
)的请求,以扩充我们的元数据目录视图。