<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
xmlns:rawvoice="http://www.rawvoice.com/rawvoiceRssModule/"
>

<channel>
	<title>Solution Hacker &#187; reporting</title>
	<atom:link href="http://www.solutionhacker.com/tag/reporting/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.solutionhacker.com</link>
	<description>This blog provides solutions for enterpreneurs!</description>
	<lastBuildDate>Mon, 06 Feb 2012 07:19:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=403</generator>
<!-- podcast_generator="Blubrry PowerPress/2.0.4" -->
	<itunes:summary>This blog provides solutions for enterpreneurs!</itunes:summary>
	<itunes:author>Solution Hacker</itunes:author>
	<itunes:explicit>no</itunes:explicit>
	<itunes:image href="http://www.solutionhacker.com/wp-content/plugins/powerpress/itunes_default.jpg" />
	<itunes:subtitle>This blog provides solutions for enterpreneurs!</itunes:subtitle>
	<image>
		<title>Solution Hacker &#187; reporting</title>
		<url>http://www.solutionhacker.com/wp-content/plugins/powerpress/rss_default.jpg</url>
		<link>http://www.solutionhacker.com</link>
	</image>
		<item>
		<title>Hibernate vs iBatis</title>
		<link>http://www.solutionhacker.com/implement-your-idea/build-your-website/hibernate-vs-ibatis/</link>
		<comments>http://www.solutionhacker.com/implement-your-idea/build-your-website/hibernate-vs-ibatis/#comments</comments>
		<pubDate>Thu, 26 Feb 2009 18:58:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Site Building]]></category>
		<category><![CDATA[data warehouse]]></category>
		<category><![CDATA[etl]]></category>
		<category><![CDATA[hibernate]]></category>
		<category><![CDATA[iBatis]]></category>
		<category><![CDATA[reporting]]></category>

		<guid isPermaLink="false">http://www.solutionhacker.com/?p=216</guid>
		<description><![CDATA[<p><strong>Hibernate </strong>is great. However, I don't see it fits all the data access requirements. At its core, it is an <strong>ORM </strong>tool that helps you to map your <strong>object model</strong> to <strong>relational model</strong>. If you have full control of your relational model and perform lots of <strong>CRUD</strong> operations, it is certainly a great tool for you. Its transparent persistence, 2 level caching, dirty checking, lazy/ eager data retrieval and sql generation indeed can save us lots of development time. However, one tool doesn't fit all !! Why not?</p>
<p>In my current company, I have created a reporting tool that interfaces with dimensional model in data warehouse. In this setting, you will deal with <strong>star schema</strong> with <strong>denormalized dimensions</strong>.&#160; Often time, I need to tune the query performance via looking into explain plan. Without full control of SQL, my job will be hard to achieve. Apart from that, reporting tool often issues read-only set based queries to the data warehouse. The resultset returned doesn't fit into my OO model at all. Again, Hibernate just doesn't fit in. People in my company argue that I should use <strong>named query</strong> in Hibernate for the sake of sticking with the standard. I am like ok, whatever... I have known a tool called <strong>iBatis </strong>that I can achieve my job cleanly. Why the hell I would have motivation to try named query that basically a way to by-pass the ORM model to query database. What benefit I will get from this? The cache? We are using ETL to update our fact and dimension in the data warehouse, not by my reporting app. Unless the ETL throws me an event when the update cycle is finished so I can flush my cache, I simply don't think it gives me lots of help.</p>
<p>Anyway, it is just my own little perspective. You don't have to agree with me. The point here is not that I don't like Hibernate but I don't like to be pushed to use it only because it is "standard" to someone. If Hibernate could help me to construct my sql based on user input, stream my result directly to my presentation layer, populate my model automatically based on mapping I provided, detect data warehouse changes and take care my cache, then I am more happy to adopt it in my reporting app. Otherwise, I would not be eager to dump my <strong>iBatis </strong>DAO layer unless I get no choice under the political game.</p>
<h2>Reference</h2>
<ol>
    <li><a href="http://www.nofluffjuststuff.com/media.jsp?id=19">http://www.nofluffjuststuff.com/media.jsp?id=19</a></li>
    <li><a href="http://www.javalobby.org/articles/hibernate-query-101/">http://www.javalobby.org/articles/hibernate-query-101/</a></li>
    <li><a href="http://www.javabeat.net/tips/108-how-to-use-named-parameters-and-named-query-i.html">How to use named parameters and named query in Hibernate?</a></li>
    <li><a href="http://www.ibm.com/developerworks/java/library/j-genericdao.html">Don't repeat your DAO</a>&#160;</li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><strong>Hibernate </strong>is great. However, I don&#8217;t see it fits all the data access requirements. At its core, it is an <strong>ORM </strong>tool that helps you to map your <strong>object model</strong> to <strong>relational model</strong>. If you have full control of your relational model and perform lots of <strong>CRUD</strong> operations, it is certainly a great tool for you. Its transparent persistence, 2 level caching, dirty checking, lazy/ eager data retrieval and sql generation indeed can save us lots of development time. However, one tool doesn&#8217;t fit all !! Why not?</p>
<p>In my current company, I have created a reporting tool that interfaces with dimensional model in data warehouse. In this setting, you will deal with <strong>star schema</strong> with <strong>denormalized dimensions</strong>.&#160; Often time, I need to tune the query performance via looking into explain plan. Without full control of SQL, my job will be hard to achieve. Apart from that, reporting tool often issues read-only set based queries to the data warehouse. The resultset returned doesn&#8217;t fit into my OO model at all. Again, Hibernate just doesn&#8217;t fit in. People in my company argue that I should use <strong>named query</strong> in Hibernate for the sake of sticking with the standard. I am like ok, whatever&#8230; I have known a tool called <strong>iBatis </strong>that I can achieve my job cleanly. Why the hell I would have motivation to try named query that basically a way to by-pass the ORM model to query database. What benefit I will get from this? The cache? We are using ETL to update our fact and dimension in the data warehouse, not by my reporting app. Unless the ETL throws me an event when the update cycle is finished so I can flush my cache, I simply don&#8217;t think it gives me lots of help.</p>
<p>Anyway, it is just my own little perspective. You don&#8217;t have to agree with me. The point here is not that I don&#8217;t like Hibernate but I don&#8217;t like to be pushed to use it only because it is &#8220;standard&#8221; to someone. If Hibernate could help me to construct my sql based on user input, stream my result directly to my presentation layer, populate my model automatically based on mapping I provided, detect data warehouse changes and take care my cache, then I am more happy to adopt it in my reporting app. Otherwise, I would not be eager to dump my <strong>iBatis </strong>DAO layer unless I get no choice under the political game.</p>
<h2>Reference</h2>
<ol>
<li><a href="http://www.nofluffjuststuff.com/media.jsp?id=19">http://www.nofluffjuststuff.com/media.jsp?id=19</a></li>
<li><a href="http://www.javalobby.org/articles/hibernate-query-101/">http://www.javalobby.org/articles/hibernate-query-101/</a></li>
<li><a href="http://www.javabeat.net/tips/108-how-to-use-named-parameters-and-named-query-i.html">How to use named parameters and named query in Hibernate?</a></li>
<li><a href="http://www.ibm.com/developerworks/java/library/j-genericdao.html">Don&#8217;t repeat your DAO</a>&#160;</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.solutionhacker.com/implement-your-idea/build-your-website/hibernate-vs-ibatis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Business Intelligence &#8211; Part 1 Pentaho</title>
		<link>http://www.solutionhacker.com/data-intelligence/collective-intelligence/business-intelligence-part-1-pentaho/</link>
		<comments>http://www.solutionhacker.com/data-intelligence/collective-intelligence/business-intelligence-part-1-pentaho/#comments</comments>
		<pubDate>Thu, 26 Jun 2008 09:00:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Extract Intelligence]]></category>
		<category><![CDATA[BI]]></category>
		<category><![CDATA[business intelligence]]></category>
		<category><![CDATA[Kettle]]></category>
		<category><![CDATA[pentaho]]></category>
		<category><![CDATA[reporting]]></category>

		<guid isPermaLink="false">http://www.solutionhacker.com/?p=153</guid>
		<description><![CDATA[<h2>Getting into Business Intelligent World</h2>
<p>When I dig deeper in business intelligence, I found out that it is a huge topic ranging from reporting to data mining. Like all the knowledge acquisition plan, I put a series of milestones for myself. If you are interested, here is my list:</p>
<p><strong>Get and prepare your data</strong></p>
<ul>
    <li>Data collection - log processing, web services (SOAP and REST), RSS, screen scraping and more.</li>
    <li>Data preparation and crunching - ETL (Kettle)</li>
    <li>Data storage - data warehousing</li>
</ul>
<p><strong>Visualize your data</strong></p>
<ul>
    <li>Reporting and Charting (Pentaho as server and Flex as frontend)</li>
</ul>
<p><strong>Analysis your data</strong></p>
<ul>
    <li>Data modeling</li>
    <li>Data analysis (OLAP)</li>
</ul>
<p><strong>Get smart of your data</strong></p>
<ul>
    <li>Collective intelligence</li>
    <li>Data mining</li>
</ul>
<p><!--more--></p>
<h2>Introduction of Pentaho</h2>
<p>Firstly, I want to see whether there is any out of the box&#160; open-source solution that captures what I am trying to do here. If so, I can reach my goal much faster. Yes. It has to be open-source b/c I don't have $$ and I don't want to be just a user. After doing my homework a bit, I found out an open-source BI tool named Pentaho that looks pretty solid. So, I decide to dive deep to this. Like all the tools I mess around with, I want to integrate Pentaho as library. However, I don't find anything on the Net that shows me how to do it. I am looking into its download and checkout its pentaho-sample project. What it shows me is how to use their tools to create a report on their systems using their UI. I definitely need more!</p>
<p>After few days of efforts, I managed to pull out all the unnecessary dependencies from pentaho. The heart of Pentaho is its xaction interpreter. The approach Pentaho uses is to write adapters, plug into its framework and use xaction to wire them up in a workflow fashion. In fact, most of its functionalities come from other open-source projects like quartz for scheduling, shark for workflow engine and jfreereport for reporting. I don't think their xaction is clean but I do like their architectural approach.</p>
<p>Enough talk, lets start! Here I would use series of articles to cut your learning curve and show you how to get yourself familiar with Pentaho as a developer rather than user. First thing first, follow the articles below to set up your environment.&#160;</p>
<ol>
    <li><span style="font-size: 10pt; font-family: &#34;Arial&#34;,&#34;sans-serif&#34;; color: navy;"><a href="http://wiki.pentaho.com/display/PentahoDoc/07.+Debugging+with+the+Standalone+Platform+Project">http://wiki.pentaho.com/display/PentahoDoc/07.+Debugging+with+the+Standalone+Platform+Project</a><o:p></o:p></span></li>
    <li><span style="font-size: 10pt; font-family: &#34;Arial&#34;,&#34;sans-serif&#34;; color: navy;"><a href="http://wiki.pentaho.com/display/PentahoDoc/Building+and+Debugging+Pentaho+with+Eclipse">http://wiki.pentaho.com/display/PentahoDoc/Building+and+Debugging+Pentaho+with+Eclipse</a><o:p></o:p></span></li>
    <li><span style="font-size: 10pt; font-family: &#34;Arial&#34;,&#34;sans-serif&#34;; color: navy;"><a href="http://wiki.pentaho.com/display/PentahoDoc/Manual+Deployment+of+Pentaho">http://wiki.pentaho.com/display/PentahoDoc/Manual+Deployment+of+Pentaho</a></span></li>
</ol>
<p><span style="font-size: 10pt; font-family: &#34;Arial&#34;,&#34;sans-serif&#34;; color: navy;"><o:p></o:p></span></p>]]></description>
			<content:encoded><![CDATA[<h2>Getting into Business Intelligent World</h2>
<p>When I dig deeper in business intelligence, I found out that it is a huge topic ranging from reporting to data mining. Like all the knowledge acquisition plan, I put a series of milestones for myself. If you are interested, here is my list:</p>
<p><strong>Get and prepare your data</strong></p>
<ul>
<li>Data collection &#8211; log processing, web services (SOAP and REST), RSS, screen scraping and more.</li>
<li>Data preparation and crunching &#8211; ETL (Kettle)</li>
<li>Data storage &#8211; data warehousing</li>
</ul>
<p><strong>Visualize your data</strong></p>
<ul>
<li>Reporting and Charting (Pentaho as server and Flex as frontend)</li>
</ul>
<p><strong>Analysis your data</strong></p>
<ul>
<li>Data modeling</li>
<li>Data analysis (OLAP)</li>
</ul>
<p><strong>Get smart of your data</strong></p>
<ul>
<li>Collective intelligence</li>
<li>Data mining</li>
</ul>
<p><span id="more-153"></span></p>
<h2>Introduction of Pentaho</h2>
<p>Firstly, I want to see whether there is any out of the box&nbsp; open-source solution that captures what I am trying to do here. If so, I can reach my goal much faster. Yes. It has to be open-source b/c I don&#8217;t have $$ and I don&#8217;t want to be just a user. After doing my homework a bit, I found out an open-source BI tool named Pentaho that looks pretty solid. So, I decide to dive deep to this. Like all the tools I mess around with, I want to integrate Pentaho as library. However, I don&#8217;t find anything on the Net that shows me how to do it. I am looking into its download and checkout its pentaho-sample project. What it shows me is how to use their tools to create a report on their systems using their UI. I definitely need more!</p>
<p>After few days of efforts, I managed to pull out all the unnecessary dependencies from pentaho. The heart of Pentaho is its xaction interpreter. The approach Pentaho uses is to write adapters, plug into its framework and use xaction to wire them up in a workflow fashion. In fact, most of its functionalities come from other open-source projects like quartz for scheduling, shark for workflow engine and jfreereport for reporting. I don&#8217;t think their xaction is clean but I do like their architectural approach.</p>
<p>Enough talk, lets start! Here I would use series of articles to cut your learning curve and show you how to get yourself familiar with Pentaho as a developer rather than user. First thing first, follow the articles below to set up your environment.&nbsp;</p>
<ol>
<li><span style="font-size: 10pt; font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; color: navy;"><a href="http://wiki.pentaho.com/display/PentahoDoc/07.+Debugging+with+the+Standalone+Platform+Project">http://wiki.pentaho.com/display/PentahoDoc/07.+Debugging+with+the+Standalone+Platform+Project</a><o:p></o:p></span></li>
<li><span style="font-size: 10pt; font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; color: navy;"><a href="http://wiki.pentaho.com/display/PentahoDoc/Building+and+Debugging+Pentaho+with+Eclipse">http://wiki.pentaho.com/display/PentahoDoc/Building+and+Debugging+Pentaho+with+Eclipse</a><o:p></o:p></span></li>
<li><span style="font-size: 10pt; font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; color: navy;"><a href="http://wiki.pentaho.com/display/PentahoDoc/Manual+Deployment+of+Pentaho">http://wiki.pentaho.com/display/PentahoDoc/Manual+Deployment+of+Pentaho</a></span></li>
</ol>
<p><span style="font-size: 10pt; font-family: &quot;Arial&quot;,&quot;sans-serif&quot;; color: navy;"><o:p></o:p></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.solutionhacker.com/data-intelligence/collective-intelligence/business-intelligence-part-1-pentaho/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

