BI Blogs

Bringing together Business Intelligence voices from across the web

RFID Tracking and Nanotechnology for BI

Posted on the April 29th, 2006. Read times

Source: Blog: Dan E. Linstedt [link]

Imagine, a smart RFID (radio frequency identifier tag) - in other words, not just one that bounces a signal that was received by a transmitter, but one that emanates a unique number (like a RIN (RFID identification number) - like a VIN only for RFID’s. I realize they already have RTLS (real-time locator systems) with this technology embedded, but imagine it at a smaller scale. RTLS are currently very large (compared to RFID tags). How would this affect BI? What if it could use Nanotechnology and an embedded power source (like Nanotech reports is possible) to power a unique signal? What would happen to the supply chain for example?

This entry is just a thought experiment.

How to work with Dimension Leaves

Posted on the April 29th, 2006. Read times

Source: Mosha Pasumansky [link]

Dimension leaves is one of the fundamental concepts in OLAP. Dimension leaves are used in variety of situations – from defining calculations on the leaves to aggregate up, and to different UI icons for leaves vs. non-leaves. But while it may seem that this concept is simple, it is actually more complicated. Most of the confusion comes from the fact, that there are two distinct concepts, both of which are commonly called leaves:

 

  • Hierarchy leaves
  • Measure group leaves

ticle we will explain the differences between the two and discuss the Analysis Services and MDX support for both of these concepts.

 

Hierarchy Leaves

 

Hierarchy leaves refer to the hierarchy members which don’t have visible children. It is important to recognize hierarchy leaves in UI, to give the user indication that such member cannot be drilled down further.

 

Measure group Leaves

 

Measure group leaves (also called sometimes fact leaves, fact granularity etc) refer to the measure group granularity, i.e. the lowest level at which data is loaded into the partitions. It is important to recognize measure group leaves for non-allocated writeback (because it can only done at leaves), for calculations such as currency conversion which need to modify the data at the lowest granularity etc.

 

Sometimes (in simple cubes and dimensions), the same member can seen as both hierarchy leaf and measure group leaf. However, there are important differences which are summarized in the following table:

 

Feature

Measure group leaves

Hierarchy Leaves

Defined on

Attribute

Hierarchy

Current measure

Affects

Doesn’t affect

Multiple hierarchies

Doesn’t affect

Affects

Dimension security

Doesn’t affect

Affects

Hidden members

Doesn’t affect

Affects

Unbalanced hierarchies

Doesn’t affect

Affects

 

 

Current measure

 

Whether or not the attribute member is a measure group leaf depends on the current measure group, which, in turn is determined by the current measure. Therefore, same attribute can be measure group leaf for one measure and non leaf for another measure – depending on the granularity of the respective measure groups.

 

Multiple hierarchies

 

Member which is hierarchy leaf in one hierarchy might not be a leaf in another hierarchy, but for the measure group member is either always a leaf or always isn’t.

For example, if we have two hierarchies in the Customer dimension – Country/State/City/Name and Country/State, then WA is not a leaf in the first hierarchy but is a leaf in the second hierarchy.

 

Dimension security

 

If all the children of a member are secured, then this member becomes hierarchy leaf in that hierarchy. Dimension security doesn’t affect measure group leaves.

 

Hidden members

 

If all the children of a member are hidden, then it becomes hierarchy leaf. Members which can be hidden are UnknownMember, HideMemberIf (when MDX Compatibility Mode is 2) etc. However, it is important to note, that in the SCOPE statement or in the left hand side of assignment, that hidden members are treated as if they were visible.

 

Unbalanced hierarchies

 

If the member didn’t have any relating members in the dimension table, then the natural hierarchy will be unbalanced. Such member is hierarchy leaf, but still not measure group leaf.

 

Other considerations

 

There are also several related issues such as

 

-         Parent Child Hierarchies

-         Difference between Data Members and Leaf members

-         Placeholder Members

 

However, we will not discuss them here, perhaps in another article.

 

Now let’s look into different MDX functions and other functionality that AS provides to deal with leaves.

 

Retrieve hierarchy leaves

 

The MDX function to get the hierarchy leaves is Descendants(member,,LEAVES). It can be used to get all the leaves under the current position in the hierarchy by using

 

Descendants(hierarchy.CurrentMember,,LEAVES)

 

Or it can be used to get unconditionally all the hierarchy leaves by using

 

Descendants(hierarchy.Levels(0).Members,,LEAVES)

 

This form of call to Descendants function uses set as its first argument. This is to account for hierarchies with non aggregatable first level, i.e. when the first level is not ‘All’, but contains multiple members. Note, that while this is indeed the most general form, it will raise an error when used in the SCOPE statement. However, as we will see later, usually we won’t want to use Descendats(,,LEAVES) inside SCOPE anyway.

In simple scenarios Descendants(,,LEAVES) is equivalent to returning the members from the last level of the hierarchy, i.e. hierarchy.Levels.Members(hierarchy.Levels.Count-1), however, unlike this expression, it works correctly for situations like parent child, ragged hierarchies, dimension security, MDX Compatibility Modes etc.

Another important case is Descendats(member, level, LEAVES), which is useful for the parent child hierarchies – it will return the descendants from the specified level, plus all the leaves above this level.

 

Checking whether the member is an hierarchy leaf

 

There are many ways in which people check whether member is an hierarchy leaf. We will start with the most correct way first, and then look into other way and understand why they are not correct.

From MDX, the best way to check for hierarchy leaf, is simply to call the IsLeaf(member) function. This function is optimized to work in the most efficient way, for example for the non ragged, non parent child hierarchy without dimension security, it will simply check the level of the member, for parent child hierarchy it will check in efficient way for data members etc.

Other methods that I have seen people using are:

 

member.Children.Count = 0

 

This practically always returns the same result as IsLeaf(member), after all it literally implements the definition of leaf – the member which doesn’t have visible children. However, it has worse performance then IsLeaf, because it performs more operations – constructs the set of children, takes count of tuples in it etc. It also cannot use the optimizations mentioned above.

 

IsGeneration(member, 0)

 

Checking for first (zero’th) generation is much less efficient then IsLeaf

 

member.Level.Ordinal = member.Hierarchy.Levels.Count-1

 

As we mentioned above, comparing the level of the current member with total number of levels in the hierarchy will only work correctly for regular, non ragged and non parent child hierarchies without dimension security etc.

 

Sometimes, it is desirable to know whether the member is hierarchy leaf or not without creating additional calculations for the query. It is useful, when the leaf/no leaf decision is not fed into other calculations, but when it is needed purely for UI purposes to mark all the members on the query result axes. It is not advisable to create special calculated member for that, since, as we know from the caching whitepaper, creating query calculated members prevent calculation caching at the session and cube levels.

To figure out leaf/no leaf without additional calculations, people tried to use the builtin member property DISPLAY_INFO. Indeed, two bytes out of that four byte structure are dedicated to CHILDREN_CARDINALITY. While two bytes is too low to hold the actual number of children for AS2005 (but it was enough for AS2000), it still seems OK, since the only important information here is 0 or non 0. However, OLEDB for OLAP spec states that the CHILDREN_CARDINALITY is only an estimate, and therefore sometimes it won’t be accurate. Unfortunatelly, in the current version of AS2005, it is indeed only an estimate, and sometimes the true leaf will have non zero, and non leaf will have zero. Therefore, application which needs reliable way of checking for leaf, cannot rely on DISPLAY_INFO.

 

There is also an additional builtin member property CHILDREN_CARDINALITY, which can be specified in the DIMENSION PROPERTIES clause of the axis definition in the MDX SELECT query. However, in the current version of AS2005 it is mostly useless, as it only has values of 1000 or 0, and even there cannot be used to determine whether the member is really leaf or not. We hope, that this member property will be fixed in the future versions.

 

 

Position on measure group leaves

 

In AS2000 there was no easy way to get to the granularity of facts in MDX automatically. The writer of MDX was supposed to know which levels were disabled (i.e. excluded from the granularity) and use <>.MEMBERS on the lowest non-disabled level. The client applications could discover the lowest non-disabled levels for each measure group (or non virtual cube in AS2000 terms) by means of looking at MDSCHEMA_MEASURES schema rowset, which contained comma separated list of lowest non disabled levels in the LEVELS_LIST column. But this was very cumbersome way, which had to be adjusted for parent child and ragged hierarchies, and I don’t know any customer who used this method.

Therefore, in AS2005, we provided easy way to get to the measure group leaves, by the means of Leaves function. Leaves function can be used in one of the two forms:

 

  1. Leaves() – positions on the granularity of the measure group by all of the dimensions related to that measure group
  2. Leaves(dim) – positions on the granularity of the measure group only in the specified dimension.

;

Note, that it is really exceptional case, where in MDX you can use dimension. Everywhere else, MDX accepts hierarchy. But since granularities are defined in terms of the attributes rather then hierarchies, using dimension here makes sense.

 

So what does Leaves function returns ? The answer is that it returns a subcube which can be used inside SCOPE statement or at the left-hand side of the assignment. It does not return a set ! Again, this makes sense, since subcubes are defined in terms of attributes, but sets are defined by hierarchies. This is one of the reasons why Leaves function is not safe to be used in the SELECT statement, or inside named sets or in other MDX expressions. While Analysis Services may convert subcube returned by Leaves function to set (by choosing attribute hierarchies corresponding to the attributes), it is not supported usage.

 

Another important question which needs to be answered is, since we said that the Leaves function operates on measure group leaves, how does it know which measure group to use ? The answer lies again in the usage of Leaves inside SCOPEs or assignments. Leaves function checks the current SCOPE and looks whether it is constrained to a single measure group (or multiple measure groups, but with exactly same granularity). If the current SCOPE has multiple measure groups with different granularities, Leaves function will raise an error, since it doesn’t know for which measure group should it calculate the granularity. This is another reason why Leaves is not safe to be used in SELECT or in MDX expressions. It may work for simple cubes with single measure group, but it won’t work for more complex cubes.

Below is a typical example of how Leaves function is used (taken from this article):

 

SCOPE [Measures].[Sales];
 SCOPE (Leaves([Date]), [Seller].[Country].[Country]);
  [Measures].[Sales] = [Measures].[Sales]*[Measures].[Rate];
 END SCOPE;
END SCOPE;

 

Note, that by restricting the SCOPE to a single measure, we obviously restricted it to the single measure group.

 

Checking whether a member is a measure group leaf

 

While positioning on measure group leaves is easy with the Leaves function, checking the measure group leaf is more difficult. One typical scenario when this is needed, is for the applications which support writeback. Since non-allocated writeback in AS is only allowed at measure group granularity, the application would like to check it first, and not allow the user to modify the cell which cannot be modified.

The best way to do that in AS2000 was to use UPDATEABLE cell property. It is a bitmask which tells how the cell can be updated, and if it cannot be updated, then the mask contains all kinds of reasons why not. It could be because one of the cell’s coordinates is calculated member, it can be because the cell is not at measure group granularity, or it can be because there is a cell security on that cell etc.

The important values for checking measure group granularity are

 

DBPROP_CELL_UPDATE_ENABLED – cell can be updated through IRowsetUpdate, i.e. it is on measure group granularity

DBPROP_CELL_UPDATE_ENABLED_WITH_UPDATE – cell can be updated with UPDATE CUBE statement, i.e. it is above measure group granularity

 

Unfortunatelly, in AS2005, this cell property always returns DBPROP_CELL_UPDATE_ENABLED. The reason for that is that AS2005 unlike AS2000 supports IRowsetUpdate::Update not just on the leaf cells, since behind the scenes it performs equal allocation over non-leaf cells. However, this also means that the UPDATEABLE cell property cannot be used with AS2005 to determine measure group granularity.

 

Now, what if the knowledge whether the member (or cell) is a measure group leaf or not is needed inside a calculation ? Frankly, we didn’t think that this would be an interesting scenario, and therefore AS2005 doesn’t have MDX function to check it. Recently, however, we have run into a couple of customers who had such a requirement. In order to solve it, the following workaround can be used:

CREATE IsLeafInsideFoo = false;
SCOPE (MeasureGroupMeasures("foo"),Leaves());
    IsLeafInsideFoo = true;
END SCOPE;

Basically, this creates a calculated measure, which is False everywhere. Then, the SCOPE positions on the leaves measure group and changes the calculated measure to be True there. Since calculated members are not aggregated up, the values above leaves will stay False. Now, the calculated measure IsLeafInsideFoo can be used to determine whether a member or a cell is at measure group granularity or not.

Honest consulting

Posted on the April 28th, 2006. Read times

Source: Pete-s random notes [link]

On a follow-up to my last post Beth wrote: It’s been my experience that clients appreciate honest (yet tactful) discussions with the techies when making their decisions. She is absolutely right. I can remember at least two occasions where customers specifically asked to have me on a project because of my honesty. The first time was when I was doing some work for a government agency that needed to

Final Day at Collaborate’06, and Setting Up Siebel Analytics

Posted on the April 28th, 2006. Read times

Source: Mark Rittman's Oracle Weblog [link]

Well that’s it for me now at Collaborate’06. We did our last presentation
yesterday and afterwards, I went along to the IOUG closing debate, on commercial
Unix vs. Linux. As you would have expected, the argument came down to
commoditisation of hardware and software, and the cost benefits accruing from
this, vs. the tried and tested, safe route of sticking with commercial Unix.

In the end though, I have to say that it was delivering the
presentations that was the low spot of the week for me. Due to the way the
presentations had been divided up amongst the user groups, and the way they were
scheduled, we ended up on the Quest track (Quest is the JD Edwards and
PeopleSoft user group) and with our presentations being on BI Beans and Oracle
OLAP, there were very few people within this user group who knew what the
technology was about. If we ever do this in future, I’d work very hard to get
onto the IOUG track instead, as that’s where you’d normally look for OLAP and
Oracle business intelligence presentations.

Still, on a bright note, we finished up around 2.00pm and I went
back to my room and started to get Siebel Analytics up and running. After a few
hours, I’d got the software installed and configured, brought in the Discoverer
Videostore data, and the SH sample schema, and started playing around with
Oracle Answers and Oracle Dashboard. First, a screenshot of the administration
tool, with the physical, business and presentation elements of the semantic
layer:

Then, creating a simple table and crosstab using Oracle Answers:

… and then publishing some reports as part of a dashboard:

First impressions are that there’s a few things that’ll catch
you out when setting up data sources (I won’t spoil the surprise by telling you
what they are, yet) and Oracle Answers is quite a bit different from Discoverer,
when you come to set up crosstabs, tables and so on. I still can’t get it to
display a crosstab properly (the axis display OK, but the measures are blank)
and I’m having trouble getting new presentation layer items to display properly
when logging in as anything other than administrator, but we’re up and running
and now I’ve proved to myself that it works, it’s a case of reading the manuals.

Anyway, flights’ at 6.00pm and then it’s back to Heathrow, and
then Brighton. Until next week then, that’s it for now.

MDX Scripts article

Posted on the April 28th, 2006. Read times

Source: Chris Webb's BI Blog [link]

I didn’t realise this was freely available until just now, but here’s an article I wrote for the April edition of ‘SQL Server Professional’ on MDX Scripts:
It’s adapted from the chapter I wrote on the same subject for ‘MDX Solutions’, although the big difference is that for this article I used Adventure Works for my demos whereas in the book I used a cube I built specifically for the purpose.

Good article on Microsoft’s BI strategy

Posted on the April 28th, 2006. Read times

Source: Chris Webb's BI Blog [link]

…from Douglas McDowell, a colleague at Solid Quality Learning and someone who really knows his stuff:
Part 1 is noteworthy in that it’s the first time I’ve seen anyone write about what has been an open secret in the Microsoft BI community for some time - that MS are about to launch their own financial planning app.

The cost of Oracle BI

Posted on the April 28th, 2006. Read times

Source: Chris Webb's BI Blog [link]

I’m a big fan of Mark Rittman’s blog on Oracle BI, so hopefully he’ll forgive me for highlighting this interesting (from a MS point of view) nugget in his most recent posting regarding the Oracle BI Suite:
One note of caution though is over price - from speaking to people, the per-CPU license fee for the whole BI Enterprise Edition stack, including the analytic server (which could remove the need for an Oracle database + OLAP Option), Answers, Delivers, Dashboards and so on, is an eye-watering $225k per CPU. Wow.
(see http://www.rittman.net/archives/2006/04/tuesday_and_wednesday_at_colla.html for the whole thing). However much Microsoft end up charging for the Proclarity software they’ve just bought, if as a customer you go with the Microsoft BI stack you are not going to pay anywhere near the price that Mark quotes for equivalent functionality.

Meta Integration and Capabilities

Posted on the April 28th, 2006. Read times

Source: Blog: Dan E. Linstedt [link]

If you haven’t heard of this company, and you’re looking for Master Metadata Management, you’ll want to check them out. They are a privately held firm based in Silicon Valley, and are OEM’ing their core technology to just about every major vendor out there. That said, they do sell their complete package with all kinds of cool features for a reasonable cost. The business reasons to use their software? Read on - let’s try to shed some light on this…

More thoughts on stored procedures

Posted on the April 28th, 2006. Read times

Source: Chris Webb's BI Blog [link]

I know I promised more content on stored procedures a few months ago, but, well, you know… Once I found out that you couldn’t actually run an MDX query from them (unless you used the ADOMD.Net client library and opened a connection from within the sproc, which seems a pretty silly thing to do) and can’t do stuff like dynamically create calculated members or named sets with them, then I realised I couldn’t implement any of my cool ideas.
 
Anyway, I have been thinking about them again quite a lot recently. For example, I had some contact with Mark Mrachek about this post on his blog about drillthough:
I had already been contacted by someone having the same problem, and thinking some more about we came up with a possible solution using an action which calls an AS sproc similar to the one I posted a while ago to find the currentmember on every dimension (see http://spaces.msn.com/cwebbbi/blog/cns!7B84B0F2C239489A!586.entry), and which in turn passes the keys of each member through to a SQL sproc to do the drillthrough. Mark has promised to blog about the full solution when he’s had time to implement it.
 
Similarly, today on Charlie Maitland’s blog he talks about how to filter dimension members using wildcards (see http://charliem.wordpress.com/2006/04/26/wild-card-mdx-searching/). It seems to me that this would be a prime candidate for a sproc - there is a lot of string functionality in .NET that could be very useful in MDX; another example would be the way that you couldn’t use the VBA REPLACE function in MDX either.
 
Finally, there are some things which are very complex in MDX which could be simplified no end if they were put into a sproc. Two examples would be the discussion on this blog last year about tuning YTD-style calculations (see http://spaces.msn.com/cwebbbi/Blog/cns!1pi7ETChsJ1un_2s41jm9Iyg!107.entry and http://spaces.msn.com/cwebbbi/Blog/cns!1pi7ETChsJ1un_2s41jm9Iyg!111.entry) and problems such as finding the count of members on an attribute which have the same first letter in their name as the currentmember on that attribute (see http://groups.google.co.uk/group/comp.databases.olap/msg/75fb29730b96f23b for how to do it).
 
So, to get to the point, I was thinking that solving individual problems and posting code up on this blog was not the best way to go. I’m not the world’s greatest .NET coder by any means, and rather than just being able to see the code it would be much better if there was one dll which people could download to get at all this useful stuff. Surely it would be much better if everyone who was interested could collaborate on producing this dll, perhaps using something like a gotdotnet community (http://www.gotdotnet.com/workspaces/docs/about.aspx), so it would be much easier to add functionality and fix bugs. What does everyone think about this? Is there someone out there with a solid coding background who would be willing to help?

A Methodology Targeted at the Insertion of Data Warehouse Technology in Corporations

Posted on the April 28th, 2006. Read times

Source: ITPapers.com - Recent Business Intelligence / Data Warehousing White Papers [link]

A particular interest has been observed in the Data Warehouse (DW) technology by corporations aiming to improve their decision processes. A large number of corporations that have no tradition on the use of computer systems for decision support, has to rely on a team qualified in the development of traditional operational systems and database technology, but inexperienced on DW development issues. The paper presents a methodology targeted at the development of DW pilot projects, which aims at the smooth adoption of DW technology by corporations. The methodology has been successfully tested in a military DW pilot project, and the results obtained so far confirm its adequacy and consistency towards the established goals.

SSAS Dimension process fails with unexpected error MDDiscretizer::GetBucketForValue

Posted on the April 28th, 2006. Read times

Source: SQL BI [link]

The use of DiscretizationMethod=Clusters can cause a process error that is not so clear:

Internal error: Unexpected error. File ‘mddiscretizer.cpp’, row 1532, function ‘MDDiscretizer::GetBucketForValue’.

This happens because you have an attribute with few distinct values to do a discretization in required clusters. To workaround the problem you can disable discretization of the incriminated attribute (you could have only one in the dimension, otherwise some SELECT COUNT( DISTINCT fieldname ) FROM Dimension could help you in the search).

Even if it would be preferable to process the dimension with a smaller number of clusters without blocking errors, it would be necessary at least to have a better error message that indicate the problem in discretization.

The problem affects both SSAS RTM and SSAS SP1. I already filed a bug in MSDN Product Feedback Center, but blogging it could help other unlucky developers.

SSIS service does not start with SP1: workaround

Posted on the April 27th, 2006. Read times

Source: SQL BI [link]

SQL Server 2005 SP1 seems to stop many working installations of SSIS service. I lost some hour on this problem and only a few days after I discovered a good workaround here.

While you install SQL Server 2005, setup procedure brings you to use NETWORK SERVICE as account for SSIS service. SP1 verify signatures of the files getting a file from internet: it doesn’t work if the server has no internet connectivity and it doesn’t work if the user is NETWORK SERVICE.

Possible workarounds:

  • Change user account for SSIS Service to a regular (least privilege) user
  • Disable checking certificate revocation list for NETWORK SERVICE user

The registry hack is this:

Windows Registry Editor Version 5.00

[HKEY_USERS\S-1-5-20\Software\Microsoft\Windows\CurrentVersion\WinTrust\Trust Providers\Software Publishing]

“State”=dword:00023e00

Now, the big question is: what of those two techniques has to be considered safer? I would say that changing registry for NETWORK SERVICE account doesn’t change much and should have less side effects than changing user account on a production machine, but sincerely I don’t have a consolidate answer now, so comments are welcome.

Ten Principles for Increasing the Business Value of your Data Warehouse and Business Intelligence Investments

Posted on the April 27th, 2006. Read times

Source: Data Doghouse - performance management, business intelligence, and data warehousing [link]

Who:
DAMA International, Boston Chapter
Topic: Rick Sherman’s
"Ten Principles for Increasing the Business Value of your Data Warehouse and
Business Intelligence Investments"
When: Thursday May 4,
2006, 3:00-5:00 PM
Where: Waltham,
MA
Cost: Free, and so are the refreshments
Registration, directions, and more information. (You must
pre-register)

Tuesday and Wednesday at Collaborate’06

Posted on the April 27th, 2006. Read times

Source: Mark Rittman's Oracle Weblog [link]

It’s been a busy couple of days at Collaborate, hence the lack of updates
since Monday. We’ve been giving presentations over the last couple of days, and
coupled with trying to attend a few of the sessions, there’s been little time
for blogging.

Most of the evenings have been taken up with events and meals. On Monday
night, I met up with Peter Robson, James, Rachel and Gemma from the UKOUG for a
quick drink, and then Tuesday night was a BI&W reception held by Oracle in the
Old Hickory Steakhouse. A good chance to catch up with people such as Michael
Armstrong Smith and Dan Vlamis, plus quite a few of Oracle’s BI&W and data
warehousing team were there, including Mike Durran, a really nice guy from
Bristol who’s one of the PM’s for Discoverer. I met up with most of the Oracle
people again on Wednesday night, plus David Furston, Andreas Kugelmeier and
Laura Mckechnie. It was a good opportunity to put faces to names, plus discuss
data warehousing architectures and how the new Siebel tools fit into the
picture. In all honesty, it was the meet-ups like this that have made the
conference for me, an excellent chance to discuss stuff face to face and to meet
some of the people you come across in the Oracle BI&W world.

I spent most of Monday and Tuesday, when not in talks, going to the Oracle
demogrounds and having a play around with the new Siebel Analytics tools, in
particular Oracle Dashboards, Oracle Answers and Oracle Delivers. The main
questions I wanted to answer were to what extent the new Siebel
Oracle Analytic Server is an OLAP server, where it fits in with Oracle OLAP, and
where Oracle Answers (the ad-hoc query tool) and Oracle Delivers (the scheduling
and alerting tools) fit in. From what I can tell, the Oracle Analytic Server
isn’t an OLAP server as we’d know it, with a multi-dimensional cache, OLAP query
language and so on, but it’s got OLAP-style features and provides an end-user
experience that supports drilling, crosstabs, page items and so on.

I think one of Oracle’s priorities over the next few months is to take more
of the OLAP capabilities of Discoverer and add them into the BI Suite Enterprise
Edition product stack, with Oracle OLAP still being around as an OLAP datasource
for the Analytic Server cache. I also had a play around with the Dashboard
element of BI Suite EE, it looks very slick, a vast improvement over Portal, but
quite tricky and complicated for an untrained user to work with - it certainly
makes Discoverer look very useable, very easy to pick up, I can still see a very
important role for Discoverer as an easy to learn, very "obvious" way of
reporting on your data. That said, the Siebel technology looks very, very
impressive, with the semantic layer in particular being a step on from the EULs
that we’ve worked with previously. One note of caution though is over price -
from speaking to people, the per-CPU license fee for the whole BI Enterprise
Edition stack, including the analytic server (which could remove the need for an
Oracle database + OLAP Option), Answers, Delivers, Dashboards and so on, is an
eye-watering $225k per CPU. Wow. I said at the time that we’d have to buy one
copy per country, and share it amongst ourselves, but if you compare it to
buying the database + options + app server stack, plus all the new features
you’re getting, and in addition compare that to a typical Business Objects or
Cognos implementation, which again can reach up into the $1m mark, it’s not too
unreasonalble a price.

I went along to a few of the "keynotes" as well, including the database one
on Tuesday morning, and the BI product direction one in the afternoon. I was
suprised at the low numbers at each one - at Open World, people are queuing for
an hour beforehand, the rooms are all full, but there must have been less than
50 people in each one. It’s been like that throughout the conference - there’s
thousands of people here but not many seem to be in each talk, although that
could be partly because most of them are here for JD Edwards, Peoplesoft and
Oracle e-Business Suite content. Anyway, the database one was useful, looking at
new features and products released since 10gR2 (Data Vault, Oracle Secure Backup
and so on) whilst the BI one looked at the new BI Suite Enterprise Edition.

The latter was based on a combination of the recent New York announcement
coupled with the Discoverer Statement of Direction, and I was able to ask a few
good questions about where the Analytic Server sat in regard to the OLAP Option.
More on that at a later date when I start looking at the Analytic Server in more
detail. One other point at this meeting was that Oracle Warehouse Builder, when
10g R2 is released (the "Paris" release), will be packaged along with the
database, not the BI Suite Standard Edition. I asked whether this meant that OWB
would be installed along with the database, with OWB appearing as a start menu
entry when you installed the Client CD, but at this point it looks like it’ll be
a standalone installation still. Also, it looks like OWB pricing is under
review, as presumably it’s moving from the IDS toolset bundle ($5k per named
user), and there’ll be more announcements when the product is launched in a few
weeks time.

Whilst I’m here, one thing I forgot to mention in my last post was the
presentation on "Controlled Flights into Terrain : Avoiding Database Design
Disasters" by Kevin Loney. I just wanted to say that this was the best
presentation, or more specifically the best presenter, I’d come across at the
event. Really engaged with the audience, very interesting and humourous to
listen to, really knew his stuff, got some good technical points across in an
easy to listen to manner. I’m a big Kevin Loney fan now.

Just to wrap up, I’m finally getting used to the hotel. For the first couple
of days, I couldn’t get over how all nine acres of the hotel grounds was under
glass, but now I’ve been here for a few days (and ventured outside as well,
either really cold or too humid) you can appreciate why they’ve done it. It’s
all still a bit mad, if you know what I mean, but it’s actually a really nice
venue and the climate control makes a real difference. Wouldn’t like to see
their electricity bills though.

That’s it for now. The last of our talks is in half an hour, I’ll report back
on how they went afterwards.

Tuesday and Wednesday at Collaborate’06

Posted on the April 27th, 2006. Read times

Source: Mark Rittman's Oracle Weblog [link]

It’s been a busy couple of days at Collaborate, hence the lack of updates
since Monday. We’ve been giving presentations over the last couple of days, and
coupled with trying to attend a few of the sessions, there’s been little time
for blogging.

Most of the evenings have been taken up with events and meals. On Monday
night, I met up with Peter Robson, James, Rachel and Gemma from the UKOUG for a
quick drink, and then Tuesday night was a BI&W reception held by Oracle in the
Old Hickory Steakhouse. A good chance to catch up with people such as Michael
Armstrong Smith and Dan Vlamis, plus quite a few of Oracle’s BI&W and data
warehousing team were there, including Mike Durran, a really nice guy from
Bristol who’s one of the PM’s for Discoverer. I met up with most of the Oracle
people again on Wednesday night, plus David Furston, Andreas Kugelmeier and
Laura Mckechnie. It was a good opportunity to put faces to names, plus discuss
data warehousing architectures and how the new Siebel tools fit into the
picture. In all honesty, it was the meet-ups like this that have made the
conference for me, an excellent chance to discuss stuff face to face and to meet
some of the people you come across in the Oracle BI&W world.

I spent most of Monday and Tuesday, when not in talks, going to the Oracle
demogrounds and having a play around with the new Siebel Analytics tools, in
particular Oracle Dashboards, Oracle Answers and Oracle Delivers. The main
questions I wanted to answer were to what extent the new Siebel
Oracle Analytic Server is an OLAP server, where it fits in with Oracle OLAP, and
where Oracle Answers (the ad-hoc query tool) and Oracle Delivers (the scheduling
and alerting tools) fit in. From what I can tell, the Oracle Analytic Server
isn’t an OLAP server as we’d know it, with a multi-dimensional cache, OLAP query
language and so on, but it’s got OLAP-style features and provides an end-user
experience that supports drilling, crosstabs, page items and so on.

I think one of Oracle’s priorities over the next few months is to take more
of the OLAP capabilities of Discoverer and add them into the BI Suite Enterprise
Edition product stack, with Oracle OLAP still being around as an OLAP datasource
for the Analytic Server cache. I also had a play around with the Dashboard
element of BI Suite EE, it looks very slick, a vast improvement over Portal, but
quite tricky and complicated for an untrained user to work with - it certainly
makes Discoverer look very useable, very easy to pick up, I can still see a very
important role for Discoverer as an easy to learn, very "obvious" way of
reporting on your data. That said, the Siebel technology looks very, very
impressive, with the semantic layer in particular being a step on from the EULs
that we’ve worked with previously. One note of caution though is over price -
from speaking to people, the per-CPU license fee for the whole BI Enterprise
Edition stack, including the analytic server (which could remove the need for an
Oracle database + OLAP Option), Answers, Delivers, Dashboards and so on, is an
eye-watering $225k per CPU. Wow. I said at the time that we’d have to buy one
copy per country, and share it amongst ourselves, but if you compare it to
buying the database + options + app server stack, plus all the new features
you’re getting, and in addition compare that to a typical Business Objects or
Cognos implementation, which again can reach up into the $1m mark, it’s not too
unreasonalble a price.

I went along to a few of the "keynotes" as well, including the database one
on Tuesday morning, and the BI product direction one in the afternoon. I was
suprised at the low numbers at each one - at Open World, people are queuing for
an hour beforehand, the rooms are all full, but there must have been less than
50 people in each one. It’s been like that throughout the conference - there’s
thousands of people here but not many seem to be in each talk, although that
could be partly because most of them are here for JD Edwards, Peoplesoft and
Oracle e-Business Suite content. Anyway, the database one was useful, looking at
new features and products released since 10gR2 (Data Vault, Oracle Secure Backup
and so on) whilst the BI one looked at the new BI Suite Enterprise Edition.

The latter was based on a combination of the recent New York announcement
coupled with the Discoverer Statement of Direction, and I was able to ask a few
good questions about where the Analytic Server sat in regard to the OLAP Option.
More on that at a later date when I start looking at the Analytic Server in more
detail. One other point at this meeting was that Oracle Warehouse Builder, when
10g R2 is released (the "Paris" release), will be packaged along with the
database, not the BI Suite Standard Edition. I asked whether this meant that OWB
would be installed along with the database, with OWB appearing as a start menu
entry when you installed the Client CD, but at this point it looks like it’ll be
a standalone installation still. Also, it looks like OWB pricing is under
review, as presumably it’s moving from the IDS toolset bundle ($5k per named
user), and there’ll be more announcements when the product is launched in a few
weeks time.

Whilst I’m here, one thing I forgot to mention in my last post was the
presentation on "Controlled Flights into Terrain : Avoiding Database Design
Disasters" by Kevin Loney. I just wanted to say that this was the best
presentation, or more specifically the best presenter, I’d come across at the
event. Really engaged with the audience, very interesting and humourous to
listen to, really knew his stuff, got some good technical points across in an
easy to listen to manner. I’m a big Kevin Loney fan now.

Just to wrap up, I’m finally getting used to the hotel. For the first couple
of days, I couldn’t get over how all nine acres of the hotel grounds was under
glass, but now I’ve been here for a few days (and ventured outside as well,
either really cold or too humid) you can appreciate why they’ve done it. It’s
all still a bit mad, if you know what I mean, but it’s actually a really nice
venue and the climate control makes a real difference. Wouldn’t like to see
their electricity bills though.

That’s it for now. The last of our talks is in half an hour, I’ll report back
on how they went afterwards.

Oracle Data Mining Tutorial and White Paper

Posted on the April 27th, 2006. Read times

Source: Oracle Data Mining and Analytics [link]

The new Oracle Data Mining 10gR2 Tutorial is now posted to OTN:

Oracle Data Miner 10.2.0.1 Tutorial (7MB) April 2006
The link downloads a Zip archive that contains the tutorial in PDF format, a dump file containing tables used in the tutorial, and…

[ This is a content summary only. Visit my website for full links, other content, and more! ]

Hyperion Solutions acquires UpStream Software

Posted on the April 27th, 2006. Read times

Source: Data Doghouse - performance management, business intelligence, and data warehousing [link]

In an acquisition greeted positively by analysts and users,
Hyperion Solutions announced it is acquiring privately-held Upstream
Software
.

Hyperion_logoUpStream’s product, called WebLink DM, provides “a data
readiness and guided workflow application that is used to track the movement of
financial information from source to report.” (Quote from   Hyperion’s press release of April 20, 2006

What does that mean? Sometimes concepts do not lend
themselves to easy classification and may be difficult to get the market’s
attention. The product enables data integration and data quality processes to
move data between applications and to track any flow and changes to the data. 

Upstream_logoSo far, it sounds like Extract, Transform and Load (ETL)
tool. This is where it gets more complex. ETL is a general capability that is
offered in many tools, but what we have here is more of an application that
manages the data integration workflow and data quality processes. It works with
financial data (current application not a design limitation) including
Hyperion’s financial and business performance management (BPM)
applications. So it tracks and manages
data movement from the data sources to reporting. This sounds like just what
the market is demanding in financial transparency and the government with
Sarbanes-Oxley.

This product illustrates that data quality is much more than
cleansing name and address data. The latter is a great capability, but it
greatly limits the scope of what data quality is all about. Data quality needs
to address the numbers that business people use in monitoring their businesses
and making decisions. Data quality is not a one-time conversion or cleansing
operation, but involves managing and tracking what happens to the data from
creation (data sources) to consumption (reporting and analytics.) Data quality
is a process that is ongoing and needs to be measured just as key business
indicators (KPIs) are measured by the business. And the financial area, both
Hyperion’s and UpStream’s “sweet” spot, is just the corporate function that can
provide business justification to build those processes into data integration
and data quality.

UpStream was a Hyperion preferred partner since 2002 and its
approximately 200 customers are also Hyperion customers. The acquisition
appears to look like a “no brainer.” The product that should blend in well with
Hyperion and they’ve got a common customer base. Also,  UpStream is pretty small (less than fifty people
is what I hear), so the organization and people portion of the acquisition should
be relatively easy (as acquisitions go.)

Although much larger acquisitions usually get most of the
attention, smaller targeted acquisitions by software companies are a great way
to pick-up product and people expertise. And it is a bonus when the acquired
company has an installed base of customers.

Java in Manila

Posted on the April 26th, 2006. Read times

Source: BLOX Chronicles [link]

The Philippine’s largest Java developer’s conference was held last April 25 - Java in Manila. Our country was one of the six competency centers chosen by Sun Microsystems for its huge potential for development. Philippines’s Java competency center is focus on wireless technology; Singapore focuses on grid computing, while Malaysia concentrates on incubation center.





The event lasted from 8 to 5pm at ShariLa Makati. Java is the de facto application development tool for many enterprises today. We were there under sponsor status, so were exempted from paying the PhP1500 entrance fee. And that is just what we need to enjoy all the nice looking and nice tasting food that Shangri-La offered all through out the session. All in all, the event is a success, and is worth the buck if ever you decide to attend next year’s event.





Rags Srinivas, on cowboy hats presented Java SE GUI makeover.





Javapassion.com guy, Sang Shin has a thick but cool oriental accent - “how-e-vveeerrr”. He charms the audience with his knowledge about Java EE, Web 2.0, AJAX, and the new technologies emerging in the pioneering web-based application development today.





Dr. Doris Chen, the beautiful Miss Lady geek, discussed Java Server Faces.++++++++

Visit us at http://bloxchronicles.blogspot.com for more fruitfull BI, Analytics, Data Warehousing and Alphablox discussion.

The Next Value - How much higher is my salary than the next in (Dense) Rank - Oracle Analytical Functions

Posted on the April 26th, 2006. Read times

Source: Weblog for the Amis technology corner [link]

It is not terribly important. But since I found the solution, I thought I’d share it with you anyway. During our Oracle 7Up workshop on SQL last week we discussed at length the use of Analytical Functions. Part of that discussion is of course the use of the Rank function in combination with Partitions and […]

The Next Value - How much higher is my salary than the next in (Dense) Rank - Oracle Analytical Functions

Posted on the April 26th, 2006. Read times

Source: Weblog for the Amis technology corner [link]

It is not terribly important. But since I found the solution, I thought I’d share it with you anyway. During our Oracle 7Up workshop on SQL last week we discussed at length the use of Analytical Functions. Part of that discussion is of course the use of the Rank function in combination with Partitions and […]

Next Page »