仅限源代码的存储库
编辑仅限源代码的存储库编辑
您可以使用仅限源代码的存储库来创建最小的、仅限源代码的快照,其占用的磁盘空间比常规快照少 50%。
与其他存储库类型不同,仅限源代码的存储库不直接存储快照。它将存储委托给另一个已注册的快照存储库。
当您使用仅限源代码的存储库创建快照时,Elasticsearch 会在委托的存储库中创建一个仅限源代码的快照。此快照仅包含存储的字段和元数据。它不包含索引或文档值结构,并且在恢复后不能立即搜索。要搜索恢复的数据,您必须先将其重新索引到新的数据流或索引中。
仅当启用了 _source
字段且未应用源代码过滤时,才支持仅限源代码的快照。当您恢复仅限源代码的快照时
- 恢复的索引是只读的,并且只能提供
match_all
搜索或滚动请求以启用重新索引。 - 不支持
match_all
和_get
请求以外的查询。 - 恢复的索引的映射为空,但可以从类型顶级
meta
元素中获取原始映射。
在注册仅限源代码的存储库之前,请使用 Kibana 或创建快照存储库 API 来注册另一个类型的快照存储库以用于存储。然后注册仅限源代码的存储库,并在请求中指定委托的存储库。
response = client.snapshot.create_repository( repository: 'my_src_only_repository', body: { type: 'source', settings: { delegate_type: 'fs', location: 'my_backup_repository' } } ) puts response
PUT _snapshot/my_src_only_repository { "type": "source", "settings": { "delegate_type": "fs", "location": "my_backup_repository" } }
存储库设置编辑
-
chunk_size
- (可选,字节值)快照中文件的最大大小。在快照中,大于此大小的文件将被分解为此大小或更小的块。默认为
null
(文件大小不受限制)。 -
compress
- (可选,布尔值)如果为
true
,则会在快照中压缩元数据文件,例如索引映射和设置。数据文件不会被压缩。默认为true
。 -
delegate_type
-
(可选,字符串)委托的存储库类型。有关有效值,请参阅
type
参数。source
存储库可以使用其委托存储库类型的settings
属性。请参阅仅限源代码的存储库。 -
max_number_of_snapshots
- (可选,整数)存储库可以包含的最大快照数。默认为
Integer.MAX_VALUE
,即2^31-1
或2147483647
。 -
max_restore_bytes_per_sec
- (可选,字节值)每个节点的最大快照恢复速率。默认为无限制。请注意,恢复也会通过恢复设置进行限制。
-
max_snapshot_bytes_per_sec
- (可选,字节值)每个节点的最大快照创建速率。默认为每秒
40mb
。请注意,如果设置了托管服务的恢复设置,则默认为无限制,并且速率还会通过恢复设置进行限制。
-
readonly
-
(可选,布尔值)如果为
true
,则存储库为只读。集群可以从存储库中检索和恢复快照,但不能写入存储库或在其中创建快照。只有具有写访问权限的集群才能在存储库中创建快照。连接到存储库的所有其他集群都应将
readonly
参数设置为true
。如果为
false
,则集群可以写入存储库并在其中创建快照。默认为false
。如果您在多个集群中注册了同一个快照存储库,则只有一个集群应该具有对该存储库的写访问权限。让多个集群同时写入存储库可能会损坏存储库的内容。