Aktualisieren CosmosDb Indexierungspolitik durch ARM-Vorlagen

stimmen
0

Ich versuche, ARM-Vorlagen zu verwenden, um die Indizierung Politik für Kosmos Container zu aktualisieren. Ich habe versucht, zwei Methoden, eine einfach die Indizierung Politik zu erklären, während die Behälter in ARM erklärt.

{
      apiVersion: [variables('cosmosDbApiVersion')],
      type: Microsoft.DocumentDB/databaseAccounts/apis/databases/containers,
      dependsOn: [ /* resourceId */ ],
      name: /* containerName */,
      properties: {
        resource: {
          id: /* id */,
          partitionKey: {
            paths: [
              /partitionKey
            ],
            kind: Hash
          },
          indexes: [
            {
              indexingMode: consistent,
              automatic: true,
              includedPaths: [
                {
                  path: /*,
                  indexes: [
                    {
                      kind: Range,
                      dataType: Number,
                      precision: -1
                    },
                    {
                      kind: Hash,
                      dataType: String,
                      precision: 3
                    }
                  ]
                }
              ]
            }
          ],
          defaultTtl: [variables('defaultTtlValueToEnableTtl')]
        }
      }
    },

Die zweite war zu verwenden ARM zu verwenden, um deploy Container Einstellung als solche:

{
      apiVersion: [variables('cosmosDbApiVersion')],
      type: Microsoft.DocumentDB/databaseAccounts/apis/databases/containers/settings,
      name: [/* name */,
      dependsOn: [  /* container name */ ],
      properties: {
        resource: {
          throughput: /* some throughput */,
          indexes: [
            {
              indexingMode: consistent,
              automatic: true,
              includedPaths: [
                {
                  path: /*,
                  indexes: [
                    {
                      kind: Range,
                      dataType: Number,
                      precision: -1
                    },
                    {
                      kind: Hash,
                      dataType: String,
                      precision: 3
                    }
                  ]
                }
              ]
            }
          ]
        }
      }
    },

Beide Techniken nicht scheitern Einsatz, aber die Indizierung Politik nicht ändert.

Würde etwas Hilfe zu schätzen wissen.

Veröffentlicht am 13/02/2020 um 22:00
quelle vom benutzer
In anderen Sprachen...                            


2 antworten

stimmen
0

Dies ist das Beispiel aus der Template-Referenz (sieht etwas anders aus, was Sie tun):

"resource": {
  "id": "string",
  "indexingPolicy": {
    "automatic": "boolean",
    "indexingMode": "string",
    "includedPaths": [
      {
        "path": "string",
        "indexes": [
          {
            "dataType": "string",
            "precision": "integer",
            "kind": "string"
          }
        ]
      }
    ],
    "excludedPaths": [
      {
        "path": "string"
      }
    ],
    "spatialIndexes": [
      {
        "path": "string",
        "types": [
          "string"
        ]
      }
    ]
  },
  xxx
}

https://docs.microsoft.com/en-us/azure/templates/microsoft.documentdb/2019-08-01/databaseaccounts/sqldatabases/containers

Beantwortet am 14/02/2020 um 05:52
quelle vom benutzer

stimmen
0

Bereich und Hash-Index Typen werden von der Cosmos-Ressource-Anbieter jetzt neue Behälter oder Container ignoriert, die im vergangenen Jahr oder so erstellt wurden. ARM den Index nicht Politik bestätigen, weshalb die Vorlage erfolgreich einsetzen wird.

Hash-Index wurde für diese neueren Container als veraltet, da die Leistung des Entfernungs-Index in der neuen Indexer übertrifft ist, was Hash-Index versehen, so war nicht mehr notwendig.

Zum Erstellen / Ändern Index Politik beziehen sich auf diesen Artikel weiter unten. Es gibt mehrere Beispiele von Indexrichtlinien, die auf komplexere Strategien alles von sehr einfach implementieren, die zusammengesetzten Indizes, räumlichen Indizes und eindeutige Schlüssel umfassen.

https://docs.microsoft.com/en-us/azure/cosmos-db/manage-sql-with-resource-manager#create-resource

Beantwortet am 16/02/2020 um 19:15
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more