BI & Warehousing
I won't be able to make it to this event, but I wish I *could* be there. I can't think of a better way to kick off a weekend!
There were partners in my session, and I had no problem at all with it. After all, this was a conference open to anyone and I am a firm believer that when people learn more, the whole community benefits. This is what motivates me to write all of my books, cause believe me, it's not for the money (Google "Starving Authors" before you ever think to make money writing). I also speak at way too many events around the world each year from tiny user groups to massive conferences like Kscope, Collaborate, and OpenWorld with no concerns that my sessions are primarily filled with Oracle partners looking to improve.
After my session was over, there was one more timeslot for the day and since I didn't want to sit in the hall for 90 minutes, I went to Huron Consulting Group's (they're the company that bought Blue Stone) session on the future of Planning. It sounded more interesting than Hackett's session which was my other possibility and I saw that one of the speakers was Mike Nader who is a great presenter. If nothing else, I would get to hear Mike's engaging take on the world since he joined Blue Stone. I sat in the room in the back row (there were plenty of extra seats, but I wanted to leave the good seats for potential customers).
Right as the session was about to start, Rick Schmitt from Huron (Blue Stone) came over to me and asked me to leave. I was curious why since I was an official attendee at the event and he said that they were going to be talking over "some proprietary stuff." I assumed he meant his slides at the beginning on the Blue Stone acquisition or "why Blue Stone is the best at XYZ," so I offered to leave for the first few slides. I don't need nor want competitive info and I certainly didn't want to make him nervous during his sales pitch. He said that no, they were going to share lots of proprietary info throughout the session and he didn't want competitors in the room during their session at all.
Rather embarrassed but more bemused, I smiled, gathered my things, and walked out of the room. I sat in the hall for a while wondering what cool things I was missing and feeling jealous of the 50 clients that got to hear from Blue Stone. (There's nothing like being excluded from something to make you want it more.) As I sat there, I pondered my own stance on information sharing. Personally, I believe that if the community as a whole gets better - if the community learns more - the quality of Hyperion implementations will rise. Satisfaction with Oracle EPM will rise, and as the reputation of Hyperion gets better, the Hyperion market will grow which benefits the entire community: customers, Oracle, and partners.
So starting effective immediately, all of the public webcasts interRel does (and we did over 100 webcasts last year) will be open to everyone. That's right: competitors, please come join our webcasts and we'll share all the information that we spend months putting together with you. You've always had access to our books, our sessions at user groups, our presentations at conferences, and now you have access to our webcasts too. I hope that this starts a trend: I strongly encourage our competition to open up their sessions and webcasts to anyone who wants to attend. Don't be afraid: if you're good at what you do, you shouldn't be afraid to help the competition get better too. Information is meant to be free and to point out the obvious, if the Hyperion market gets bigger from happier clients telling everyone they know to buy Hyperion, your potential customer base gets bigger too.
Our next webcast is Thursday, October 31. It's on how Smart View is finally an awesome replacement for the Essbase Excel Add-In and I hope to see a ton of our competition on the webcast. Visit http://bit.ly/iRWebcasts to register.
That's really all you need isn't it?
Today wraps up the voting period for the ODTUG Board of Directors. If you're asking me what ODTUG is, stop reading now. If you are a member of ODTUG, then please give me a few minutes to pontificate (that's a word I heard Jeff Smith use once, hopefully it makes sense here).
Your favorite Oracle conference, KScope, is largely successful based on the efforts of the Board, along with the expert advice of the YCC group. In addition, if you think ODTUG should "do more with Essbase" or "charge more for memberships" these decisions are made and carried out by the board.
So if you like being in ODTUG, and you want to help it get better and grow, and be as awesome as possible, you only need to do one thing today. Go vote. Midnight tonight (10/29) is the deadline. Do it.
You get to vote for several people. I suggest you read their bios. I'll save you the time for at least one vote, and that's for Danny Bryant.
Besides that awesome photo (#kscope12 in San Antonio) up above, here are several more reasons.
1. He's into everything. OBIEE. EBS. Essbase. SQL Developer. Database. Not very many people have their hands in everything, he does. He will be able to represent the entire spectrum of ODTUG members.
2. He's a fantastic human being. It's not just because he takes pictures of himself wearing ORACLENERD gear everywhere (doesn't hurt though), he's just, awesome.
3. This (Part II)
4. He also always answers the phone, tweets, and emails I send him. He might be sick, or he might just be that responsive. The ODTUG Board member responsibilities will fit nicely on his shoulders I believe.
So go vote. Now.
Back in the 10g release, if you wanted something beyond the standard query for your report extract; you needed to break out your favorite text editor. You gotta love 'vi' and hate emacs, am I right? And get to building a data template, they were/are lovely to write, such fun ... not! Its not fun writing them by hand but, you do get to do some cool stuff around the data extract including dynamic SQL. By that I mean the ability to add content dynamically to your your query at runtime.
With 11g, we spoiled you with a visual builder, no more vi or notepad sessions, a friendly drag and drop interface allowing you to build hierarchical data sets, calculated columns, summary columns, etc. You can still create the dynamic SQL statements, its not so well documented right now, in lieu of doc updates here's the skinny.
If you check out the 10g process to create dynamic sql in the docs. You need to create a data trigger function where you assign the dynamic sql to a global variable that's matched in your report SQL. In 11g, the process is really the same, BI Publisher just provides a bit more help to define what trigger code needs to be called. You still need to create the function and place it inside a package in the db.
Here's a simple plsql package with the 'beforedata' function trigger.
create or replace PACKAGE BIREPORTS AS whereCols varchar2(2000); FUNCTION beforeReportTrig return boolean; end BIREPORTS;
create or replace PACKAGE BODY BIREPORTS AS FUNCTION beforeReportTrig return boolean AS BEGIN whereCols := ' and d.department_id = 100'; RETURN true; END beforeReportTrig; END BIREPORTS;
you'll notice the additional where clause (whereCols - declared as a public variable) is hard coded. I'll cover parameterizing that in my next post. If you can not wait, check the 10g docs for an example.
I have my package compiling successfully in the db. Now, onto the BIP data model definition.
1. Create a new data model and go ahead and create your query(s) as you would normally.
2. In the query dialog box, add in the variables you want replaced at runtime using an ampersand rather than a colon e.g. &whereCols.
select d.DEPARTMENT_NAME, ... from "OE"."EMPLOYEES" e, "OE"."DEPARTMENTS" d where d."DEPARTMENT_ID"= e."DEPARTMENT_ID" &whereCols
Note that 'whereCols' matches the global variable name in our package. When you click OK to clear the dialog, you'll be asked for a default value for the variable, just use ' and 1=1' That leading space is important to keep the SQL valid ie required whitespace. This value will be used for the where clause if case its not set by the function code.
3. Now click on the Event Triggers tree node and create a new trigger of the type Before Data. Type in the default package name, in my example, 'BIREPORTS'. Then hit the update button to get BIP to fetch the valid functions.
In my case I get to see the following:
Select the BEFOREREPORTTRIG function (or your name) and shuttle it across.
4. Save your data model and now test it. For now, you can update the where clause via the plsql package.
Next time ... parametrizing the dynamic clause.
The argument over why Businesses should abandon Excel in favor of more structured tools has been raging for as long as I have had more than a casual exposure to Oracle products. From the standpoint of an IT user Excel appears to be a simplistic, flat-file-based, error-prone tool that careless people use, despite its obvious flaws. Petabytes of duplicative Excel spreadsheets clog network drives across the globe; we as IT users know it, and it drives us crazy. Why, oh why, can’t these analysts, project managers, and accountants not grasp the elegant beauty of a centralized database solution that ensures data integrity, security, and has the chops to handle gobs of data, and abandon their silly Excel sheets?
I’ll tell you why: Excel is better. Excel the most flexible and feature-rich tool for organizing and analyzing data. Ever. Period.
For the past few years I have lived in a hybrid Finance/IT role, and in coming from IT, I was shocked at how much Excel was used, for everything. But after working with Excel on a daily basis for several years, I am a convert. An adept Excel user can out-develop any tool ( BI, Apex, Hyperion, Crystal Reports ) handily. (when dataset size is not an issue). Microsoft has done too much work on Excel, made it too extendable, too intuitive, built in so much, that no structured tool like BI, APEX, SAP, Hyperion will EVER catch up to its usability/flexibility.
Take this real-world example that came across my desk a few months ago: for a retail chain define a by-week, by-unit sales target, and create a report that compares actual sales to this target. Oh, and the weekly sales targets get adjusted each quarter based on current financial outlook.
How quickly could you turn around a DW/BI solution to this problem? What would it involve?
• Create table to house targets
• Create ETL process to load new targets
• Define BMM/Presentation Layers to expose targets
• Develop / test / publish report.
A day? Maybe? If one person handled all steps (unlikely, since the DB layers and RPD layers are probably handled by different people.)
I can tell you how long it took me in Excel: 3 hours (OBIEE driven data-dump, married with target sheet supplied to me). I love OBIEE, but Excel was still miles faster/more efficient for this task. And I could regurgitate 6 other examples like this one off at a moment’s notice.
Case in point: 95% of the data that C-level executives use to make strategic decisions is Excel based.
If you’ve ever sat in on a presentation to a CEO or other C-level executive at any medium to large sized company, you know that people are not bringing up dashboards, or any other applications. They are presenting PowerPoints with a few (less than 7) carefully massaged facts on them. If you trace the source of these numbers back down the rabbit hole, your first stop is always Excel. Within these Excel workbooks you will find “guesses” and “plugs” that fill gaps in solid data, to arrive at an actionable bit of information. It’s these “guesses” and “plugs” that are very hard to code for in an environment like OBIEE (or any other application). Can it be done? Yes, of course, with gobs of time and money. And during the fitful and tense development, the creditably of the application is going to take major hits.
Given the above, the usefulness of OBIEE might seem bleak. But I strongly feel that applications such as OBIEE do have a proper place in the upper organizational layers of modern business: Facilitating the Tactical business layers, and providing data-dumps to the Strategic Business layers.
Since this post is mainly about Excel, I will focus on how OBIEE can support the analyses that are inevitably going to be done in Excel.
Data Formatting, Data Formatting, FORMATTING!! I can’t stress this enough. For an analyst, having to re-format numbers that come out of an export so that you can properly display them or drive calcs off them in Excel is infuriating, and wasteful. My favorite examples: in a BI environment I worked with percentages were exported as TEXT, so while they looked fine in the application, as soon as you exported them to Excel and built calcs off them, your answer was overstated by a factor of 100 (Excel understood “75%” to be the number 75 with a text character appended, not the number 0.75).
Ask your users how they would like to SEE a fact in Excel: with decimals or not? With commas or not? Ensure that when exported to Excel, facts and attributes function correctly.
“Pull” refreshes of information sources in Excel. In the finance world, most Excel workbooks are low to medium complexity financial models, based off a data-dump from a reporting system. When the user wants to refresh the model, they refresh the data-dump, and the Excel calculations do the rest. OBIEE currently forces a user to “push” a new data-dump by manually running/exporting from OBIEE and then pasting the data into the data-dump tab in the workbook. What an Excel user really desires is to have a data dump that can be refreshed automatedly, using values that exist on other parts of the workbook to define filters of data-dump. Then all the user needs to do is trigger a “pull” and everything else is automated. Currently OBIEE has no solution to this problem that is elegant enough for the common Excel user. (Smartview must have its filters defined explicitly in the Smartview UI each time an analysis is pulled.)
The important part to take away from these 2 suggestions, and this entire post, is that to maximize the audience of OBIEE, we must acknowledge that Excel is the preferred tool of the Finance department, due to its flexibility, and support friendly exports to Excel as a best practice. We must also understand that accounting for this flexibility in OBIEE is daunting, and probably not the best use of the tool. If your users are asking for a highly complex attribute or fact, that is fraught with exceptions and estimations, chances are they are going to be much happier if what you give them is reliable information in a data-dump form, and allow them to handle the exceptions and estimations in Excel.
Back in August a new Oracle mobile solution jumped out of the gate, the Mobile App Designer (MAD). I seem to have been on the road every week for the last, goodness knows how many weeks. I have finally found some time this week to get down and work with it. Its pretty cool and above all, its capable of providing a mobile platform independent reporting solution.
But you already have a mobile application! Yep, and I think they both sit quite comfortably together. The Oracle BI Mobile Application is available from the App Store for Apple users. Its a great app, build reports, dashboards and BIP reports for your browser based users and your Apple app users can take advantage of them immediately.
MAD takes the next step forward. Maybe you don't use or can not use Apple mobile devices? Maybe you need to build something more specific around a business area that provides users with a richer experience, beyond what Answers and Dashboards can offer. However, you do not want to have to rely of the tech folks to build the mobile application, thats just piling more work on them. You also want to be platform agnostic, you might have a mix of mobile platforms. MAD can help.
For those of you that have already used the Online Template layout editor with BI Publisher, you already know how to build a mobile application. The MAD interface is essentially the online template builder user interface, tweaked for a mobile destination ie a phone or tablet.
You can build and test in a browser and then deploy to your own BI App Store. Users, on their mobile devices, can then subscribe to an application. They can open and interact with your app using their phone or tablet's interactive features just as they would with a native application. As you update your app and add new features the changes will be picked up the next time your users open the application.
Interested? Want to know more? The Oracle MAD home page has a ton of content including tutorials, etc. We are planning to dig into MAD in forthcoming posts. The geek in me wanted to be able to build plugins using the D3 and other visuals. I have been working with Leslie on some of the documentation and we'll be sharing some of that 'plugin' doc and how tos in the coming weeks.
On the new site, all of the free downloads are available from the 'Downloads' section under 'Resources.'
- Continued Investment in Existing Modules
- EPM Applications in the Cloud
- Continued Innovation in New Modules
There are a number of things planned in the area of continued investment in existing modules. The investment areas include:
- HFM platform work to make HFM cross platform and to improve performance. In addition, these changes allow HFM to run on Exalytics which puts massive computing power under HFM. For example, testing of HFM on Exalytics has shown that virtual close becomes a possibility even in complex consolidations. One test that had 31,000 accounts, 2,000 legal entities and 66 currencies showed a reduction of consolidation time from 7+ hours down to less than 30 minutes. This type of performance increase, if borne out in the real world, could have a real effect on how and when companies do their consolidations.
- Optimization of Hyperion Planning and Hyperion Profitability and Cost Management for Exalytics. This scalability allows for implementations that spread further in the company (i.e. more users), but also allow companies to consolidate their applications onto fewer physical machines.
- Packaged OBI Analytics for Hyperion Planning. The packaged analytics make it easier and faster to deploy Hyperion Planning with an added benefit of reduced consulting costs.
Oracle is continuing its move into the cloud arena with 2 services.
- The Oracle Planning and Budgeting Cloud Service ("OPBCS") has been in customer and partner preview for a few months now and is nearly general availability. Oracle is stressing that this isn't just moving the software to a managed service running on the cloud, but rather is a fundamental new paradigm for planning that focuses on self-serve models that have not existing since the inception of the classic, on-premise Hyperion Planning. Because OPBCS must run without the need for IT interaction, users must be able to quickly and easily configure what they need from the service. That being said, Oracle is taking a very conservative strategic approach with their Cloud Planning application as they are not trying to displace traditional on-premise Planning applications and move them to the cloud. Rather, they are emphasizing the cloud for use in quick-to-deploy departmental applications or as a development platform that can be used to build an application for on-premise deployment. Oracle expects to make the OPBCS available later this calendar year.
- A new service that was announced at Open World 2013 is the new Financial Reporting Cloud Service. Based on the slides and the comments made during the presentation, this isn't simply moving the classic Hyperion Financial Reporting application to the cloud, but rather they have imagined and created an application that appears to be targeted for statutory reporting. How it appears to work is that the developer/administrator creates a framework for the reporting package which may be, for example, a corporate annual report and can assign responsibilities for different parts of the report to team members. The editing of different components can be completed either via refreshing of data from the corporate data stores for items like a balance sheet or income statement, or edited in Word for things like the management discussion. The product tracks workflow and approvals and, when complete, produces a PDF of the completed document. It looks quite different than what we see today in HFR.
Oracle has been working hard on the EPM Suite, but notice I didn't really say anything about my beloved Essbase. Balaji did not say much about Essbase in his session, but rather left that for the Essbase Roadmap session that I also attended. I will work on a blog post on that session soon.
The meetup is at Specchio, a great Italian restaurant in the Mission District. Specchio is co-owned by one of my friends, chef Gino Assaf, and has had some notable guests in the past couple of years including numerous NBA teams and one of my favorite rock bands, The Who. Specchio is located at 2331 Mission Street in San Francisco.
If possible, please RSVP for the meetup at http://www.meetup.com/Oracle-Open-World-Essbase-EPM-meetup/events/138157192/ so we can get a count for the restaurant. I hope to see you there!
Whoooo hoooo! Theres finally a new version of the BI Publisher Trial Edition available for download from OTN.
184.108.40.206.1 is the imaginative release name. Nevermind your iOS7's get some blazingly fast BIP '.7.1'!
I'll be digging into some of the new features in the coming weeks!
Here's my list of events:
- I arrive in San Francisco on Saturday around 1 PM. If you're arriving at around the same time, let me know, we can share a cab into the city.
- Beer. After arriving I plan on finding a very cold Pliny the Elder. Or three.
- ODTUG Dinner. I'm crashing this one. It's Board members only to my knowledge and until someone says I cannot go (especially if fueled by more than one Pliny the Elder), I'm going.
- Open World Bridge Run. Not sure if I can make it, but I'm going to try. I'm presenting at 10:15 so it will be a tough decision.
- 10:30 to 11:30. Thinking Clearly About Performance. Somehow I managed to con Cary Millsap into a duet of sorts. I have him convinced it is the other way around. Either way, it should be fun (I am not nervous!).
- 2:15 to 4:30, Software Development in the Oracle Ecosystem, Part I and Part II. I'm moderating the aforementioned Mr. Millsap, Sten Vesterli, Markus Eisele and Jerry Brenner (My first boss was scheduled to speak as well, but he had a last minute change of plans, jerk).
- Oracle ACE Dinner. Evening.
- Post Oracle ACE Dinner drinks...wherever the night takes me.
- Oracle OpenWorld - San Francisco Bay Swim - Part II, 7:30 AM. We had almost 20 last year, 33 have signed up (on the page anyway) this year. Come along. Cool t-shirts too, sponsored by Oracle Technology Network and designed by Lauren Prezby.
Let's not forget the swim caps! Sponsored by the encouragable Bjoern Rost of The portrix group (he's like me, afraid of capital letters) (designed by Lauren Prezby).
- Oaktable World. You'll most likely catch me here after the swim and before the...
- Wear Your ORACLENERD Gear Day, 3 PM to 4:30 PM. We'll be taking a group photo around 4:30 PM. If you can't make it for that, come by when you can and get a picture with me. You know I like that sh...stuff. You don't have a shirt/hat/sticker/random-item? OTN Lounge is giving away one hundred cool red t-shirts (Lauren Prezby, again).
This picture is coinciding with the APEX Developer Challenge which goes from 3 - 7:30 that afternoon/evening. I might even give it a go (fueled, hopefully, by Pliny the Elder).
- Oracle OpenWorld - San Francisco Bay Swim - Part II, 7:30 AM. We had almost 20 last year, 33 have signed up (on the page anyway) this year. Come along. Cool t-shirts too, sponsored by Oracle Technology Network and designed by Lauren Prezby.
- Oaktable World.
- Leave at noon.
I was honored to earn the award which is based on some secret formula combining feedback scores from attendees and number of attendees. I did have a couple of hundred or so attendees at my presentation which, in my opinion, speaks to the popularity of the outline extractor and not to the popularity of me having anything to say... <BigGrin>
Here is a picture of the nice award sent by ODTUG.
Who is Doc Hendley, you ask? Well, from my perspective, Doc Hendley is one of the most inspiring and truly extraordinary individuals I’ve ever come across. And after meeting him and having the privilege of spending time with him in New Orleans, I’m proud and truly humbled to be able to call this man a friend. He is truly extraordinary, which is ironic when you consider that Doc thinks of himself as “just an ordinary, regular, everyday guy.”
Let me tell you, Doc is anything but. This is the story of how a boy who grew up in Greensboro, North Carolina saved thousands of lives all the way across the globe and in the process, proved to himself and everyone else that one person – even an ordinary regular everyday person - can do something extraordinary.
Doc was “just a bartender” and musician who worked and played in nightclubs in Raleigh, NC. In fact, bartending was the only job he’d ever had. But in his own words, he was “dying to make a difference in this world.” In 2003, standing behind the bar, he heard that polluted water kills more children globally than HIV/AIDS, Malaria, and Tuberculosis combined, yet at that time, no one aware of this crisis.
So what did Doc do? In his words, "He got angry, he got pissed off, he took action." And he did it the only way he knew how. He tapped into the "marginalized people in his community, the bar crowd, the regulars" – the people that everyone else said were too ordinary - to create Wine to Water, an organization that would take him to the site of the greatest humanitarian disaster in the world – Darfur, Sudan, and eventually to 9 other countries. Doc lived in Darfur for a year, and taught the locals how to clean their water and utilize their own resources to keep it clean.
Ordinary guy? I don’t think so.
I watched his TEDx talk on YouTube before going to Kscope13. I was so moved by what he’d done, so overwhelmed, and so energized, that I made everyone in my company watch it before the conference. I wanted every person who worked for me to hear what Doc had to say, and to understand how we all can change the world if we try. I love Doc's commitment to his cause and I hope we remain friends for a long time to come.
I know my commitments don't allow me to travel the world helping others like Doc does on a regular basis, but that doesn't mean I can't help. We decided that Applied OLAP could help support the efforts of Wine to Water and so I presented Doc with a $5,000 check as our small contribution. During his keynote speech, Doc demonstrated, again, how one person, one donation, can change the world. I’m pledging to find a way to make a difference in the world too.
After all, I’m a regular ordinary every day kind of guy too.
I'm sure it would be nearly impossible to come up with One True Definition of The DBA ™. So I won't.
I've read that Tom Kyte does not consider himself a DBA, but I'm not sure most people know that. From Mr. Kyte himself:
At the same conference, I asked Cary Millsap the same question:
I read Cary for years and always assumed he was a DBA. I mean, have you read his papers? Have you read Optimizing Oracle Performance? Performance? That's what DBAs do (or so I used to think)!
It was only after working with him at #kscope11 on the Building Better Software track that I learned otherwise.
Perhaps I'll make this a standard interview question in the future...
1. Application Developers vs. Database Developers
2. Application Developers vs. Database Developers: Part II
(( $2 - $1 ) / $1) *100
- Use HTML formatting tricks to “hide” trigger text in the results, then conditionally format off those triggers. While inventive, as the comments note, this solution falls flat if the report is ever printed, as the PDF engine will pick up and display all of the hidden characters.
- Convert the pivot table to a regular table with some complex column formulas. Very time consuming and cumbersome, would also not solve the requirement of showing the dimension values noted as noted in Footnote1.
- Convert the calculated result to text and manually add your formatting characters. I don’t think this actually works since the calculated fields won’t accept logical SQL functions, and this would be very cumbersome.
- Add a column that is a COUNT DISTINCT on the dimension that you are calculating across ( in the displayed example, “Time T05 Per Name Year”. This column will serve as your “trigger” to apply your conditional formatting.Figure 4 - Column Formula
- For each of your facts, apply a conditional format that is triggered when the above column value is zero. In the formatting, apply whatever visual and data formats you desire. In this example we will format the data as a percent, with one decimal place.
Figure 5 - Condition
Figure 6 - Format when condition is met
- Exclude the “trigger” column from your pivot view. View your results and be satisfied:
Figure 7 - Correct formatting of calculated item.
* Note that this would also allow you to apply visual formatting if you wanted to distinguish this row/column as a total.
Why it worksThe use of conditional formatting that applies a data type as part of the format is a straightforward leap of logic, but what to use as the trigger? Most people will try to use the dimension they have setup the calculation in. However, if you try to use the text description given to the calculated item you will find that the condition is never applied:
Figure 8 - Condition on dimension
Figure 9 - Condition never met, format never applied
If you try to setup a filter that is true when the dimension is not in reasonable range of values ( in this example we try to format off all years not in the 2000s ) you will find that your calculated item is skipped as well (this has the added vulnerability of being very explicit):
Figure 10 - Condition on dimension values
Figure 11- Condition never met, format never applied
The reason for all this is that the calculated item “borrows” EACH of the dimension values it operates against. Hence, no matter how inventive your filter is, as long as you are trying to somehow separate the calculated member away from the members it is operating on, you will never succeed. This member “borrowing” is apparent if you add the dimension it operates against to the query a 2nd time, and look at the table view.
Figure 12 - Calculated item "borrows" members
But since the “member value” given to the calculated item does not actually exist in the dimension, if you try to perform a count distinct against it, you will always get zero.
Figure 13 - Count distinct against dimension
There is your difference; there is your “trigger.” The rest is basic formatting.
1: You might suggest that this requirement is better served using column(s) with time series calculations, and you might be right. However, more often than not the user will want to SEE the time periods being compared ( 2012 vs 2011, or 08/07/2012 vs 08/07/2011). When using facts with time series calculations you will only be able to show “this year” vs “last year” since the column heading of the time series calculated fact will always be static. In these cases you will need to use the base fact and a time dimension, along with the solution provided here.
2: All screen shots, and examples used in this post are performed in Sample App V305. An XML of the final correctly formatted report can be downloaded here.
I identify with that. I believe part of my success is because I ask questions.
Back to the original article. Then I end up here, Can Everyone Be Smart at Everything? I seem to lack the ability to focus for extended periods of time. Well, not quite true. I have the ability to focus, but I like to focus on a million different things. Does that count? I don't know.
I'm often envious of my friends who have been DBAs for 20 years, or worked with OBIEE for 10 years (don't argue with me...I know Oracle hasn't owned it for 10 years, I'm looking at you Christian), or APEX for 10 years (that's safe to say). I've flirted with all of those, but I've never committed...See how I get distracted easily? Wow.
Back to the original article and I'm reading through the comments. Someone links up to this young lady who taught herself how to dance in a year. Watch it.
Which finally brings me back to The Talent Code, To Improve Faster, Think Like a Startup. Staying with me? How about this?
Finally, there's a point. I want to do this. Maybe not dance (as much fun as that may be), but something else. Krav Maga? Algebra? Calculus (I'm pursuing my physics or engineering degree in 2035, I need to study my math). I want to test out her technique. Small, discrete steps practiced daily towards some end goal (pass a calc test, take a real estate licensing test, whatever). The problem for me, if you haven't noticed, is focus. This method may help.
If you were to try something like this, what would you set out to learn?
- RAM. Doubling from 1 terabyte to 2 terabytes. This will help everything on the box but those of us running Essbase now have even more RAM to use for making RAM drives.
- Flash. Exalytics now comes standard with 2.4 TB of flash. I mentioned this earlier as an upgrade option to the Exalytics X2-4, but it now is native to the X3-4. As mentioned in my earlier article, flash impacts Essbase performance far more than OBIEE (which isn't as disk I/O intensive). Having .25 millisecond read latency (what these flash drives are rated) means there's virtually no seek time finding values in an Essbase cube on disk. I'm expecting most Essbase customers will put their physical cubes on the flash drives and then quickly load them into a RAM drive upon start up (which has better performance than reading into the Essbase caches for each database).
- Hard Drive. They are upping the traditional hard drives from 3.6 TB to 5.4 TB. It still has 6 physical drives in it, but they are going from 600GB drives to 900GB drives. [Updated on 8-25-2013.]
Some people have asked me "What about the new Maxl Outline Extractor?" That is a good question, but keep in mind it only works with 11.1.2.x and higher plus it gives you an XML output. You still have to do something with the XML format for it to be useful.
The Next Generation Essbase Outline Extractor was completely redesigned from scratch. The main design goals were:
- Design for long term
- Use Oracle’s strategic technology
- Design for supportability
- Wider adoption
- Wider platform choices
- Less support calls
- Export one or more dimensions in an outline.
- Filter members to to be exported by dimension.
- Write to multiple outputs on a single pass of the outline.
- Output multiple alias tables into a single output file.
- Write to Hyperion Planning Outline Load Utility format.
- Output to real relational databases via JDBC.
I wonder what percentage of people ask a question and figure it out on their own before you help them. What about in your experience?— Amy Caldwell (@amyccaldwell) July 8, 2013
Years ago I had a boss who was my technical superior (he may still be). I used to pop in and out of his office, or try to, and ask questions. Most of them were silly, n00b questions.
He was nice, but busy. It didn't take me very long to "read" that. So I slowed down my pace of questions. I began to write things up via email so that he could respond when he the had time. I started to use forums as well. Then I found was directed to How To Ask Questions The Smart Way.
One of the things that became evident quickly is that I didn't always have to hit Send (email) or Submit (forum post), just the act of writing it out forced me to think through the issue and more often than not, I would figure out the answer on my own.
Flash forward five or six years and I started to receive all these questions, either in person or via chat. "Send me an email" was usually my response, especially if I was in the middle of something (see: Context Switching). I was happy to help, just not at that moment. With email, I could get to it when I got a break (or needed one).
One of my favorite people, Jason Baer, who has worked for RittmanMead for the last couple of years, took this to heart. We started working together in December of 2009 and he would pepper me with questions constantly. I could never keep up. "Email the question Jason."
I didn't realize it, but I started getting fewer and fewer emails/questions from him. He began to figure them out on his own. It seemed most of the time he had just missed something, other times he just figured out another way to do something.
Jason is a smart guy. I think I'm smart. Sometimes it's just easier to ask the question without thinking it through. In fact, I do that quite a bit on The Twitter Machine , especially those errors that I seem to know but just don't have the bandwidth to research (think DBA type questions). I believe the types of questions that should must be written down are those that deal with Approach (design, architecture, etc). Any of those ORA errors better come along with a link to the error code in the documentation and some proof that you've researched it a bit yourself...but then that's getting into How To Ask Questions The Smart Way.
Go out and practice. Next time you have a (technical) question for someone, anyone, write it down and see what happens.
Per the price list dated June 25, 2013, the per processor prices have dropped substantially:
- Essbase went from $184,000 to $138,000. That's a 25% decrease.
- OBIEE went from $295,000 to $221,250. That's also a 25% decrease.
- BIFS went from $450,000 to $300,000. That's a 33% decrease.
- OSSM went from $149,250 to $89,550. That's a 40% decrease.
Update as of 7-15-13According to an article on Information Week, during the release of Exalytics X3-4, Paul Rodwick was asked about the recent price decreases mentioned above. He gave the intriguing response that while the prices did go down, it's "old news" because Oracle stealthily did it 9 months ago. While I don't have the technology price list he's referring to (if you do, post a link to it in the comments), here's Paul's quote:
The cost for BI Foundation Suite on a named-user basis has never been changed, but about nine months ago we adjusted per-CPU pricing in part because we were seeing more customers want to license the full complement of Exalytics.