Ahí estuve haciendo la prueba nuevamente y funcionó perfecto. Fíjense que hasta distribuyó los chunks en cada shard usando una shard key por número de factura hasheada. Les dejo el output pero también actualicé las ppt para explicar cuándo se dispara el splitter (detecta tráfico reciente y analiza estadísticamente la distribución).
[direct: mongos] config> db.getSiblingDB("finanzas").getCollection("facturas").getShardDistribution()
Shard rs-shard-01 at rs-shard-01/shard01-a:27017,shard01-b:27017,shard01-c:27017
{
data: '18.05MiB',
docs: 61410,
chunks: 1,
'estimated data per chunk': '18.05MiB',
'estimated docs per chunk': 61410
}
---
Shard rs-shard-03 at rs-shard-03/shard03-a:27017,shard03-b:27017,shard03-c:27017
{
data: '18.57MiB',
docs: 63216,
chunks: 1,
'estimated data per chunk': '18.57MiB',
'estimated docs per chunk': 63216
}
---
Shard rs-shard-02 at rs-shard-02/shard02-a:27017,shard02-b:27017,shard02-c:27017
{
data: '17.82MiB',
docs: 60594,
chunks: 1,
'estimated data per chunk': '17.82MiB',
'estimated docs per chunk': 60594
}
---
Totals
{
data: '54.45MiB',
docs: 185220,
chunks: 3,
'Shard rs-shard-01': [
'33.14 % data',
'33.15 % docs in cluster',
'308B avg obj size on shard'
],
'Shard rs-shard-03': [
'34.1 % data',
'34.13 % docs in cluster',
'308B avg obj size on shard'
],
'Shard rs-shard-02': [
'32.74 % data',
'32.71 % docs in cluster',
'308B avg obj size on shard'
]
}