In-memory database and programming language memory management / garbage collection
You choose an in-memory database for performance, right? An in-memory database written in C/C++ and that provides an API for Java and/or Python won't have GC issues. Many (most?) financial systems are sensitive to latency and 'jitter'. GC exacerbates jitter.
I've been reading about in-memory databases and how they use RAM instead of disk-storage.
I'm trying to understand the pros and cons of building an in-memory database with different programming languages, particularly Java and Python. What would each implementation offer in terms of speed, efficiency, memory management and garbage collection?
I think I could write a program in Python faster, but I'm not sure what additional benefits it would generate.
I would imagine the language with a faster or more efficient memory management / garbage collection algorithm would be a better system to use because that would free up resources for my in-memory database. From my basic understanding I think Java's algorithm might be more efficient that Python's at freeing up memory. Would this be a correct assumption?
Cheers