Author: buildbot
Date: Sun Aug 11 01:35:05 2013
New Revision: 874076

Log:
Staging update by buildbot for gora

Modified:
    websites/staging/gora/trunk/content/   (props changed)
    websites/staging/gora/trunk/content/current/tutorial.html

Propchange: websites/staging/gora/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Sun Aug 11 01:35:05 2013
@@ -1 +1 @@
-1512658
+1512845

Modified: websites/staging/gora/trunk/content/current/tutorial.html
==============================================================================
--- websites/staging/gora/trunk/content/current/tutorial.html (original)
+++ websites/staging/gora/trunk/content/current/tutorial.html Sun Aug 11 
01:35:05 2013
@@ -724,12 +724,12 @@ are returned via the Result interface. L
 the LogManager class.</p>
 <div class="codehilite"><pre><span class="cm">/** Queries and prints pageview 
object that have keys between startKey and endKey*/</span>
 <span class="n">private</span> <span class="k">void</span> <span 
class="n">query</span><span class="p">(</span><span class="n">long</span> <span 
class="n">startKey</span><span class="p">,</span> <span class="n">long</span> 
<span class="n">endKey</span><span class="p">)</span> <span 
class="n">throws</span> <span class="n">IOException</span> <span 
class="p">{</span>
-  <span class="n">Query</span><span class="o">&amp;</span><span 
class="n">lt</span><span class="p">;</span><span class="n">Long</span><span 
class="p">,</span> <span class="n">Pageview</span><span 
class="o">&amp;</span><span class="n">gt</span><span class="p">;</span> <span 
class="n">query</span> <span class="o">=</span> <span 
class="n">dataStore</span><span class="p">.</span><span 
class="n">newQuery</span><span class="p">();</span>
+  <span class="n">Query</span><span class="o">&lt;</span><span 
class="n">Long</span><span class="p">,</span> <span 
class="n">Pageview</span><span class="o">&gt;</span> <span 
class="n">query</span> <span class="o">=</span> <span 
class="n">dataStore</span><span class="p">.</span><span 
class="n">newQuery</span><span class="p">();</span>
   <span class="c1">//set the properties of query</span>
   <span class="n">query</span><span class="p">.</span><span 
class="n">setStartKey</span><span class="p">(</span><span 
class="n">startKey</span><span class="p">);</span>
   <span class="n">query</span><span class="p">.</span><span 
class="n">setEndKey</span><span class="p">(</span><span 
class="n">endKey</span><span class="p">);</span>
 
-  <span class="n">Result</span><span class="o">&amp;</span><span 
class="n">lt</span><span class="p">;</span><span class="n">Long</span><span 
class="p">,</span> <span class="n">Pageview</span><span 
class="o">&amp;</span><span class="n">gt</span><span class="p">;</span> <span 
class="n">result</span> <span class="o">=</span> <span 
class="n">query</span><span class="p">.</span><span 
class="n">execute</span><span class="p">();</span>
+  <span class="n">Result</span><span class="o">&lt;</span><span 
class="n">Long</span><span class="p">,</span> <span 
class="n">Pageview</span><span class="o">&gt;</span> <span 
class="n">result</span> <span class="o">=</span> <span 
class="n">query</span><span class="p">.</span><span 
class="n">execute</span><span class="p">();</span>
 
   <span class="n">printResult</span><span class="p">(</span><span 
class="n">result</span><span class="p">);</span>
 <span class="p">}</span>
@@ -742,7 +742,7 @@ the Result object.</p>
 <p>Result interface allows us to iterate the results one by one by calling the 
 next() method. The getKey() method returns the current key and get()
 returns current persistent object.</p>
-<div class="codehilite"><pre><span class="n">private</span> <span 
class="n">void</span> <span class="n">printResult</span><span 
class="p">(</span><span class="n">Result</span><span 
class="o">&amp;</span><span class="n">lt</span><span class="p">;</span><span 
class="n">Long</span><span class="p">,</span> <span 
class="n">Pageview</span><span class="o">&amp;</span><span 
class="n">gt</span><span class="p">;</span> <span class="n">result</span><span 
class="p">)</span> <span class="n">throws</span> <span 
class="n">IOException</span> <span class="p">{</span>
+<div class="codehilite"><pre><span class="n">private</span> <span 
class="n">void</span> <span class="n">printResult</span><span 
class="p">(</span><span class="n">Result</span><span class="o">&lt;</span><span 
class="n">Long</span><span class="p">,</span> <span 
class="n">Pageview</span><span class="o">&gt;</span> <span 
class="n">result</span><span class="p">)</span> <span class="n">throws</span> 
<span class="n">IOException</span> <span class="p">{</span>
 
   <span class="k">while</span><span class="p">(</span><span 
class="n">result</span><span class="p">.</span><span class="n">next</span><span 
class="p">())</span> <span class="p">{</span> <span class="o">//</span><span 
class="n">advances</span> <span class="n">the</span> <span 
class="n">Result</span> <span class="n">object</span> <span 
class="n">and</span> <span class="n">breaks</span> <span class="k">if</span> 
<span class="n">at</span> <span class="k">end</span>
     <span class="n">long</span> <span class="n">resultKey</span> <span 
class="p">=</span> <span class="n">result</span><span class="p">.</span><span 
class="n">getKey</span><span class="p">();</span> <span 
class="o">//</span><span class="n">obtain</span> <span class="n">current</span> 
<span class="n">key</span>
@@ -809,7 +809,7 @@ Continueing from the LogManager class, t
 <span class="cm">/** This method illustrates delete by query call */</span>
 <span class="n">private</span> <span class="k">void</span> <span 
class="n">deleteByQuery</span><span class="p">(</span><span 
class="n">long</span> <span class="n">startKey</span><span class="p">,</span> 
<span class="n">long</span> <span class="n">endKey</span><span 
class="p">)</span> <span class="n">throws</span> <span 
class="n">IOException</span> <span class="p">{</span>
   <span class="c1">//Constructs a query from the dataStore. The matching rows 
to this query will be deleted</span>
-  <span class="n">Query</span><span class="o">&amp;</span><span 
class="n">lg</span><span class="p">;</span><span class="n">Long</span><span 
class="p">,</span> <span class="n">Pageview</span><span 
class="o">&amp;</span><span class="n">gt</span><span class="p">;</span> <span 
class="n">query</span> <span class="o">=</span> <span 
class="n">dataStore</span><span class="p">.</span><span 
class="n">newQuery</span><span class="p">();</span>
+  <span class="n">Query</span><span class="o">&lt;</span><span 
class="n">Long</span><span class="p">,</span> <span 
class="n">Pageview</span><span class="o">&gt;</span> <span 
class="n">query</span> <span class="o">=</span> <span 
class="n">dataStore</span><span class="p">.</span><span 
class="n">newQuery</span><span class="p">();</span>
   <span class="c1">//set the properties of query</span>
   <span class="n">query</span><span class="p">.</span><span 
class="n">setStartKey</span><span class="p">(</span><span 
class="n">startKey</span><span class="p">);</span>
   <span class="n">query</span><span class="p">.</span><span 
class="n">setEndKey</span><span class="p">(</span><span 
class="n">endKey</span><span class="p">);</span>
@@ -850,7 +850,7 @@ If you want to continue with HBase, you 
 <p>First we need to download HSQL dependencies. For that, ensure that the 
hsqldb 
 dependency is available in the Maven pom.xml.
 Ofcourse MySQL users should uncomment the mysql dependency instead. </p>
-<div class="codehilite"><pre><span class="o">&amp;</span><span 
class="n">lt</span><span class="p">;</span>!<span class="o">--&amp;</span><span 
class="n">lt</span><span class="p">;</span><span class="n">dependency</span> 
<span class="n">org</span><span class="p">=</span>&quot;<span 
class="n">org</span><span class="p">.</span><span class="n">hsqldb</span>&quot; 
<span class="n">name</span><span class="p">=</span>&quot;<span 
class="n">hsqldb</span>&quot; <span class="n">rev</span><span 
class="p">=</span>&quot;2<span class="p">.</span>0<span 
class="p">.</span>0&quot; <span class="n">conf</span><span 
class="p">=</span>&quot;<span class="o">*-&gt;</span><span 
class="n">default</span>&quot;<span class="o">/&amp;</span><span 
class="n">gt</span><span class="p">;</span><span class="o">--&amp;</span><span 
class="n">gt</span><span class="p">;</span>
+<div class="codehilite"><pre><span class="o">&lt;</span>!<span 
class="o">--&lt;</span><span class="n">dependency</span> <span 
class="n">org</span><span class="p">=</span>&quot;<span 
class="n">org</span><span class="p">.</span><span class="n">hsqldb</span>&quot; 
<span class="n">name</span><span class="p">=</span>&quot;<span 
class="n">hsqldb</span>&quot; <span class="n">rev</span><span 
class="p">=</span>&quot;2<span class="p">.</span>0<span 
class="p">.</span>0&quot; <span class="n">conf</span><span 
class="p">=</span>&quot;<span class="o">*-&gt;</span><span 
class="n">default</span>&quot;<span class="o">/&gt;--&gt;</span>
 </pre></div>
 
 
@@ -906,15 +906,15 @@ demonstrate the SQL backend. </p>
 <p>Similar to what we have seen with HBase, gora-sql plugin reads 
configuration from the 
 gora-sql-mappings.xml file. 
 Specifically, we will use the gora-tutorial/conf/gora-sql-mappings.xml file.   
 </p>
-<div class="codehilite"><pre><span class="o">&amp;</span><span 
class="n">lt</span><span class="p">;</span><span class="n">gora</span><span 
class="o">-</span><span class="n">orm</span><span class="o">&amp;</span><span 
class="n">gt</span><span class="p">;</span>
-  <span class="p">...</span>
-  <span class="o">&amp;</span><span class="n">lt</span><span 
class="p">;</span><span class="n">class</span> <span class="n">name</span><span 
class="p">=</span>&quot;<span class="n">org</span><span class="p">.</span><span 
class="n">apache</span><span class="p">.</span><span class="n">gora</span><span 
class="p">.</span><span class="n">tutorial</span><span class="p">.</span><span 
class="nb">log</span><span class="p">.</span><span 
class="n">generated</span><span class="p">.</span><span 
class="n">MetricDatum</span>&quot; <span class="n">keyClass</span><span 
class="p">=</span>&quot;<span class="n">java</span><span 
class="p">.</span><span class="n">lang</span><span class="p">.</span><span 
class="n">String</span>&quot; <span class="n">table</span><span 
class="p">=</span>&quot;<span class="n">Metrics</span>&quot;<span 
class="o">&amp;</span><span class="n">gt</span><span class="p">;</span>
-    <span class="o">&amp;</span><span class="n">lt</span><span 
class="p">;</span><span class="n">primarykey</span> <span 
class="n">column</span><span class="p">=</span>&quot;<span 
class="n">id</span>&quot; <span class="nb">length</span><span 
class="p">=</span>&quot;512&quot;<span class="o">/&amp;</span><span 
class="n">gt</span><span class="p">;</span>
-    <span class="o">&amp;</span><span class="n">lt</span><span 
class="p">;</span><span class="n">field</span> <span class="n">name</span><span 
class="p">=</span>&quot;<span class="n">metricDimension</span>&quot; <span 
class="n">column</span><span class="p">=</span>&quot;<span 
class="n">metricDimension</span>&quot; <span class="nb">length</span><span 
class="p">=</span>&quot;512&quot;<span class="o">/&amp;</span><span 
class="n">gt</span><span class="p">;</span>
-    <span class="o">&amp;</span><span class="n">lt</span><span 
class="p">;</span><span class="n">field</span> <span class="n">name</span><span 
class="p">=</span>&quot;<span class="n">timestamp</span>&quot; <span 
class="n">column</span><span class="p">=</span>&quot;<span 
class="n">ts</span>&quot;<span class="o">/&amp;</span><span 
class="n">gt</span><span class="p">;</span>
-    <span class="o">&amp;</span><span class="n">lt</span><span 
class="p">;</span><span class="n">field</span> <span class="n">name</span><span 
class="p">=</span>&quot;<span class="n">metric</span>&quot; <span 
class="n">column</span><span class="p">=</span>&quot;<span 
class="n">metric</span><span class="o">/&amp;</span><span 
class="n">gt</span><span class="p">;</span>
-  <span class="o">&amp;</span><span class="n">lt</span><span 
class="p">;</span><span class="o">/</span><span class="n">class</span><span 
class="o">&amp;</span><span class="n">gt</span><span class="p">;</span>
-<span class="o">&amp;</span><span class="n">lt</span><span 
class="p">;</span><span class="o">/</span><span class="n">gora</span><span 
class="o">-</span><span class="n">orm</span><span class="o">&amp;</span><span 
class="n">gt</span><span class="p">;</span>
+<div class="codehilite"><pre><span class="nt">&lt;gora-orm&gt;</span>
+  ...
+  <span class="nt">&lt;class</span> <span class="na">name=</span><span 
class="s">&quot;org.apache.gora.tutorial.log.generated.MetricDatum&quot;</span> 
<span class="na">keyClass=</span><span 
class="s">&quot;java.lang.String&quot;</span> <span 
class="na">table=</span><span class="s">&quot;Metrics&quot;</span><span 
class="nt">&gt;</span>
+    <span class="nt">&lt;primarykey</span> <span 
class="na">column=</span><span class="s">&quot;id&quot;</span> <span 
class="na">length=</span><span class="s">&quot;512&quot;</span><span 
class="nt">/&gt;</span>
+    <span class="nt">&lt;field</span> <span class="na">name=</span><span 
class="s">&quot;metricDimension&quot;</span> <span 
class="na">column=</span><span class="s">&quot;metricDimension&quot;</span> 
<span class="na">length=</span><span class="s">&quot;512&quot;</span><span 
class="nt">/&gt;</span>
+    <span class="nt">&lt;field</span> <span class="na">name=</span><span 
class="s">&quot;timestamp&quot;</span> <span class="na">column=</span><span 
class="s">&quot;ts&quot;</span><span class="nt">/&gt;</span>
+    <span class="nt">&lt;field</span> <span class="na">name=</span><span 
class="s">&quot;metric&quot;</span> <span class="na">column=</span><span 
class="s">&quot;metric/</span><span class="nt">&gt;</span>
+  <span class="nt">&lt;/class&gt;</span>
+<span class="nt">&lt;/gora-orm&gt;</span>
 </pre></div>
 
 
@@ -949,8 +949,8 @@ function as well. GoraReducer#initReduce
 the data store to store the job's output as well as the actual reducer class.
 initMapperJob and initReducerJob functions have also overriden methods that 
take the data store class 
 rather than data store instances.</p>
-<div class="codehilite"><pre>  <span class="n">public</span> <span 
class="n">Job</span> <span class="n">createJob</span><span 
class="p">(</span><span class="n">DataStore</span><span 
class="o">&amp;</span><span class="n">lt</span><span class="p">;</span><span 
class="n">Long</span><span class="p">,</span> <span 
class="n">Pageview</span><span class="o">&amp;</span><span 
class="n">gt</span><span class="p">;</span> <span class="n">inStore</span>
-      <span class="p">,</span> <span class="n">DataStore</span><span 
class="o">&amp;</span><span class="n">lt</span><span class="p">;</span><span 
class="n">String</span><span class="p">,</span> <span 
class="n">MetricDatum</span><span class="o">&amp;</span><span 
class="n">gt</span><span class="p">;</span> <span 
class="n">outStore</span><span class="p">,</span> <span class="n">int</span> 
<span class="n">numReducer</span><span class="p">)</span> <span 
class="n">throws</span> <span class="n">IOException</span> <span 
class="p">{</span>
+<div class="codehilite"><pre>  <span class="n">public</span> <span 
class="n">Job</span> <span class="n">createJob</span><span 
class="p">(</span><span class="n">DataStore</span><span 
class="o">&lt;</span><span class="n">Long</span><span class="p">,</span> <span 
class="n">Pageview</span><span class="o">&gt;</span> <span 
class="n">inStore</span>
+      <span class="p">,</span> <span class="n">DataStore</span><span 
class="o">&lt;</span><span class="n">String</span><span class="p">,</span> 
<span class="n">MetricDatum</span><span class="o">&gt;</span> <span 
class="n">outStore</span><span class="p">,</span> <span class="n">int</span> 
<span class="n">numReducer</span><span class="p">)</span> <span 
class="n">throws</span> <span class="n">IOException</span> <span 
class="p">{</span>
     <span class="n">Job</span> <span class="n">job</span> <span 
class="p">=</span> <span class="n">new</span> <span class="n">Job</span><span 
class="p">(</span><span class="n">getConf</span><span class="p">());</span>
 
     <span class="n">job</span><span class="p">.</span><span 
class="n">setJobName</span><span class="p">(</span>&quot;<span 
class="n">Log</span> <span class="n">Analytics</span>&quot;<span 
class="p">);</span>
@@ -1012,7 +1012,7 @@ just sums up all the values that corresp
 Then the metric dimension object is constructed and emitted, which 
 will be stored at the output data store. </p>
 <div class="codehilite"><pre><span class="n">protected</span> <span 
class="n">void</span> <span class="n">reduce</span><span 
class="p">(</span><span class="n">TextLong</span> <span class="n">tuple</span>
-    <span class="p">,</span> <span class="n">Iterable</span><span 
class="o">&amp;</span><span class="n">lt</span><span class="p">;</span><span 
class="n">LongWritable</span><span class="o">&amp;</span><span 
class="n">gt</span><span class="p">;</span> <span class="n">values</span><span 
class="p">,</span> <span class="n">Context</span> <span 
class="n">context</span><span class="p">)</span> 
+    <span class="p">,</span> <span class="n">Iterable</span><span 
class="o">&lt;</span><span class="n">LongWritable</span><span 
class="o">&gt;</span> <span class="n">values</span><span class="p">,</span> 
<span class="n">Context</span> <span class="n">context</span><span 
class="p">)</span> 
   <span class="n">throws</span> <span class="n">IOException</span> <span 
class="p">,</span><span class="n">InterruptedException</span> <span 
class="p">{</span>
 
   <span class="n">long</span> <span class="n">sum</span> <span 
class="p">=</span> 0<span class="n">L</span><span class="p">;</span> <span 
class="o">//</span><span class="n">sum</span> <span class="n">up</span> <span 
class="n">the</span> <span class="n">values</span>
@@ -1037,7 +1037,7 @@ will be stored at the output data store.
 <h3 id="running-the-job">Running the job</h3>
 <p>Now that the job is constructed, we can run the Hadoop job as usual. Note 
that the run function 
 of the LogAnalytics class parses the arguments and runs the job. We can run 
the program by </p>
-<div class="codehilite"><pre>$ <span class="n">bin</span><span 
class="o">/</span><span class="n">gora</span> <span 
class="n">loganalytics</span> <span class="p">[</span><span 
class="o">&amp;</span><span class="n">lt</span><span class="p">;</span><span 
class="n">input</span> <span class="n">data</span> <span 
class="n">store</span><span class="o">&amp;</span><span 
class="n">gt</span><span class="p">;</span> <span class="p">[</span><span 
class="o">&amp;</span><span class="n">lt</span><span class="p">;</span><span 
class="n">output</span> <span class="n">data</span> <span 
class="n">store</span><span class="o">&amp;</span><span 
class="n">gt</span><span class="p">;]]</span>
+<div class="codehilite"><pre>$ <span class="n">bin</span><span 
class="o">/</span><span class="n">gora</span> <span 
class="n">loganalytics</span> <span class="p">[</span><span 
class="o">&lt;</span><span class="n">input</span> <span class="n">data</span> 
<span class="n">store</span><span class="o">&gt;</span> <span 
class="p">[</span><span class="o">&lt;</span><span class="n">output</span> 
<span class="n">data</span> <span class="n">store</span><span 
class="o">&gt;</span><span class="p">]]</span>
 </pre></div>
 
 
@@ -1116,7 +1116,7 @@ under various Gora modules. All the modu
 under which some example classes can be found. Especially, there are some 
classes that are used for tests under 
 &lt;gora-core&gt;/src/examples/</p>
 <p>Second, various unit tests of Gora modules can be referred to see the API 
in use. The unit tests can be found 
-at &lt;gora-module&gt;/src/test/</p>
+at <gora-module>/src/test/</p>
 <p>The source code for the projects using Gora can also be checked out as a 
reference. <a href="http://nutch.apache.org";>Apache Nutch</a> is 
 one of the first class users of Gora; so looking into how Nutch uses Gora is 
always a good idea.</p>
 <p>Please feel free to grab our <a 
href="http://gora.apache.org/images/powered-by-gora.png";>poweredBy</a> sticker 
and embedded it in anything backed by Apache Gora.</p>


Reply via email to