Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ /

evento reshardCollection

Nesta página

  • Resumo
  • Descrição
  • Exemplo
reshardCollection

Novidade na versão 6.1: (também disponível na 6.0.14)

Um evento reshardCollection ocorre quando:

  • A chave de fragmento de uma coleta e a distribuição de seus dados são alteradas, e

  • O change stream tem showExpandedEvents definido como true.

Campo
Tipo
Descrição

_id

Documento

Um objeto BSON que serve como um identificador para o evento de fluxo de alterações. Este valor é utilizado como resumeToken para o parâmetro resumeAfter ao retomar um fluxo de alteração. O objeto _id tem o seguinte formulário:

{
"_data" : <BinData|hex string>
}

O _data tipo de depende das versões do MongoDB e, em alguns casos, da versão de compatibilidade do recurso (FCV) no momento da abertura ou retomada do fluxo de alterações.Consulte Tokens de currículo para obter a lista completa de _data tipos.

Para obter um exemplo de como retomar um fluxo de alterações por resumeToken, consulte Retomar um fluxo de alterações.

clusterTime

Timestamp

clusterTime é o registro de data/hora da entrada de registro opcional associada ao evento.

Devido aos limites de tamanho do oplog , transações com vários documentos podem criar várias entradas no oplog. Em uma transação, os eventos de change stream encenados em uma determinada entrada do oplog compartilham o mesmo clusterTime.

Eventos com o mesmo clusterTime podem não estar relacionados à mesma transação. Alguns eventos não estão nem um pouco relacionados a uma transação. A partir do MongoDB 8.0, isso pode ser verdade para eventos em qualquer sistema. Nas versões anteriores, este comportamento era possível apenas para eventos em um cluster fragmentado.

Para identificar eventos para uma única transação, você pode usar a combinação de lsid e txnNumber no documento de eventos do fluxo de alterações.

Alterado na versão 8.0.

collectionUUID

UUID

UUID identificando a coleção onde ocorreu a alteração.

Novidades na versão 6.0.

ns

Documento

O namespace (banco de dados e/ou coleção) afetado pelo evento.

ns.coll

String

O nome da coleção onde o evento ocorreu.

ns.db

String

O nome do banco de dados onde ocorreu o evento.

operationDescription

Documento

Informações adicionais sobre a operação de alteração.

Esse documento e seus subcampos só aparecem quando o fluxo de alterações usa eventos expandidos.

Novidades na versão 6.0.

operationDescription.
reshardUUID

UUID

UUID que identifica a operação de refragmentação.

Novidades na versão 6.1.

operationDescription. | shardKey

Documento

A chave de fragmento da coleção onde ocorreu a alteração.

Novidades na versão 6.0.

operationDescription. | oldShardKey

Documento

A chave de fragmento da coleção que mudou.

Novidades na versão 6.1.

operationDescription. | unique

Boolean

Tem o valor de true se a collection foi fragmentada com uma chave de shard exclusiva.

Novidades na versão 6.0.

operationDescription. | numInitialChunks

Número longo

Número de chunks criados em cada shard durante uma operação shardCollection .

Novidades na versão 6.0.

operationDescription.
collation

Documento

documento de agrupamento usado para o índice da chave de fragmento.

Novidades na versão 6.1.

operationDescription.
zones

Array

As zonas adicionadas para a nova chave de fragmento.

Novidades na versão 6.1.

O exemplo a seguir mostra um evento do reshardCollection :

{
"_id": { <ResumeToken> },
"operationType": "reshardCollection",
"collectionUUID": 0,
"ns": {"db": "reshard_collection_event", "coll": "coll"},
"operationDescription": {
"reshardUUID": 0,
"shardKey": {"newKey": 1},
"oldShardKey": {"_id": 1},
"unique": false,
"numInitialChunks": NumberLong(1),
"collation": {"locale": "simple"},
"zones": [
{"zone": "zone1", "min": {"newKey": {"$minKey": 1}}, "max": {"newKey": {"$maxKey": 1}}}
]
}
}

Voltar

replace