元数据存储
NoSQL MongoDB
登录后可跨设备保存划线和私人笔记登录
NoSQL MongoDB
📝 注意
MongoDB 后端目前处于 beta 阶段。
此实现使用 MongoDB 作为持久化后端,并借助 Quarkus MongoDB 扩展进行连接管理。配置可以在启动时通过环境变量或 JVM 的 -D 参数完成。
基本配置
使用环境变量:
POLARIS_PERSISTENCE_TYPE=nosql
POLARIS_PERSISTENCE_NOSQL_BACKEND=MongoDb
QUARKUS_MONGODB_DATABASE=polaris
QUARKUS_MONGODB_CONNECTION_STRING=mongodb://<username>:<password>@<host>:<port>使用属性文件:
polaris.persistence.type=nosql
polaris.persistence.nosql.backend=MongoDb
quarkus.mongodb.database=polaris
quarkus.mongodb.connection-string=mongodb://<username>:<password>@<host>:<port>MongoDB Atlas 配置
对于 MongoDB Atlas 部署,请使用 mongodb+srv:// 格式的连接字符串:
polaris.persistence.type=nosql
polaris.persistence.nosql.backend=MongoDb
quarkus.mongodb.database=polaris
quarkus.mongodb.connection-string=mongodb+srv://<username>:<password>@<cluster>.mongodb.net/?retryWrites=true&w=majorityMongoDB 副本集配置
对于副本集部署:
polaris.persistence.type=nosql
polaris.persistence.nosql.backend=MongoDb
quarkus.mongodb.database=polaris
quarkus.mongodb.connection-string=mongodb://<username>:<password>@<host1>:<port1>,<host2>:<port2>,<host3>:<port3>/?replicaSet=<rs-name>&authSource=admin高级 MongoDB 配置
可以通过 Quarkus 的 MongoDB 配置属性来设置其他 MongoDB 选项:
quarkus.mongodb.connect-timeout=10S
quarkus.mongodb.read-timeout=30S
quarkus.mongodb.server-selection-timeout=30S
quarkus.mongodb.write-concern.safe=true
quarkus.mongodb.read-preference=primaryPreferred对于 TLS/SSL 连接,请在连接字符串中添加 tls=true:
quarkus.mongodb.connection-string=mongodb://<username>:<password>@<host>:<port>/?tls=true关于可用的 MongoDB 配置选项的更多信息,请参阅 Quarkus MongoDB 配置参考。
引导启动 Polaris
在将 Polaris 与 MongoDB 后端配合使用之前,必须先引导初始化元数据存储(metastore),以创建所需的集合和初始 realm。此操作通过 管理工具 完成。
使用 Docker:
docker run --rm -it \
--env="polaris.persistence.type=nosql" \
--env="polaris.persistence.nosql.backend=MongoDb" \
--env="quarkus.mongodb.database=polaris" \
--env="quarkus.mongodb.connection-string=mongodb://<username>:<password>@<host>:<port>" \
apache/polaris-admin-tool:latest bootstrap -r <realm-name> -c <realm-name>,<client-id>,<client-secret>使用独立 JAR:
java \
-Dpolaris.persistence.type=nosql \
-Dpolaris.persistence.nosql.backend=MongoDb \
-Dquarkus.mongodb.database=polaris \
-Dquarkus.mongodb.connection-string=mongodb://<username>:<password>@<host>:<port> \
-jar polaris-admin-tool.jar bootstrap -r <realm-name> -c <realm-name>,<client-id>,<client-secret>有关 bootstrap 命令及其他管理操作的详细信息,请参阅管理工具文档。
定期维护
Polaris NoSQL 后端需要定期维护,以从后端数据库中清除过期数据。维护的频率取决于数据库的大小以及数据更新的频率。建议的维护频率为每天一次。建议将维护安排在非高峰时段,或设置合理的扫描速率,以尽量减少对运行可用性的影响。可以使用管理工具触发维护。
评论
登录后参与评论
正在加载评论…
KnowForge