private List<Object> convertNestedArray(ArrayData arrData, LogicalType type) {
        if (arrData instanceof GenericArrayData) {
            return Lists.newArrayList(((GenericArrayData) arrData).toObjectArray());
        }
        if (arrData instanceof BinaryArrayData) {
            LogicalType lt = ((ArrayType) type).getElementType();
            List<Object> data = Lists.newArrayList(((BinaryArrayData) arrData).toObjectArray(lt));
            if (LogicalTypeRoot.ROW.equals(lt.getTypeRoot())) {
                RowType rType = (RowType) lt;
                // parse nested row data
                return data.parallelStream().map(row -> {
                    Map<String, Object> m = Maps.newHashMap();
                    rType.getFields().parallelStream().forEach(f -> m.put(f.getName(),
                            typeConvertion(f.getType(), (RowData) row, rType.getFieldIndex(f.getName()))));
                    return JSON.toJSONString(m);
                }).collect(Collectors.toList());
            }
            if (LogicalTypeRoot.MAP.equals(lt.getTypeRoot())) {
                // traversal of the nested map
                return data.parallelStream().map(m -> convertNestedMap((MapData) m, lt)).collect(Collectors.toList());
            }
            if (LogicalTypeRoot.DATE.equals(lt.getTypeRoot())) {
                return data.parallelStream()
                        .map(date -> dateFormatter.format(Date.valueOf(LocalDate.ofEpochDay((Integer) date))))
                        .collect(Collectors.toList());
            }
            if (LogicalTypeRoot.ARRAY.equals(lt.getTypeRoot())) {
                // traversal of the nested array
                return data.parallelStream().map(arr -> convertNestedArray((ArrayData) arr, lt))
                        .collect(Collectors.toList());
            }
            return data;
        }
        throw new UnsupportedOperationException(String.format("Unsupported array data: %s", arrData.getClass()));
    }
copy from {@link com.starrocks.connector.flink.row.sink.StarRocksTableRowTransformer}
inlong-sort/sort-flink/sort-flink-v1.15/sort-connectors/starrocks/src/main/java/org/apache/inlong/sort/starrocks/table/sink/table/StarRocksTableRowTransformer.java