我每天都有预定的Marklogic任务,我访问S3存储桶,处理目录中的文件(test.xml),然后将标志文件(test.done)添加到同一目录以通知文件已处理。我需要根据flag文件的可用性定期删除文件(test.xml和test.done)。亚马逊有没有选择创建一个定期删除这些文件的工作?
是否有使用xdmp的选项:http-delete()?如果是这样,有人可以与标题共享一个样本请求吗?
答案 0 :(得分:2)
在MarkLogic中,没有支持的方法来删除文件或目录。但是,您可以通过向其中写入空文本节点来清除其内容。
我说没有'支持'的方式。但是,MarkLogic中存在两个功能:xdmp:filesystem-directory-delete和xdmp:filesystem-file-delete。它们是无证的,这也表明它们不受支持,可以改变或删除,我相信。所以我要提醒使用这些产品。
要通过HTTP删除文件,请查看通过AWS删除的API:http://docs.aws.amazon.com/AmazonS3/latest/dev/DeletingObjects.html
另一个选择是将S3安装到运行MarkLogic的计算机的本地文件系统,并使用系统删除这些文件。在这种情况下,您还可以让MarkLogic以队列的形式将test.done标志写入本地文件系统上的目录,并从操作系统处理它们。