Does data-in-index improve faster read access than memory-in-index?

I am designing a namespace with Aerospike configuration for fast reads. The data will be written in a batch maybe once a week. The data is an integer (0-100).

This is my namespace design for now:

namespace pc {
        replication-factor 2
        memory-size 4G
        high-water-memory-pct 70
        high-water-disk-pct 60
        default-ttl 14d 
        nsup-period 120
        single-bin true
        partition-tree-sprigs 4096

        storage-engine device {
                file /opt/aerospike/data/pc.dat
                filesize 16G
                max-write-cache 128M
                data-in-memory true
        }
}

I am considering to use data-in-memory and single-bin. Will the read speed be improved if I use “data-in-index”? https://docs.aerospike.com/docs/operations/configure/namespace/storage#recipe-for-a-hdd-storage-engine-with-data-in-index-engine

The data-in-index configuration is for very special cases where your data can fit in 8 bytes. The primary benefit of this model is being able to warm-start a namespace with data-in-memory set to true on a node after the node has been stopped. The warm-start feature does require Aerospike Enterprise.

1 Like

@kporter Thanks for the reply. Is it ( data-in-index configuration) helpful in terms of speed? Or does it have the same performance as data-in-memory?

I would expect it to be, in theory, potentially marginally faster since it wouldn’t need to do any other look up after finding the record in the primary index.

1 Like
© 2021 Copyright Aerospike, Inc. | All rights reserved. Creators of the Aerospike Database.