[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6AE28J4GS2G3YQX5DRA1RVG":3,"skill-same:01M6AE28J4GS2G3YQX5DRA1RVG":65},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":36,"linkOnly":37,"markdownContent":38,"markdownBody":39,"frontMatter":40,"refName":41,"commitSha":42,"skillDirectory":43,"forksCount":44,"repositoryHtmlUrl":45,"repositoryHomepageUrl":46,"ownerHtmlUrl":47,"ownerBlogUrl":48,"ownerDescription":49,"updatedAt":50,"install":51,"resources":64},"01M6AE28J4GS2G3YQX5DRA1RVG","qdrant-horizontal-scaling",null,"Diagnoses and guides Qdrant horizontal scaling decisions. Use when someone asks 'vertical or horizontal?', 'how many nodes?', 'how many shards?', 'how to add nodes', 'resharding', 'data doesn't fit', or 'need more capacity'. Also use when data growth outpaces current deployment.","github\u002Fawesome-copilot","github","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F9919?v=4","01M6AC83DS133TPXFSP1DHNCC6","GitHub","01M6AD3PBDYPK7NVFJNJ66Y8RS",41046,"MIT","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fqdrant-scaling\u002Fscaling-data-volume\u002Fhorizontal-scaling\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35],"Qdrant","qdrant horizontal scaling","scaling","use","when","more","add","guides","how to","fit","Nodes","capacity","growth","decisions","how","data","deployment","2026-11-10 10:12:30",false,"---\nname: qdrant-horizontal-scaling\ndescription: \"Diagnoses and guides Qdrant horizontal scaling decisions. Use when someone asks 'vertical or horizontal?', 'how many nodes?', 'how many shards?', 'how to add nodes', 'resharding', 'data doesn't fit', or 'need more capacity'. Also use when data growth outpaces current deployment.\"\n---\n\n# What to Do When Qdrant Needs More Capacity\n\nVertical first: simpler operations, no network overhead, good up to ~100M vectors per node depending on dimensions and quantization. Horizontal when: data exceeds single node capacity, need fault tolerance, need to isolate tenants, or IOPS-bound (more nodes = more independent IOPS).\n\n## Most basic distributed configuration\n\n- 3 nodes, 3 shards with `replication_factor: 2` for zero-downtime scaling\n\nMinimum of 3 nodes is important for consensus and fault tolerance. With 3 nodes, you can lose 1 node without downtime. With 2 nodes, losing 1 node causes downtime for collection operations.\nReplication factor of 2 means each shard has 1 replica, so you have 2 copies of data. This allows for zero-downtime scaling and maintenance. With `replication_factor: 1`, zero-downtime is not guaranteed even for point-level operations, and cluster maintenance requires downtime.\n\n## Choosing number of shards\n\nShards are the unit of data distribution. \nMore shards allows more nodes and better distribution, but adds overhead. Fewer shards reduces overhead but limits horizontal scaling.\n\nFor cluster of 3-6 nodes the recommended shard count is 6-12. \nThis allows for 2-4 shards per node, which balances distribution and overhead. \n\n## Changing number of shards\n\nUse when: shard count isn't evenly divisible by node count, causing uneven distribution, or need to rebalance.\n\nResharding is expensive and time-consuming, it should be used as a last resort if regular data distribution is not possible.\nResharding is designed to be transparent for user operations, updates and searches should still work during resharding with some small performance impact.\n\nBut resharding operation itself is time-consuming and requires to move large amounts of data between nodes.\n\n- Available in Qdrant Cloud [Resharding](https:\u002F\u002Fsearch.qdrant.tech\u002Fmd\u002Fdocumentation\u002Foperations\u002Fdistributed_deployment\u002F?s=resharding)\n- Resharding is not available for self-hosted deployments.\n\nBetter alternatives: over-provision shards initially, or spin up new cluster with correct config and migrate data.\n\n\n## What NOT to Do\n\n- Do not jump to horizontal before exhausting vertical (adds complexity for no gain)\n- Do not set `shard_number` that isn't a multiple of node count (uneven distribution)\n- Do not use `replication_factor: 1` in production if you need fault tolerance\n- Do not add nodes without rebalancing shards (use shard move API to redistribute)\n- Do not scale down RAM without load testing (cache eviction causes days-long latency incidents)\n- Do not hit the collection limit by using one collection per tenant (use payload partitioning)\n","# What to Do When Qdrant Needs More Capacity\n\nVertical first: simpler operations, no network overhead, good up to ~100M vectors per node depending on dimensions and quantization. Horizontal when: data exceeds single node capacity, need fault tolerance, need to isolate tenants, or IOPS-bound (more nodes = more independent IOPS).\n\n## Most basic distributed configuration\n\n- 3 nodes, 3 shards with `replication_factor: 2` for zero-downtime scaling\n\nMinimum of 3 nodes is important for consensus and fault tolerance. With 3 nodes, you can lose 1 node without downtime. With 2 nodes, losing 1 node causes downtime for collection operations.\nReplication factor of 2 means each shard has 1 replica, so you have 2 copies of data. This allows for zero-downtime scaling and maintenance. With `replication_factor: 1`, zero-downtime is not guaranteed even for point-level operations, and cluster maintenance requires downtime.\n\n## Choosing number of shards\n\nShards are the unit of data distribution. \nMore shards allows more nodes and better distribution, but adds overhead. Fewer shards reduces overhead but limits horizontal scaling.\n\nFor cluster of 3-6 nodes the recommended shard count is 6-12. \nThis allows for 2-4 shards per node, which balances distribution and overhead. \n\n## Changing number of shards\n\nUse when: shard count isn't evenly divisible by node count, causing uneven distribution, or need to rebalance.\n\nResharding is expensive and time-consuming, it should be used as a last resort if regular data distribution is not possible.\nResharding is designed to be transparent for user operations, updates and searches should still work during resharding with some small performance impact.\n\nBut resharding operation itself is time-consuming and requires to move large amounts of data between nodes.\n\n- Available in Qdrant Cloud [Resharding](https:\u002F\u002Fsearch.qdrant.tech\u002Fmd\u002Fdocumentation\u002Foperations\u002Fdistributed_deployment\u002F?s=resharding)\n- Resharding is not available for self-hosted deployments.\n\nBetter alternatives: over-provision shards initially, or spin up new cluster with correct config and migrate data.\n\n\n## What NOT to Do\n\n- Do not jump to horizontal before exhausting vertical (adds complexity for no gain)\n- Do not set `shard_number` that isn't a multiple of node count (uneven distribution)\n- Do not use `replication_factor: 1` in production if you need fault tolerance\n- Do not add nodes without rebalancing shards (use shard move API to redistribute)\n- Do not scale down RAM without load testing (cache eviction causes days-long latency incidents)\n- Do not hit the collection limit by using one collection per tenant (use payload partitioning)\n",{"name":5,"description":7},"main","5269f7ea2d6c3a9bfda5ed878b6726cf509121fd","skills\u002Fqdrant-scaling\u002Fscaling-data-volume\u002Fhorizontal-scaling",5340,"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot","https:\u002F\u002Fawesome-copilot.github.com\u002F","https:\u002F\u002Fgithub.com\u002Fgithub","https:\u002F\u002Fgithub.com\u002Fabout","How people build software.","2026-11-11 13:41:32",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add github\u002Fawesome-copilot --skill qdrant-horizontal-scaling",{"tool":57,"command":58},"bunx","bunx skills add github\u002Fawesome-copilot --skill qdrant-horizontal-scaling",{"tool":60,"command":61},"pnpm","pnpm dlx skills add github\u002Fawesome-copilot --skill qdrant-horizontal-scaling","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fqdrant-scaling\u002Fscaling-data-volume\u002Fhorizontal-scaling\u002FSKILL.md",true,[],[66,99,127,156,190,207],{"skillNo":67,"name":68,"nameZh":6,"description":69,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":70,"categories":71,"keywords":80,"publishedAt":36},"01M70KXZNX9ES38N2A8M58ZZMZ","supabase-rls-policies","Write, review, and test Supabase Row Level Security (RLS) policies so that one user cannot read or change another user's rows. Use when creating or changing tables, policies, views, or security definer functions in a Supabase project, when reviewing a migration that touches RLS, or when asked to prove user isolation with pgTAP tests that sign in as two users.","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fsupabase-rls-policies\u002FSKILL.md",[72,77],{"categoryNo":73,"categoryName":74,"taxonomyType":75,"taxonomyTypeDesc":76},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",{"categoryNo":78,"categoryName":79,"taxonomyType":75,"taxonomyTypeDesc":76},"01JBSEEDCAT000000000000023","Skill与智能体开发",[81,82,83,84,85,23,86,87,88,89,90,91,92,93,94,95,22,96,97,98],"supabase","rls","supabase rls","supabase rls policies","project","review","change","read","write","security","isolation","tables","as","tests","prove","users","functions","with",{"skillNo":100,"name":101,"nameZh":6,"description":102,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":103,"categories":104,"keywords":106,"publishedAt":36},"01M70KWA5YWXDV6V8DZ19E3T2Y","skill-distribution-audit","Audit a skill collection before release or investigate installer omissions, archived\u002Ftemplate leakage, duplicate identities, and manifest drift. Reconcile the intended public source set, distribution manifest, and actual discovery output for a specified consumer version. Includes a deterministic set-comparison helper.","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fskill-distribution-audit\u002FSKILL.md",[105],{"categoryNo":78,"categoryName":79,"taxonomyType":75,"taxonomyTypeDesc":76},[107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126],"distribution","skill distribution audit","audit","SET","deterministic","installer","for","discovery","comparison","helper","manifest","version","collection","drift","output","investigate","duplicate","template","release","reconcile",{"skillNo":128,"name":129,"nameZh":6,"description":130,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":131,"sourceHtmlUrl":132,"categories":133,"keywords":139,"publishedAt":36},"01M70KCJPFVW7PPQ49CC5R8JGK","logicapps-custom-code-net10-migration","Migrate Azure Logic Apps Standard local-function custom-code projects from .NET 8 to .NET 10. Use for legacy Logic Apps custom-code workspace upgrades, project\u002Fpackage configuration, custom-worker settings, publication, and integrated VS Code debugging. Not for ordinary .NET applications, standalone Azure Functions, Consumption workflows, or cloud deployment.","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Flogicapps-custom-code-net10-migration\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Flogicapps-custom-code-net10-migration\u002FSKILL.md",[134],{"categoryNo":135,"categoryName":136,"taxonomyType":137,"taxonomyTypeDesc":138},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[140,141,142,143,144,145,113,85,35,146,147,148,149,150,151,22,152,153,154,155],"custom","code","logicapps custom code net10 migration","migration","projects","standalone","applications","local","azure","worker","upgrades","package","apps","Legacy","debugging","workflows",{"skillNo":157,"name":158,"nameZh":6,"description":159,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":160,"sourceHtmlUrl":161,"categories":162,"keywords":167,"publishedAt":36},"01M6AEBN37RQMXJ3298PEY7PG1","winmd-api-search","Find and explore Windows desktop APIs. Use when building features that need platform capabilities — camera, file access, notifications, UI controls, AI\u002FML, sensors, networking, etc. Discovers the right API for a task and retrieves full type details (methods, properties, events, enumeration values).","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fwinmd-api-search\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fwinmd-api-search\u002FSKILL.md",[163,166],{"categoryNo":164,"categoryName":165,"taxonomyType":75,"taxonomyTypeDesc":76},"01JBSEEDCAT000000000000010","后端与接口",{"categoryNo":135,"categoryName":136,"taxonomyType":137,"taxonomyTypeDesc":138},[168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,23,183,184,185,186,187,113,188,189],"winmd api search","search","api","windows","desktop","file access","enumeration","ui","ml","file","networking","capabilities","notifications","explore","access","features","full","camera","events","platform","methods","controls",{"skillNo":191,"name":192,"nameZh":6,"description":193,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":194,"licenseFileUrl":195,"sourceHtmlUrl":196,"categories":197,"keywords":203,"publishedAt":36},"01M6AE571R3SC1ZGE202B3NB5S","resemble-detect","Deepfake detection and media safety — detect AI-generated audio, images, video, and text, trace synthesis sources, apply watermarks, verify speaker identity, and analyze media intelligence using Resemble AI","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fresemble-detect\u002FLICENSE","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fresemble-detect\u002FSKILL.md",[198,199,202],{"categoryNo":164,"categoryName":165,"taxonomyType":75,"taxonomyTypeDesc":76},{"categoryNo":200,"categoryName":201,"taxonomyType":75,"taxonomyTypeDesc":76},"01JBSEEDCAT000000000000016","图像与多媒体",{"categoryNo":78,"categoryName":79,"taxonomyType":75,"taxonomyTypeDesc":76},[204,110,177,205,206],"resemble detect","https","identity",{"skillNo":208,"name":209,"nameZh":6,"description":210,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":194,"licenseFileUrl":211,"sourceHtmlUrl":212,"categories":213,"keywords":218,"publishedAt":36},"01M6AE30BSK2HCY4TQQ22Z8JRD","quality-playbook","Run a complete quality engineering audit on any codebase. Derives behavioral requirements from the code, generates spec-traced functional tests, runs a three-pass code review with regression tests, executes a multi-model spec audit (Council of Three), and produces a consolidated bug report with TDD-verified patches. Finds the 35% of real defects that structural code review alone cannot catch. Works with any language. Trigger on 'quality playbook', 'spec audit', 'Council of Three', 'fitness-to-purpose', or 'coverage theater'.","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fquality-playbook\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fawesome-copilot\u002Fblob\u002Fmain\u002Fskills\u002Fquality-playbook\u002FSKILL.md",[214,217],{"categoryNo":215,"categoryName":216,"taxonomyType":75,"taxonomyTypeDesc":76},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":78,"categoryName":79,"taxonomyType":75,"taxonomyTypeDesc":76},[219,220,221,222,141,86,9,109,223,224,205,225,226,227,228,229,230,231,232,233,234,235,94,236,237,238,239],"playbook","quality playbook","quality","code review","tdd","run","report","spec","bug report","council","engineering","functional","spec audit","bug","verified","multi-model","three","coverage","model","regression","structural"]