posted 10 years ago
I think that's a reasonable approach as a research topic. Some sub-topcis I'd expect to see covered in such a project would be the CAP theorem, ACID transactions, and two-phase commit (all should be easily searchable on wikipedia). As for implementation, I'd focus on the physical storage layer (some SQL databases have pretty advanced journalling and buffer management systems; NoSQL tends to be more basic: MongoDB uses the virtual memory system and memory-mapped files, for example). The approach to distributing load across many physical machines (horizontal scaling) and the approach to maximizing performance on a single machine (vertical scaling) could also provide a nice bit of material.
I think the performance evaluation flows out of the use case, and the constraints that each system imposes on you, so rather than saying "SQL is faster" or "NoSQL is faster", it might be more appropriate to show problem domains where each SQL or NoSQL (or certain types of NoSQL) databases excel.