And because you index both; spent and unspent transactions, you need even more memory than the UTXO-index solution, which you are trying to beat.
The bottom line is: no way this can perform better than a simple hashmap based UTXO-index.
Let me add some numbers here.
At this moment (block 461402) a typical UTXO index has 20438271 records (transactions) - that's 20 millions.
In the meantime a TXO index used by your solution needs more than 210 millions of records.
https://blockchain.info/charts/n-transactions-total