LINQ and VistaDB
I recently watched Wes Dyer and his whiteboard presentation (Windows Media) about LINQ and deferred execution from the MSDN site. This is not a novice presentation; Wes goes into a lot of examples and behind the scenes information about LINQ. Wes works at Microsoft on the LINQ team. For those of you who have been watching the development of LINQ you may be very excited about it and want to know where VistaDB stands. I have seen the question posted in the forums. If you don’t know what The LINQ Project is take a look at the Microsoft site. LINQ is a set of language extensions to C# and VB.Net for a new Data Access Layer for Dot Net 3.0. The key benefit is that it is strongly typed, and does not rely on the underlying provider for type safety or strings. It can use embedded SQL and drop down to writing your SQL statements when connecting to a database, but that is not the key design goal. You can use the same query on a collection of objects in RAM, an XML document, or a database.From Microsoft MSDN: LINQ stands for "Language Integrated Query". It is a set of features such as lambdas, extension methods, and query comprehensions that enable compilers to understand and implement query logic over in-memory collections of objects. LINQ is extensible by creating extension methods against your own types. Specifically with DLINQ, we are actively working on ways to enable database vendors to more easily hook their products into the query translation pipeline. No more strings? Does this mean no more strings for dealing with a database? Well, it depends. If your data provider fully supports LINQ and can handle the expressions and trees then yes, you never drop to a string. But the most exciting part of this is that everything is strongly typed. This means that you receive type exceptions before the code is sent to the database server (saving CPU cycles on the server). LINQ Support in the future I feel quite strongly that LINQ support in the future will be a vital feature of VistaDB. Since we are already a fully managed database for Dot Net, the ability to make fully type safe queries will definitely set us apart from other database systems. And the fact that we will not have to drop to SQL code to perform that queries will mean a faster running database as well (and that is what you really wanted to hear, right?). The really great thing about the 3.x architecture is that it was built to be extendable in this way. We can add a new parser engine for LINQ and not impact the SQL Engine at all, and LINQ does not even have to go through the SQL Engine. They can both call the low level storage interfaces directly. LINQ support is on the list for research right now. When will be release it? I don’t know. I would really like to hear from you about your plans to support LINQ. I think it is quite obvious that LINQ is going to change the way a lot of applications are written to query their database. How do you feel about LINQ? More Microsoft hype? Or exciting technical development?
