Try Your Own OData Feed In The Cloud--Or Not!

So, being a good Data Driver, I was all pumped up to tackle a project exploring OData in the cloud and Microsoft's new PHP drivers for SQL Server, the latest embodiments of its "We Are The World" open-source technology sing-along.

I was going to throw some other things in, too, if I could, like the Pivot data visualization tool. I literally spent days boning up on the technologies and trying different tutorials (by the way, if someone finds on the Web a tutorial on anything that actually works, please let me know about it; you wouldn't believe all the outdated, broken crap out there--some of it even coming from good ol' Redmond).

So part of the project was going to use my very own Odata feed in the cloud, hosted on SQL Azure. The boys at SQL Azure Labs worked up a portal that lets you turn your Azure-hosted database into an OData feed with a couple of clicks. It also lets you try out the Project Houston CTP 1 and SQL Azure Data Sync.

The portal states:

SQL Azure Labs provides a place where you can access incubations and early preview bits for products and enhancements to SQL Azure. The goal is to gather feedback to ensure we are providing the features you want to see in the product.

Well, I provided some feedback: It doesn't work.

Every time I clicked on the "SQL Azure OData Service" tab and checked the "Enable OData" checkbox, I got the error in Fig. 1.

Enable SQL Azure OData begets an error
Figure 1. Problems on my end when I try to get to enable the SQL Azure OData Service. [Click image for larger view.]

I figured the problem was on my end. It always is. I have an uncanny knack of failing where others succeed in anything technology-related. It's always some missed configuration or incorrect setting or wrong version or outdated software or … you get the idea. Sometimes the cause of my failure is unknown. Sometimes it's just the tech gods punishing me for something, it seems. Check out what just now happened as I was searching for some links for this blog. This is a screenshot of the search results:

Garbled message
Figure 2. Stephen Forte's blog can be difficult to read at times. But it's absolutely not his fault. [Click image for larger view.]

I mean, does this stuff happen to anyone else?

Basically, though, I'm just not that good. But hey, there are other tech dilettantes out there or beginners who like to muck around where they don't belong, so I keep trying in the hopes of learning and sharing knowledge. And, truthfully, 99 percent of the time, I persevere through sheer, stubborn, blunt force trial-and-error doggedness. But it usually takes insane amounts of time--you've no idea.

So I took my usual approach and started trying different things. Different databases to upload to Azure. Different scripts to upload these different databases. Different servers to host these different databases uploaded with different scripts. I tried combination after combination, and nothing worked. I combed forums and search engines. I found no help.

(By the way, try searching for that error message above. I can almost always find a solution to problems like this by Googling the error message. But in this case, nothing comes up except for one similar entry--but not an exact match. That is absolutely incredible. I didn't even think there were any combinations of words that didn't come up as hits in today's search engines.)

Usually, a call to tech support or a forum post is my last resort. They don't usually work, and worse, they often just serve to highlight how ignorant I am.

But, after days of trying different things, I sent a message to the Lab guys. That, after all, is the purpose for the Lab, as they stated above: feedback.

So things went something like this in my exchange with the Labs feedback machine:

Me: When I check box to enable Odata on any database, I get error:

SQL Azure Labs - OData Incubation Error Report
Error: Data at the root level is invalid. Line 1, position 1.
Time: 8/9/2010 2:56:16 PM

D., at SQL Azure Labs: Adding a couple others..
Anything change guys?

J., at SQL Azure Labs: None from me.

M., at SQL Azure Labs: I'm seeing the same error, though I haven't changed anything either.
J., can you look at the change log of the sources to see if anything changed?
D., have you published any changes in the past week?

J., at SQL Azure Labs: OK. Will have to wait until this afternoon, however.

M., at SQL Azure Labs: J.; might something have changed on the ACS side?
The error is coming from an xml reader somewhere, and occurs when the "Enable OData" checkbox is selected...

So that was a couple days ago and I'm still waiting for a fix. But at least I know it wasn't me, for a change. That's a blessed relief.

But that made me wonder: Just how many people are tinkering around with OData if this issue went unreported for some unknown amount of time, and hasn't been fixed for several days? Is it not catching on? Is no one besides me interested in this stuff? That's scary.

I'm not complaining, mind you. I was gratified to get a response, and a rapid one at that--not a common occurence with big companies. I think Microsoft in general and the Lab guys specifically are doing some great stuff. I was enthusiastic about the possibilities of OData and open government/public/private data feeds being accessible to all. And the new ways coming out to visualize data and manipulate it are cool. And a few others out there agree with me, judging from various blog entries. But now I wonder. Maybe I'm in the tiny minority.

Anyway, today I found myself at Data Driver deadline with no OData project to write about, as I had planned to. So I had to come up with something, quick. Hmmm... what to write about?

What do you think of OData? Have you messed around with it? Do you plan to? Have you ever seen a Web tutorial that works? Comment here or drop me a line.

Posted by David Ramel on 08/12/2010 at 1:15 PM1 comments

Good Deed for Those In Need

SQL Server expert and Microsoft MVP Arnie Rowland struggled with how to disperse his valuable MSDN Ultimate subscriptions a few years ago. He ended up giving them to people who pledged to code for non-profit organizations.

That worked out well, so this year he launched a program to award the subscriptions--with a retail value of about $12,000--and more goodies to unemployed and underemployed developers who contributed their talents to a non-profit organization.

Other MVPs and organizations have picked up on his initiative and it has snowballed, growing in scope seemingly by the day. Who knows where it will end up?

Here's Arnie's proposition:

We are inviting unemployed or underemployed developers to propose a software project for a non-profit agency, school, or church. The idea is that we will provide a package of the latest software, tools, and training resources to help you improve your skills, get up to date with current technologies, gain practical experience, potentially earn a recommendation for your efforts, and in general, enjoy the feeling of accomplishing something useful for others. We are not giving out a ‘free lunch', just supporting your efforts to personally gain from your own ‘sweat equity'.

He started out small, with four other MVPs joining him. Also, several companies offered training, books and other software. He planned on selecting one qualifying project each month.

Recently, his blog listed 15 MVPs who have joined him, along with several more companies. The number of projects jumped to two and then three per month.

"I come to you humbled..." Arnie titled a recent post on his "Ramblings of a Harried Technogeek" blog on "I didn't anticipate the level of resonance this has received in the development community," he said. Readers have responded with offers of help and the project may well keep growing. Arnie may have to give up his day job.

Project criteria is listed as:

  • Client is a USA IRS 503(c)3 non-profit, school, or church, OR a Canadian CRA registered charity
  • Solves a problem or satisfies a need for the client
  • Client desires the project and is supportive
  • Uses any combination of .NET 4.0, Windows Server 2008, SQL Server 2008, or Windows Phone 7
  • May be a new software solution, or an upgrade to an existing software solution.

Developers can submit proposals here.

Non-profits can submit projects here.

His original post is here.

Share your thoughts in the comment section or drop me a line.

Posted by David Ramel on 07/28/2010 at 1:15 PM1 comments

Microsoft Tool Eases Management of Cloud Databases

Microsoft yesterday released a rough-around-the-edges CTP of a SQL Azure database management tool code-named "Houston," designed to let Web devs easily create and manipulate data-driven apps in the cloud.

"Project 'Houston' provides a Web-based database management tool for basic database management tasks like authoring and executing queries, designing and editing a database schema and editing table data," said Microsoft's David Robinson in the Azure Team Blog announcing the release.

Users can go to SQL Azure Labs to access the CTP of the Sliverlight-based tool, previewed at PDC09 and updated at MIX in April.

If you do, however, be prepared to deal with the usual hiccups in a Community Technology Preview. Robinson listed 19 "issues" with the CTP, ranging from not being able to reopen the Start page to zoom-related browser display problems.

Other bugs and suggestions have been submitted to the feedback page, including one complaining that the keyboard shortcuts don't behave as they do in SQL Server Management Studio, the tool previously used to manage databases in Microsoft's cloud (though the poster did say, "I understand that it's beta, so won't complain too much").

SQL Azure team member Liam Cavanagh, though, sees Houston as a great improvement over SSMS in regard to Data Sync Management. He said that prior to Houston, if he wanted to work with a customer who wanted to try Data Sync Management, the user had to install SSMS. "Now with Microsoft Project Code-Named 'Houston,' people can go directly to this Web-based management tool and start creating their SQL Azure databases without installing anything," he said in a blog posting.

Cavanagh expounds more on "Extending SQL Server Data to the Cloud using SQL Azure Data Sync" in a video tutorial. Other instructional videos about Houston can be viewed on TechNet.

Cavanagh also lauded the increased performance over SSMS. Because Houston is hosted on the SQL Azure data centers (just one so far), the latency is reduced from that experienced with SSMS, "which in many cases has far greater distance to communicate with my SQL Azure database," he said.

So check it out and let me know what you think. Comment here or drop me a line.

Posted by David Ramel on 07/22/2010 at 1:15 PM1 comments

Doing The News Right, And A Cool Dev Tool

Data Driver, the global leader in database-related blogging, serving a constituency of high-quality readers worldwide, and product of 1105 Media Inc., parent company of award-winning publications and Web sites such as Redmond Developer News and Visual Studio Magazine, acknowledged leaders in the Microsoft developer-related media space and universally praised as premier venues for the best tech-related advertisers to reach sophisticated enterprise decision-makers, today announced how not to write a news release.

Sorry, I'm deviating briefly here. I just can't stand it anymore--I'm constantly bombarded with news releases that start out like the above. Don't these guys get it? Who gets past an opening paragraph like that?

Just get to the news, will you? It's not like any self-respecting media outlet is going to use that crap anyway. How can they not notice that that never happens?

What finally brought this to a boil such that I absolutely had to vent is a news release from a company that actually knows how to do it right. It's such a rare gem that it gets some free publicity here (OK, it's also about a newsworthy product that data developers might find interesting).

The company is Alpha Software, and the news release announced Alpha Five Version 10.5. The release (and blog item on the company's site) was titled "What Would the Web Look Like If Everyone Could Build Their Own Web 2.0 Data-Driven Apps?" (instead of, say, "Award-Winning Leader In Web Development Announces Revolutionary New Product"). It's about a tool for do-it-yourself Web devs, though, as the company states, it's for pros, too: "Professional developers will find everything they could wish for in a robust development environment, especially the ability to build Ajax-powered, SQL database-driven Web apps without having to code."

Sounds good to me. You can try it for free and decide for yourselves. Let me know what you think.

Anyway, back to my rant: these guys are different. The release's lead paragraph framed the product in the context of how simplified blogging tools opened up the blogosphere to everyone. The company isn't even mentioned until the fourth paragraph. And the release is chock-full of links pointing to more information--and they go all over the place, not to the company's site.

I checked out other news releases and found one about training classes that actually led with a reference to The Clash's seminal album, London Calling. It links to sites about the band (which happens to be my all-time favorite), the album, Rolling Stone and the list of the top 500 greatest albums. See, you want to click that link and check out the list, don't you? Stuff like that gets your attention.

I really hope these "but-we've-always-done-it-this-way" PR flacks are paying attention. You don't have to be unimaginative, boring, plain-vanilla, run-of-the-mill, mind-bendingly dreary hacks. It's OK to be creative and interesting. Really!

Posted by David Ramel on 07/14/2010 at 1:15 PM0 comments

Simplified SQL Server Aimed At Web Devs

Microsoft yesterday introduced WebMatrix, "a new lightweight Web development tool that ... makes it even easier for people to get started with Web development using ASP.NET."

This announcement came in Scott Guthrie's blog, where he previously introduced the three main components of the new beta tool: IIS Developer Express, ASP.NET "Razor" and the new SQL Server Compact Edition, an embedded database.

While it's been around for quite a while, SQL Server CE steps up from Version 3.5 to Version 4, which has been specially designed for Web development, said Guthrie, a vice president in Microsoft's Developer Division. In response to a reader's question about how the new version differs from the old version, Guthrie said: "The biggest improvement is that it now designed and tested to work in a multi-threaded environment.  Previous releases of SQL CE only worked in client apps and would corrupt/crash in server environments.  SQL CE 4 specifically supports server scenarios." Also he said, Version 4 handles shared hosting and medium trust scenarios and is more compatible with the regular SQL Server, allowing for easier migration to the full-featured database environment.

In the meantime, with SQL Server CE, Web developers don't have to install a database in their projects. You just need to copy its binary files into a specific directory, Guthrie said. Database files are stored on disk, after which SQL Server CE runs in-memory, which allows for much faster data manipulation and is the trend of Microsoft data-intensive products such as the new PowerPivot "self-service" business intelligence tool.

Other features of SQL Server CE 4 include:

  • Visual Studio 2010 and Visual Web Developer 2010 Express Support
  • Compatibility with existing .NET Framework-based data APIs
  • Support of shared Web hosting ("medium trust")
  • Support of development and production scenarios

In response to dozens of questions from readers, Guthrie indicated future enhancements of SQL Server CE would likely include:

  • SQL CE for Silverlight clients (and Windows Phone 7)
  • Support of geographic types
  • Support for databases larger than the current limit of 4GB
  • Providers to support ASP.NET membership and profiles

The blogosphere, as usual, supplied plenty of alternative takes on the announcement. One blogger referred to SQL Server CE 4 as "Microsoft's response to SQLite." Another offered up a comparison with Firebird Embedded. Another wondered about the possibility of using SQL Server CE 4 to offload work from a main database.

The WebMatrix public beta is available as a 15MB download (50MB if you need to install .NET 4).

Posted by David Ramel on 07/07/2010 at 1:15 PM2 comments

Tool Lets SQL and NoSQL Make Nice in the Cloud

Maybe the traditionally acrimonious SQL and NoSQL camps will end up as one big happy family after all.

A new beta tool from Quest Software lets users mix and match traditional SQL data and non-relational NoSQL data in the cloud.

Toad for Cloud Databases, released in beta, aims “to put NoSQL databases within reach of traditional relational database developers,” according to a company spokesman. said Quest seeks “to act as a peacemaker between the emerging NoSQL databases and proponents of traditional SQL database software.”

Toad uses a GUI with visual query and data access capabilities to let users “query and report on non-relational data, migrate data in both cloud and relational databases from one to the other, and create queries that combine the two,” the company said. It works with Amazon SimpleDB, Microsoft Azure Table services, Apache HBase and ODBC relational databases.

What do you think about SQL vs. NoSQL? Comment here or send me an e-mail.

Posted by David Ramel on 06/28/2010 at 1:15 PM0 comments

Security Expert Dan Kaminsky Seeks Source Code Input

“This is a little rough, but I want to get the code out there.”

That's how security expert Dan Kaminsky starts out his Install.txt file that accompanies his brand-new security tool, Interpolique, released in a hurry on Monday to fight recent SQL injection attacks such as those that compromised the Web sites of The Wall Street Journal and others.

Interpolique, available for download for examination by experts, was described Monday by as “a tool for application developers that helps prevent pervasive string injection-type attacks, such as SQL injection and cross-site scripting (XSS).”

DarkReading said the tool is designed to relieve developers from much of the burden of providing security measures in their code. Kaminsky told the site: “Security development tends not to care how inconvenient it is for developers. [This is] about meeting developers halfway."

But don't try using it quite just yet -- DarkReading reported the tool was released for experts to investigate and provide feedback, and not for operational use. Kaminsky is expected to share the feedback at next month's BlackHat USA security conference in Las Vegas.

And you'd better know what you're doing if you want to fool around with Interpolique, produced by the Kaminsky-headed Recursion Ventures. The skimpy install file, which comes with a bunch of C, SQL, PHP and JavaScript files, includes directions like:

Compile the MySQL Base64 UDF with:

gcc -Wall -I/usr/include/mysql -shared lib_mysqludf_str.c

But if you are an expert, feel free to join the fight and help. Kaminsky himself issued the invitation in the Install file: “Let's figure out what's up,” he said.

If you check out the code, let us know what you think. Comment here or send me an e-mail.

Posted by David Ramel on 06/17/2010 at 1:15 PM1 comments

Microsoft Shows Off BI "Engine Of The Devil"

Microsoft hinted at some amazing new capabilities coming to its BI products in yesterday’s Business Intelligence Conference keynote, including an "engine of the devil" that allows instant analysis of more than 2 billion rows of data.

Microsoft BI engineer Amir Netz joined senior exec Ted Kummert to demo new technology the company is working on to go beyond current capabilities of its recently released PowerPivot "BI for the masses" application. I previously wrote about a demo I attended that showed how easily PowerPivot could handle 44 million rows of data.

Netz had upped the ante Monday at Microsoft’s TechEd conference in New Orleans with a 100-million-row example. Yesterday, using a server with more memory than the desktops used before, he seamlessly tackled the 2-billion-row demo with the same storage technology used in PowerPivot. "You know, we talked about wicked fast yesterday," he said. "This is beyond wicked fast; this is the engine of the devil, right?"

The crowd loved it, but Kummert wasn’t so sure about the characterization. Microsoft senior leadership probably isn’t too keen on branding its products with references to Satan. "You said that, I didn’t," Kummert said, before joking about Netz’s upcoming performance review.

Netz said the company had received great feedback on PowerPivot, but some BI pros wanted more capabilities and functionality. His demo connected the PowerPivot technology that can be used in Excel to SQL Server Analysis Services for some incredible performance metrics.

He explained the demo: "We have 10 widgets on the screen, six slicers and four charts. And each one of those sends two queries to the data source in order to render itself. So we have about 20 queries being sent. Every one of those queries is a full table-scan of the 2 billion rows. So all together whenever I click, we are scanning 40 billion rows, and it takes about two and a half seconds to do that. So if you just do the math in your head, we are seeing here a scan rate of a trillion rows per minute. That's kind of what we're talking about."

Then he jokingly countered Kummert by saying "Performance review!"

Netz also shows some striking PowerPivot data visualization capabilities that reportedly will be available in the next 30 days.

In another tidbit, Kummert said the company was working on bringing the full capabilities of SQL Server to SQL Azure, its cloud-based "set of relational features oriented toward application development scenarios." That mismatch of features has been a point of contention in the SQL Server community.

"We're hard at work on that now," Kummert said. "I'm not announcing the specific release timeframe for that, but this is something you're going to hear from us shortly in the future."

Check out the video of the keynote and weigh in with your thoughts in the comment section below or send me an e-mail.

Posted by David Ramel on 06/09/2010 at 1:15 PM1 comments

Getting Your Tech Questions Answered

While perusing my daily Google Alerts I found this heading:

"Do newer versions of SQL Server support read consistency equivalent to Oracle?"

I was surprised to see this question was asked--and answered quite ably--in Answers. I don't use LinkedIn as much as I should (not enough hours in the day), so I was unaware of this service. Of course, there are many like it (including Yahoo! and "expert" services, where answers cost you money), but I was struck by the quality of the answers on LinkedIn.

A database expert named Victor (DBA and developer) provided the "best" answer to that question: "Yes." But the original poster had included a second part to his question:

"I have no experience with SQL Server and have only read in various forums that 'writers block readers and readers block writers.' Is that true? Or is it true just for older versions and not 2008?"

To this, Victor supplied a detailed, well-written explanation full of links for further information. I'm pretty sure you couldn't find a better answer on those pay-as-you-go "expert" services. LinkedIn also provided four or five other answers, some from DBAs, providing information and links to follow for further details (and of course, the mandatory MySQL shill).

I decided to try out LinkedIn Answers and asked a question to get info for an article I'm researching (topic categories, such as "software development," help target your query). I almost immediately got some great stuff.

So I'm sold. I know there are myriad support sites, forums, groups and such all over the Web, but if you haven't tried it, you should think about LinkedIn Answers the next time you need a tech question answered. I don't know where these guys find the time, but there are plenty of experts out there willing to help you out.

What's your experience with LinkedIn Answers? What other sources do you use to get answers to your dev questions? We'd love to share. Comment here or send me an e-mail.

Posted by David Ramel on 06/02/2010 at 1:15 PM0 comments

Here Comes The No-NoSQL Movement

There's a new kid on the block: VoltDB, a "next-generation" DBMS released yesterday that's the brainchild of database pioneer and brilliant iconoclast Mike Stonebraker.

Or maybe it should characterized as a new sheriff in town, because this newcomer to the database market has some serious backing, stemming from a joint project by MIT, Brown University, Yale University and HP Labs.

VoltDB is an open-source, in-memory OLTP database system designed to handle serious transaction numbers in gaming, SaaS, financial, online and other high-performance systems.

And guess what? In addition to eschewing more traditional relational models, VoltDB is also spurning the NoSQL movement. It even accommodates SQL. Parent company VoltDB LLC said that "unlike NoSQL key-value stores, VoltDB can be accessed using SQL and ensures transactional data integrity (ACID)."

The company's news release quoted gaming company CEO Henning Diedrich as saying "VoltDB is faster than MySQL with Memcached, and always returns valid data. It's more useful than key-value stores and even allows for cleaner SQL schemas than MySQL or Oracle."

It further stated "VoltDB has also been benchmarked against a NoSQL key-value store, and VoltDB executed a variety of key-value store workloads with equal or better performance."

In case there's any doubt about the intent of those potshots, The Register's VoltDB article is titled "Database daddy goes non-relational on NoSQL fanbois."


I can't wait to see how the "fanbois" react to this.

Take a look at this supposed game-changer and get back to me with your opinion. Is it revolutionary? Is it a flash-in-the-pan? Who's it going to hurt the most? Comment here or send me an e-mail.

Posted by David Ramel on 05/26/2010 at 1:15 PM1 comments

New Help For SQL Server Setup

A reader has prompted Microsoft to launch a vast new resource for easing the SQL Server set-up process.

Okay, just maybe it's a coincidence. Anyway, reader Brian M.'s complaint about the difficulties of installing SQL Server seems to have hit the nail on the head. Last week he commented on my post concerning a "SQL Meme" circulating the 'Net, gathering gripes about SQL Server.

Brian's contribution started out with this: "Obviously an installer written by a bunch of CompSci PhD's. Ridiculous."

Just as obvious: Ballmer & Co. hang on every word printed here (Hi Steve--call me!).

Yesterday, just six days later, Microsoft announced the "The SQL Server Setup Portal," described as "a one-stop-shop for everything you need to know about planning and setting up SQL Server." They may as well have put "Hey, Brian..." in the portal title.

Buck Woody, a Microsoft database specialist, admitted in his Carpe Datum blog announcing the portal that the set-up process can be difficult. Pointing out the myriad hardware/software driver combinations supported by Microsoft, he said, "Making all of that work together is a small miracle, so things are bound to arise that you need to deal with."

You don't need to tell Brian M. He said he's been trying for a week to set up R2, with at least a dozen attempts, with no success. He even hinted at shooting himself in the foot, while waiting for the "R2 Pre-install Cleanup/Fixit Package."

Well Brian, hold your fire. Here's help: "whitepapers, videos, and multiple places to search on everything from topic names to error codes."

And no thanks needed; that's what we're here for. Just please let us know how it turns out.

What SQL Server installation nightmares have you encountered? Does the new portal help? Comment here or send me an e-mail.

Posted by David Ramel on 05/18/2010 at 4:59 PM2 comments

So, What Do You Hate About SQL Server?

Paul S. Randal stirred up the SQL Server community this week with a blog post titled "What 5 things should SQL Server get rid of?"

He tagged five friends and started a chain reaction--or SQL Meme--of bellicose bombast across the blogosphere.

Randal's No. 1 complaint? "Auto-shrink." The CEO of said, "I tried to have it removed during SQL 2005 and SQL 2008 development, but to no avail. It needed to stay for backwards compatibility."

While he makes good arguments for his choices, others seem somewhat surprising. For example, Adam Haines wants to delete PRINT and SELECT * from SQL Server.

Some are pretty broad in their scope, such as Aaron Bertand's desire to drop "syntax inconsistencies" and "the current setup program."

Some nuance the nitty-gritty. Denis Gobo volunteered "Unique constraints with one NULL value" and "Restrictions on Indexed Views" while providing explanations, screenshots and recommended substitutions.

Some targeted specific tools. Jamie Thomson, the SSIS Junkie, tackled SQL Server Integration Services. His suggestions included the Web Service and ActiveX Script tasks. Todd McDermid followed this foray into SSIS with the "Properties Window" and "Data Profiling Task."

Brent Ozar has some rambling, inchoate ("Any feature described using the phrase ‘down payment' ") gripes about SQL Server Management Studio, including database diagrams and "Every SSMS UI designer."

Of course, readers were all over the subject, contributing their own colorful comments. One said the Web Service Task "should die. Horribly. Painfully."

By the time this is posted, I'm sure there will be dozens more. So let's board the bandwagon. Let it all out. Give Redmond an earful. (after all, so many people on TV say Windows 7 was their idea, why can't you claim that the next SQL Server edition was your idea?)

Weigh in here or drop me an e-mail (just don't start any memes about bloggers who should be banished from the Web!).

Posted by David Ramel on 05/12/2010 at 1:15 PM4 comments