New-age Transactional Systems - Not Your Grandpa's OLTP
John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Abel Avram on Jun 10, 2008
Everybody is waiting for the new features coming with Microsoft SQL Server 2008, but there are some deprecated and discontinued features that we should be aware of. Deprecated features are features found in previous versions of SQL Server that are no longer recommended to be used in newer products, and they are going to be removed from future versions of the server. Discontinued features are those features no longer available in SQL Server 2008. It is important to notice what those features are before migrating to SQL Server 2008.
The deprecated and discontinued features are found in a backward compatibility online document on MSDN. There are several major areas with many compatibility issues:
Beside those deprecated and discontinued features, there are numerous breaking and behavioral changes in the product in the respective areas. A breaking change might break an application or a script built on a previous version of SQL Server. A behavioral change affects the way features work in SQL Server. It is recommended to consult the documentation before upgrading to SQL Server 2008, or using the Upgrade Advisor, an application which analyses the current installation of SQL Server and generates a report with various issues that need to be fixed either before or after the upgrade.
Using Drools? See what you're missing! Get the Power of Drools with the Assurance of Red Hat
It's nice that you provided a link to the site where we can read all of the lists ourselves, but I think all of the readers would appreciate you highlighting some of the big deprecated features. The "major areas" you pointed out are essentially the entire SQL Server platform.
For example, just quickly skimming a few sections I noticed some issues that have the potential to affect a lot of people:
1. Use of *= and =* will no longer be supported in TSQL. ANSI joins will be required. Most people know to use ANSI joins when writing new code, even if they don't understand the subtle differences that can arise, but I've personally seen thousands of legacy reports that use the older syntax.
2. RAISERROR(int,string) is no longer supported. It appears some flavors of RAISERROR are still supported, but the recommendation is to move to the new-in-2005 try-catch paradigm. Again, I've seen some older systems with this code riddled throughout their stored procs.
3. Remote servers have been entirely replaced with linked servers - probably a good thing.
4. SET ROWCOUNT is no longer supported. TSQL will have to be rewritten to use TOP.
5. Notification Services has been removed from SQL Server 2008. This is a big deal for some people, but this deprecation has been pretty widely publicized already.
6. In Reporting Services, HTML with Office Web Components (OWC) rendering extension is discontinued.
Hmm - More concerning is the deprecation of SQL commands that match Sybase (e.g. sp_lock, sp_depends, temporary table naming conventions, image datatype and a few others...). It will be harder to migrate Sybase based applications to the SQL Server platform in the future.
Considering that X86 Hardware has provided significant performance benefits over the last few years vs historical SUN infrastructure, this added an extra migration option for IT managers to consider when retiring Sybase databases (i.e. vs migrating to DB2 or Oracle).
I know this is a hangup from the origins of SQL Server, but it has been extremely useful for moving between Sybase and SQL Server platforms for development purposes.
John Hugg discusses high volume transaction processing applications with high and low frequency profiles, and how VoltDB can be used for that purpose.
Kevlin Henney examines code samples to see what can be learned from them starting from the premise that one won’t write great code unless he knows how to read it.
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.
One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.
InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.
2 comments
Watch Thread Reply