Milvus 数据批量导出实战:Python 代码解析

news/2025/3/6 13:34:22/

1 引言

由于 Milvus 在单次查询中所能返回的数据量存在固有约束,当处理数据量庞大的 Collection 时,需考虑采用多次查询的策略。本文详细阐述了如何运用多次查询的方式,将 Milvus 中的数据进行分批导出,以有效应对数据量过大带来的挑战 。

2 代码整体概述

我们的目标是从 Milvus 中导出指定集合的数据,并将其保存为 JSON 文件。代码主要分为以下几个部分:

  1. 连接到 Milvus 服务。
  2. 定义数据导出函数,包括数据查询和保存逻辑。
  3. 在主程序中调用导出函数,实现批量导出。
  4. 释放资源并断开连接。

3 关键代码解析

3.1 连接到 Milvus 服务

python">connections.connect(alias="default",host='127.0.0.1',  port='19530',      user='root',password='Milvus'
)

通过 connections.connect 方法连接到本地的 Milvus 服务,指定了主机地址、端口号、用户名和密码。

milvus_colleciton_24">3.2 数据导出函数 export_milvus_colleciton

python">def export_milvus_colleciton(begin_pos, out_dir):expr = f'id>{str(begin_pos)}'output_fields = [field.name for field in collection.schema.fields]  batch_size = 1000offset = 0all_data = []max_pos = 0while True:results = collection.query(expr=expr,output_fields=output_fields,limit=batch_size,offset=offset)if not results:breakbatch_data = []for result in results:item = {}for field_name in output_fields:item[field_name] = result[field_name

http://www.ppmy.cn/news/1577076.html

相关文章

【html期末作业网页设计】

html期末作业网页设计 作者有话说项目功能介绍 网站结构完整代码网站样图 作者有话说 目前,我们的项目已经搭建了各页面的基本框架,但内容填充还不完善,各页面之间的跳转逻辑也还需要进一步优化。 我们深知,一个好的项目需要不断…

rabbitmq版本升级并部署高可用

RabbitMQ版本升级 先检查是否已经安装rabbitmq rpm -qa|grep rabbitmq|wc -l //如果结果是0,表示没有安装 rpm -e --nodeps $(rpm -qa|grep rabbitmq) //如安装了,则进行卸载 先检查是否已经安装erlang rpm -qa|grep erlang|wc -l //如果结果…

掌握 Python 高级特性:深入理解迭代器与生成器

Langchain系列文章目录 01-玩转LangChain:从模型调用到Prompt模板与输出解析的完整指南 02-玩转 LangChain Memory 模块:四种记忆类型详解及应用场景全覆盖 03-全面掌握 LangChain:从核心链条构建到动态任务分配的实战指南 04-玩转 LangChai…

在21世纪的我用C语言探寻世界本质——字符函数和字符串函数(2)

人无完人,持之以恒,方能见真我!!! 共同进步!! 文章目录 一、strncpy函数的使用二、strncat函数的使用三、strncmp函数的使用四、strstr的使用和模拟实现五、strtok函数的使用六、strerror和pe…

【leetcode hot 100 73】矩阵置零

解法一:(使用两个标记变量)用矩阵的第一行和第一列代替方法一中的两个标记数组(col、row[ ]:第几列、行出现0),以达到 O(1) 的额外空间。 这样会导致原数组的第一行和第一列被修改,…

Python实战:argparse模块的详细使用

文章目录 一、基本使用步骤二、参数类型三、常用参数选项四、实例演示4.1 使用 argparse 解析命令行参数4.2 完整的示例程序 五、进阶用法六、总结 argparse 是 Python 标准库中用于解析命令行参数的模块,它使得编写用户友好的命令行界面变得简单易行。以下将详细介…

Electron如何执行Python exe程序

在 Electron 应用中执行打包后的 Python exe 程序,通常可以借助 Node.js 的 child_process 模块来实现。以下为你详细介绍具体的实现步骤和示例代码: 1. 确保 Python 可执行文件路径正确 在使用 child_process 模块执行 Python 可执行文件之前&#xf…

makefile中采用echo进行调试

在 Makefile 中使用 echo 输出变量是调试变量值的常用方法。以下是具体用法及注意事项: 一、基础用法:在规则中输出变量 makefile 定义变量 VAR Hello World 在规则中使用 echo 输出变量 print_var: echo “调试 VAR的值是: $(VAR)” 执行命令&#x…