java千万大数据量查询10万行代码

【CSDN编辑】短短10行代码,一台服务器能搜索到10亿画廊的图吗? 开源的! 到底是什么黑科技? 介绍高性能矢量搜索引擎Milvus的前世今生。

作者|明星爵士乐

是的,一台服务器,只用10行代码,就可以很容易地找到10亿画廊的照片。 响应时间为数百毫秒。 易于使用,只需几行代码就可以处理大量的图像检索。 超高性能、支持分布式和云本机扩展以满足低延迟实时搜索的需求,可以随时满足百亿级到千亿级的搜索需求。 这就是Milvus——的超高性能矢量搜索引擎Milvus。 我们Milvus团队于两天前的11月5日在GitHub上正式宣布开源https://Github.com/mil vus-io/mil vus ),并分享给全世界的开发者和AI科学家。

非结构化数据、人工智能和矢量检索

随着信息化技术的进步,人类正在经历爆炸性的数据增长,数据的种类也发生了一系列有趣的变化。 自20世纪中叶电子计算机诞生以来,开发者已经掌握了结构化数据结构数据、整数数和浮点数等)、2000年互联网时代半结构化数据Semi-structured Data、网页和日志等)以及2000年

对于不同类型的数据,计算机科学家发明了适当的索引算法来组织、检索和分析数据。 在结构化数据的情况下,一般的索引算法是Bitmap、散列表、b树等,典型的系统是以Oracle和DB2为代表的关系数据库的半结构化数据的情况下,一般的索引算法是倒置的

非结构化数据由于传统的计算方法和处理器难以处理和价值挖掘,长期以来一直是计算机科学领域的一大难点。 直到近年来用人工智能算法处理非结构数据取得了突破。 人工智能算法使用CNN、RNN、VGG、Bert等一系列模型,将图像、视频、语音、文本等转换为适当的特征向量。 每个特征向量由整数或浮点数组成。 人工智能算法巧妙地将复杂的非结构化数据处理变为了对计算机处理器比较简单友好的矢量数值运算,将图形搜索、视频检索、自然语言处理等任务变为了基于欧式距离或余弦距离度量的矢量相似度计算。

AI算法将非结构化数据转换为矢量

虽然向量相似度的计算比较简单,但图像、视频、语音、文字等非结构化数据与传统的结构化数据和半结构化数据相比,数据量庞大总量大3位数以上),增长迅速。 每1KB生成一次结构化数据,同时生成约1GB的非结构化数据。 庞大的矢量相似度计算成为了人工智能算法大规模导入的巨大挑战。 由此,基于矢量相似度计算的庞大的非结构化数据索引技术ANNs Approximatenearestneighborsearch )应运而生。 ANNS算法通过聚类相似的向量,可以缩小查询空间,减少比对计算量,加速庞大的向量检索。 常见的ANNS算法包括量化算法Quantization )、树算法Tree )、图算法Graph )、混合算法)树图、四叉树-图形quantization-ggo )、四叉树- go

Milvus高性能矢量搜索引擎

Milvus使用全球领先的ANNS矢量索引技术,top5查询再现率recall )、入库速度超过100万颗/分钟,支持异构核心处理器加速,为X86/GPU/ARM/Power Milvus单体可在秒内完成10亿级向量搜索,多机分布式和云原生扩展方案也可以轻松满足百亿至千亿级向量搜索的需要。 Milvus采用了Apache 2.0开源许可协议。

Milvus非结构化数据搜索引擎

在Milvus的研发过程中,我和Milvus团队的18位贡献者深入研究了ANNS算法,阅读了大量论文和参考文献,不断调整硬件和软件架构,仔细设计、调试了各个算法,不同的流程

经过300多天的每天努力,我们终于研制成功了m

ilvus的第一个稳定版本0.5.1,并顺利完成了多家知名科技公司的严格测试和生产部署。然后我们第一时间将Milvus完全开源出来,希望帮助更多的开发者应对更多AI场景中的非结构化数据带来的机遇与挑战。同时我们也有一点小私心,希望能吸引到一批志同道合的开源极客,和我们一道继续开发、完善Milvus,把Milvus打造成具有全球影响力的新一代非结构化数据搜索引擎。

Milvus 的应用

Milvus具体能应用在哪些领域呢?举个例子说,某电商网站有约5000万个商品SKU,平均每个商品有来自商家展示和用户评论的20张图片,后台一共存储了10亿张商品图片。开发者用预先训练好的AI模型将10亿商品图片转换成10亿个特征向量,然后使用Milvus就能轻松实现以图搜商品功能,帮助购物者用图片搜索的方法方便地找到心仪的商品。

Milvus的能力可不止于以图搜图,还适用于海量的视频、语音和文本等非结构化数据的搜索。比如说,某视频UGC网站每天有100万个短视频上传,平均每个短视频时长1分钟,分辨率720P,每秒2秒提取一个关键帧图像,每月有9亿关键帧,每年有108亿关键帧。开发者用AI模型将108亿关键帧图像转换为108亿个特征向量,然后使用Milvus轻松实现海量视频搜索功能,让用户可以方便地定位到自己感兴趣的(明星/商品)视频片段。

Milvus向量搜索引擎还可以帮助自然语言处理的开发者轻松实现海量文本去重和语义搜索,帮助搜索引擎的开发者实现推荐系统和精准广告投放,在此就不一一列举了。目前,Milvus已被10多家知名科技公司使用,助力互联网娱乐(图片搜索/视频搜索)、新零售(以图搜商品)、智慧金融(用户认证)和智能物流(车辆识别)等领域。

还在临渊羡鱼?

如果您想使用Milvus向量搜索引擎,体验“十行代码实现十亿图片检索”,我们为您准备了“轻松玩转十亿向量检索(SIFT1B)”教程。

您也可以访问Milvus在线训练营:https://github.com/milvus-io/bootcamp

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注