Showing posts with label Oracle Database 10g XE. Show all posts
Showing posts with label Oracle Database 10g XE. Show all posts

Wednesday, October 01, 2008

Amazon Adds SQL Server to Oracle and MySQL as EC2 Relational Database Management Systems

Amazon Web Services announced on 10/1/2008 that Amazon EC2 “will offer you the ability to run Microsoft Windows Server or Microsoft SQL Server … later this Fall.” This capability adds to last week’s announced availability of Oracle 11g and MySQL 5.1 running under *nix operating systems. (See SSDS’s Competitors : Oracle 11g and Sun MySQL on Amazon EC2 of 9/23/2008).

The Amazon EC2 running Microsoft Windows Server sign-up page to be notified of the public beta says:

Starting later this Fall, Amazon Elastic Compute Cloud (Amazon EC2) will offer you the ability to run Microsoft Windows Server or Microsoft SQL Server. Today, you can choose from a variety of Unix-based operating systems, and soon you will be able to configure your instances to run the Windows Server operating system. In addition, you will be able to use SQL Server as another option within Amazon EC2 for running relational databases.

Amazon EC2 running Windows Server or SQL Server provides an ideal environment for deploying ASP.NET web sites, high performance computing clusters, media transcoding solutions, and many other Windows-based applications. By choosing Amazon EC2 as the deployment environment for your Windows-based applications, you will be able to take advantage of Amazon’s proven scalability and reliability, as well as the cost-effective, pay-as-you-go pricing model offered by Amazon Web Services.

Our goal is to support any and all of the programming models, operating systems and database servers that you need for building applications on our cloud computing platform. The ability to run a Windows environment within Amazon EC2 has been one of our most requested features, and we are excited to be able to provide this capability. We are currently operating a private beta of Amazon EC2 running Windows Server and SQL Server.

Jeff Barr’s Coming Soon: Amazon EC2 With Windows Amazon Web Services blog post of 10/1/2008 adds:

You will be able to use Amazon EC2 to host highly scalable ASP.NET sites, high performance computing (HPC) clusters, media transcoders, SQL Server, and more. You can run Visual Studio (or another development environment) on your desktop and run the finished code in the Amazon cloud.

The 32 and 64 bit versions of Windows Server will be available and will be able to use all existing EC2 features such as Elastic IP Addresses, Availability Zones, and the Elastic Block Store. You'll be able to call any of the other Amazon Web Services from your application. You will, for example, be able to use the Amazon Simple Queue Service to glue cross-platform applications together.

Existing EC2 tools will be able to launch Windows-powered EC2 instances. Once launched, you can use the Windows Remote Desktop or the rdesktop tool to access your instances. …

We'll be at the PDC (Professional Developers Conference) in Los Angeles at the end of October.

Update: Windows instance pricing will be strictly pay-as-you-go, like our other services. Customers will only pay for as much or little as they actually use; of course the actual price will be higher than Linux-based instances, due to the cost of Windows licenses. We'll announce specific pricing when we make the service broadly available later this Fall.

Werner Vogels, Amazon’s chief technology officer, discusses interest in Windows Server’s capability for transcoding and streaming Windows Media in his Expanding the Cloud: Microsoft Windows Server on Amazon EC2 post of 9/30/2008 (at 11:30 PM).

Dare Obasanjo is starting a month-long vacation in advance of his paternity leave and says in his Windows Server on Amazon EC2? post of 10/1/2008 that he’s “looking to do some long overdue hacking in-between burping the baby and changing diapers” and is looking for someone to get him in the Windows Server on EC2 beta.

Handwriting on the Wall

The announcement should come as no surprise. Anand Iyer, a Microsoft Northern California developer evangelist, reported in his Windows Server support for Amazon EC2 - coming soon post of 9/3/2008:

At Amazon Web Services’s Startup-Tour here in San Francisco, Jeff Barr just announced the AWS roadmap and it included “support for Windows Server.” Jeff says that Amazon has received “several requests” for Windows Server support for EC2 and while he couldn’t commit to a date, he said it’s definitely on the roadmap.

Windows Server and SQL Server License Issues

There’s no official word from Amazon about Windows Server and SQL Server versions or licensing fees for either product, other than that in Jeff Barr’s update added above:

[O]f course the actual price will be higher than Linux-based instances, due to the cost of Windows licenses.

Oracle allows licensees of Oracle Database 11g to run it on EC2 but also provides a free Amazon Machine Image (AMI) for Oracle 10g XE.

Sun requires an Enterprise Gold, Platinum or Unlimited license to run MySQL on EC2. However, there doesn’t appear to be any restriction to running “open-source” MySQL on EC2. The Running MySQL on Amazon EC2 with Elastic Block Store tutorial is just on of several articles and posts on the topic.

Competition with SQL Server Data Services and Microsoft’s Cloud Computing Platform

It’ll be interesting to hear from Microsoft’s licensing police, Data Programmability group, and SQL Server Data Services (SSDS) team about this “pre-emptive strike” against its purported “cloud computing platform,” which expected to be revealed at the Professional Developers Conference (PDC) 2008, and SSDS itself.

It will be particularly interesting to learn if SSDS developers prefer the entity-attribute-value (EAV) or conventional relational data model for cloud persistence. If SSDS adopts ADO.NET Data Services (Astoria) as its RESTful interface, there’s no reason not to simply substitute SQL Server with an Astoria front end for SSDS and abandon the unconventional authority, container, entity (ACE).

Ultimately, the winner probably will be decided on a new metric: TCNO™ (Total Cost of Non-Ownership™) for a specific levels of storage space, computing power, and bandwidth. The current credit crunch and economic uncertainty are likely to increase the attractiveness of “non-ownership” of IT facilities and pay-as-you-go “cloud licenses.”

Tom Sullivan’s Will the downturn accelerate cloud computing? InfoWorld article of 10/1/2008 says:

Analysts at Gartner and TABB Group, a research and advisory firm that focuses on financial markets, agree that the current economic downturn is already sparking interest in cloud computing both on Wall Street and elsewhere. "We expect examinations of various cloud services to accelerate," says Gartner fellow and vice president Ken McGee. "There will be a flight toward looking for lower-cost options."

Update 10/3/2008: Charles Arthur’s What effect will the financial crisis have on the tech sector? article of 10/3/2008 for the UK’s Guardian, says:

Expect to see a slowdown in smartphone sales and a concomitant growth in the use of open source, cloud computing and virtualisation technology as consumers cut back on their "discretionary" purchases while businesses, strapped for credit (because banks won't have it to lend), decide to make the best of what they've got and squeeze the last possible drops of life from the hardware they have, while reducing costs on software as far as possible. …

Tim Bray, director of web technologies at Sun Microsystems, put it simply on his Twitter feed (twitter.com/timbray): "Prediction: some pretty severe breakage in the technology industry," he suggested, adding: "Suppose nobody wants to do capital investment but you still gotta get work done. I'm thinking cloud cloud cloud cloud cloud." The advantage of cloud computing such as Amazon's S3 being that it is pay-by-use, rather than capital-intensive. [Emphasis added]

This is the first time I’ve encountered a newspaper journalist quoting a Twitter feed.

Other Voices, Other Rooms

Allen Williamson, blog: Amazon's EC2 now with Windows questions licensing issues.

Bob Warfield, SmoothSpan blog: Another Big Step for Amazon: Windows

Jeremy Kirk, InfoWorld: Ballmer: Microsoft will soon release ‘Windows Cloud’ OS

Stacy Higgenbotham, GigaOm: Amazon’s Elastic Compute Cloud Gets Windows

Nicholas Carr, RoughType: Here comes the “Windows Cloud”

OakLeaf Systems hits Techmeme 10/1/2008 2:55 PM EDT:

but Google’s new blog memetracker, which allegedly competes with Techmeme, found only 16 posts as of 10/2/2008 about the topic and this wasn’t one of them. (The number of posts varied from 14 to 17.) What’s really strange is no entry for Werner Vogels’ Expanding the Cloud: Microsoft Windows Server on Amazon EC2 post of 9/30/2008 or Jeff Barr’s Coming Soon: Amazon EC2 With Windows Amazon Web Services blog post of 10/1/2008. Looks like a fail to me.

Thanks to Mary Jo Foley for the heads-up in her Amazon launches pre-emptive strike against Microsoft’s planned cloud platform post of 10/1/2008. (Google’s blogtracker missed this post, too.)

Note: This post has been updated several times since its origination at 8:30 AM PDT on 10/1/2008.

Sunday, September 28, 2008

LINQ and Entity Framework Posts for 9/22/2008+

Note: This post is updated daily or more frequently, depending on the availability of new articles.

•••• Updated 9/28/2008 3:00 PM PDT adding VS 2008 SP1, jQuery, ASP.NET MVC 
••• Updated 9/27/2008 2:00 PM PDT with EF, LINQ to SQL, LINQ to XML, SSDS
•• Updated 9/26/2008 8:00 AM PDT adding EF POCO update, Silverlight RC0, DD
• Updated 9/25/2008 12:00 noon PDT including newly announced PDC 2008 sessions

Entity Framework and Entity Data Model (EF/EDM)

••• Julie Lerman’s No, I do not want Set in the name of my EntitySet post of 9/26/2007 echoes my Forcing Gratuitious Pluralization of EF EntitySet Names Was a Very Bad Decision post of 9/20/2008. Both of us abhor the enforced Set suffix for singularized EntitySets.

•• Jarek Kowalski released v1.03 of his EF POCO Adapter which focuses on n-tier scenarios and detached entities, according to his EF POCO Adapter updated (v1.03) post of 9/25/2008. Following are Jarek’s descriptions of the changes:

  • Added wrapper for ObjectContext.ApplyPropertyChanges() to IEntitySet<T>
  • Added wrapper for ObjectContext.Detach() to IEntitySet<T>
  • Fixed handling of detached/out-of-scope entities w.r.t lazy loading and attaching to other contexts. Lazy loading outside of scope will do nothing if the context had DeferredLoadingEnabled=false, otherwise will throw.
  • Added partial OnZZZCreated() methods on generated contexts, adapters and proxies to enable integration with 3rd-party extensions
  • Fixed code generation from EDMX.
  • EFPocoContext.EnableLazyLoading has been renamed to EFPocoContext.DeferredLoadingEnabled to better align with Linq to SQL and our plans for EF v2
  • Fixed adapter-POCO synchronization for complex types

You can download the source code from the MSDN Code Gallery’s Persistence Ignorance (POCO) Adapter for Entity Framework section.

Jarek’s previous posts about the EF POCO Adapter:

• Frans Bouma is interviewed by .NET Rocks! podcasters Carl Franklin and Richard Campbell "about his thoughts on the ORM revolution, his products, and the Entity Framework” in show #380. Frans’ interview starts at 14:00.

Frans says Microsoft has “put LINQ to SQL on the back seat,” which corresponds with the points I raised in my Is the ADO.NET Team Abandoning LINQ to SQL? post of May 23, 2008 (updated 5/23/2008). Carl Franklin also brings up Microsoft’s original position was that “Entity Framework is not an O/RM” at about 37:00.

• Julie Lerman’s lengthy “Data Access Options in Visual Studio 2008” article for CoDe Magazine became available online on 9/25/2008. It’s a must-read for developers who need to decide on one of the seven .NET 3.5 SP1 data access technologies her article describes.

Note: Non-subscribers can view Page 1 only until two months after publication.

Muhammad Mosa starts a new multi-part Entity Framework tutorial with Inheritance and Associations with Entity Framework Part 1 of 9/24/2008, which (paraphrasing Moses) covers building simple associations between two entities and writing custom code to retrieve other parts of the relation when inheritance is applied.

His detailed, downloadable sample project contains the following, fully illustrated (by screen captures) topics:

  • How to define a model with Table-per-Hierarchy Inheritance
  • Creating Sub Entities
  • Define Mappings
  • Define An Abstract Class

LINQ to SQL

••• Fredrik Kalseth’s DataContext Repository Pattern Example Code post of 9/27/2008 contains a link to download sample code for his Linq to Sql, Programming Against an Interface and the Repository Pattern of 5/5/2008 about which Fredrik says:

The magic that lets us run queries against for example IPage, is in the Cast<T> extension method in System.Linq. By using it, it allows clients to ask the Repository<T> method for IPage, which then through the mapping configured in the static TableMaps dictionary (where at application startup I've added the mapping between IPage and Page) gets translated into a request for the Page table from the context, and then finally cast back to a IQueryable<IPage> before being returned to the caller, ready for querying against.

His earlier, related The Specification Pattern and Encapsulation post of 7/12/2008 links to Nicholas Blumhardt’s Implementing the Specification Pattern via Linq post of 7/6/2008.

••• Matt Manela publishes a reader’s simpler method for SSCE 3.5 connection sharing in his SQL CE 3.5 with LINQ to SQL Revisited post of 9/26/2008. The original post was SQL CE 3.5 with LINQ to SQL of 9/8/2008. (Repeated in SQL Server Compact 3.5)

•• Simon Segal supplements the post below with LINQ To SQL - Going POCO and more……! Part 2 of 9/25/2008, which discusses accessor mutators for EntitySet and EntityRef types.

• Simon Segal generates a multifile assembly of his LINQ to SQL libraries for his POCO Custom Multifile Assembly and ReSharper post of 9/24/2008. His earlier LINQ To SQL - Going POCO and more…..! post describes his

Generic Repository approach [that] utilises POCO’s along with Specifications and Fetching strategies (an nHibernate concept). …

The idea of the generic repository began as an extension of the ideas expressed by Mike Hadlow in his article here which are derived from Ayende’s work here.

Simon discusses the design of his POCO generic Repository in his lenghty POCO improves inheritance for LINQ to SQL post of 8/26/2008.

• Damien Guard has fixed a few bugs in his Text Template Transformation Toolkit (v.74) on 9/25/2008 and there’s a new, corresponding version of my DamienGuardT4.sln project available from SkyDrive. For more details, see Bidirectional Serialization of LINQ to SQL Object Graphs with Damien Guard’s T4 Template in VS 2008 SP1, which was updated on 9/25/2008 also.

Nick Berardi demonstrates How NOT To Optimize LINQ Statements in his post about LINQ to SQL queries of 9/24/2008. Nick looked at the T-SQL generated by his complex LINQ to SQL query, which included a couple of let statements, and concluded 34 lines with three CASE statements was too many. His optimization reduced the number of lines to 16, but increased the execution time by a factor of 4.6.

Nick says:

The moral of the story is you probably don’t need to optimize your SQL query through LINQ, just keep it simple and optimize your LINQ statement and leave the rest up to the professionals at Microsoft who created the LINQ to SQL expression query generator.

LINQ to Objects, LINQ to XML, et al.

••• Charlie Calvert has returned to his LINQ Farm series. LINQ Farm: LINQ to XML and Line Numbers of 9/26/2008 shows how to indicate line numbers in XML Documents with help from an XmlLineNumbers project from XmlLineNumbers.zip in CodeGallery’s LINQ Farm section.

• Rinat Abdullin compares the performance of simple LINQ to Objects queries and hard-coded equivalents in his Some performance issues and caveats of LINQ of 9/25/2008.

ADO.NET Data Services (Astoria)

•••• Scott Hanselman offers a demonstration of jQuery 1.2.6 in conjunction with

  • ADO.NET Data Services and it's JavaScript Client Library
  • ASP.NET AJAX
  • ASP.NET AJAX Client Templating (Preview)

in his jQuery to ship with ASP.NET MVC and Visual Studio post of 9/28/2008. For more on Microsoft’s adoption of jQuery in VS 2008, see the Miscellaneous topic.

• Shawn Wildermuth reports about encountering performance problems in his online Silverlight 2 samples in his ADO.NET Data Services Performance Issues post of 9/25/2008.

The problem occurs with an Astoria query that retrieves many:one EntityRefs (Category and Supplier for each Product requested). Part of the problem might be that Shawn included the Category.Picture bitmap field in the query. LINQ to SQL, which is smart enough not to repeat T-SQL requests for objects currently in memory, doesn’t provide updatable Astoria objects out of the box. Entity Framework doesn’t support LINQ to SQL’s DRY (don’t repeat yourself) feature.

• Steve Maine will present Microsoft .NET Framework: Developing RESTful Services at PDC 2008:

Learn the latest features in Windows Communication Foundation for building Web 2.0-style services that use URIs, HTTP GET, and other data formats beyond XML. See how these features can be applied to AJAX web sites, "REST" applications, and data feeds.

ASP.NET Dynamic Data (DD)

•• DLPanther announces plans for a series of articles about ASP.NET Dynamic Data in his ASP.NET Dynamic Data, The Next Data Revolution! post of 9/25/2008.

• Steve Naughton continues his exploration of new DD techniques with Dynamic Data Custom Pages with Ajax Control Toolkit Tabs of 9/25/2008, which describes the two most successful methods he found for creating a generic page with a DetailsView that shows the parent record and a set of tabs showing all its child records.

• Stephen Walther will deliver ASP.NET Futures: WebForms and MVC Advancements at PDC 2008:

Learn about future advances in ASP.NET like WebForms, MVC, AJAX, Dynamic Data, and dynamic languages.

• Scott Hunter will present ASP.NET: Dynamic Data 2.0 and Dynamic Data for MVC at PDC 2008:

The next version of ASP.NET MVC contains a new scaffolding feature based on Dynamic Data that provides a rich framework for creating data driven web sites. Learn how to quickly build a Dynamic Data web site using features like model level validation, field and entity templates, and scaffolding.

Mike Taulty reports about experiments with DD in his ASP.NET 3.5 Sp1 Dynamic Data post of 9/24/2008. He was surpised to find that VS 2008 SP1’s DD templates were limited to Dynamic Data Web Site (Entity Data Model data source) and Dynamic Data Entities Web Site (LINQ to SQL data source).

Steve Naughton updated An Advanced FieldTemplate with a GridView/DetailsView Project, the seventh episode of his Dynamic Data and Field Templates series, on 9/23/2008. Paraphrasing the updates:

The FieldTemplate now has ParentDetails and the ChildrenGrid FieldTemplate’s
ParentDetails no longer support Insert but they do support Update as before.

SQL Server Data Services (SSDS)

• Kim Cameron and Stuart Kwan will present Claims-Based Identity: A Security Model for Connected Applications at PDC 2008:

Claims-based security is the underpinning of many applications, services, and servers. This model enables security features like: multiple authentication types, stronger authentication on-the-fly, and delegation of user identity between applications. Learn how to use this model in .NET, how it integrates with Active Directory, how it works across platforms, how it works with existing applications, and how we use it at Microsoft.

SSDS v1 will use claims-based security from BizTalk Services.

• Lynn Ayres and Tore Sundelin will deliver Connecting Active Directory to Microsoft Cloud Services at PDC 2008:

Learn how to augment your existing IT infrastructure with Microsoft Services. Manage and secure end user access to cloud services using your existing investment in Active Directory. Enable end users to access cloud services through existing Active Directory accounts, the same way they access your intranet-hosted software today. Hear how to enable existing software to use new service capabilities without re-writes, and do it all through the use of open and standard protocols.

Gianpaolo Carrero’s Cloud Services Architecture symposium post of 9/24/2008 describes the Head in the Cloud, Feet on the Ground symposium on PDC 2008’s day four. Gianpaolo says:

We will explore a few examples of cloud-based infrastructure usage as part of an existing application, we will discuss the architectural tradeoffs as well as best practices resulting from that usage. We will also walk through detailed examples of ‘enterprise grade’ hosted application design. And finally we will go through emerging patterns that take into account the physical aspects of a cloud-based application that are often overlooked, such as bandwidth which happens to be not infinite and certainly not free at high scale.

David Robinson announced in his SSDS and SSIS…like peanut butter and jelly post of 9/23/2008 that Matt Masson has posted documentation and downloadable code for SQL Server Data Services Connectors for Integration Services on CodePlex. Here are the download links:

The Source and Destination adapters simplify downloading and uploading SSDS data by taking advantage of SQL Server Integration Services.

Roger Jennings explores two relational databases in the cloud in his SSDS’s Competitors: Oracle 11g and Sun MySQL on Amazon EC2 of 9/23/2008. Oracle 11g for the Cloud was announced by Amazon Web Services on 9/22/2008; cloud-based MySQL was announced (originally) on 5/8/2008 and didn’t appear to garner much interest.

The unadvertised special is a a shared AMI for Oracle Express 10g with Oracle Enterprise Linux available from Amazon.

More from ZDNet about the cloud in Sam Diaz’s Intel at Oracle OpenWorld: It’s about time - and the cloud post of 9/24/2008 from Oracle OpenWorld.

Ayende Rahien’s Amazon EC2 now offers RDBMS post of 9/23/2008 gives his take on the difference between Oracle and MySQL in the cloud. Ayende concludes “I found this to be extremely interesting.”

Andrew Whitten says the following about his 9/21/2008 post about the Pictures in the Cloud - SSDS demo app, available from CodePlex:

I’ve been having a bit of hack around to show how pictures can be stored by this kind of service. There isn’t any reason to use this over the other online photo sharing sites, but it demonstrates how to use the API.

SQL Server Compact (SSCE) 3.5 and Sync Services

••• Matt Manela publishes a reader’s simpler method for SSCE 3.5 connection sharing in his SQL CE 3.5 with LINQ to SQL Revisited post of 9/26/2008. The original post was SQL CE 3.5 with LINQ to SQL of 9/8/2008. (Repeated in LINQ to SQL)

Visual Studio 2008 Service Pack 1 (General)

•••• MSDN Events Summer 2008 Resources offers the following downloads for Session 3 | Developing Applications with Visual Studio 2008 and .NET Framework 3.5 Service Pack 1:

Miscellaneous (WPF, WCF, MVC, Silverlight, etc.)

•••• Scott Guthrie announces support for the jQuery JavaScript library in the ASP.NET MVC preview and future versions of VS 2008 in his jQuery and Microsoft post of 9/28/2008. Scott says:

We will distribute the jQuery JavaScript library as-is, and will not be forking or changing the source from the main jQuery branch.  The files will continue to use and ship under the existing jQuery MIT license.

We will also distribute intellisense-annotated versions that provide great Visual Studio intellisense and help-integration at design-time. …

The jQuery intellisense annotation support will be available as a free web-download in a few weeks (and will work great with VS 2008 SP1 and the free Visual Web Developer 2008 Express SP1).  The new ASP.NET MVC download will also distribute it, and add the jQuery library by default to all new projects.

We will also extend Microsoft product support to jQuery beginning later this year, which will enable developers and enterprises to call and open jQuery support cases 24x7 with Microsoft PSS.

jQuery’s John Resig has more to say about Visual Studio’s adoption of jQuery in his jQuery, Microsoft, and Nokia post of the same date.

As Ayende Rahien points out in his On jQuery & Microsoft post of 9/28/2008: “[S]omething else that I didn't see other people pointing out":

This is the first time in a long time that I have seen Microsoft incorporating an Open Source project into their product line.

I am both thrilled and shocked.

Justin Etheredge’s $("Microsoft").append("excitement"); post of 9/28/2008 goes into much more detail about the impact of inclusion of third-party, open-source jQuery in VS 2008.

Rick Strahl announces the first of a two-part series of jQuery articles in his Introduction to jQuery Article posted post of 9/28/2008. Rick says the in the latter post:

Part 1 of the article is mostly a pure jQuery introduction and doesn’t talk about jQuery’s Ajax features or direct interaction with the server side and ASP.NET. Rather it focuses purely on many of the extremely useful client side features as well as the basic concepts of extending jQuery with plugins.

Part 2 then will talk about the server side integration with ASP.NET using various mechanisms to call ASP.NET content from raw page Ajax calls, to JSON Service callbacks, to using templating and even partial rendering against server side ASP.NET application. I’ll also talk about building ASP.NET components that integrate with jQuery. This article is based on my jQuery session that I’ve been giving at various conferences and user groups.

•••• Justin Etheredge provides a flow diagram for MVC requests in his ASP.NET MVC Request Flow post of 9/27/2008. Justin says he was unable to find a similar diagram on the web.

•• Scott Guthrie announced the release of Silverlight 2 RC0 for developers in his Silverlight 2 Release Candidate Now Available post of 9/25/2008. Scott says:

You can download today's Silverlight Release Candidate and accompanying VS and Blend support for it here.  Note that Expression Blend support for Silverlight 2 is now provided using Blend 2.0 SP1.  You will need to install Blend 2.0 before applying the SP1 service pack that adds Silverlight 2 support.  If you don't already have Blend 2.0 installed you can download a free trial of it here. …

Over the next few months we will be releasing a lot of new Silverlight 2 controls (more details on these soon). Today's release candidate includes three new core controls - ComboBox, ProgressBar, and PasswordBox - that we are adding directly to the core Silverlight runtime download (which is still only 4.6MB in size, and only takes a few seconds to install):

He also says the final release will be “shipped … soon.” Get more details on the release from:

Beth Massi offers a link to the source code and slides for her Data Sources and Data Binding in WPF Talk in Redmond on 9/22/2008. Beth says:

I started the talk with basics of data binding to a variety of data sources and then we moved to more to data access discussions and n-tier architecture issues. It was similar to the talk I did at Bay.NET in SF last month but I focused this time completely on WPF and didn't show any Winforms at all. This allowed us to have more time for architecture discussions and I think it worked out well.

Ayende Rahien is in the process of learning Erlang, the open-source programming language behind Amazon SimpleDB and open-source CouchDB, a document-oriented database that’s an Apache Incubator project.

Here are his posts by topic as of 10/24/2008 11:00 AM PDT (in chronological order):

All in all, an amazing tour de force of analyzing complex source code in a language that’s new to him.

Tuesday, September 23, 2008

SSDS’s Competitors : Oracle 11g and Sun MySQL on Amazon EC2

Two more databases officially rose to the cloud with simultaneous Oracle, Sun, and Amazon Web Services (AWS) announcements of 9/22/2008 that current Oracle and Sun relational databases are licensed to run on AWS EC2. Neither service is a beta; both relational databases are fully supported in the cloud.

Oracle Database 11g

Oracle Database 11g (Standard and Enterprise editions), Oracle Fusion Middleware, and Oracle Enterprise Manager can now be licensed to run under Oracle Enterprise Linux in the cloud on Amazon EC2. Customers can use their existing software licenses with no additional license fees, and Oracle will provide support for products deployed to EC2.

To simplify provisioning, Oracle offers free Amazon Machine Images (AMIs) to enable building applications with Oracle Application Express, Oracle JDeveloper, Oracle Enterprise Pack for Eclipse and Oracle Workshop for WebLogic.

Note: There is a shared AMI for Oracle Express 10g with Oracle Enterprise Linux available from Amazon (see below) but no mention of license requirements, if any.

Oracle also is introducing the Oracle Secure Backup Cloud Module for offsite storage of 11g backups with Recovery Manger (RMAN).

AWS Announcement: Oracle and AWS

Links to more information from the Oracle Web site:

Demos and tutorials:

Downloadable AMIs (from AWS):

Sun MySQL Enterprise

Sun Microsystems supports MySQL Enterprise Gold, Platinum, and Unlimited (only) subscriptions on AWS EC2. (MySQL Enterprise Monitor is not available for Amazon EC2.)

Note: The Sun Introduces MySQL Tech Support for Amazon EC2 press release of May 5, 2008 announced support for MySQL and Open Solaris on EC2, so the AWS announcement appears to be a follow-up.

AWS Announcement: MySQL Enterprise Support for Amazon EC2

MySQL Enterprise subscription pricing:

  • Enterprise Gold: $2,999 per server/year
  • Platinum: $4,999 per server/year
  • Unlimited: ~$40,000 per year

AWS published a Running MySQL on Amazon EC2 with Elastic Block Store tutorial on 8/20/2008.

Further information: MySQL Forums: MySQL on Amazon EC2. There is surprisingly little activity in this forum: A total of 16 messages since 5/2/2008. Sun doesn’t appear to be actively promoting “MySQL in the Cloud.”

There’s no indication that Sun provides a shared AMI for MySQL.

Cloud Computing Quote of the Week

Redmond Developer News published a “Cloud Computing Leaving Relational Databases Behind” story by Joab Jackson on the day of the three companies’ announcement. Here’s the lede:

One thing you won't find underlying a cloud computing initiative is a relational database. And this is no accident: Relational databases are ill-suited for use within cloud computing environments, argued Geir Magnusson, vice president of engineering at 10Gen, an on-demand platform servicer provider. [Emphasis added.]

Update 10/24/2008: For more information about 10Gen’s cloud database and financing see:

Of course hype-fed technologies need their own magazine and conference; here they are for cloud computing:

As of today, there were no conference speakers from Oracle, MySQL (or Microsoft) on the agenda.

Sunday, August 10, 2008

LINQ and Entity Framework Posts for 8/8/2008+

Note: This post is updated daily or more frequently, depending on the availability of new articles.

Shawn Wildermuth Attacks the Reality of Data-Last Design in the Enterprise

Shawn’s Rigidity in Data Design post of August 9, 2008 is a thought-provoking essay about the validity of the ALT.NET members and Domain-Driven Development adherents contention that “that data is a top-down or at worse, bottom up design problem” and the assumption that greenfield persistence (database) schema are de riguer for most data-intensive development projects.

Shawn takes the position, with which I agree, that most data-driven development projects start with an existing database schema and a substantial amount of historical data. I estimate that nine out of ten projects that I’ve completed in the past 20 years worked extensively with existing business data on mainframes, minicomputers, and mid-range UNIX servers.

Shawn concludes:

No *rule* applies in all situations. I laud the ALT.NET guys for trying to inject better skills and tools into the process, I just rail against the ferocity of zealotry that comes in some of the message. When enterprise developers hear this, they just tune it out instead of taking what helps them and leaving the rest.

Added: August 10, 2008

Steve Naughton Adds Custom Row Rollover and Row Click Behavior to ASP.NET Dynamic Data Grid Views

His Customising GridView for Row Rollover and Click in Dynamic Data post of August 9, 2008 adds:

  • Background color change with mouse rollover
  • Row click navigation (e.g., to details view)
  • Row double-click navigation (e.g., to edit view)

to GridView controls in ASP.NET Dynamic Data projects. Steve’s prodigious output of code for customizing ASP.NET Dynamic Data projects goes far beyond what the Microsoft team has provided in documentation and blog posts so far.

Bart De Smet Offers LINQ Resources from Three of his Four Tech*Ed South Africa 2008 Sessions

Bart’s TechEd 2008 South Africa Demo Resources post of August 9, 2008 provide downloadable files and other resources from his two LINQ-related presentation and an additional Tech*Ed South Africa 2008 session:

  • DEV 305 – C# 3.0 and LINQ Inside Out
  • DEV 303 – Parallel Extensions to the .NET Framework
  • DEV 304 – Writing Custom LINQ Providers
  • MGT 301 – Next-Generation Manageability – Windows PowerShell and MMC 3.0

VS 2008 SP1 RTM Scheduled for Monday, August 11, 2008

Visual Studio 2008 Service Pack 1 will be available for download from the MSDN Subscriptions page "after August 11, 2008.”

If you have VS 2008 installed, don’t run SQL Server 2008 setup until after you install VS 2008 SP1 RTM bits.

For more information, see my VS 2008 SP1 RTM Scheduled for Monday, August 11, 2008 post of August 8, 2008.

Bill McCarthy Casts a List(Of DerivedClass) to List(Of BaseClass) with Generic Variance via an Extension Method

Bill starts his Generic variance and List(Of T) post of August 8, 2008 with:

Have you ever wanted to cast a List(Of Customer) to a List(Of BusinessBase), where Customer Inherits BusinessBase, only to find that you can't... well you can ;)

But his extension method uses reflection do it. (His post is an extension to his Inside Arrays article for in Visual Basic Magazine’s July 2008 issue.

For more information about Generic Variance see Variance in Generic Types (C# Programming Guide) article, Paul Vick’s A little update on VB10 thinking... post that says Generic Variance is on VB vNext’s radar, and Eric Lippert’s 11-part Covariance and Contravariance in C# blog series.

Don Kiely Describes Why Web Sites Running in Medium Trust Can’t Use Entity Framework v1

Don’s “Dynamic Data with the Entity Framework in Medium Trust” article for the ASP.NET Newsletter August 8, 2008 issue’s “Secure ASP.NET” column publicizes an ASP.NET Dynamic Data forum thread: Should Dynamic Data (Entity Framework model) work in medium trust?

The upshot of the thread is that the EntityDesignerBuildProvider throws exceptions the when run in medium trust on hosted Web sites. According to the Entity Framework team’s Diego Vega:

    1. The problem only affects Web Sites. Web Applications are not affected.
    2. Web Sites precompiled in full-trust and deployed to partial-trust apparently work.

Don and Diego suggest the same workarounds.

Thanks to Julie Lerman for the heads-up.

Ardenkantur Recounts Issues Using Entity Framework with Jaroslaw Kowalski’s Oracle Data Provider

His My Adventures with Entity Framework and Oracle post of August 8, 2008 describes issues with mixed-case versus upper-case table and column names, inability to specify column names in the EDMX file’s SSDL (storage) section instead of the mapping layer (MSL),  and use of ROWNUM clauses in Skip and Take operations.

The post is based on Jaroslaw’s EFOracleProvider described in his Sample Entity Framework Provider for Oracle post and available for download from under the Microsoft Public License (MS-PL), which isn’t intended for production use. However, users of commercial EF-enabled Oracle Managed Data Providers should watch out for the the problems Ardenkantur encountered in his pre-RTM test.

Pete Montgomery Demonstrates Caching the Result of LINQ Queries

In Caching the results of LINQ queries of August 8, 2008, Pete describes how to cache the result of LINQ queries that will will:

    • work for any LINQ query (over objects, XML, SQL, Entities…)
    • work for anonymous type projections, as well as business entities
    • be statically type safe (no casting required)
    • deal transparently with cache key creation
    • look syntactically like a custom query operator

He generates the unique cache key from the query expression.

Although Pete’s technique targets ASP.NET’s System.Web.Caching.Cache class, he says the approach “can be used by any .NET application or library.”

Note: Ayende Rahien (Oren Eini) has just completed a series of blog posts on distributed hash tables (DHT). His Patterns for using Distributed Hash Tables: Conclusion post of August 9, 2008 has links to the preceding eight episodes. If you’re interested in object caching in .NET, this series is a must-read.

Billy McCafferty Releases S#arp Architecture v0.7.3 Supporting ASP.NET MVC Preview 4 and NHibernate 2.0 CR 1

Billy’s S#arp Architecture: a new home, upgrades and a logo! post of August 8, 2008 announces the release of the latest version of S#arp Architecture: ASP.NET MVC with NHibernate (0.7.3), which supports ASP.NET MVC Preview 4 and NHibernate 2.0 CR1, and the formation of a S#arp Architecture Discussion Group on Google Groups.

He describes his new framework, which carries a GNU General Public License v3 license, as follows:

Pronounced "Sharp Architecture," this is a solid architectural foundation for rapidly building maintainable web applications leveraging the ASP.NET MVC framework with NHibernate. The primary advantage to be sought in using any architectural framework is to decrease the code one has to write while increasing the quality of the end product. A framework should enable developers to spend little time on infrastructure details while allowing them to focus their attentions on the domain and user experience. Accordingly, S#arp Architecture adheres to the following key principles:

  • Focused on Domain Driven Design
  • Loosely Coupled
  • Preconfigured Infrastructure
  • Open Ended Presentation

The overall goal of this is to allow developers to worry less about application "plumbing" and to spend most of their time on adding value for the client by focusing on the business logic and developing a rich user experience.

Billy is the author of NHibernate Best Practices with ASP.NET, 1.2nd Ed., which is required reading for anyone developing data-driven ASP.NET projects, regardless of whether you’re using or plan to use NHibernate, Entity Framework, LLBLGen Pro, or any other .NET Object/Relational Management O/RM tool.

Kingsley Idehen: OpenLink Software Publishes White Paper about LINQ to RDF

Kingsley describes Carl Blakeley’s LINQ To RDF: Exploiting the RDF based Linked Data Web using .NET via LINQ white paper of July 31, 2008 in his .NET, LINQ, and RDF based Linked Data (Update 2) post of August 8, 2008:

The paper offers an overview of LINQ to RDF, plus enhancements we've contributed to the project (available in LinqToRdf v0.8.). The paper includes real-world examples that tap into a MusicBrainz powered Linked Data Space, the Music Ontology, the Virtuoso RDF Quad Store, Virtuoso Sponger Middleware, and our RDfization Cartridges for Musicbrainz.

OpenLink Software is the publisher of Virtuoso, “an innovative Universal Server platform that delivers an enterprise level Data Integration and Management solution for SQL, RDF, XML, Web Services, and Business Processes.”

Amirthalingam Prasanna Offers a Introductory Guide to ADO.NET Data Services

His “Creating Service-Orientated Data-Access Layers” article of Redgate Software’s Simple-Talk newsletter of July 30, 2008 is yet another tour of ADO.NET Data Services but, unlike many other Astoria articles and blogs, it includes the basic details of query interceptors and change inteceptors for implementing role-based security.

Monday, December 18, 2006

Is Beta SQL Server Express SP2 for Vista an Issue?

The CNNMoney.com site published Business 2.0 magazine writer Owen Thomas's December 15, 2006 "Vista flaw could haunt Microsoft" article with this deck:

"Microsoft wants a bigger piece of Oracle and IBM's database business, but an oversight in its new operating system could cost the company plenty."

The upshot of the article? SQL Server 2005 Express Edition (SSX) isn't licensed to run today on Windows Vista desktops, so Microsoft loses bigtime. Here are bullet points for the article's primary assertions:

  • "A company that deftly moved from strength to strength, leveraging its dominance in one area of software to command other parts of the tech business ... is long gone, folks."
  • Microsoft "has lost its Midas Touch ... in [i]ts bid for a bigger piece of the $14 billion database business, a sector now ruled by Oracle and IBM."
  • [C]ompanies looking to install Vista, which went on sale to corporate customers Nov. 30, are going to have to get their database management software someplace else.
  • "IBM has beaten Microsoft to the punch. Last week management software, called DB2 9 Express-C, that's compatible with Vista.IBM released a desktop version of its competing database." [Emphasis added.]
  • Google "is beating Microsoft in other arenas ... [because Microsoft] has forgotten how to execute its own playbook of launching a coordinated wave of products that all work together."
  • "Microsoft will get this straightened out - eventually. By then, it just might be time to launch another version of Windows."

The foregoing egregious example of breathless journalism begs these issues:

  • SSX SP-1, the current incarnation, is fully supported on Windows Vista, according to the December 19, 2006 "Inaccuracies in recent CNNMoney.com article about SQL Express and Windows Vista" post on Microsoft's SQL Server Express blog, the SQL 2005 Server Express Edition System Requirements page, and the SQL Server 2000 (including MSDE) on Windows Vista FAQ page. (Thanks to Microsoft's Mike Wachal for bringing this to my attention in this post's Comments.)
  • It's SSX with Advanced Features (SP) that isn't supported by Windows Vista. This SKU, which includes SQL Server Management Studio Express (SSMSX) and enables full-text search plus local SQL Server Reporting Services, currently is used primarily by developers and DBAs. These first two points effectively moot the remaining issues.
  • Deployment of SSX, Microsoft Data Engine (MSDE) 1.0, and Microsoft Desktop Engine (MSDE) 2000 for local data storage on desktops and laptops remains relatively uncommon. Jet 4.0, which is included in the Windows XP and Vista operating system and used by Access, Visual Basic 6.0/200x, and other .NET and COM-based front-end apps is a much more common back end than SQL Server.
  • The most common application for the three freely distributable SQL Server versions is as a multiuser back end for workgroup or divisional database applications that need more robustness, reliability, and scalability than Jet 4.0 offers. In this case, the back-end server almost always resides on a domain or workgroup server that isn't a candidate for a Vista desktop upgrade.
  • The cost of modifying client-side applications to run another "free" database, including moving the stored data and testing the resulting client/server reconfiguration, is astronomical compared to waiting briefly for the release version of SSX SP2 and its data management/support tools.
  • The only other sources of free client/server databases that come even close to matching SSX's capabilities are IBM and Oracle. IBM hadn't even released a technical preview of DB2 9 Express-C for Vista as of December 13, 2006 (They released a technical preview on December 19, 2006 at about 12:00 p.m., see below). As of December 18, 2006, Oracle hadn't made an announcement about the compatibility of Oracle Database 10g XE with Windows Vista (see below).
  • SSX with Advanced Services offers SSRS and FTS features; neither IBM DB2 9 Express-C or Oracle Database 10g XE include fully customized reporting or high-performance, indexed full-text search features.
  • I haven't seen reports of any significant problems incurred by upgrading MSDE 1.0 or 2000 databases to SSX running under Windows Vista. I've moved multi-GB database (.mdf/.ldf)files from MSDE 2000 to SSX under Vista without difficulty.
  • Windows Vista's official release date is January 30, 2007. Until then, judgements about Microsoft's loss of revenue from not releasing the RTM version of SSX SP2 are premature.

Full Disclosure: As mentioned in my profile to the right, I make a significant part of my living writing about Microsoft productivity applications, operating systems, database platforms, and new data-related technologies.

A Forthcoming "Technical Preview" of DB2 9 Express-C for Windows Vista: When?

IBM issued a December 7, 2006 press release that claimed DB2 9 Express-C was ready to run on Windows Vista. However, in a subsequent December 13, 2006 "DB2 Express-C on Vista!" post, the DB2 Express Community team's Ryan Chase said "[W]e will be providing a tech preview of DB2 Express-C on Vista before year end." [Emphasis added.] On December 19, 2002, the link to this page was the top item of the News section of IBM's main page for DB2 Express-C under the following graphic:

The full text of the "DB2 Express-C on Vista!" post is here, in case it disappears from the IBM site:

Hello,

Some of you may have seen the press already, for those that haven't, IBM has announced that DB2 Express-C on Vista will be available soon! We are ironing out the final bugs and doing some final testing as we speak, and we will be providing a tech preview of DB2 Express-C on Vista before year end. (I'm hoping it's much sooner, but I don't want to make promises I can't keep.)

This is a tech preview of the official Vista support in DB2 9, which will be coming very soon! (Stay tuned for official announcement info.)

Ryan Chase DB2 Express Community team

Ian Hakes, IBM DB2 UDB Express Community Facilitator, posted on December 19, 2006 at 12:32 p.m. a "See the view from the Vista" message on the IBM DB2 Express forum, announcing that the Vista-enabled version was now ready for download by registered IBM Website users. Here's the download description:

DB2 9 Express-C for Windows Vista on 32-bit AMD and Intel systems (x86) (Technology Preview) db2exc_91_WIN_Vista_x86.zip (350MB) [emphasis added]

According to an e-mail to me from Owen Thomas, as well as a comment to his December 15, 2006 "Vista's Database Failure" blog post on the subject, IBM said they had withdrawn the download for a bug fix and reinstated the download today (after the first set of today's updates were posted). However, he didn't mention in his article, comments, or the e-mail that the Vista-enabled version was a technology preview, not a fully released version.

It's doubtful that any rational IT executive would abandon SSX on a Vista upgrade for a promise that IBM might sometime deliver a DB2 9 Express-C Vista release—let alone a technology preview.

Most technology reporters I know look beyond press releases to verify a new or upgraded product's status.

Note: DB2 9 Express-C has the fewest operating restrictions of the three Express products: "DB2 Express-C can be run on up to 2 dual-core CPU servers, with up to 4 GB of memory, any storage system setup and with no restrictions on database size or any other artificial restrictions." The license agreement confirms these two restrictions.

Subsequent DB2 9.1 Express-C installation: On December 19, 2006, I installed DB2 9 Express-C for Windows Vista on a Gateway S-5200D system with a 2.8-GHz Intel Pentium D(ual Core) processor, 2 GB RAM, and an nVidia GeForce 6600 GPU with 256 MB RAM. The installation process threw an 'ADM10500E Health indicator "Monitor Heap Utilization" ("db2.mon_heap_util") breached the "upper" alarm threshold of "95 %" with value "100 %" on "instance" "DB2"' error, several 'Faulting application db2InstallEventLog.exe, version 9.1.100.164, time stamp 0x457d788d' errors, and many warnings but ran to completion. During operation, the Java Launcher throws "The color scheme has changed" notices on startup. It appears to me that the Technical Preview needs a few warts removed.

IBM DB2 Add-In for Visual Studio 2005 installation: I also installed and confirmed compatibility of the IBM DB2 Add-In for Visual Studio 2005 with the Visual Studio 2005 Service Pack 1 Update for Windows Vista Beta. I connected to my DB2 instance with my Domain Admins account with the native IBM DB2 Data Provider for .NET Framework 2.0, created a Data Source from the SAMPLE database's PRODUCT and INVENTORY tables, and tested DataGridView and details data entry forms.

Note: Microsoft released VS 2005 SP1 for other platforms on December 14, 2006.

No Oracle Database 10g XE Support for Windows Vista

Oracle Database XE System Requirements state that Oracle XE supports "[o]ne of the following 32-bit Windows operating systems:

  • Windows 2000 Service Pack 4 or later
  • Windows Server 2003
  • Windows XP Professional Service Pack 1 or later"

The only reference to Oracle support for Windows Vista I've been able to find is his vague statement from Tom Haunert in the special 2006 Windows edition of Oracle Magazine: "Oracle is working with Windows Vista and other Microsoft technologies today in order to provide Oracle customers with new solutions for Windows tomorrow."

Note: Oracle XE's minimum server component diskspace requirement is 1.6GB, making the product impractical for use as a client-side data store. Clients also require installing the 75-MB client component.

My Experiences with the SSX SP2 November 2006 CTP for Windows Vista

I installed the Windows Vista Ultimate Edition RTM (Gold Code) from the MSDN site on a Gateway S-5200D with a 28-GHz Pentium D, 2 GB RAM, and 180-GB SATA drive. I then installed SQL Server 2005 Express Edition with Advanced Services SP2 - November 2006 CTP from the download site. I included SQL Server Reporting Services (SSRS) and Full-Text Search (FTS) features and accepted the default options when running the installer. I then specified TCP/IP and Named Pipes connectivity and enabled CLR Integration with the SQL Server Surface Area Configuration Tool.

I then began creating, updating, and upgrading databases up to 1.2GB in size from SSX and MSDE 2000 running under Windows XP and Windows Server 2003. The only issue I encountered was failure of the Surface Area Contriguration Tool to open a port for SQLServer.exe in Windows in Windows Firewall. (The tool opened UPP Port 1434 for the SQL Browser service but not for the randomly-assigned TCP/IP port for the non-default OAKLEAF-WV20\SQLSERVER named instance.) I haven't tested SSRS or FTS extensively so far, because none of SSX's no-charge competitors offer these high-end features.

After serveral days of testing, the Application event log showed a single "The configuration of the AdminConnection\TCP protocol in the SQL instance SQLEXPRESS is not valid" error message, which I attribute to SSX's lack of a dedicated administrative connection.

Possible Microsoft Missteps

Here's where I think Microsoft went wrong:

  • In my opinion, the decision to embargo MSDE 1.0 and 2000 from Windows Vista systems, which I reported in a July 11, 2006 "Windows Vista Won't Support MSDE 1.0 and 2000" Post, was a serious public relations error.
  • The October [sic] CTP end-user license agreement (License_EXPRCOMP_ENU.txt) in the \Program Files\Microsoft SQL Server\90\EULA folder requires "another agreement" from Microsoft to "test the software in a live operating environment" but doesn't tell you how to obtain such an agrement.
  • The same EULA (and License_EXPR_ENU.txt for SSX SP1) states that "Microsoft provides Internet-based services with the software. It may change or cancel them at any time." The EULA doesn't define "Internet-based services." However, loss of use with or support by Internet Information Services (IIS) 7.0 would be a disaster for many small organizations who depend on SSX as a Web site datasource.

However, I don't believe any of the preceding issues will affect Microsoft's future revenue stream from Windows Vista or SQL Server significantly.

Updated: 12/19/2006: Minor additions. 12/19/2006, 2:30 p.m. PST: Major additions and changes. 12/20/2006: Minor additions.