Good afternoon everyone.
Recently, I was tasked with developing an application to automate some aspects of stock trading. While working on the initial architecture, a database dilemma arose. I need a fast database engine that can handle huge amounts of data coming in very quickly. I am quite experienced in general programming, but I have never encountered the task of developing a database architecture with a heavy load. I developed a simple MSSQL database schema with several many-to-many relationships during one of my projects, but that is.
I am looking for some tips on choosing the most suitable database engine and some pointers to various manuals or books that describe the development of a database with a heavy load.
Project features are as follows:
- OS: Windows NT Family (Server 2008/7)
- Primary platform: .NET with C #
- Database structure: one table for storing primary elements and two or three tables with foreign keys for the first table for storing additional information.
- SELECT database requirements: ultrafast selection is required using foreign keys and a combination of a foreign key and one of the columns (presumably DATETIME)
- INSERT database requirements: the faster the better :)
If there will be a significant increase in performance, some parts can be written in C ++ with managed interfaces for the rest of the system.
So again: given everything I just printed, give me some tips on what is the best database for my project. References and links to some manuals and books on this subject are also welcome.
EDIT: I will need to insert 3-5 rows into 2 tables about once every 30-50 milliseconds, and I will need to do SELECT with 0-2 WHERE clauses at the same speed.
source share