[{"data":1,"prerenderedAt":565},["ShallowReactive",2],{"tool-milvus-zilliz-en":3},{"slug":4,"published":5,"minutes":6,"category":7,"tags":8,"keywords":14,"about":23,"sources":33,"cover":52,"og":53,"expertise":54,"locales":55,"lang":56,"title":59,"description":60,"coverAlt":61,"url":26,"pricing":62,"kind":63,"metaTitle":64,"takeaways":65,"faq":71,"toc":84,"blocks":109,"others":371},"milvus-zilliz","2026-09-08",10,"rag",[9,10,11,12,13],"Vector search","Hybrid search","BM25 full text","Distributed","RAG",[15,16,17,18,19,20,21,22],"milvus","milvus vs qdrant","zilliz cloud pricing","vector database comparison","milvus hybrid search","apache milvus self-hosting","milvus 3.0","rag vector store",[24,27,30],{"name":25,"url":26},"Milvus","https:\u002F\u002Fmilvus.io",{"name":28,"url":29},"Zilliz Cloud","https:\u002F\u002Fzilliz.com",{"name":31,"url":32},"Retrieval-augmented generation","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRetrieval-augmented_generation",[34,37,40,43,46,49],{"title":35,"url":36},"Milvus architecture overview","https:\u002F\u002Fmilvus.io\u002Fdocs\u002Farchitecture_overview.md",{"title":38,"url":39},"Milvus release notes","https:\u002F\u002Fmilvus.io\u002Fdocs\u002Frelease_notes.md",{"title":41,"url":42},"Milvus releases on GitHub","https:\u002F\u002Fgithub.com\u002Fmilvus-io\u002Fmilvus\u002Freleases",{"title":44,"url":45},"Milvus README: features and licence","https:\u002F\u002Fgithub.com\u002Fmilvus-io\u002Fmilvus",{"title":47,"url":48},"Zilliz Cloud pricing","https:\u002F\u002Fzilliz.com\u002Fpricing",{"title":50,"url":51},"Zilliz Cloud list price","https:\u002F\u002Fzilliz.com\u002Fpricing\u002Fpricing-guide","\u002Fimages\u002Fblog\u002Fmilvus-zilliz\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fmilvus-zilliz\u002Fog.jpg","ai-engineer",[56,57,58],"en","de","hu","Milvus review: the most complete vector database to operate","Milvus 3.0.2 is the most complete open-source vector database and the heaviest to run. A review of its architecture, hybrid search, costs and where it should not be used.","Cover artwork for the Milvus review showing a pipeline from ingest to index, search and reranking","Apache-2.0 · Zilliz Cloud free tier","Vector database","Milvus review: complete, but heavy to run · Balázs Csorba",[66,67,68,69,70],"Milvus 3.0.2, released 20 September 2026, is current while the 2.6 branch is still maintained in parallel.","Dense, sparse and server-side BM25 vectors live in one collection, and reranking now happens inside the search request.","Self-hosting means running etcd, object storage and a WAL layer; the distributed mode is a Kubernetes deployment.","Zilliz Cloud lists dedicated compute at $0.273 per CU-hour and storage at $0.025 per GB-month, with a 5 GB free tier.","Below tens of millions of vectors the architecture is a cost rather than a capability.",[72,75,78,81],{"q":73,"a":74},"Is Milvus free to use?","The Milvus code is Apache-2.0 and self-hosting costs only infrastructure. Zilliz Cloud charges for the managed service and lists a free tier with 5 GB of storage and 2.5 million vCUs per month.",{"q":76,"a":77},"What is the difference between Milvus and Zilliz Cloud?","Milvus is the open-source project under LF AI & Data; Zilliz Cloud runs the same engine as a managed service with serverless, dedicated and bring-your-own-cloud options. Zilliz is the main contributor to the project.",{"q":79,"a":80},"Can Milvus replace Elasticsearch for full-text search?","Milvus computes BM25 server-side and can hold vectors, sparse vectors and text in one collection, which is enough for hybrid retrieval in a RAG stack. It is not a log analytics platform, so existing Elasticsearch estates are rarely replaced wholesale.",{"q":82,"a":83},"Does Milvus run on a laptop?","Yes, through Milvus Lite, which installs with pip and stores everything in a local file. Lite is for prototyping; standalone and distributed modes need etcd, object storage and a WAL layer.",[85,88,91,94,97,100,103,106],{"id":86,"title":87},"what-it-is","What it is",{"id":89,"title":90},"how-it-works","How it works",{"id":92,"title":93},"getting-started","Getting started",{"id":95,"title":96},"hybrid-search-and-scale","Hybrid search and scale",{"id":98,"title":99},"operating-and-cost","Operating it and paying for it",{"id":101,"title":102},"where-it-shingles","Where it shingles",{"id":104,"title":105},"verdict","Verdict",{"id":107,"title":108},"sources","Sources",[110,114,117,120,123,141,142,145,154,157,158,161,164,167,174,175,178,188,191,197,198,201,213,260,265,266,269,279,325,328,329,332,345,349,350],{"type":111,"content":112},"paragraph",[113],"Milvus is an open-source vector database for similarity search over embeddings, written in Go and C++ and developed under LF AI & Data with Zilliz as its main contributor. The position of this review: at scale it is the most complete engine open source offers, and it is also the most expensive one to operate, so the real question is who runs the cluster, not which index type wins.",{"type":111,"content":115},[116],"It occupies the retrieval layer of a RAG or search stack: the store that holds vectors, metadata and, since 3.0, long text, and that answers top-k queries under filters. It competes with Qdrant and Weaviate as self-hostable peers, with Pinecone as the managed-only service, and with pgvector for teams that would rather not operate another database. Zilliz Cloud, sold by the company that contributes most of the code, is the managed twin of the Apache-licensed project.",{"type":118,"level":119,"id":86,"text":87},"heading",2,{"type":111,"content":121},[122],"Three deployment shapes exist, and they are not equivalent. Milvus Lite is a local file opened by the Python client for experiments; standalone is one node plus its dependencies; the distributed mode is the real product, a Kubernetes deployment with storage and compute disaggregated.",{"type":124,"ordered":125,"items":126},"list",false,[127,129,131,133,135,137,139],[128],"Apache-2.0 licence, an LF AI & Data project with Zilliz as the main contributor; written in Go and C++, with search kernels built on FAISS, HNSW, DiskANN and SCANN.",[130],"Current release 3.0.2, published 20 September 2026, while the 2.6 branch is still maintained in parallel at 2.6.25.",[132],"Index menu: HNSW, IVF, FLAT, SCANN, DiskANN, GPU indexes such as NVIDIA CAGRA, plus quantisation and mmap for memory-bound data.",[134],"Dense vectors, learned sparse vectors and server-side BM25 in one collection, with hybrid search and reranking inside a single request.",[136],"Multi-tenancy at database, collection, partition or partition-key level, behind authentication, TLS and RBAC.",[138],"3.0 adds external collections over Parquet, Lance, Iceberg and Vortex, snapshots, and online schema change with backfill.",[140],"The integrations a retrieval stack expects: LangChain, LlamaIndex, Attu for administration, Prometheus and Grafana for monitoring, plus Spark and Kafka connectors.",{"type":118,"level":119,"id":89,"text":90},{"type":111,"content":143},[144],"Milvus separates the data plane from the control plane in four layers. Stateless proxies accept and reduce requests; exactly one coordinator is active at a time and schedules DDL, routing, query and compaction work; worker nodes execute without holding data of their own; storage is shared. The documentation describes Woodpecker as a zero-disk write-ahead log that writes straight to object storage, which takes local disk management off the write path.",{"type":146,"attrs":147,"inner":151,"caption":152},"diagram",{"viewBox":148,"role":149,"aria-labelledby":150},"0 0 720 384","img","d-mv-t d-mv-d","\u003Ctitle id=\"d-mv-t\">Request flow through a Milvus cluster\u003C\u002Ftitle>\u003Cdesc id=\"d-mv-d\">A request enters at the top through a stateless proxy and spreads over three worker roles above a shared storage band. The proxy balances load and reduces results. Below it, three boxes sit side by side: on the left the coordinator, of which exactly one instance is active and which schedules every task; in the middle the streaming node, which writes to the write-ahead log first and answers queries over growing data; on the right the query node, which loads sealed segments from object storage and runs the vector index. Arrows run from the proxy into all three roles and from all three down into a dashed storage band at the bottom. That band lists etcd for metadata and service discovery, MinIO or S3 for segments and indexes, and Woodpecker, Kafka or Pulsar as the write-ahead log, with the note that the workers hold no data of their own.\u003C\u002Fdesc>\u003Ctext x=\"20\" y=\"26\" class=\"d-title\">Request flow through a Milvus cluster\u003C\u002Ftext>\u003Ctext x=\"700\" y=\"26\" text-anchor=\"end\" class=\"d-label\">stateless workers, shared storage\u003C\u002Ftext>\u003Crect x=\"270\" y=\"42\" width=\"180\" height=\"46\" rx=\"10\" class=\"d-accent\" \u002F>\u003Ctext x=\"360\" y=\"64\" text-anchor=\"middle\" class=\"d-text\">Client\u003C\u002Ftext>\u003Ctext x=\"360\" y=\"82\" text-anchor=\"middle\" class=\"d-small\">SDK or REST\u003C\u002Ftext>\u003Cpath d=\"M360 88 V112\" class=\"d-line\" \u002F>\u003Crect x=\"270\" y=\"112\" width=\"180\" height=\"46\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"360\" y=\"134\" text-anchor=\"middle\" class=\"d-text\">Proxy\u003C\u002Ftext>\u003Ctext x=\"360\" y=\"152\" text-anchor=\"middle\" class=\"d-small\">stateless, reduces results\u003C\u002Ftext>\u003Cpath d=\"M360 158 V176 H120 V196\" class=\"d-line\" \u002F>\u003Cpath d=\"M360 158 V196\" class=\"d-line\" \u002F>\u003Cpath d=\"M360 158 V176 H600 V196\" class=\"d-line\" \u002F>\u003Crect x=\"20\" y=\"196\" width=\"200\" height=\"76\" rx=\"10\" class=\"d-sky\" \u002F>\u003Ctext x=\"120\" y=\"220\" text-anchor=\"middle\" class=\"d-text\">Coordinator\u003C\u002Ftext>\u003Ctext x=\"120\" y=\"242\" text-anchor=\"middle\" class=\"d-small\">one active instance\u003C\u002Ftext>\u003Ctext x=\"120\" y=\"262\" text-anchor=\"middle\" class=\"d-small\">schedules every task\u003C\u002Ftext>\u003Crect x=\"260\" y=\"196\" width=\"200\" height=\"76\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"360\" y=\"220\" text-anchor=\"middle\" class=\"d-text\">Streaming Node\u003C\u002Ftext>\u003Ctext x=\"360\" y=\"242\" text-anchor=\"middle\" class=\"d-small\">writes go to the WAL first\u003C\u002Ftext>\u003Ctext x=\"360\" y=\"262\" text-anchor=\"middle\" class=\"d-small\">growing data queried here\u003C\u002Ftext>\u003Crect x=\"500\" y=\"196\" width=\"200\" height=\"76\" rx=\"10\" class=\"d-gold\" \u002F>\u003Ctext x=\"600\" y=\"220\" text-anchor=\"middle\" class=\"d-text\">Query Node\u003C\u002Ftext>\u003Ctext x=\"600\" y=\"242\" text-anchor=\"middle\" class=\"d-small\">loads sealed segments\u003C\u002Ftext>\u003Ctext x=\"600\" y=\"262\" text-anchor=\"middle\" class=\"d-small\">runs the vector index\u003C\u002Ftext>\u003Cpath d=\"M120 272 V300\" class=\"d-line\" \u002F>\u003Cpath d=\"M360 272 V300\" class=\"d-line\" \u002F>\u003Cpath d=\"M600 272 V300\" class=\"d-line\" \u002F>\u003Crect x=\"20\" y=\"300\" width=\"680\" height=\"74\" rx=\"10\" class=\"d-box d-dash\" \u002F>\u003Ctext x=\"40\" y=\"326\" class=\"d-text\">Shared storage\u003C\u002Ftext>\u003Ctext x=\"40\" y=\"350\" class=\"d-small\">etcd for metadata and service discovery, MinIO or S3 for segments and indexes,\u003C\u002Ftext>\u003Ctext x=\"40\" y=\"368\" class=\"d-small\">Woodpecker or Kafka or Pulsar as the WAL; the workers keep no data of their own\u003C\u002Ftext>",[153],"Storage is shared and the workers are stateless, so scaling out means adding nodes; the coordinator is the one active component that has to stay healthy.",{"type":111,"content":155},[156],"A write is logged to the WAL first, becomes queryable in the streaming node as growing data, and stays there until compaction seals it; the data node then builds indexes and the query node loads them. A search runs against growing data locally and against sealed segments in parallel, with results reduced at three levels before the proxy returns them. Every hop is a place where consistency level and replica placement change the latency that comes back.",{"type":118,"level":119,"id":92,"text":93},{"type":111,"content":159},[160],"The shortest path is Milvus Lite through the Python client: one pip install and a file name, no server, no etcd, no object store. The same client then points at a server or a Zilliz Cloud endpoint by changing uri and token, which is why prototypes usually move without a rewrite.",{"type":162,"code":163},"code","# pip install -U pymilvus  — Milvus Lite stores everything in one local file\nfrom pymilvus import MilvusClient\n\nclient = MilvusClient(uri=\".\u002Fmilvus_demo.db\")\n\nclient.create_collection(\n    collection_name=\"papers\",\n    dimension=768,        # must match the embedding model\n    auto_id=True,\n    metric_type=\"COSINE\",\n)\n\nclient.insert(collection_name=\"papers\", data=[\n    {\"vector\": v, \"title\": t, \"year\": y} for v, t, y in rows\n])\n\nhits = client.search(\n    collection_name=\"papers\",\n    data=[query_vector],\n    limit=5,\n    filter=\"year >= 2023\",\n    output_fields=[\"title\", \"year\"],\n)\nprint([(h[\"entity\"][\"title\"], round(h[\"distance\"], 3)) for h in hits[0]])",{"type":111,"content":165},[166],"The simplified client hides schema, index parameters and dynamic fields, and that is the right level for a prototype. Production has to make these choices explicitly: metric type, index type, quantisation, mmap, partition keys for tenancy, and a consistency level per request.",{"type":168,"variant":169,"title":170,"body":171},"callout","note","Self-hosted is never one process",[172],[173],"A Milvus deployment needs etcd for metadata, object storage for segments and indexes, and a WAL layer such as Woodpecker, Kafka or Pulsar. A single-node install still carries that surface, and the distributed mode expects Kubernetes.",{"type":118,"level":119,"id":95,"text":96},{"type":111,"content":176},[177],"Milvus keeps dense vectors, learned sparse vectors and BM25 output in the same collection, so one request can run several vector searches and merge them. Reranking moved into the server with 3.0: the Function Chain API composes score transformation, model-based reranking and candidate trimming inside a single search call, and weighted reciprocal-rank fusion arrived in 3.0.1.",{"type":124,"ordered":125,"items":179},[180,182,184,186],[181],"BM25 is computed server-side from raw text, so the application never ships tokens to the database and back.",[183],"Sparse search in 3.0 is rebuilt around SINDI, with Block-Max WAND and Block-Max MaxScore selectable per workload.",[185],"Faceted search on the ANN path returns the top facet values with COUNT and AVG in the same request instead of an over-fetch in the client.",[187],"TEXT fields keep values under 64 KB inline and larger ones in partition-level LOB files, so source text and vectors are read from one store.",{"type":111,"content":189},[190],"The 3.0.0 release notes report two internal numbers: the compressed BM25 index is roughly three times smaller than the 2.6 sparse index at comparable recall, and SINDI reaches up to about ten times the QPS of MaxScore on learned sparse embeddings. Both are the vendor’s own measurements. The more informative figure sits in 3.0.2, where an atomic refcount hotspot that accounted for around 48% of leaf CPU time in search was removed: filtered search had been paying that tax, and most production vector workloads are filtered.",{"type":168,"variant":192,"title":193,"body":194},"warn","Numbers travel with their methodology",[195],[196],"Ask for the harness, the filter selectivity and the recall target before quoting any vector-database benchmark, including the ones above. Recall at 10 ms with a 1% filter and recall at 10 ms with a 90% filter are different products.",{"type":118,"level":119,"id":98,"text":99},{"type":111,"content":199},[200],"Self-hosting Milvus means owning coordinator failover, replica placement, compaction behaviour and index-build capacity. Zilliz Cloud sells the same engine with those decisions taken off the table, and its pricing pages are explicit about what is metered.",{"type":124,"ordered":125,"items":202},[203,205,207,209,211],[204],"Free tier: 5 GB of storage, 2.5 million vCUs per month and up to 5 collections, with community support only.",[206],"Dedicated serving compute lists at $0.273 per CU-hour for performance- and capacity-optimised clusters, and at $0.41 for tiered-storage clusters.",[208],"Storage lists at $0.025 per GB-month for dedicated clusters and is billed hourly; backups are also $0.025 per GB-month.",[210],"Enterprise starts at $197 per month with a 99.95% uptime SLA, audit logs, SSO and VPC peering.",[212],"On-demand compute for lake-scale query and index jobs lists at $0.41 per CU-hour and is billed by the CU-minute.",{"type":214,"head":215,"rows":224},"table",[216,218,220,222],[217],"Plan",[219],"Compute",[221],"Storage",[223],"Positioned for",[225,234,243,252],[226,228,230,232],[227],"Free",[229],"2.5M vCUs per month included",[231],"5 GB",[233],"learning and small prototypes",[235,237,239,241],[236],"Standard, serverless",[238],"usage-based, system-managed scaling",[240],"usage-based",[242],"prototypes and test environments",[244,246,248,250],[245],"Standard, dedicated",[247],"$0.273 per CU-hour",[249],"$0.025 per GB-month",[251],"steady production load",[253,255,257,258],[254],"Enterprise",[256],"from $197 per month",[249],[259],"production with an SLA and SSO",{"type":168,"variant":169,"title":261,"body":262},"Suspending is not free",[263],[264],"The list-price FAQ states that a suspended cluster stops vector-database charges but keeps billing storage until the cluster is deleted, and that data-transfer charges apply to search, query and audit-log forwarding.",{"type":118,"level":119,"id":101,"text":102},{"type":111,"content":267},[268],"The weaknesses come first. Milvus is a distributed system with a coordinator, a WAL, an object store and index workers, and that surface shows up as operational work long before it shows up as capability. Schema changes, index rebuilds and compaction tuning are ordinary tasks with ordinary failure modes; 3.0.2 alone ships fixes for a replica whose channels all landed on one query node and left it unserviceable, and for WAL fencing that stalled writes for 45 to 60 seconds.",{"type":124,"ordered":125,"items":270},[271,273,275,277],[272],"Setup cost: the distributed mode is a Kubernetes deployment with operators, not a docker run.",[274],"Small workloads pay for the architecture: below tens of millions of vectors, a single-binary store is simpler and usually quicker to query.",[276],"Version skew is expensive: 2.6 and 3.0 are maintained in parallel, Storage V3 is off by default, and enabling it removes the rollback path to 2.6.",[278],"The public comparison set is mostly vendor material; independent numbers at a fixed recall target are scarce.",{"type":214,"head":280,"rows":289},[281,283,285,287],[282],"System",[284],"Deployment",[286],"Hybrid retrieval",[288],"Operational burden",[290,298,307,316],[291,292,294,296],[25],[293],"Lite file, Docker, or a Kubernetes cluster",[295],"dense, sparse and BM25 in one collection",[297],"coordinator, WAL and object storage to run",[299,301,303,305],[300],"Qdrant",[302],"a single container or its own cloud",[304],"HNSW plus sparse vectors and payload filters",[306],"one stateful service",[308,310,312,314],[309],"pgvector",[311],"an extension inside an existing Postgres",[313],"vectors next to SQL, no native BM25",[315],"nothing beyond the database",[317,319,321,323],[318],"Pinecone",[320],"managed only, no self-hosting",[322],"dense and sparse vectors on the service",[324],"nothing to run",{"type":111,"content":326},[327],"Read that table as a comparison of attention, not of features. Milvus wins when the workload is large, filtered and multi-tenant, and loses everywhere else, because the coordinator, the WAL and the index workers all need someone on call.",{"type":118,"level":119,"id":104,"text":105},{"type":111,"content":330},[331],"Milvus is the right engine for a team that already runs distributed systems and has a workload that justifies them. It is the wrong first choice for a product still finding its retrieval quality, where iteration speed matters more than tail latency.",{"type":124,"ordered":333,"items":334},true,[335,337,339,341,343],[336],"Take it when you need hundreds of millions of vectors, strict tenant isolation, or dense and sparse retrieval in one store.",[338],"Take it self-hosted only if someone on the team already operates stateful Kubernetes services; otherwise start on Zilliz Cloud and keep the migration path open.",[340],"Skip it for a RAG prototype under a few million chunks: Lite for the experiment, then a single-binary store for production.",[342],"Skip it if Postgres already holds the data and vector search is a side feature; pgvector keeps one backup story and one set of credentials.",[344],"Whichever way you go, pin the version and read the release notes: 3.0 changed storage-format defaults and the new indexes are opt-in.",{"type":346,"content":347},"quote",[348],"A vector database you cannot operate is not a cheaper database. It is an unpaid operations contract with an index attached.",{"type":118,"level":119,"id":107,"text":108},{"type":124,"ordered":333,"items":351},[352,356,359,362,365,368],[353],{"tag":354,"href":36,"children":355},"a",[35],[357],{"tag":354,"href":39,"children":358},[38],[360],{"tag":354,"href":42,"children":361},[41],[363],{"tag":354,"href":45,"children":364},[44],[366],{"tag":354,"href":48,"children":367},[47],[369],{"tag":354,"href":51,"children":370},[50],[372,421,474,515],{"slug":373,"published":374,"minutes":375,"category":7,"tags":376,"keywords":381,"about":390,"sources":394,"cover":413,"og":414,"expertise":54,"locales":415,"lang":56,"title":416,"description":417,"coverAlt":418,"url":419,"pricing":420,"kind":377},"zep","2026-10-06",11,[377,378,379,380,13],"Agent memory","Knowledge graph","Temporal graph","Context engineering",[382,383,384,385,386,387,388,389],"zep ai","zep agent memory","graphiti knowledge graph","zep pricing","zep vs mem0","long-term memory for agents","temporal knowledge graph","zep cloud",[391],{"name":392,"url":393},"Zep","https:\u002F\u002Fwww.getzep.com\u002F",[395,398,401,404,407,410],{"title":396,"url":397},"Zep pricing: plans, credits and limits","https:\u002F\u002Fwww.getzep.com\u002Fpricing",{"title":399,"url":400},"Zep documentation","https:\u002F\u002Fhelp.getzep.com\u002F",{"title":402,"url":403},"Graphiti on GitHub","https:\u002F\u002Fgithub.com\u002Fgetzep\u002Fgraphiti",{"title":405,"url":406},"Graphiti product page","https:\u002F\u002Fwww.getzep.com\u002Fplatform\u002Fgraphiti\u002F",{"title":408,"url":409},"Announcing a new direction for Zep's open-source strategy","https:\u002F\u002Fwww.getzep.com\u002Fblog\u002Fannouncing-a-new-direction-for-zeps-open-source-strategy\u002F",{"title":411,"url":412},"Graphiti: temporal knowledge graphs for AI agents (arXiv)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2501.13956","\u002Fimages\u002Fblog\u002Fzep\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fzep\u002Fog.jpg",[56,57,58],"Zep review: agent memory on a temporal graph","Zep is a hosted agent-memory API on a temporal knowledge graph: credits on writes, retrieval free, Flex from $125 a month, Graphiti as the part you can self-host.","Diagram of how a fact reaches the prompt in Zep: messages and facts are extracted into a per-user context graph of entities and relationships, and retrieval walks the graph to return a context block with the supporting facts.","https:\u002F\u002Fwww.getzep.com","Apache-2.0 core · Cloud from $50 per month",{"slug":422,"published":423,"minutes":424,"category":7,"tags":425,"keywords":427,"about":435,"sources":441,"cover":466,"og":467,"expertise":54,"locales":468,"lang":56,"title":469,"description":470,"coverAlt":471,"url":472,"pricing":473,"kind":63},"lancedb","2026-09-21",9,[9,10,426,13],"Embedded database",[422,428,429,430,431,432,433,434],"lancedb review","lance vector database","embedded vector database","lancedb vs qdrant","hybrid search rrf","lancedb indexing","lance data format",[436,438],{"name":63,"url":437},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FVector_database",{"name":439,"url":440},"Apache Arrow","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FApache_Arrow",[442,445,448,451,454,457,460,463],{"title":443,"url":444},"LanceDB quickstart","https:\u002F\u002Fdocs.lancedb.com\u002Fquickstart",{"title":446,"url":447},"LanceDB vector indexes","https:\u002F\u002Fdocs.lancedb.com\u002Findexing\u002Fvector-index",{"title":449,"url":450},"LanceDB indexing guide","https:\u002F\u002Fdocs.lancedb.com\u002Findexing\u002Findex",{"title":452,"url":453},"LanceDB hybrid search","https:\u002F\u002Fdocs.lancedb.com\u002Fsearch\u002Fhybrid-search",{"title":455,"url":456},"LanceDB Enterprise","https:\u002F\u002Fdocs.lancedb.com\u002Fenterprise",{"title":458,"url":459},"LanceDB frequently asked questions","https:\u002F\u002Fdocs.lancedb.com\u002Ffaq\u002Ffaq-oss",{"title":461,"url":462},"LanceDB pricing","https:\u002F\u002Flancedb.com\u002Fpricing",{"title":464,"url":465},"LanceDB on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Flancedb\u002F","\u002Fimages\u002Fblog\u002Flancedb\u002Fcover.webp","\u002Fimages\u002Fblog\u002Flancedb\u002Fog.jpg",[56,57,58],"LanceDB: vector search that starts as a library","A review of LanceDB: an Apache-2.0 embedded vector library, its IVF and HNSW index choices, hybrid search with rank fusion, and what the Enterprise tier adds.","Cover art for the LanceDB review: one Lance table feeding a vector index and a full-text index into a fused ranking","https:\u002F\u002Flancedb.com","Apache-2.0 · Cloud paid",{"slug":309,"published":423,"minutes":6,"category":7,"tags":475,"keywords":479,"about":486,"sources":492,"cover":507,"og":508,"expertise":54,"locales":509,"lang":56,"title":510,"description":511,"coverAlt":512,"url":488,"pricing":513,"kind":514},[9,476,477,13,478],"Postgres","HNSW","Quantisation",[309,480,481,482,483,484,485],"pgvector vs qdrant","postgres vector search","hnsw index postgres","iterative index scans","binary quantization postgres","vector database postgres",[487,489],{"name":309,"url":488},"https:\u002F\u002Fgithub.com\u002Fpgvector\u002Fpgvector",{"name":490,"url":491},"PostgreSQL","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPostgreSQL",[493,495,498,501,504],{"title":494,"url":488},"pgvector README",{"title":496,"url":497},"pgvector changelog","https:\u002F\u002Fgithub.com\u002Fpgvector\u002Fpgvector\u002Fblob\u002Fmaster\u002FCHANGELOG.md",{"title":499,"url":500},"PostgreSQL news: pgvector 0.8.2 released","https:\u002F\u002Fwww.postgresql.org\u002Fabout\u002Fnews\u002Fpgvector-082-released-3245\u002F",{"title":502,"url":503},"AWS: Scale pgvector with binary quantization","https:\u002F\u002Faws.amazon.com\u002Fblogs\u002Fdatabase\u002Fscale-pgvector-with-binary-quantization-on-amazon-aurora-postgresql\u002F",{"title":505,"url":506},"pgvector licence","https:\u002F\u002Fgithub.com\u002Fpgvector\u002Fpgvector\u002Fblob\u002Fmaster\u002FLICENSE","\u002Fimages\u002Fblog\u002Fpgvector\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fpgvector\u002Fog.jpg",[56,57,58],"pgvector, reviewed: the vector database you do not have to run","A review of pgvector 0.8.7: iterative scans for filtered search, HNSW and IVFFlat, binary quantisation at 100M vectors, and the CVE that made index builds a patch item.","A query enters at the top and splits into an exact sequential scan, an HNSW graph walk and an IVFFlat probe; a band below shows an iterative scan continuing until the limit is full.","PostgreSQL licence","Vector database extension",{"slug":516,"published":517,"minutes":6,"category":7,"tags":518,"keywords":520,"about":526,"sources":530,"cover":558,"og":559,"expertise":54,"locales":560,"lang":56,"title":561,"description":562,"coverAlt":563,"url":529,"pricing":564,"kind":377},"mem0","2026-09-17",[377,519,13,9],"Long-term memory",[516,521,522,523,524,387,525],"mem0 review","agent memory layer","mem0 self-hosted","mem0 pricing","mem0 alternatives",[527],{"name":528,"url":529},"Mem0","https:\u002F\u002Fmem0.ai",[531,534,537,540,543,546,549,552,555],{"title":532,"url":533},"Mem0 documentation","https:\u002F\u002Fdocs.mem0.ai\u002Fintroduction",{"title":535,"url":536},"Mem0 quickstart","https:\u002F\u002Fdocs.mem0.ai\u002Fquickstart",{"title":538,"url":539},"How Mem0 works","https:\u002F\u002Fdocs.mem0.ai\u002Fcore-concepts\u002Fhow-it-works",{"title":541,"url":542},"Mem0 pricing","https:\u002F\u002Fmem0.ai\u002Fpricing",{"title":544,"url":545},"Mem0 on GitHub","https:\u002F\u002Fgithub.com\u002Fmem0ai\u002Fmem0",{"title":547,"url":548},"mem0ai on PyPI","https:\u002F\u002Fpypi.org\u002Fproject\u002Fmem0ai\u002F",{"title":550,"url":551},"Mem0 research and benchmarks","https:\u002F\u002Fmem0.ai\u002Fresearch",{"title":553,"url":554},"Mem0 MCP server","https:\u002F\u002Fdocs.mem0.ai\u002Fplatform\u002Fmem0-mcp",{"title":556,"url":557},"Mem0 paper on arXiv","https:\u002F\u002Farxiv.org\u002Fabs\u002F2504.19413","\u002Fimages\u002Fblog\u002Fmem0\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fmem0\u002Fog.jpg",[56,57,58],"Mem0: what an agent memory layer costs per turn","A review of Mem0: facts extracted from every turn, the April 2026 benchmark table and its platform-only caveat, four cloud tiers and what self-hosting leaves out.","A loop that turns conversation into stored facts and reads them back into the prompt","Free tier · from $19 per month",1791383548755]