Current databases lack many important features to support change, high performance applications and a flexible information model. I have been thinking and dreaming of these features that we were forced to create in banking products and applications over the last three decades. Some features that can be in a new database can be :
1. Support for Change: tables and indexes should have historical structures with historical data maintained with historical structures.
2. Storing of JSON data structures as fields with indexable and searchable JSON fields
3. Support for Field Level: multiple values (language multiples, independent multiples or historical multiples)
4. Support for Immutable rows / fields
5. Support for Marking rows as immutable and permanent
6. Support for storing common information elements like emails, chats, etc
7. Support for entity level operations (insert entity, update entity) involving multiple tables
8. Support for pre-caching of highly used database rows
9. Support for storing deleted rows in a designated store
10. Support for automatic historical records during updates
11. Stored SQL Queries with version support (not stored procedures), with provision to pass parameters during execution
12. Nested Transaction support with programmer-controlled lock releases in nested transactions with programmer supplied rollback functions
13. Text Indexes for fast text (name) searches (without full table scans)
14. Support for programmer supplied function created indexes
15. Support for Binary Image Searches
16. Support for field Level and aspect level locks
17. Support for Functional Resource Locks
18. Support for long running pickup locks
19. Support for RBA (Row Being Approved) and TBA (Transaction Being Approved) stores to support transition logic
20. Support for RBC (Row Being Constructed) and TBC (Transaction Being Constructed) to support multi step and complex flow driven construction of transactions and entities
etc. etc.
These are just wild dreams of a dreaming amateur designer. Hope there will be few designers in India who have similar dreams and there will be a bold designer who will make these dreams a reality.



