| Chris 的个人资料Chris Webb's BI Blog日志列表 | 帮助 |
|
2008/12/31 Fourth Blog BirthdayFor the second year running I'm late celebrating my blog birthday (it was yesterday); my only excuse is that I'm still reeling from the amount I've eaten over the last two weeks. But four years of blogging... wow... it feels like ages. And to a certain extent I feel that, after all this time, I'm running out of things to say here. The actual writing of blog entries isn't a problem, it's more the problem of having something to write about. Part of the problem is me: I don't want to write about things I don't find interesting so I haven't gone down the route of turning the blog into a MDX tutorial (Bill Pearson does that much better than I ever could, and only Mosha could ever cover the advanced stuff properly), but at the same time I'm not coming across so many MDX/SSAS issues or obscure features as I used to. Part of the problem is, too, that SSAS2008 was so light on new features that it didn't provide me with much new to write about. So I'm hoping that Gemini, Kilimanjaro, Excel 14, Azure etc will give me something to get my teeth into in 2009; I'm sure they will. If not, well, I've always wanted to spend some time getting into Mondrian and other open source BI technologies. And with the economy the way it is I suppose I'll have a lot more spare time for learning new stuff in the coming twelve months... But anyway, bear with me and keep reading! For those of you who have stuck with me for the last four years, thanks, and best wishes for 2009. 2008/12/30 Why can't we just draw our own reports?Here's a way-out thought I had over the Xmas break for a new approach to building BI reports.... Have you, when you've asked a typical non-technical business user what they want a report to look like, asked them to draw a quick sketch? I do all the time - I find seeing what the user wants the report layout to look like is much the best way to understand what they want and for the user it's the best way to express their requirements. So on the back of the proverbial envelope you'd get something like this: ...and then go back to your desk and write the query and design the report layout in something like SSRS. So - why can't we cut out a step and go direct from the sketch to the report design? I can see two options for the first step here:
You would then take the freehand drawing and:
Working out what the borders of a table should be from a freehand drawing must be possible (although implementation would be well beyond me). Interpreting what the user has written they want on columns and rows would present more problems:
So it certainly wouldn't work like magic, but at the same time I think it would offer some advantages over current report design tools, the designers of which have fallen into the trap of building a UI on top of the functionality they've got available in MDX or SQL, rather than building a UI for what the user actually wants to do. After all, don't you think that it's actually very difficult to lay out anything other than the most simplistic reports in most report design tools, compared to how easy it would be to draw the report? 2008/12/23 SQLBits IV Manchester - Submit a Session!The next SQLBits will be taking place in Manchester (in the UK) on March 28th 2009, and if you're interested in submitting a session you can now do so here: Remember, we're always looking for new blood so don't be nervous and have a go at speaking! We're also looking for sponsors too: Hope to see you there! 2008/12/16 SQL2005 SP3 ReleasedThe triumph of people-power - here's SQL2005 SP3:
If you're running Analysis Services 2005 SP2 I would strongly recommend (after testing and all the obvious due diligence) you upgrade. I have a very low opinion of SP2 due to the number of bugs and performance regressions it contains; SP3 should be a big improvement. Although as I've said here in the past I think migrating from AS2005 to AS2008 is an even better idea simply because of the massive improvements that have been made in the performance of calculations. 2008/12/10 SiSense PrismA few months ago I announced I was going to do a major series of reviews of client tools here... well, that fell flat (probably because it takes a bit too much effort to install and test one), but at least here's one more review: Prism, from SiSense. Here's their website: Strictly speaking it's not just an Analysis Services client tool because it can work with data from a number of different sources such as relational tables, Excel and even Google spreadsheets and Amazon S3. I don't know too much about their internal architecture but it seems to be based on storing the data retrieved from all these different sources in some kind of in-memory store, so I suppose in that way it's similar to what will be coming in Excel with Gemini. They do treat Analysis Services as a data source seriously, though, and in fact one of the guys behind the company is Elad Israeli, who was behind a tool called MDXBuilder that those of you with very long memories might recall; so for the rest of this review I'll concentrate on the AS client tool side of things. First impressions are very good: the UI is very modern, uncluttered and easy to use. There are a few wrinkles in that there is no explicit support for AS2008 yet, and I had to go through a few hoops to get it to connect on my laptop which only had AS2008 installed; also they don't show hierarchies grouped into dimensions, just a flat list of hierarchies from all dimensions, which is a pain when you have a lot of dimensions and hierarchies - they really should support folders etc. Since I've already mentioned this to SiSense hopefully this will be changed soon. The tool itself is focused on creating dashboards and the starting point is a blank sheet on which you can drag 'widgets', which in turn can be hooked up to various data sources to display data. Examples of widgets are pivot controls, various different types of charts, images and textboxes, gauges, calendar controls, dropdown boxes and so on; it's reminiscent of Reporting Services (but concentrates more on application building rather than pixel-perfect formatting) and PerformancePoint in this respect. I have to say that I found that I found the process of building a dashboard to be exceptionally easy and intuitive, and I was very impressed - I was able to put together something that worked very quickly, and it handled layout and formatting in such a way that even someone who is generally rubbish at report design like me could create a dashboard that looked professional. Here's a screenshot of one I put together quite quickly: One other very cool feature is the way that complex selections can be generated using a visual workflow, called 'Questions' in the product. You can read more about it on their blog here: I think this is the best way I've seen of letting users set up complex filters, although it probably is still only something a power user could understand. At the moment Prism is just a fat client, so with no web-based version (yet) sharing dashboards is a matter of emailing .psm files or putting them on a network share; this will be a deal-breaker for some people. SiSense have, though, in my opinion made the right decision in implementing the functionality they have got very well before rushing off to tick all the boxes on potential buyers' checklists and doing so badly. Overall, if you're in the market for a desktop BI tool that supports Analysis Services as well as other data sources I can recommend taking a look at Prism. 2008/12/9 SQLStream and MondrianInteresting article here on Intelligent Enterprise from Seth Grimes on how SQLStream and Mondrian can be used together for real-time OLAP analysis on Twitter feeds: More on the technical side of this from Julian Hyde's blog earlier this year: I'm still not convinced there's much of a market out there for real-time OLAP (as opposed to real-time BI); after all, how many people out there are actually using pro-active caching with Analysis Services? The kind of analysis you do with an OLAP tool, looking at high-level trends in aggregated data, seems to me to be the complete opposite of BI scenarios where you need to be able to respond instantly to certain events. But maybe I've just not come across the right business scenarios yet. 2008/12/4 Killing sessions automatically with SSIS...or, what to do while you're waiting for Analysis Services to get a proper resource governor (fingers crossed for the next version). We all know about the query from hell, that one query that the idiot from Finance insists on running to try to pull the entire contents of the cube down into Excel even though you've told him a hundred times not to do it, that one query that brings your server to its knees just at the worst possible moment. What can you do about it? Well, you can set a general timeout on all all queries that are run against Analysis Services using the ServerTimeout property in msmdsrv.ini, but this is something of a blunt instrument - while I don't mind everyone else's queries timing out after two minutes, I certainly don't want mine to do that and I definitely don't want that to happen to the CEO's queries either. On the other hand, you can wait for someone to phone you up and complain that the server's really slow, then take a look at what's running and kill sessions manually using something like the technique described here: But to me neither option seems satisfactory. I want to be able to kill sessions automatically but at the same time apply some rules of my own: if the query has run for more than 30 seconds and the user is that idiot from Finance then kill it; if the query has run for more than 5 minutes and the user is the CEO send me an email so I can gently remind him not to drag the 6-million-member Products hierarchy onto rows in Excel; if I'm running the query, do nothing. What better way to implement this logic than in an SSIS package? I put together a proof of concept and this is how I did it:
Very easy. Of course you could add loads more functionality to this basic package - as I said, you may want to send an email to someone after you've killed their session explaining what has happened, or you may only want to kill a session if there are other users running queries at the same time. You can download the VS2008 from here: |
|
|