Añadir un objeto clave a metadatos - Couchbase

Hay una manera de añadir par personalizado de valor clave a este objeto de metadatos sofabase?

Gracias.A continuación la imagen es una captura de meta datos de un documento añadido en la base de sofá

Pregunta hecha hace 3 años, 4 meses, 29 días - Por scriptsphinx


3 Respuestas:

  • Meta lista son específicos para Couchbase. Usted puede explorar atributos extendidos (xatr):

    https://docs.couchbase.com/server/5.1/developer-guide/extended-attributes-fundamentals.html

    El SDK Couchbase admite la creación y modificación de la ampliación atributos por aplicaciones escritas en Node.js, Java, .NET, PHP, Python, Go, y C. Esto se logra mediante extensiones al Subdocumento API.

    Así que, sí, puede leer/escribir a la xattrs si quieres. Pero:

    Couchbase Server no proporciona ninguna facilidad para enumerar o compartir conocimiento de atributos extendidos: por lo tanto, ninguna aplicación tiene conocimiento de los atributos extendidos dentro de un documento distinto su creador; a menos que ese conocimiento se comparta explícitamente entre aplicaciones por algún mecanismo externo a Couchbase Server

    Cualquier dato que almacene en xattr cuenta con el límite de tamaño total del documento. Los valores xattr sólo deben utilizarse en un nivel de marco inferior, y no para ningún tipo de lógica comercial o datos. Así que, asegúrate de tener una buena razón para ser lectura/escritura xattr. (Algunos ejemplos de cómo Couchbase lo utiliza para transacciones ACID y sincronización móvil).

    Respondida el Dec 18, 2020 a las 05:04 - por codecrusaderx58e2

    Votos positivos: 0 | Votos negativos: 0

  • En Couchbase, puedes añadir un objeto clave personalizado a los metadatos de un documento utilizando un atributo llamado "metadatos personalizados". Estos metadatos personalizados te permiten añadir información adicional a los metadatos estándar de Couchbase.

    Para añadir un objeto clave personalizado a los metadatos de un documento en Couchbase, puedes seguir estos pasos:

    • Accede a los metadatos del documento que deseas actualizar.
    • Añade un nuevo atributo al objeto de metadatos con la información deseada. Por ejemplo, si deseas añadir un par personalizado de clave-valor, puedes hacerlo de la siguiente manera:
    json
    {
      "metadatos_personalizados": {
        "clave_personalizada": "valor_personalizado"
      }
    }
    
    • Guarda los cambios en los metadatos del documento.

    Una vez añadido el objeto clave personalizado a los metadatos del documento, podrás acceder a esta información de manera similar a como accedes a otros metadatos estándar de Couchbase.

    Espero que esta información te sea útil. Si necesitas más ayuda, ¡no dudes en decírmelo!

    Respondida el Dec 19, 2020 a las 05:01 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • Sí, puedes añadir un par personalizado de valor clave a los metadatos de un objeto en Couchbase.

    Pasos:

    • Recupera el objeto con los metadatos que deseas modificar.
    • Crea un `MutableDocument` a partir del objeto recuperado.
    • Atualiza los metadatos personalizados estableciendo la clave y el valor deseados utilizando el método `MutableDocument.upsertMetadata`.
    • Guarda el documento actualizado.

    Ejemplo de código (Java):

    java
    import com.couchbase.client.java.Bucket;
    import com.couchbase.client.java.document.JsonDocument;
    import com.couchbase.client.java.document.json.JsonObject;
    
    public class AddMetadata {
    
        public static void main(String[] args) {
            // Reemplaza "bucketName" con el nombre de tu bucket
            String bucketName = "bucketName";
    
            // Reemplaza "documentId" con el ID del documento al que deseas añadir los metadatos
            String documentId = "documentId";
    
            // Reemplaza "metadataKey" y "metadataValue" con los valores de clave y valor personalizados que deseas añadir
            String metadataKey = "mi_clave";
            String metadataValue = "mi_valor";
    
            // Conéctate al bucket
            Bucket bucket = Cluster.connect().bucket(bucketName);
    
            // Recupera el documento
            JsonDocument document = bucket.get(documentId);
    
            // Crea un documento mutable
            MutableDocument mutableDocument = new MutableDocument(document);
    
            // Añade los metadatos personalizados
            mutableDocument.upsertMetadata(metadataKey, metadataValue);
    
            // Guarda el documento actualizado
            bucket.upsert(mutableDocument);
    
            // Imprime los metadatos actualizados
            JsonObject metadatos = mutableDocument.metadata();
            System.out.println("Metadatos actualizados:");
            for (String key : metadatos.keySet()) {
                System.out.println(key + ": " + metadatos.get(key));
            }
        }
    }
    

    Nota:

    Couchbase almacena los metadatos como un objeto JSON, por lo que la clave y el valor personalizados también deben ser cadenas JSON válidas. El método MutableDocument.upsertMetadata sobrescribirá cualquier valor de metadatos existente con la misma clave.

    Respondida el Dec 19, 2020 a las 05:14 - por Gemini

    Votos positivos: 0 | Votos negativos: 0