{"id":107376,"date":"2026-09-19T13:40:37","date_gmt":"2026-09-19T05:40:37","guid":{"rendered":"https:\/\/www.wsisp.com\/helps\/107376.html"},"modified":"2026-09-19T13:40:37","modified_gmt":"2026-09-19T05:40:37","slug":"milvus-%e7%94%9f%e4%ba%a7%e7%8e%af%e5%a2%83%e9%83%a8%e7%bd%b2%ef%bc%8c%e4%bc%98%e5%8c%96%ef%bc%8c%e6%97%a5%e5%b8%b8%e7%bb%b4%e6%8a%a4%e4%b8%ad%e9%81%87%e5%88%b0%e7%9a%84%e9%97%ae%e9%a2%98","status":"publish","type":"post","link":"https:\/\/www.wsisp.com\/helps\/107376.html","title":{"rendered":"Milvus \u751f\u4ea7\u73af\u5883\u90e8\u7f72\uff0c\u4f18\u5316\uff0c\u65e5\u5e38\u7ef4\u62a4\u4e2d\u9047\u5230\u7684\u95ee\u9898"},"content":{"rendered":"<h2>Milvus \u751f\u4ea7\u73af\u5883\u8fd0\u7ef4\u6df1\u5ea6\u6307\u5357<\/h2>\n<h3>\u4e00\u3001\u67b6\u6784\u5168\u666f<\/h3>\n<p>\u6574\u4e2a\u96c6\u7fa4\u7531\u56db\u5927\u5c42\u7ec4\u6210&#xff0c;\u6bcf\u5c42\u72ec\u7acb\u6269\u5c55&#xff1a;<\/p>\n<p>Access Layer         Access Layer<br \/>\n  Proxy  Proxy  Proxy \u2192 \u8d1f\u8f7d\u5747\u8861 \u2192 \u5ba2\u6237\u7aef SDK<br \/>\n    \u2502       \u2502       \u2502<br \/>\nCoordinator Layer<br \/>\n  RootCoord  QueryCoord  DataCoord  IndexCoord&#xff08;\u5355 Active&#xff09;<br \/>\n    \u2502           \u2502          \u2502          \u2502<br \/>\nWorker Layer<br \/>\n  QueryNode  DataNode  IndexNode&#xff08;\u53ef\u6c34\u5e73\u6269\u5c55&#xff0c;\u6709\u72b6\u6001&#xff09;<br \/>\n    \u2502           \u2502<br \/>\nStorage Layer<br \/>\n  MinIO\/S3&#xff08;\u5bf9\u8c61\u5b58\u50a8&#xff09;  &#043;  etcd&#xff08;\u5143\u6570\u636e&#xff09;  &#043;  Kafka\/Pulsar&#xff08;\u6d88\u606f\u961f\u5217&#xff09;<\/p>\n<h4>\u5404\u7ec4\u4ef6\u804c\u8d23\u4e0e\u74f6\u9888<\/h4>\n<table>\n<tr>\u7ec4\u4ef6\u89d2\u8272\u5173\u952e\u74f6\u9888\u5e38\u89c1\u6545\u969c<\/tr>\n<tbody>\n<tr>\n<td>Proxy<\/td>\n<td>\u8bf7\u6c42\u5165\u53e3&#xff0c;\u9274\u6743\u3001\u8def\u7531\u3001\u9650\u6d41<\/td>\n<td>\u8fde\u63a5\u6570\u3001QPS<\/td>\n<td>\u8fde\u63a5\u6c60\u8017\u5c3d\u3001OOM<\/td>\n<\/tr>\n<tr>\n<td>RootCoord<\/td>\n<td>DDL\u3001TSO \u65f6\u95f4\u6233\u5206\u914d<\/td>\n<td>\u5355\u70b9&#xff08;Active-Standby&#xff09;<\/td>\n<td>TSO \u5ef6\u8fdf\u5bfc\u81f4\u5168\u96c6\u7fa4\u963b\u585e<\/td>\n<\/tr>\n<tr>\n<td>QueryCoord<\/td>\n<td>QueryNode \u62d3\u6251\u7ba1\u7406\u3001\u8d1f\u8f7d\u5747\u8861<\/td>\n<td>\u5355\u70b9<\/td>\n<td>\u9891\u9053\u5206\u914d\u4e0d\u5747<\/td>\n<\/tr>\n<tr>\n<td>DataCoord<\/td>\n<td>Segment \u7ba1\u7406\u3001Compaction \u8c03\u5ea6<\/td>\n<td>\u5355\u70b9<\/td>\n<td>\u5c0f\u6587\u4ef6\u8fc7\u591a\u3001Compaction \u79ef\u538b<\/td>\n<\/tr>\n<tr>\n<td>QueryNode<\/td>\n<td>\u67e5\u8be2\u6267\u884c\u3001\u5411\u91cf\u68c0\u7d22<\/td>\n<td>CPU\u3001\u5185\u5b58\u3001\u78c1\u76d8 I\/O<\/td>\n<td>OOM\u3001Segment \u52a0\u8f7d\u6162<\/td>\n<\/tr>\n<tr>\n<td>DataNode<\/td>\n<td>\u6570\u636e\u5199\u5165\u3001Flush \u5230 S3<\/td>\n<td>\u5185\u5b58&#xff08;\u5199\u5165\u7f13\u51b2&#xff09;\u3001\u7f51\u7edc<\/td>\n<td>Flush \u8d85\u65f6\u3001\u80cc\u538b<\/td>\n<\/tr>\n<tr>\n<td>IndexNode<\/td>\n<td>\u7d22\u5f15\u6784\u5efa&#xff08;CPU\/GPU \u5bc6\u96c6\u578b&#xff09;<\/td>\n<td>CPU\/GPU\u3001\u5185\u5b58<\/td>\n<td>\u5927 Segment \u7d22\u5f15\u6784\u5efa OOM<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>\u4e8c\u3001\u751f\u4ea7\u90e8\u7f72&#xff08;Kubernetes &#043; Operator&#xff09;<\/h3>\n<h4>\u96c6\u7fa4\u89c4\u6a21\u89c4\u5212<\/h4>\n<table>\n<tr>\u6d41\u91cf\u7b49\u7ea7QPSProxyQueryNodeDataNode\u5355\u8282\u70b9\u89c4\u683c<\/tr>\n<tbody>\n<tr>\n<td>\u4f4e<\/td>\n<td>1K<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>1<\/td>\n<td>4C\/32G<\/td>\n<\/tr>\n<tr>\n<td>\u4e2d<\/td>\n<td>5K<\/td>\n<td>2<\/td>\n<td>2<\/td>\n<td>2<\/td>\n<td>8C\/64G &#043; T4<\/td>\n<\/tr>\n<tr>\n<td>\u9ad8<\/td>\n<td>10K<\/td>\n<td>2<\/td>\n<td>3<\/td>\n<td>2<\/td>\n<td>16C\/128G<\/td>\n<\/tr>\n<tr>\n<td>\u8d85\u5927<\/td>\n<td>50K<\/td>\n<td>4<\/td>\n<td>8<\/td>\n<td>4<\/td>\n<td>32C\/256G<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>\u5173\u952e\u914d\u7f6e<\/h4>\n<p><span class=\"token key atrule\">apiVersion<\/span><span class=\"token punctuation\">:<\/span> milvus.io\/v1beta1<br \/>\n<span class=\"token key atrule\">kind<\/span><span class=\"token punctuation\">:<\/span> Milvus<br \/>\n<span class=\"token key atrule\">metadata<\/span><span class=\"token punctuation\">:<\/span><br \/>\n  <span class=\"token key atrule\">name<\/span><span class=\"token punctuation\">:<\/span> prod<span class=\"token punctuation\">&#8211;<\/span>milvus<br \/>\n  <span class=\"token key atrule\">namespace<\/span><span class=\"token punctuation\">:<\/span> milvus<br \/>\n<span class=\"token key atrule\">spec<\/span><span class=\"token punctuation\">:<\/span><br \/>\n  <span class=\"token key atrule\">mode<\/span><span class=\"token punctuation\">:<\/span> cluster<br \/>\n  <span class=\"token key atrule\">components<\/span><span class=\"token punctuation\">:<\/span><br \/>\n    <span class=\"token key atrule\">image<\/span><span class=\"token punctuation\">:<\/span> milvusdb\/milvus<span class=\"token punctuation\">:<\/span>v2.5.4<br \/>\n    <span class=\"token key atrule\">proxy<\/span><span class=\"token punctuation\">:<\/span><br \/>\n      <span class=\"token key atrule\">replicas<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">3<\/span><br \/>\n      <span class=\"token key atrule\">serviceType<\/span><span class=\"token punctuation\">:<\/span> ClusterIP<br \/>\n    <span class=\"token key atrule\">queryNode<\/span><span class=\"token punctuation\">:<\/span><br \/>\n      <span class=\"token key atrule\">replicas<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">3<\/span><br \/>\n      <span class=\"token key atrule\">resources<\/span><span class=\"token punctuation\">:<\/span><br \/>\n        <span class=\"token key atrule\">requests<\/span><span class=\"token punctuation\">:<\/span><br \/>\n          <span class=\"token key atrule\">memory<\/span><span class=\"token punctuation\">:<\/span> 32Gi<br \/>\n          <span class=\"token key atrule\">cpu<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">8<\/span><br \/>\n        <span class=\"token key atrule\">limits<\/span><span class=\"token punctuation\">:<\/span><br \/>\n          <span class=\"token key atrule\">memory<\/span><span class=\"token punctuation\">:<\/span> 48Gi<br \/>\n          <span class=\"token key atrule\">cpu<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">16<\/span><br \/>\n    <span class=\"token key atrule\">dataNode<\/span><span class=\"token punctuation\">:<\/span><br \/>\n      <span class=\"token key atrule\">replicas<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">2<\/span><br \/>\n      <span class=\"token key atrule\">resources<\/span><span class=\"token punctuation\">:<\/span><br \/>\n        <span class=\"token key atrule\">requests<\/span><span class=\"token punctuation\">:<\/span><br \/>\n          <span class=\"token key atrule\">memory<\/span><span class=\"token punctuation\">:<\/span> 16Gi<br \/>\n          <span class=\"token key atrule\">cpu<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">4<\/span><br \/>\n        <span class=\"token key atrule\">limits<\/span><span class=\"token punctuation\">:<\/span><br \/>\n          <span class=\"token key atrule\">memory<\/span><span class=\"token punctuation\">:<\/span> 32Gi<br \/>\n          <span class=\"token key atrule\">cpu<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">8<\/span><br \/>\n    <span class=\"token key atrule\">indexNode<\/span><span class=\"token punctuation\">:<\/span><br \/>\n      <span class=\"token key atrule\">replicas<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">1<\/span><br \/>\n      <span class=\"token key atrule\">resources<\/span><span class=\"token punctuation\">:<\/span><br \/>\n        <span class=\"token key atrule\">requests<\/span><span class=\"token punctuation\">:<\/span><br \/>\n          <span class=\"token key atrule\">memory<\/span><span class=\"token punctuation\">:<\/span> 16Gi<br \/>\n          <span class=\"token key atrule\">cpu<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">8<\/span><br \/>\n        <span class=\"token key atrule\">limits<\/span><span class=\"token punctuation\">:<\/span><br \/>\n          <span class=\"token key atrule\">memory<\/span><span class=\"token punctuation\">:<\/span> 32Gi<br \/>\n          <span class=\"token key atrule\">cpu<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">16<\/span><br \/>\n  <span class=\"token key atrule\">dependencies<\/span><span class=\"token punctuation\">:<\/span><br \/>\n    <span class=\"token key atrule\">etcd<\/span><span class=\"token punctuation\">:<\/span><br \/>\n      <span class=\"token key atrule\">external<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token boolean important\">true<\/span><br \/>\n      <span class=\"token key atrule\">endpoints<\/span><span class=\"token punctuation\">:<\/span><br \/>\n        <span class=\"token punctuation\">&#8211;<\/span> etcd<span class=\"token punctuation\">&#8211;<\/span>0.etcd<span class=\"token punctuation\">&#8211;<\/span>headless<span class=\"token punctuation\">:<\/span><span class=\"token number\">2379<\/span><br \/>\n    <span class=\"token key atrule\">storage<\/span><span class=\"token punctuation\">:<\/span><br \/>\n      <span class=\"token key atrule\">external<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token boolean important\">true<\/span><br \/>\n      <span class=\"token key atrule\">endpoint<\/span><span class=\"token punctuation\">:<\/span> s3.amazonaws.com<br \/>\n      <span class=\"token key atrule\">bucket<\/span><span class=\"token punctuation\">:<\/span> milvus<span class=\"token punctuation\">&#8211;<\/span>prod<br \/>\n      <span class=\"token key atrule\">accessKey<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token string\">&#034;${AWS_ACCESS_KEY}&#034;<\/span><br \/>\n      <span class=\"token key atrule\">secretKey<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token string\">&#034;${AWS_SECRET_KEY}&#034;<\/span><br \/>\n    <span class=\"token key atrule\">msgStream<\/span><span class=\"token punctuation\">:<\/span><br \/>\n      <span class=\"token key atrule\">external<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token boolean important\">true<\/span><br \/>\n      <span class=\"token key atrule\">kafka<\/span><span class=\"token punctuation\">:<\/span><br \/>\n        <span class=\"token key atrule\">broker<\/span><span class=\"token punctuation\">:<\/span> kafka<span class=\"token punctuation\">&#8211;<\/span>broker<span class=\"token punctuation\">:<\/span><span class=\"token number\">9092<\/span><br \/>\n  <span class=\"token key atrule\">config<\/span><span class=\"token punctuation\">:<\/span><br \/>\n    <span class=\"token comment\"># \u5173\u952e\u4f18\u5316\u53c2\u6570<\/span><br \/>\n    <span class=\"token key atrule\">queryNode<\/span><span class=\"token punctuation\">:<\/span><br \/>\n      <span class=\"token key atrule\">cache<\/span><span class=\"token punctuation\">:<\/span><br \/>\n        <span class=\"token key atrule\">cacheSize<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">32<\/span>           <span class=\"token comment\"># QueryNode \u7f13\u5b58\u5927\u5c0f&#xff0c;\u5355\u4f4d GB<\/span><br \/>\n        <span class=\"token key atrule\">warmup<\/span><span class=\"token punctuation\">:<\/span> async           <span class=\"token comment\"># \u5f02\u6b65\u9884\u70ed&#xff0c;\u907f\u514d\u542f\u52a8\u963b\u585e<\/span><br \/>\n    <span class=\"token key atrule\">dataCoord<\/span><span class=\"token punctuation\">:<\/span><br \/>\n      <span class=\"token key atrule\">segment<\/span><span class=\"token punctuation\">:<\/span><br \/>\n        <span class=\"token key atrule\">maxSize<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">512<\/span>            <span class=\"token comment\"># \u5355 Segment \u6700\u5927 512MB<\/span><br \/>\n        <span class=\"token key atrule\">maxLifetime<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">86400<\/span>      <span class=\"token comment\"># 24 \u5c0f\u65f6\u5f3a\u5236 Flush<\/span><br \/>\n    <span class=\"token key atrule\">common<\/span><span class=\"token punctuation\">:<\/span><br \/>\n      <span class=\"token key atrule\">security<\/span><span class=\"token punctuation\">:<\/span><br \/>\n        <span class=\"token key atrule\">authorizationEnabled<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token boolean important\">true<\/span><br \/>\n        <span class=\"token key atrule\">tlsMode<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">1<\/span><br \/>\n      <span class=\"token key atrule\">retentionDuration<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">43200<\/span>  <span class=\"token comment\"># Binlog \u4fdd\u7559 12 \u5c0f\u65f6<\/span><\/p>\n<h4>\u4e3a\u4ec0\u4e48\u5916\u90e8\u4f9d\u8d56\u8981\u72ec\u7acb\u90e8\u7f72<\/h4>\n<ul>\n<li>etcd&#xff1a;Milvus \u5185\u5d4c\u7684 etcd \u4e0d\u505a\u6301\u4e45\u5316&#xff0c;\u91cd\u542f\u540e\u5168\u96c6\u7fa4\u5143\u6570\u636e\u4e22\u5931\u3002\u751f\u4ea7\u73af\u5883\u5fc5\u987b\u5916\u90e8\u72ec\u7acb\u90e8\u7f72 3 \u8282\u70b9 etcd \u96c6\u7fa4\u3002<\/li>\n<li>MinIO\/S3&#xff1a;\u5185\u90e8 MinIO \u65e0\u6cd5\u505a\u9ad8\u53ef\u7528\u3002\u751f\u4ea7\u73af\u5883\u8d70 AWS S3 \/ \u963f\u91cc\u4e91 OSS \/ Ceph\u3002<\/li>\n<li>Kafka\/Pulsar&#xff1a;\u5185\u5d4c RocksMQ \u65e0\u6cd5\u5904\u7406 &gt; 10MB\/s \u7684\u5199\u5165\u541e\u5410&#xff0c;\u5fc5\u987b\u5207\u5916\u90e8 Kafka\u3002<\/li>\n<\/ul>\n<h3>\u4e09\u3001\u7d22\u5f15\u9009\u578b\u4e0e\u8c03\u53c2<\/h3>\n<h4>\u7d22\u5f15\u5bf9\u6bd4\u77e9\u9635<\/h4>\n<table>\n<tr>\u7d22\u5f15\u7c7b\u578b\u7cbe\u5ea6\u901f\u5ea6\u5185\u5b58\u9002\u7528\u573a\u666f\u6784\u5efa\u65f6\u95f4<\/tr>\n<tbody>\n<tr>\n<td>IVF_FLAT<\/td>\n<td>\u9ad8<\/td>\n<td>\u4e2d<\/td>\n<td>\u4f4e<\/td>\n<td>\u901a\u7528&#xff0c;\u7cbe\u5ea6\u4f18\u5148<\/td>\n<td>\u5feb<\/td>\n<\/tr>\n<tr>\n<td>IVF_SQ8<\/td>\n<td>\u4e2d<\/td>\n<td>\u5feb<\/td>\n<td>\u66f4\u4f4e<\/td>\n<td>\u5185\u5b58\u654f\u611f<\/td>\n<td>\u5feb<\/td>\n<\/tr>\n<tr>\n<td>IVF_PQ<\/td>\n<td>\u4f4e<\/td>\n<td>\u5feb<\/td>\n<td>\u6781\u4f4e<\/td>\n<td>\u8d85\u5927\u89c4\u6a21&#xff08;&gt; \u4ebf\u7ea7&#xff09;<\/td>\n<td>\u4e2d<\/td>\n<\/tr>\n<tr>\n<td>HNSW<\/td>\n<td>\u6781\u9ad8<\/td>\n<td>\u6700\u5feb<\/td>\n<td>\u9ad8<\/td>\n<td>\u4f4e\u5ef6\u8fdf&#xff0c;\u5c0f\u89c4\u6a21&#xff08;&lt; 1 \u4ebf&#xff09;<\/td>\n<td>\u6162<\/td>\n<\/tr>\n<tr>\n<td>DiskANN<\/td>\n<td>\u9ad8<\/td>\n<td>\u4e2d<\/td>\n<td>\u6781\u4f4e<\/td>\n<td>\u78c1\u76d8\u5b58\u50a8&#xff0c;\u6210\u672c\u654f\u611f<\/td>\n<td>\u6162<\/td>\n<\/tr>\n<tr>\n<td>GPU_IVF_FLAT<\/td>\n<td>\u9ad8<\/td>\n<td>\u6781\u5feb<\/td>\n<td>GPU \u663e\u5b58<\/td>\n<td>\u9ad8\u541e\u5410&#xff0c;\u4f4e\u5ef6\u8fdf<\/td>\n<td>\u5feb<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>\u8c03\u53c2\u539f\u5219<\/h4>\n<p><span class=\"token comment\"># HNSW \u53c2\u6570&#xff08;\u5c0f\u89c4\u6a21&#xff0c;\u7cbe\u5ea6\u4f18\u5148&#xff09;<\/span><br \/>\nindex_params <span class=\"token operator\">&#061;<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token string\">&#034;index_type&#034;<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token string\">&#034;HNSW&#034;<\/span><span class=\"token punctuation\">,<\/span><br \/>\n    <span class=\"token string\">&#034;metric_type&#034;<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token string\">&#034;COSINE&#034;<\/span><span class=\"token punctuation\">,<\/span><br \/>\n    <span class=\"token string\">&#034;params&#034;<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n        <span class=\"token string\">&#034;M&#034;<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">32<\/span><span class=\"token punctuation\">,<\/span>               <span class=\"token comment\"># \u8282\u70b9\u8fde\u63a5\u6570&#xff0c;\u8d8a\u5927\u7cbe\u5ea6\u8d8a\u9ad8&#xff0c;\u5185\u5b58\u8d8a\u5927<\/span><br \/>\n        <span class=\"token string\">&#034;efConstruction&#034;<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">200<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token comment\"># \u6784\u5efa\u65f6\u641c\u7d22\u5bbd\u5ea6<\/span><br \/>\n        <span class=\"token string\">&#034;ef&#034;<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">64<\/span>               <span class=\"token comment\"># \u67e5\u8be2\u65f6\u641c\u7d22\u5bbd\u5ea6&#xff08;\u5355\u72ec\u8bbe\u7f6e&#xff09;<\/span><br \/>\n    <span class=\"token punctuation\">}<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p><span class=\"token comment\"># IVF_FLAT \u53c2\u6570&#xff08;\u901a\u7528&#xff0c;\u5747\u8861&#xff09;<\/span><br \/>\nindex_params <span class=\"token operator\">&#061;<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n    <span class=\"token string\">&#034;index_type&#034;<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token string\">&#034;IVF_FLAT&#034;<\/span><span class=\"token punctuation\">,<\/span><br \/>\n    <span class=\"token string\">&#034;metric_type&#034;<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token string\">&#034;COSINE&#034;<\/span><span class=\"token punctuation\">,<\/span><br \/>\n    <span class=\"token string\">&#034;params&#034;<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token punctuation\">{<\/span><br \/>\n        <span class=\"token string\">&#034;nlist&#034;<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">2048<\/span><span class=\"token punctuation\">,<\/span>         <span class=\"token comment\"># \u805a\u7c7b\u6570 &#061; 4 \u00d7 sqrt(N)&#xff0c;N \u4e3a\u5411\u91cf\u6570<\/span><br \/>\n        <span class=\"token string\">&#034;nprobe&#034;<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">16<\/span>           <span class=\"token comment\"># \u67e5\u8be2\u65f6\u641c\u7d22\u7684\u805a\u7c7b\u6570&#xff0c;\u8d8a\u5927\u7cbe\u5ea6\u8d8a\u9ad8<\/span><br \/>\n    <span class=\"token punctuation\">}<\/span><br \/>\n<span class=\"token punctuation\">}<\/span><\/p>\n<p>\u9ec4\u91d1\u6cd5\u5219&#xff1a;nlist &#061; 4 \u00d7 sqrt(N)&#xff0c;nprobe \u9ed8\u8ba4 16-32\u3002<\/p>\n<h3>\u56db\u3001\u76d1\u63a7\u4f53\u7cfb<\/h3>\n<h4>\u5fc5\u987b\u76d1\u63a7\u7684\u6307\u6807<\/h4>\n<table>\n<tr>\u5c42\u7ea7\u6307\u6807\u9608\u503c\u62a5\u8b66<\/tr>\n<tbody>\n<tr>\n<td>Proxy<\/td>\n<td>\u8bf7\u6c42\u5ef6\u8fdf p99<\/td>\n<td>&gt; 100ms<\/td>\n<td>\u4e0a\u6e38\u544a\u8b66<\/td>\n<\/tr>\n<tr>\n<td>Proxy<\/td>\n<td>QPS<\/td>\n<td>\u964d\u5e45 &gt; 30%<\/td>\n<td>\u670d\u52a1\u5f02\u5e38<\/td>\n<\/tr>\n<tr>\n<td>QueryNode<\/td>\n<td>Segment \u52a0\u8f7d\u6570<\/td>\n<td>\u5355\u8282\u70b9 &gt; 500<\/td>\n<td>\u6570\u636e\u503e\u659c<\/td>\n<\/tr>\n<tr>\n<td>QueryNode<\/td>\n<td>\u5185\u5b58\u4f7f\u7528\u7387<\/td>\n<td>&gt; 85%<\/td>\n<td>OOM \u98ce\u9669<\/td>\n<\/tr>\n<tr>\n<td>QueryNode<\/td>\n<td>\u7f13\u5b58\u547d\u4e2d\u7387<\/td>\n<td>&lt; 80%<\/td>\n<td>\u7f13\u5b58\u4e0d\u8db3<\/td>\n<\/tr>\n<tr>\n<td>DataNode<\/td>\n<td>\u5199\u5165\u5ef6\u8fdf p99<\/td>\n<td>&gt; 500ms<\/td>\n<td>Flush \u963b\u585e<\/td>\n<\/tr>\n<tr>\n<td>DataNode<\/td>\n<td>Flush \u961f\u5217\u957f\u5ea6<\/td>\n<td>&gt; 1000<\/td>\n<td>\u80cc\u538b<\/td>\n<\/tr>\n<tr>\n<td>IndexNode<\/td>\n<td>\u7d22\u5f15\u6784\u5efa\u961f\u5217<\/td>\n<td>&gt; 10<\/td>\n<td>\u7d22\u5f15\u79ef\u538b<\/td>\n<\/tr>\n<tr>\n<td>IndexNode<\/td>\n<td>\u6784\u5efa\u901f\u5ea6<\/td>\n<td>&lt; 10MB\/s<\/td>\n<td>I\/O \u74f6\u9888<\/td>\n<\/tr>\n<tr>\n<td>etcd<\/td>\n<td>\u8bf7\u6c42\u5ef6\u8fdf p99<\/td>\n<td>&gt; 100ms<\/td>\n<td>\u5143\u6570\u636e\u6545\u969c<\/td>\n<\/tr>\n<tr>\n<td>S3<\/td>\n<td>\u8bf7\u6c42\u5ef6\u8fdf p99<\/td>\n<td>&gt; 500ms<\/td>\n<td>\u5b58\u50a8\u74f6\u9888<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>Prometheus &#043; Grafana \u90e8\u7f72<\/h4>\n<p><span class=\"token comment\"># \u4f7f\u7528\u5b98\u65b9 Grafana \u4eea\u8868\u76d8<\/span><br \/>\n<span class=\"token builtin class-name\">cd<\/span> deployments\/monitor\/grafana<br \/>\n<span class=\"token function\">docker-compose<\/span> up <span class=\"token parameter variable\">-d<\/span><\/p>\n<p>Milvus \u66b4\u9732 \/metrics \u7aef\u70b9&#xff0c;Prometheus \u81ea\u52a8\u6293\u53d6\u5373\u53ef\u3002<\/p>\n<h3>\u4e94\u3001\u9ad8\u9891\u6545\u969c\u4e0e\u6392\u67e5<\/h3>\n<h4>1. \u7d22\u5f15\u6784\u5efa\u5931\u8d25&#xff08;ErrorCode 21: BuildIndexError&#xff09;<\/h4>\n<p>\u73b0\u8c61&#xff1a;fail to build index: out of memory<\/p>\n<p>\u6839\u56e0&#xff1a;\u5927 Segment \u7d22\u5f15\u6784\u5efa\u65f6\u5185\u5b58\u8d85\u8fc7 IndexNode \u9650\u5236\u3002<\/p>\n<p>\u6392\u67e5\u94fe\u8def&#xff1a;<\/p>\n<p><span class=\"token comment\"># 1. \u67e5\u770b IndexNode \u5185\u5b58<\/span><br \/>\nkubectl <span class=\"token function\">top<\/span> pod <span class=\"token parameter variable\">-n<\/span> milvus <span class=\"token operator\">|<\/span> <span class=\"token function\">grep<\/span> indexnode<\/p>\n<p><span class=\"token comment\"># 2. \u67e5\u770b\u5f53\u524d\u6784\u5efa\u4efb\u52a1<\/span><br \/>\n<span class=\"token comment\"># \u8fde\u63a5 Milvus \u540e\u6267\u884c<\/span><br \/>\nmilvus_cli index <span class=\"token parameter variable\">-l<\/span><\/p>\n<p><span class=\"token comment\"># 3. \u67e5\u770b Segment \u5927\u5c0f<\/span><br \/>\n<span class=\"token comment\"># \u5728 DataCoord \u65e5\u5fd7\u4e2d grep &#034;sealed segment&#034;<\/span><\/p>\n<p>\u4fee\u590d&#xff1a;<\/p>\n<ul>\n<li>\u964d\u4f4e dataCoord.segment.maxSize \u4ece 1024MB \u5230 512MB&#xff08;\u51cf\u5c0f Segment \u53ef\u964d\u4f4e\u7d22\u5f15\u6784\u5efa\u5cf0\u503c\u5185\u5b58&#xff09;<\/li>\n<li>\u589e\u5927 IndexNode \u5185\u5b58\u9650\u5236<\/li>\n<li>\u6362\u7528 IVF_FLAT \u66ff\u4ee3 HNSW&#xff08;HNSW \u6784\u5efa\u65f6\u5185\u5b58\u662f IVF \u7684 3-5 \u500d&#xff09;<\/li>\n<\/ul>\n<h4>2. \u67e5\u8be2\u5ef6\u8fdf\u7a81\u7136\u98d9\u5347&#xff08;p99 &gt; 500ms&#xff09;<\/h4>\n<p>\u6392\u67e5\u51b3\u7b56\u6811&#xff1a;<\/p>\n<p>\u67e5\u8be2\u53d8\u6162<br \/>\n\u251c\u2500 \u6240\u6709\u67e5\u8be2\u90fd\u6162 \u2192 Proxy\/QueryCoord \u74f6\u9888<br \/>\n\u2502   \u251c\u2500 \u68c0\u67e5 Proxy \u8fde\u63a5\u6570&#xff1a;netstat -an | grep 19530 | wc -l<br \/>\n\u2502   \u2514\u2500 \u68c0\u67e5 QueryCoord \u9891\u9053\u5206\u914d&#xff1a;\u662f\u5426\u5927\u91cf\u9891\u9053\u96c6\u4e2d\u5728\u5355\u4e2a QueryNode<br \/>\n\u251c\u2500 \u90e8\u5206 Collection \u6162 \u2192 \u6570\u636e\u503e\u659c<br \/>\n\u2502   \u251c\u2500 \u68c0\u67e5 Segment \u5206\u5e03&#xff1a;QueryNode \u4e0a Segment \u6570\u91cf\u662f\u5426\u5747\u8861<br \/>\n\u2502   \u2514\u2500 \u624b\u52a8\u89e6\u53d1 LoadBalance&#xff1a;\u901a\u8fc7 MilvusOperator \u914d\u7f6e<br \/>\n\u2514\u2500 \u7279\u5b9a\u67e5\u8be2\u6162 \u2192 \u7d22\u5f15\u6216\u53c2\u6570\u95ee\u9898<br \/>\n    \u251c\u2500 \u68c0\u67e5 nprobe\/ef \u662f\u5426\u5408\u7406<br \/>\n    \u2514\u2500 \u68c0\u67e5\u8fc7\u6ee4\u6761\u4ef6\u662f\u5426\u547d\u4e2d\u4e86\u672a\u5efa\u7d22\u5f15\u7684\u6807\u91cf\u5b57\u6bb5<\/p>\n<p>\u4fee\u590d&#xff1a;<\/p>\n<ul>\n<li>\u7ed9\u8fc7\u6ee4\u5b57\u6bb5\u521b\u5efa\u6807\u91cf\u7d22\u5f15<\/li>\n<li>\u589e\u52a0 QueryNode \u526f\u672c\u6570<\/li>\n<li>\u51cf\u5c0f top_k \u503c<\/li>\n<li>\u4e3a Collection \u521b\u5efa\u5206\u533a&#xff08;Partition&#xff09;&#xff0c;\u7528\u5206\u533a\u952e\u8fc7\u6ee4\u66ff\u4ee3\u5168\u91cf\u626b\u63cf<\/li>\n<\/ul>\n<h4>3. \u5185\u5b58\u6ea2\u51fa&#xff08;OOM&#xff09;<\/h4>\n<p>\u53d1\u751f\u6761\u4ef6&#xff1a;<\/p>\n<ul>\n<li>QueryNode \u540c\u65f6\u52a0\u8f7d\u7684 Segment \u8fc7\u591a<\/li>\n<li>HNSW \u7d22\u5f15\u5185\u5b58\u5360\u7528\u8fc7\u5927<\/li>\n<li>\u5927\u91cf\u5e76\u53d1\u67e5\u8be2\u7684\u4e34\u65f6\u5185\u5b58<\/li>\n<\/ul>\n<p>\u4fee\u590d&#xff1a;<\/p>\n<p><span class=\"token key atrule\">queryNode<\/span><span class=\"token punctuation\">:<\/span><br \/>\n  <span class=\"token key atrule\">memoryLimit<\/span><span class=\"token punctuation\">:<\/span> 48Gi          <span class=\"token comment\"># \u4e0a\u9650<\/span><br \/>\n  <span class=\"token key atrule\">cache<\/span><span class=\"token punctuation\">:<\/span><br \/>\n    <span class=\"token key atrule\">cacheSize<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">24<\/span>             <span class=\"token comment\"># \u7f13\u5b58\u4e0a\u9650&#xff0c;\u8bbe\u4e3a Pod \u5185\u5b58\u7684 50%-60%<\/span><br \/>\n    <span class=\"token key atrule\">warmup<\/span><span class=\"token punctuation\">:<\/span> async<br \/>\n  <span class=\"token key atrule\">grouping<\/span><span class=\"token punctuation\">:<\/span><br \/>\n    <span class=\"token key atrule\">maxNQ<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">1000<\/span>               <span class=\"token comment\"># \u5355\u6b21\u67e5\u8be2\u6700\u5927\u5411\u91cf\u6570&#xff0c;\u9632 OOM<\/span><\/p>\n<h4>4. Compaction \u79ef\u538b&#xff08;\u5c0f\u6587\u4ef6\u8fc7\u591a&#xff09;<\/h4>\n<p>\u73b0\u8c61&#xff1a;\/metrics \u4e2d compaction_pending \u6301\u7eed\u589e\u957f&#xff0c;\u67e5\u8be2\u53d8\u6162\u3002<\/p>\n<p>\u6839\u56e0&#xff1a;\u9891\u7e41\u5c0f\u6279\u91cf\u63d2\u5165\u4ea7\u751f\u5927\u91cf\u5c0f Segment&#xff0c;Compaction \u5408\u5e76\u901f\u5ea6\u8ddf\u4e0d\u4e0a\u3002<\/p>\n<p>\u4fee\u590d&#xff1a;<\/p>\n<p><span class=\"token comment\"># 1. \u589e\u5927 Compaction \u5e76\u53d1<\/span><br \/>\n<span class=\"token comment\"># milvus.yaml<\/span><br \/>\ndataCoord:<br \/>\n  compaction:<br \/>\n    maxParallel: <span class=\"token number\">4<\/span>          <span class=\"token comment\"># \u9ed8\u8ba4 3<\/span><\/p>\n<p><span class=\"token comment\"># 2. \u6279\u91cf\u5199\u5165&#xff0c;\u6bcf\u6b21\u81f3\u5c11 1000 \u6761<\/span><br \/>\n<span class=\"token comment\"># 3. \u89e6\u53d1\u624b\u52a8 Compaction<\/span><\/p>\n<p>collection<span class=\"token punctuation\">.<\/span>compact<span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><\/p>\n<h4>5. TSO \u5ef6\u8fdf&#xff08;\u5168\u96c6\u7fa4\u5361\u6b7b&#xff09;<\/h4>\n<p>\u73b0\u8c61&#xff1a;\u6240\u6709\u64cd\u4f5c\u8d85\u65f6&#xff0c;\u4f46\u5404\u7ec4\u4ef6 Pod \u5747\u4e3a Running\u3002<\/p>\n<p>\u6839\u56e0&#xff1a;RootCoord \u5355\u70b9\u6545\u969c\u6216 etcd \u54cd\u5e94\u6162&#xff0c;\u5bfc\u81f4 TSO \u5206\u914d\u5ef6\u8fdf\u3002<\/p>\n<p>\u6392\u67e5&#xff1a;<\/p>\n<p><span class=\"token comment\"># \u68c0\u67e5 RootCoord \u662f\u5426\u5b58\u6d3b<\/span><br \/>\nkubectl logs <span class=\"token parameter variable\">-n<\/span> milvus deployment\/rootcoord <span class=\"token parameter variable\">&#8211;tail<\/span><span class=\"token operator\">&#061;<\/span><span class=\"token number\">50<\/span> <span class=\"token operator\">|<\/span> <span class=\"token function\">grep<\/span> <span class=\"token parameter variable\">-i<\/span> <span class=\"token string\">&#034;error\\\\|tso&#034;<\/span><\/p>\n<p><span class=\"token comment\"># \u68c0\u67e5 etcd \u5ef6\u8fdf<\/span><br \/>\netcdctl endpoint health<\/p>\n<p>\u4fee\u590d&#xff1a;\u786e\u4fdd etcd \u4f7f\u7528 SSD&#xff0c;RootCoord \u4e3a\u9ad8\u53ef\u7528\u90e8\u7f72&#xff08;Active-Standby \u6a21\u5f0f&#xff0c;Milvus Operator \u81ea\u52a8\u7ba1\u7406&#xff09;\u3002<\/p>\n<h3>\u516d\u3001\u5347\u7ea7\u7b56\u7565<\/h3>\n<h4>2.5 \u2192 2.6 \u6eda\u52a8\u5347\u7ea7&#xff08;\u96f6\u505c\u673a&#xff09;<\/h4>\n<p>\u4e25\u683c\u6309\u4ee5\u4e0b\u987a\u5e8f\u6267\u884c $TRAE_REF&#xff1a;<\/p>\n<p>1. \u5907\u4efd\u6570\u636e&#xff08;milvus-backup&#xff09;<br \/>\n2. \u62c9\u65b0 Streaming Node<br \/>\n3. \u8fc1\u79fb Delegator \u5230\u65b0 Streaming Node<br \/>\n4. \u6eda\u52a8\u5347\u7ea7 MixCoord<br \/>\n5. \u6eda\u52a8\u5347\u7ea7 QueryNode<br \/>\n6. \u6eda\u52a8\u5347\u7ea7 DataNode<br \/>\n7. \u6eda\u52a8\u5347\u7ea7 IndexNode<br \/>\n8. \u6eda\u52a8\u5347\u7ea7 Proxy<br \/>\n9. \u9a8c\u8bc1\u6240\u6709\u7ec4\u4ef6\u6b63\u5e38<\/p>\n<h4>\u5347\u7ea7\u524d\u5fc5\u987b\u5907\u4efd<\/h4>\n<p><span class=\"token comment\"># \u5b89\u88c5<\/span><br \/>\npip <span class=\"token function\">install<\/span> milvus-backup<\/p>\n<p><span class=\"token comment\"># \u5168\u91cf\u5907\u4efd<\/span><br \/>\nmilvus-backup backup <span class=\"token punctuation\">\\\\<\/span><br \/>\n  <span class=\"token parameter variable\">&#8211;host<\/span> <span class=\"token number\">127.0<\/span>.0.1 <span class=\"token punctuation\">\\\\<\/span><br \/>\n  <span class=\"token parameter variable\">&#8211;collection<\/span> <span class=\"token string\">&#034;*&#034;<\/span> <span class=\"token punctuation\">\\\\<\/span><br \/>\n  &#8211;backup-path \/backup\/20250824<\/p>\n<h3>\u4e03\u3001\u5b89\u5168\u52a0\u56fa<\/h3>\n<p><span class=\"token key atrule\">common<\/span><span class=\"token punctuation\">:<\/span><br \/>\n  <span class=\"token key atrule\">security<\/span><span class=\"token punctuation\">:<\/span><br \/>\n    <span class=\"token key atrule\">authorizationEnabled<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token boolean important\">true<\/span><br \/>\n    <span class=\"token key atrule\">defaultRootPassword<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token string\">&#034;&lt;\u5f3a\u5bc6\u7801&gt;&#034;<\/span><br \/>\n    <span class=\"token key atrule\">tlsMode<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token number\">1<\/span>              <span class=\"token comment\"># \u5355\u5411 TLS<\/span><\/p>\n<p>\u521b\u5efa RBAC \u7528\u6237&#xff1a;<\/p>\n<p><span class=\"token keyword\">from<\/span> pymilvus <span class=\"token keyword\">import<\/span> MilvusClient<\/p>\n<p>client <span class=\"token operator\">&#061;<\/span> MilvusClient<span class=\"token punctuation\">(<\/span>uri<span class=\"token operator\">&#061;<\/span><span class=\"token string\">&#034;https:\/\/milvus:19530&#034;<\/span><span class=\"token punctuation\">,<\/span> user<span class=\"token operator\">&#061;<\/span><span class=\"token string\">&#034;root&#034;<\/span><span class=\"token punctuation\">,<\/span> password<span class=\"token operator\">&#061;<\/span><span class=\"token string\">&#034;xxx&#034;<\/span><span class=\"token punctuation\">)<\/span><\/p>\n<p><span class=\"token comment\"># \u521b\u5efa\u53ea\u8bfb\u7528\u6237<\/span><br \/>\nclient<span class=\"token punctuation\">.<\/span>create_user<span class=\"token punctuation\">(<\/span>user_name<span class=\"token operator\">&#061;<\/span><span class=\"token string\">&#034;reader&#034;<\/span><span class=\"token punctuation\">,<\/span> password<span class=\"token operator\">&#061;<\/span><span class=\"token string\">&#034;xxx&#034;<\/span><span class=\"token punctuation\">)<\/span><br \/>\nclient<span class=\"token punctuation\">.<\/span>grant_role<span class=\"token punctuation\">(<\/span>user_name<span class=\"token operator\">&#061;<\/span><span class=\"token string\">&#034;reader&#034;<\/span><span class=\"token punctuation\">,<\/span> role_name<span class=\"token operator\">&#061;<\/span><span class=\"token string\">&#034;public&#034;<\/span><span class=\"token punctuation\">)<\/span><\/p>\n<p><span class=\"token comment\"># \u521b\u5efa\u8bfb\u5199\u7528\u6237<\/span><br \/>\nclient<span class=\"token punctuation\">.<\/span>create_user<span class=\"token punctuation\">(<\/span>user_name<span class=\"token operator\">&#061;<\/span><span class=\"token string\">&#034;writer&#034;<\/span><span class=\"token punctuation\">,<\/span> password<span class=\"token operator\">&#061;<\/span><span class=\"token string\">&#034;xxx&#034;<\/span><span class=\"token punctuation\">)<\/span><br \/>\nclient<span class=\"token punctuation\">.<\/span>grant_role<span class=\"token punctuation\">(<\/span>user_name<span class=\"token operator\">&#061;<\/span><span class=\"token string\">&#034;writer&#034;<\/span><span class=\"token punctuation\">,<\/span> role_name<span class=\"token operator\">&#061;<\/span><span class=\"token string\">&#034;public&#034;<\/span><span class=\"token punctuation\">)<\/span><\/p>\n<h3>\u516b\u3001\u8fd0\u7ef4\u68c0\u67e5\u6e05\u5355<\/h3>\n<table>\n<tr>\u9891\u7387\u68c0\u67e5\u9879\u547d\u4ee4\/\u5de5\u5177<\/tr>\n<tbody>\n<tr>\n<td>\u6bcf\u65e5<\/td>\n<td>\u5404\u7ec4\u4ef6 Pod \u72b6\u6001<\/td>\n<td>kubectl get pods -n milvus<\/td>\n<\/tr>\n<tr>\n<td>\u6bcf\u65e5<\/td>\n<td>QueryNode \u5185\u5b58\u4f7f\u7528<\/td>\n<td>kubectl top pods -n milvus<\/td>\n<\/tr>\n<tr>\n<td>\u6bcf\u65e5<\/td>\n<td>Compaction \u961f\u5217<\/td>\n<td>Grafana \u9762\u677f<\/td>\n<\/tr>\n<tr>\n<td>\u6bcf\u5468<\/td>\n<td>\u78c1\u76d8\u4f7f\u7528\u7387&#xff08;S3\/MinIO&#xff09;<\/td>\n<td>S3 \u63a7\u5236\u53f0<\/td>\n<\/tr>\n<tr>\n<td>\u6bcf\u5468<\/td>\n<td>\u7d22\u5f15\u6784\u5efa\u961f\u5217<\/td>\n<td>Grafana \u9762\u677f<\/td>\n<\/tr>\n<tr>\n<td>\u6bcf\u6708<\/td>\n<td>\u6162\u67e5\u8be2\u5206\u6790<\/td>\n<td>grep &#034;slow query&#034; \/var\/logs\/milvus\/<\/td>\n<\/tr>\n<tr>\n<td>\u6bcf\u6708<\/td>\n<td>etcd \u5feb\u7167\u5907\u4efd<\/td>\n<td>etcdctl snapshot save<\/td>\n<\/tr>\n<tr>\n<td>\u6bcf\u6708<\/td>\n<td>\u5b8c\u6574\u5907\u4efd<\/td>\n<td>milvus-backup<\/td>\n<\/tr>\n<tr>\n<td>\u5347\u7ea7\u524d<\/td>\n<td>\u7248\u672c\u517c\u5bb9\u6027\u68c0\u67e5<\/td>\n<td>\u5b98\u65b9 release notes<\/td>\n<\/tr>\n<tr>\n<td>\u5347\u7ea7\u524d<\/td>\n<td>\u6570\u636e\u5907\u4efd<\/td>\n<td>milvus-backup<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Milvus \u751f\u4ea7\u8fd0\u7ef4\u7684\u6838\u5fc3\u662f\u4e09\u6761\u7ebf**&#xff1a;\u8d44\u6e90\u7ebf&#xff08;\u5185\u5b58\u548c CPU \u9884\u7559\u8db3\u591f&#xff09;\u3001\u6570\u636e\u7ebf&#xff08;Segment \u7ba1\u7406\u3001Compaction\u3001\u7d22\u5f15\u6784\u5efa&#xff09;\u3001\u76d1\u63a7\u7ebf&#xff08;p99 \u5ef6\u8fdf\u3001OOM \u9884\u8b66\u3001\u961f\u5217\u79ef\u538b&#xff09;\u3002\u4e09\u6761\u7ebf\u90fd\u5b88\u4f4f&#xff0c;\u57fa\u672c\u4e0d\u51fa\u5927\u95ee\u9898\u3002**<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Milvus \u751f\u4ea7\u73af\u5883\u8fd0\u7ef4\u6df1\u5ea6\u6307\u5357<br \/>\n\u4e00\u3001\u67b6\u6784\u5168\u666f<br \/>\n\u6574\u4e2a\u96c6\u7fa4\u7531\u56db\u5927\u5c42\u7ec4\u6210&#xff0c;\u6bcf\u5c42\u72ec\u7acb\u6269\u5c55&#xff1a;<br \/>\nAccess Layer         Access LayerProxy  Proxy  Proxy \u2192 \u8d1f\u8f7d\u5747\u8861 \u2192 \u5ba2\u6237\u7aef SDK\u2502       \u2502       \u2502<br \/>\nCoordinator LayerRootCoord  QueryCoord  DataCoord  IndexCoord&#xff08;\u5355 Active&#xff09;\u2502      <\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[75,1741],"topic":[],"class_list":["post-107376","post","type-post","status-publish","format-standard","hentry","category-server","tag-llm","tag-milvus"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Milvus \u751f\u4ea7\u73af\u5883\u90e8\u7f72\uff0c\u4f18\u5316\uff0c\u65e5\u5e38\u7ef4\u62a4\u4e2d\u9047\u5230\u7684\u95ee\u9898 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.wsisp.com\/helps\/107376.html\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Milvus \u751f\u4ea7\u73af\u5883\u90e8\u7f72\uff0c\u4f18\u5316\uff0c\u65e5\u5e38\u7ef4\u62a4\u4e2d\u9047\u5230\u7684\u95ee\u9898 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"og:description\" content=\"Milvus \u751f\u4ea7\u73af\u5883\u8fd0\u7ef4\u6df1\u5ea6\u6307\u5357 \u4e00\u3001\u67b6\u6784\u5168\u666f \u6574\u4e2a\u96c6\u7fa4\u7531\u56db\u5927\u5c42\u7ec4\u6210&#xff0c;\u6bcf\u5c42\u72ec\u7acb\u6269\u5c55&#xff1a; Access Layer     Access LayerProxy Proxy Proxy \u2192 \u8d1f\u8f7d\u5747\u8861 \u2192 \u5ba2\u6237\u7aef SDK\u2502    \u2502    \u2502 Coordinator LayerRootCoord QueryCoord DataCoord IndexCoord&#xff08;\u5355 Active&#xff09;\u2502\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.wsisp.com\/helps\/107376.html\" \/>\n<meta property=\"og:site_name\" content=\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-19T05:40:37+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/107376.html\",\"url\":\"https:\/\/www.wsisp.com\/helps\/107376.html\",\"name\":\"Milvus \u751f\u4ea7\u73af\u5883\u90e8\u7f72\uff0c\u4f18\u5316\uff0c\u65e5\u5e38\u7ef4\u62a4\u4e2d\u9047\u5230\u7684\u95ee\u9898 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"isPartOf\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\"},\"datePublished\":\"2026-09-19T05:40:37+00:00\",\"dateModified\":\"2026-09-19T05:40:37+00:00\",\"author\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.wsisp.com\/helps\/107376.html#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.wsisp.com\/helps\/107376.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/107376.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.wsisp.com\/helps\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Milvus \u751f\u4ea7\u73af\u5883\u90e8\u7f72\uff0c\u4f18\u5316\uff0c\u65e5\u5e38\u7ef4\u62a4\u4e2d\u9047\u5230\u7684\u95ee\u9898\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#website\",\"url\":\"https:\/\/www.wsisp.com\/helps\/\",\"name\":\"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3\",\"description\":\"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"contentUrl\":\"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery\",\"caption\":\"admin\"},\"sameAs\":[\"http:\/\/wp.wsisp.com\"],\"url\":\"https:\/\/www.wsisp.com\/helps\/author\/admin\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Milvus \u751f\u4ea7\u73af\u5883\u90e8\u7f72\uff0c\u4f18\u5316\uff0c\u65e5\u5e38\u7ef4\u62a4\u4e2d\u9047\u5230\u7684\u95ee\u9898 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.wsisp.com\/helps\/107376.html","og_locale":"zh_CN","og_type":"article","og_title":"Milvus \u751f\u4ea7\u73af\u5883\u90e8\u7f72\uff0c\u4f18\u5316\uff0c\u65e5\u5e38\u7ef4\u62a4\u4e2d\u9047\u5230\u7684\u95ee\u9898 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","og_description":"Milvus \u751f\u4ea7\u73af\u5883\u8fd0\u7ef4\u6df1\u5ea6\u6307\u5357 \u4e00\u3001\u67b6\u6784\u5168\u666f \u6574\u4e2a\u96c6\u7fa4\u7531\u56db\u5927\u5c42\u7ec4\u6210&#xff0c;\u6bcf\u5c42\u72ec\u7acb\u6269\u5c55&#xff1a; Access Layer     Access LayerProxy Proxy Proxy \u2192 \u8d1f\u8f7d\u5747\u8861 \u2192 \u5ba2\u6237\u7aef SDK\u2502    \u2502    \u2502 Coordinator LayerRootCoord QueryCoord DataCoord IndexCoord&#xff08;\u5355 Active&#xff09;\u2502","og_url":"https:\/\/www.wsisp.com\/helps\/107376.html","og_site_name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","article_published_time":"2026-09-19T05:40:37+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"admin","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"4 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.wsisp.com\/helps\/107376.html","url":"https:\/\/www.wsisp.com\/helps\/107376.html","name":"Milvus \u751f\u4ea7\u73af\u5883\u90e8\u7f72\uff0c\u4f18\u5316\uff0c\u65e5\u5e38\u7ef4\u62a4\u4e2d\u9047\u5230\u7684\u95ee\u9898 - \u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","isPartOf":{"@id":"https:\/\/www.wsisp.com\/helps\/#website"},"datePublished":"2026-09-19T05:40:37+00:00","dateModified":"2026-09-19T05:40:37+00:00","author":{"@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41"},"breadcrumb":{"@id":"https:\/\/www.wsisp.com\/helps\/107376.html#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.wsisp.com\/helps\/107376.html"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.wsisp.com\/helps\/107376.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.wsisp.com\/helps"},{"@type":"ListItem","position":2,"name":"Milvus \u751f\u4ea7\u73af\u5883\u90e8\u7f72\uff0c\u4f18\u5316\uff0c\u65e5\u5e38\u7ef4\u62a4\u4e2d\u9047\u5230\u7684\u95ee\u9898"}]},{"@type":"WebSite","@id":"https:\/\/www.wsisp.com\/helps\/#website","url":"https:\/\/www.wsisp.com\/helps\/","name":"\u7f51\u7855\u4e92\u8054\u5e2e\u52a9\u4e2d\u5fc3","description":"\u9999\u6e2f\u670d\u52a1\u5668_\u9999\u6e2f\u4e91\u670d\u52a1\u5668\u8d44\u8baf_\u670d\u52a1\u5668\u5e2e\u52a9\u6587\u6863_\u670d\u52a1\u5668\u6559\u7a0b","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.wsisp.com\/helps\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/358e386c577a3ab51c4493330a20ad41","name":"admin","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.wsisp.com\/helps\/#\/schema\/person\/image\/","url":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","contentUrl":"https:\/\/gravatar.wp-china-yes.net\/avatar\/?s=96&d=mystery","caption":"admin"},"sameAs":["http:\/\/wp.wsisp.com"],"url":"https:\/\/www.wsisp.com\/helps\/author\/admin"}]}},"_links":{"self":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/107376","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/comments?post=107376"}],"version-history":[{"count":0,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/posts\/107376\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/media?parent=107376"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/categories?post=107376"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/tags?post=107376"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.wsisp.com\/helps\/wp-json\/wp\/v2\/topic?post=107376"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}