批次

    /batches 路由提供有关异步操作批次的进度信息。

    批次对象

    {
      "uid": 0,
      "details": {
        "receivedDocuments": 6,
        "indexedDocuments": 6
      },
      "stats": {
        "totalNbTasks": 1,
        "status": {
          "succeeded": 1
        },
        "types": {
          "documentAdditionOrUpdate": 1
        },
        "indexUids": {
          "INDEX_NAME": 1
        }
      },
      "duration": "PT0.250518S",
      "startedAt": "2024-12-10T15:20:30.18182Z",
      "finishedAt": "2024-12-10T15:20:30.432338Z",
      "progress": {
        "steps": [
          { 
            "currentStep": "extracting words",
            "finished": 2,
            "total": 9,
          },
          {
            "currentStep": "document",
            "finished": 30546,
            "total": 31944,
          }
        ],
        "percentage": 32.8471
      }
    }
    

    uid

    类型: 整数
    描述: 批次的唯一顺序标识符。从 0 开始,每次新补丁增加 1。

    details

    类型: 对象
    描述: 批次中任务类型的基本信息。有关可能值的详尽列表,请查阅任务对象参考

    progress

    类型: 对象
    描述: 包含两个字段的对象:stepspercentage。一旦 Meilisearch 完全处理完批次,其 progress 将设置为 null

    steps

    有关 Meilisearch 在此批次中执行的当前操作的信息。一个步骤可能包含多个子步骤。

    名称描述
    currentStep描述操作的字符串
    total步骤中的操作总数
    finishedMeilisearch 已完成的操作数

    如果 Meilisearch 处理批次的时间超出预期,请监控 steps 数组。如果 steps 数组中最后一项的 finished 字段没有更新,则 Meilisearch 可能卡住了。

    percentage

    已完成操作的百分比,根据当前所有步骤和子步骤计算得出。此值是一个粗略的估计值,由于不同步骤的处理速度不同,因此可能并不总是反映批次的当前状态。

    统计数据

    类型: 对象
    描述:关于批次中所有任务有效负载的详细信息。

    totalNbTasks

    批次中的任务数量。

    状态

    对象列出批次中每个任务的状态。包含五个键,其值对应于具有该状态的任务数量。

    类型

    包含批次中包含的任务类型的列表。

    indexUids

    批次中任务数量的列表,按其影响的索引分隔。

    持续时间

    类型:字符串
    描述:批次在processing状态下花费的总时间,采用ISO 8601格式。当批次正在处理任务时,设置为null

    startedAt

    类型:字符串
    描述:批次开始processing的日期和时间,采用RFC 3339格式

    finishedAt

    类型:字符串
    描述:任务完成processing的日期和时间,无论任务是failedsucceeded还是canceled,都以RFC 3339格式表示。

    获取批次

    GET/batches

    列出所有批次,无论索引如何。批次对象包含在results数组中。

    批次始终按uid降序返回。这意味着默认情况下,最近创建的批次对象会首先显示

    批次结果是分页的,并且可以使用查询参数进行筛选

    `/batches`参数和任务

    /batches的一些查询参数(例如uidsstatuses)针对的是任务而不是批次。

    例如,?uids=0返回一个包含taskUid等于0的任务的批次,而不是batchUid等于0的批次。

    查询参数

    查询参数默认值描述
    uids*(所有任务 uid)选择包含指定uid的任务的批次。用逗号 (,) 分隔多个任务 uid
    batchUids*(所有批次 uid)按其 uid 筛选批次。用逗号 (,) 分隔多个批次 uid
    indexUids*(所有索引)选择包含影响指定索引的任务的批次。用逗号 (,) 分隔多个 indexUids
    statuses*(所有状态)选择包含具有指定 status 的任务的批次。用逗号 (,) 分隔多个任务 statuses
    类型*(所有类型)选择包含具有指定 type 的任务的批次。用逗号 (,) 分隔多个任务 types
    limit20要返回的批次数量
    from上次创建的批次的uid返回的第一个批次的uid
    reversefalse如果为 true,则按相反顺序返回结果,从最旧到最近
    beforeEnqueuedAt*(所有任务)选择包含具有指定 enqueuedAt 字段的任务的批次
    beforeStartedAt*(所有任务)选择包含具有指定 startedAt 字段的任务的批次
    beforeFinishedAt*(所有任务)选择包含具有指定 finishedAt 字段的任务的批次
    afterEnqueuedAt*(所有任务)选择包含具有指定 enqueuedAt 字段的任务的批次
    afterStartedAt*(所有任务)选择包含具有指定 startedAt 字段的任务的批次
    afterFinishedAt*(所有任务)选择包含具有指定 finishedAt 字段的任务的批次

    响应

    名称类型描述
    results数组一个批次对象数组
    total整数与筛选器或查询匹配的批次总数
    limit整数返回的批次数量
    from整数返回的第一个批次的uid
    next整数传递给 from 以查看下一“页”结果的值。当 next 的值为 null 时,没有更多任务可以查看

    示例

    curl \
      -X GET 'https://127.0.0.1:7700/batches'

    响应:200 Ok

    {
      "results": [
        {
          "uid": 2,
          "details": {
            "stopWords": [
              "of",
              "the"
            ]
          },
          "progress": null,
          "stats": {
            "totalNbTasks": 1,
            "status": {
              "succeeded": 1
            },
            "types": {
              "settingsUpdate": 1
            },
            "indexUids": {
              "INDEX_NAME": 1
            }
          },
          "duration": "PT0.110083S",
          "startedAt": "2024-12-10T15:49:04.995321Z",
          "finishedAt": "2024-12-10T15:49:05.105404Z"
        }
      ],
      "total": 3,
      "limit": 1,
      "from": 2,
      "next": 1
    }
    

    获取一个批次

    GET/batches/{batch_uid}

    获取单个批次。

    路径参数

    名称类型描述
    batch_uid *字符串请求的批次的uid

    示例

    curl \
      -X GET 'https://127.0.0.1:7700/batches/BATCH_UID'

    响应:200 Ok

    {
      "uid": 1,
      "details": {
        "receivedDocuments": 1,
        "indexedDocuments": 1
      },
      "progress": null,
      "stats": {
        "totalNbTasks": 1,
        "status": {
          "succeeded": 1
        },
        "types": {
          "documentAdditionOrUpdate": 1
        },
        "indexUids": {
          "INDEX_NAME": 1
        }
      },
      "duration": "PT0.364788S",
      "startedAt": "2024-12-10T15:48:49.672141Z",
      "finishedAt": "2024-12-10T15:48:50.036929Z"
    }