【问题标题】:Blobfuse with Azure on Linux - how to create tmp-path on Azure在 Linux 上使用 Azure 的 Blobfuse - 如何在 Azure 上创建 tmp-path
【发布时间】:2019-03-19 16:06:58
【问题描述】:

我们使用以下命令将 Azure Blob 挂载为 CentOS Linux 机器中的文件夹

    sudo blobfuse /mnt/azureblob/ --tmp-path=/mnt/resource/blobfusetmp  
    --config-file=/home/mladmin/fuse_connection.cfg 
    -o attr_timeout=240 -o entry_timeout=240 -o nonempty #
    -o negative_timeout=120 -o allow_other

配置文件(fuse_connection.cfg)如下

accountName xxx
accountKey key
containerName container

在 MLCP 过程中,我们遇到以下错误 XDMP-MERGESPACE:由于磁盘空间限制,未合并,需要=4740MB,拥有=2739MB

所以当我们查看它时,我们发现问题在于临时文件夹磁盘大小。

我们已迁移到 Azure,以确保我们不必担心磁盘大小。 现在 -tmp-path 是强制性的,所以问题是我们如何将 -tmp-path 设置为 Azure blob?

【问题讨论】:

    标签: linux centos azure-blob-storage marklogic mlcp


    【解决方案1】:

    对于您的问题,您需要了解 tmp 路径是什么意思,这意味着当您打开安装在 VM 上的 blob 中的文件时,所有打开的文件都将存储在 tmp 路径中。所以 tmp 路径应该足够存储打开的文件。

    Blobfuse 将所有打开的文件内容存储在临时路径中。制作 确保有足够的空间容纳所有打开的文件。

    所以根据我的建议,如果您不知道要存储多少空间来存储打开的文件,您可以确保 tmp 路径与您的 blob 一样大。比如blob是5gb,那么tmp路径也应该有5gb。

    【讨论】:

    • 感谢查尔斯的回复。是的,这意味着通过 Blobfuse 作为驱动器安装在这里不会提供太多帮助,因为在同步或重新平衡过程中,MarkLogic 可以使用相同大小的数据,例如(>200 GB) 在临时文件夹中的处理过程中。所以最终我们在这种情况下并没有得到太多好处。顺便说一句,我明白你的意思。
    • 感谢 Charles 的快速回复。好的,这很有帮助,我会接受。只是最后一个问题 :),你的意思是如果我使用文件共享而不是 Azure Blob 就不会出现同样的问题?
    • @ManishJoisar 是的,文件共享不需要 tmp 路径,只需作为远程文件系统即可挂载。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-03
    • 2018-05-21
    • 1970-01-01
    • 2019-12-08
    • 2021-11-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多