我们可以在 S3 存储桶上配置 Marklogic 数据库备份吗

问题描述

我需要在 S3 存储桶中配置 Marklogic 完整/增量备份,可以吗?任何人都可以分享配置文件/步骤吗?

谢谢!

解决方法

是的,您可以备份到 S3。

您需要配置 S3 凭据,以便 MarkLogic 能够使用 S3 并将对象读/写到您的 S3 存储桶。

MarkLogic 不能将 S3 用于日志存档路径,因为 S3 不支持文件追加操作。因此,如果您想启用日志存档,则需要在创建备份时为其指定自定义路径。

Backing Up a Database

您指定的目录可以是操作系统挂载的目录路径,可以是 HDFS 路径,也可以是 S3 路径。有关在 MarkLogic 中使用 HDFS 和 S3 存储的详细信息,请参阅 Disk Storage Considerations 中的 Query Performance and Tuning Guide

S3 Storage

S3 需要使用以下 S3 凭据进行身份验证:

  • AWS 访问密钥
  • AWS 密钥

MarkLogic 集群的 S3 凭据存储在集群的安全数据库中。每个集群只能有一组 S3 凭证。您可以在 S3 中设置安全访问,您可以访问这些凭据允许访问的任何路径。由于在 S3 中设置访问方式的灵活性,您可以设置任何 S3 帐户以允许访问任何其他帐户,因此如果您希望允许您在 MarkLogic 中设置的凭据访问其他人拥有的 S3 路径S3 用户,这些用户需要授予对 MarkLogic 集群中设置的 AWS 访问密钥的路径的访问权限。

要为集群设置 AW 凭据,请在管理界面中的安全 > 凭据下输入密钥。您还可以使用以下安全 API 函数以编程方式设置密钥:

  • sec:credentials-get-aws
  • sec:credentials-set-aws

凭据存储在安全数据库中。因此,您不能将 S3 用作安全数据库的林存储。

如果您想启用日记功能,您需要将它们写入不同的位置。 S3 不支持日志归档。

日志的默认位置在备份中,但是当 creating programmatically 时,您可以指定不同的 $journal-archive-path

S3 and MarkLogic

S3 上的存储具有“最终一致性”属性,这意味着写入操作可能无法立即用于读取,但它们将在某个时候可用。因此,MarkLogic 中的 S3 数据目录有一个限制,即 MarkLogic 不能在 S3 上创建日志。因此,MarkLogic 建议您仅将 S3 用于备份和只读林,否则您可能会面临数据丢失的风险。如果您的森林是只读的,那么就没有必要拥有期刊。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...