当前,我有使用Java中的文件输入流和输出流从本地文件系统存储和检索数据的代码。我已经在属性文件中配置了路径。现在,我想使用azure文件系统实现相同的目的。我该如何实现?我看到了一些使用Azure SDK的方法,但是我想知道有什么替代方法可以将内容存储到Azure文件系统中的文件中,而无需更改我现有的代码,这意味着仅更改属性文件。
答案 0 :(得分:0)
根据我的理解,我认为您想像使用本地文件系统一样使用Azure存储,而不使用Azure Storage SDK和更改代码,而仅使用Java中的POSIX文件系统API。
根据我的经验,有两种方法可以满足您的需求。
blobfuse
关于
blobfuse是一个开源项目,旨在提供由Azure Blob存储支持的虚拟文件系统。它使用libfuse开源库与Linux FUSE内核模块进行通信,并使用Azure Storage Blob REST API实施文件系统操作。
Blobfuse是稳定的,并且受Azure存储支持,因为它在此处记录的限制范围内使用。对于任何问题/要求/问题,请在此处提交问题。
功能
- 在Linux上安装Blob存储容器
- 基本文件系统操作,例如mkdir,opendir,readdir,rmdir,打开,读取,创建,写入,关闭,取消链接,截断,统计,重命名
- 本地缓存以缩短后续访问时间
- 并行下载和上传功能可快速访问大块
- 允许多个节点在只读情况下安装相同的容器。
以上两种方法将在本地文件系统中创建安装点,以执行基本文件操作,例如在本地目录中。