跳到主要内容

append_row()

此操作会将单行数据追加到内部缓冲区中。当缓冲区大小超过已配置的分块大小时,缓冲区会自动刷新到本地文件,并上传到远程卷。

请求语法​

python
VolumeBulkWriter.append_row(
row: Dict[str, Any],
**kwargs
)

参数:

  • row (Dict[str, Any]) -

    [必需]

    表示单行数据的字典。键必须与 Collection Schema 中定义的字段名称匹配,值必须符合相应的字段类型。

返回类型:

None

此方法不返回值。

异常:

  • MilvusException

    当行数据未通过 Collection Schema 验证时引发,例如类型不匹配、缺少必填字段或向量维度不匹配。

示例​

python
from pymilvus.bulk_writer.volume_bulk_writer import VolumeBulkWriter
from pymilvus import CollectionSchema, FieldSchema, DataType

fields = [
FieldSchema(name="id", dtype=DataType.INT64, is_primary=True, auto_id=False),
FieldSchema(name="vector", dtype=DataType.FLOAT_VECTOR, dim=128),
]
schema = CollectionSchema(fields, "example_collection")

writer = VolumeBulkWriter(
schema=schema,
remote_path="/data/bulk_import",
cloud_endpoint="https://your-cloud-endpoint.zillizcloud.com",
api_key="your-api-key",
volume_name="my-volume",
)

# Append a single row
writer.append_row({
"id": 1,
"vector": [0.1] * 128,
})

# Append multiple rows
for i in range(1000):
writer.append_row({
"id": i,
"vector": [0.1] * 128,
})
最低 SDK 版本v2.6.x