hi,
I have question in handiling series cardinality. I’m getting runtime out of memory error assuming this is due to high cardinality of series.
Currently, the cardinality of series is going above 1 million. Is there any way to perform custom partitiojning/sharding groups based on a key value in influxdb???
Say if i have 100,000 servers. Can i create 10 shards based on a key value???
fyi.,
fatal error: runtime: out of memory
runtime stack:
runtime.throw(0xb90871, 0x16)
/usr/local/go/src/runtime/panic.go:596 +0x95
runtime.sysMap(0xf39fa40000, 0x100000, 0x7fd29924bb00, 0xf0f6d8)
/usr/local/go/src/runtime/mem_linux.go:216 +0x1d0
runtime.(*mheap).sysAlloc(0xef6880, 0x100000, 0x7fd12b1b44c0)
/usr/local/go/src/runtime/malloc.go:440 +0x374
runtime.(*mheap).grow(0xef6880, 0x1, 0x0)
/usr/local/go/src/runtime/mheap.go:774 +0x62
runtime.(*mheap).allocSpanLocked(0xef6880, 0x1, 0x7fd29924bca8)
/usr/local/go/src/runtime/mheap.go:678 +0x44f
runtime.(*mheap).alloc_m(0xef6880, 0x1, 0x32, 0x7fd12b1b4470)
/usr/local/go/src/runtime/mheap.go:562 +0xe2
runtime.(*mheap).alloc.func1()
/usr/local/go/src/runtime/mheap.go:627 +0x4b
runtime.systemstack(0x7fd29924bd18)
/usr/local/go/src/runtime/asm_amd64.s:343 +0xab
runtime.(*mheap).alloc(0xef6880, 0x1, 0x10000000032, 0x7fd12b1b4428)
/usr/local/go/src/runtime/mheap.go:628 +0xa0
runtime.(*mcentral).grow(0xef9190, 0x0)
/usr/local/go/src/runtime/mcentral.go:212 +0x8e
runtime.(*mcentral).cacheSpan(0xef9190, 0xc420023228)
/usr/local/go/src/runtime/mcentral.go:93 +0x12a
runtime.(*mcache).refill(0x7fd29a9ab770, 0xf300000032, 0xf39f9db470)
/usr/local/go/src/runtime/mcache.go:122 +0xa0
runtime.(*mcache).nextFree.func1()
/usr/local/go/src/runtime/malloc.go:538 +0x32
runtime.systemstack(0xc42001c000)
Regards,
Ramesh G