Todos los productos
Search
Centro de documentos

OpenSearch:Tipo ARRAY

Última actualización: Sep 04, 2026

Este tema describe los escenarios, los métodos de inserción de datos y la sintaxis de búsqueda para datos de tipo ARRAY.

Escenarios

El tipo ARRAY es una estructura de datos que contiene un grupo de elementos del mismo tipo. Puede realizar búsquedas independientes basadas en cada elemento de un arreglo. Por ejemplo, si una novela tiene las etiquetas "Misterio", "Viaje en el tiempo" y "Clásico", puede encontrarla al buscar "Misterio".

¿Cómo inserto datos de tipo ARRAY?

OpenSearch proporciona varios métodos para insertar datos de tipo ARRAY. A continuación se describe cómo usar los distintos métodos de inserción.

Llamar a operaciones de API

Los datos de tipo ARRAY deben cargarse en formato JsonArray. Ejemplo:

[
    {
        "fields": {
            "id": "0",
            "int_array": [
                14,
                85
            ],
            "float_array": [
                14.0,
                85.0
            ],
            "literal_array": [
                "abc",
                "xyz"
            ]
        },
        "cmd": "ADD"
    }
]

Para obtener más información sobre las operaciones disponibles para cargar datos, consulte Referencia de API de tráfico > Operaciones de API relacionadas con aplicaciones > Process data en la Guía para desarrolladores.

Usar SDKs

Consulte los pasos para insertar datos mediante OpenSearch SDK for Java en el tema Push demo. Los procesos para insertar datos con los SDKs de otros lenguajes de programación son similares.

Configurar orígenes de datos

Al configurar un origen de datos, puede analizar los datos de origen en diversos formatos. Si definió un campo como tipo arreglo, seleccione el plugin MultiValueSplitter para ese campo y especifique un delimitador. Por ejemplo, si un campo de base de datos para etiquetas contiene "Viaje en el tiempo,Misterio,Romance", establezca la coma (,) como delimitador. El plugin convierte automáticamente la cadena del campo de la base de datos en un arreglo que el motor de búsqueda puede reconocer. MultiValueSplitter plugin

¿Cómo recupero datos de tipo ARRAY y qué efecto se logra?

Use cláusulas de consulta o de filtro para realizar búsquedas independientes basadas en cada elemento de un arreglo. Por ejemplo, use query=tags:'Time-travel' para buscar el documento que contiene las siguientes etiquetas: Viaje en el tiempo, Misterio y Romántico. También puede usar query=title:'Treading On Thin Ice'&&filter=tags="Time-travel" para buscar la novela titulada Treading On Thin Ice que contiene la etiqueta "Viaje en el tiempo".

Tenga en cuenta que los valores devueltos en una búsqueda de tipo ARRAY son cadenas, no arreglos. Estos valores están separados por '\t'.

Preguntas frecuentes

P1: ¿Por qué no está disponible el tipo TEXT_ARRAY y cuál es la diferencia entre los tipos TEXT y STRING_ARRAY?

R: El tipo TEXT incluye los subtipos TEXT, SHORT_TEXT, NWS_TEXT y MWS_TEXT. Los campos de tipo TEXT pasan por un proceso de análisis. Este tipo admite coincidencias aproximadas y no está relacionado con arreglos. El tipo STRING_ARRAY admite coincidencias exactas para cada elemento. Cada elemento puede constar de varios términos. No es obligatorio que coincidan todos los elementos en un campo de tipo STRING_ARRAY.

P2: ¿Cómo obtengo el número de elementos en un arreglo?

R: Use la función fieldlen function proporcionada por OpenSearch para obtener la cantidad de elementos.

P3: ¿Cómo especifico datos de tipo ARRAY al insertar datos mediante código Java?

Puede usar variables de tipo ARRAY para especificar datos de tipo ARRAY. Ejemplos: iteral_array--->String [] e int_array--->int [].