hi @dhanshew72 !!
Sorry for the delay here.
Missed this one
Were you able to figure this out?
Weaviate should distribute the tenants across different available nodes.
Here is a test I did using latest 1.26.1 version with 3 nodes:
from weaviate import classes as wvc
client.collections.delete("MyMTCollection")
collection = client.collections.create(
"MyMTCollection",
multi_tenancy_config=wvc.config.Configure.multi_tenancy(enabled=True, auto_tenant_activation=True, auto_tenant_creation=True),
vectorizer_config=wvc.config.Configure.Vectorizer.none()
)
now let’s check we have 0 shards yet:
for node in client.cluster.nodes(output="verbose"):
print(node.name, len(node.shards))
outputs:
weaviate-0 0
weaviate-1 0
weaviate-2 0
Now let’s add 100 tenants with some sample data
for i in range(100):
tenant_data = f"T{i}"
collection.with_tenant(tenant_data).data.insert({"text": tenant_data})
This is how it is distributed (it varies for every run) after adding the tenants and content:
weaviate-0 40
weaviate-1 28
weaviate-2 32
Let me know if that helps.
THanks!