You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by lu...@apache.org on 2015/05/27 13:07:37 UTC

[1/5] incubator-kylin git commit: update website structure and content

Repository: incubator-kylin
Updated Branches:
  refs/heads/0.7.1-staging 928ef4cf7 -> d1b8e50f0


update website structure and content

Signed-off-by: Luke Han <lu...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/69dda1d6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/69dda1d6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/69dda1d6

Branch: refs/heads/0.7.1-staging
Commit: 69dda1d68055146828a1b5b38cf6b121bd700450
Parents: 928ef4c
Author: Luwei Chen <ch...@hotmail.com>
Authored: Wed May 27 18:17:32 2015 +0800
Committer: Luke Han <lu...@apache.org>
Committed: Wed May 27 18:51:01 2015 +0800

----------------------------------------------------------------------
 docs/website/_config.yml                        |  4 +-
 docs/website/_includes/head.cn.html             |  3 +-
 docs/website/_includes/head.html                |  4 +-
 docs/website/_layouts/page.html                 |  7 +-
 docs/website/_layouts/post.html                 |  8 +-
 .../_posts/2015-01-25-introduce-data-model.md   | 40 ---------
 docs/website/blog/index.md                      | 43 ---------
 docs/website/community/index.md                 | 65 --------------
 docs/website/docs/index.md                      | 91 --------------------
 docs/website/docs/installation-content.md       | 16 ----
 docs/website/docs/intro-content.md              | 54 ------------
 11 files changed, 16 insertions(+), 319 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69dda1d6/docs/website/_config.yml
----------------------------------------------------------------------
diff --git a/docs/website/_config.yml b/docs/website/_config.yml
index 9f347af..f7eb224 100644
--- a/docs/website/_config.yml
+++ b/docs/website/_config.yml
@@ -28,6 +28,8 @@ encoding: UTF-8
 
 # Build settings
 markdown: kramdown
+# Code highlight
+highlighter: pygments
 # Permalinks, default is pretty
 permalink: pretty
 
@@ -39,4 +41,4 @@ language_default: 'en'
 
 # If a post of default language not set `no_fill_default_content` to true
 # Its content will use to replace if the corresponding content of other languages is not exist.
-# fill_default_content: true
\ No newline at end of file
+# fill_default_content: true

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69dda1d6/docs/website/_includes/head.cn.html
----------------------------------------------------------------------
diff --git a/docs/website/_includes/head.cn.html b/docs/website/_includes/head.cn.html
index 53d7204..36c3a0e 100644
--- a/docs/website/_includes/head.cn.html
+++ b/docs/website/_includes/head.cn.html
@@ -33,13 +33,14 @@
 <link rel="stylesheet" href="{{ "/assets/css/bootstrap.min.css"| prepend: site.baseurl }}">
 
 <!-- Fonts -->
-<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Alice|Open+Sans:400,300,700">
+<!-- <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Alice|Open+Sans:400,300,700"> -->
 
 <!-- Icons -->
 <link rel="stylesheet" href="{{ "/assets/css/font-awesome.min.css"| prepend: site.baseurl }}">
 
   <!-- Custom styles -->
   <link rel="stylesheet" href="{{ "/assets/css/styles.css" | prepend: site.baseurl }}">
+  <link rel="stylesheet" href="{{ "/assets/css/docs.css" | prepend: site.baseurl }}">
 
   <link rel="canonical" href="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}">
   <link rel="alternate" type="application/rss+xml" title="{{ site.title }}" href="{{ "/feed.xml" | prepend: site.baseurl | prepend: site.url }}" />

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69dda1d6/docs/website/_includes/head.html
----------------------------------------------------------------------
diff --git a/docs/website/_includes/head.html b/docs/website/_includes/head.html
index dc2063f..421b450 100644
--- a/docs/website/_includes/head.html
+++ b/docs/website/_includes/head.html
@@ -33,13 +33,15 @@
 <link rel="stylesheet" href="{{ "/assets/css/bootstrap.min.css"| prepend: site.baseurl }}">
 
 <!-- Fonts -->
-<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Alice|Open+Sans:400,300,700">
+<!-- <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Alice|Open+Sans:400,300,700"> -->
 
 <!-- Icons -->
 <link rel="stylesheet" href="{{ "/assets/css/font-awesome.min.css"| prepend: site.baseurl }}">
 
   <!-- Custom styles -->
   <link rel="stylesheet" href="{{ "/assets/css/styles.css" | prepend: site.baseurl }}">
+  <link rel="stylesheet" href="{{ "/assets/css/docs.css" | prepend: site.baseurl }}">
+  <link rel="stylesheet" href="{{ "/assets/css/pygments.css" | prepend: site.baseurl }}">
 
   <link rel="canonical" href="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}">
   <link rel="alternate" type="application/rss+xml" title="{{ site.title }}" href="{{ "/feed.xml" | prepend: site.baseurl | prepend: site.url }}" />

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69dda1d6/docs/website/_layouts/page.html
----------------------------------------------------------------------
diff --git a/docs/website/_layouts/page.html b/docs/website/_layouts/page.html
index de945f4..9b38fb8 100644
--- a/docs/website/_layouts/page.html
+++ b/docs/website/_layouts/page.html
@@ -1,3 +1,7 @@
+---
+layout: default
+---
+
 <!--
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
@@ -16,9 +20,6 @@
 * limitations under the License.
 -->
 
----
-layout: default
----
 <div class="post">
 
   <header class="post-header">

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69dda1d6/docs/website/_layouts/post.html
----------------------------------------------------------------------
diff --git a/docs/website/_layouts/post.html b/docs/website/_layouts/post.html
index 38c68c8..7503e6e 100644
--- a/docs/website/_layouts/post.html
+++ b/docs/website/_layouts/post.html
@@ -1,3 +1,7 @@
+---
+layout: docs
+---
+
 <!--
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
@@ -16,10 +20,6 @@
 * limitations under the License.
 -->
 
----
-layout: default
----
-
 <div class="post" style=" padding:2em 4em 4em 4em">
 
   <header class="post-header">

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69dda1d6/docs/website/_posts/2015-01-25-introduce-data-model.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/2015-01-25-introduce-data-model.md b/docs/website/_posts/2015-01-25-introduce-data-model.md
deleted file mode 100644
index 2016207..0000000
--- a/docs/website/_posts/2015-01-25-introduce-data-model.md
+++ /dev/null
@@ -1,40 +0,0 @@
----
-layout: post
-title:  "Introduce Data Model of Cube Designer"
-date:   2015-01-25 22:28:00
-author: Luke Han
-categories: blog
----
-
-### Background
-In previous version (before v0.6.4), Kylin introduced a GUI tool called Cube Designer for user (we called this role as __Cube Modeler__) to architect OLAP Cube with dimensions, measures and other settings. It works well for most of the features but still not user friendly yet: 
-
-1. A user has to add dimension one by one, considering there are 20+ even 50+ dimensions, the entire process is really boring. 
-2. Each dimension requires define join condition between fact table and lookup table which even already be defined in previous dimensions many times.
-3. Less validation check, especially for Hierarchy and Derived dimension, there are many exceptions in further steps which blocked many people to save the cube definition without any idea about the issue.
-4. Save/Next buttons are confusing user to click which one for real next step or just save current dimension settings
-
-### Data Model of Cube Designer
-With the feedback from our internal users and external community, we have came up one idea and would like to introduce a new concept (widely known in Data Warehouse and Business Intelligence domain): Data Model: a data model organises data elements and standardises how the data elements relate to one another.[Wikipedia](http://en.wikipedia.org/wiki/Data_model). In Kylin, it using [Star Schema](http://en.wikipedia.org/wiki/Star_schema) as Data Model, which is the simplest style of data warehouse schema. The star schema consists of a few "fact tables" (possibly only one, justifying the name) referencing any number of "dimension tables". It actually already there behind dimensions and measures and now just come to first step to define the relationship between different tables before create each dimension. 
-Now (after v0.6.4), to create a cube will follow below steps:
-
-1. Define data model first: pick up one fact table and then add other lookup tables (with their join conditions). The data mode must be presents as Star Schema.
-2. Then add dimensions, since all join conditions already presented in data model, each dimension could be more easy to create, just need to know what's kind of type: normal, hierarchy and derived (will have another blog to introduce them). There's also one helper called _Auto Generator_ to help generate many dimensions within simple clicks.
-3. Then define measures and others as previous cube designer did
-
-### Benefits
-1. A data model is very easy to communicate between different roles and teams. Most of cases it just mapping to real database table relationship, like from Hive tables
-2. More easy to create dimensions and measures based on the data model
-3. Friendly error message with enhanced validation check when save cube
-
-
-### What's Next
-After this refactor, Kylin is now be able to introduce more powerful features, the major idea is to using different storages to serve same data model:
-
-* __Logical Model__: A Data Model presents logical data structure like Star Schema beyond data tables with more business meaning
-* __Physical Model__: define how the underlying data to be stored in persistent system, like HBase. There are already two of them: MOLAP (current Kylin version) and InvertedIndex (coming with 0.7.x release). And it also easy to extend to support others without change the Logical Model.
-* A new GUI of Cube Designer to support above is on the way.
-
-
-
-

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69dda1d6/docs/website/blog/index.md
----------------------------------------------------------------------
diff --git a/docs/website/blog/index.md b/docs/website/blog/index.md
deleted file mode 100644
index a272bd6..0000000
--- a/docs/website/blog/index.md
+++ /dev/null
@@ -1,43 +0,0 @@
----
-layout: default
-title: Blog
----
-
-
-<main id="main" >
-<section id="first" class="main">
-    <header style="padding:2em 0 4em 0;">
-      <div class="container" >
-        <h4 class="section-title"><span> Kylin Technical Blog </span></h4>
-         <!-- second-->
-          <div id="content-container" class="animated fadeIn">
-            <div >
-            <!--
-            <p class="aboutkylin" style="font-size:1.2em">Comming Soon...</p>
-            -->
-             <ul class="post-list">
-            {% for post in site.posts %}
-            <li>
-            <!--
-            <span align="left" class="content-header">{{ post.date | date: "%b %-d, %Y" }}</span>
-            -->
-            <p>{{post.url}}</p>
-        <h2 align="left">
-          <a class="post-link" href="{{ post.url | prepend: site.baseurl }}">{{ post.title }}</a>
-        </h2>
-      </li>
-    {% endfor %}
-  </ul>
-
-  <p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | prepend: site.baseurl }}">via RSS</a></p>
-          </div>
-        </div>
-      </div>
-      <!-- /container --> 
-      
-    </header>
-  </section>
-
-  
-    
-</main>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69dda1d6/docs/website/community/index.md
----------------------------------------------------------------------
diff --git a/docs/website/community/index.md b/docs/website/community/index.md
deleted file mode 100644
index a426f6c..0000000
--- a/docs/website/community/index.md
+++ /dev/null
@@ -1,65 +0,0 @@
----
-layout: default
-title: Community
----
-
-
-  <main id="main" >
-  <div class="container" >
-    <div id="zero" class=" main" >
-      <header style=" padding:2em 0 4em 0">
-        <div class="container" >
-          <h4 class="section-title"><span>Kylin Community</span></h4>
-          <div class="row" style="margin-top:-20px;">
-            <div class="col-sm-4 col-md-4">
-              <p class="big_text">EVENTS</p>
-
-
-
-
-              <p><a href="http://strataconf.com/big-data-conference-uk-2015/public/schedule/detail/40029" target="_blank">Strata+Hadoop World 2015, London </a> 
-              <br/>Date - Wednesday, May 6, 2015 <br/>
-              Kylin will be present at Strata+Hadooop World</p>
-
-              <p><a href="http://bdtc2014.hadooper.cn/m/zone/bdtc_2014" target="_blank">Big Data Technology Conference, Beijing </a> 
-              <br/>Date - Sunday, December 14, 2014 <br/>
-              Kylin be presented by Luke Han, Sr. Product Manager of Kylin</p>
-
-              <p><a href="http://www.meetup.com/Cloud-at-ebayinc/events/218914395/" target="_blank">Apache Kylin Meetup @Bay Area </a> 
-              <br/>6:00PM - 7:30PM, Thursday, December 4, 2014 <br/>
-               Learn about "Extreme OLAP engine for Hadoop - Kylin", which eBay recently Open sourced and is now an Apache Incubator Project</p>
-
-              <p><a href="http://2014ebay.csdn.net/m/zone/ebay_en/" target="_blank">Shanghai Big Data Summit 2014 </a> 
-              <br/>Date - October 25th, 2014 <br/>
-                Kylin be presented by Jiang Xu, Cheif Architect of Kylin<br/>
-                <a href="http://ebay.csdn.net/" target="_blank">Slides and Video</a></p>
-                  
-            </div>
-            
-            <div class="col-sm-4 col-md-4">
-              <p class="big_text">DISCUSSION</p>
-              <p>Developement and User maililng list: <a href="mailto:dev@kylin.incubator.apache.org" target="_blank"> dev@kylin.incubator.apache.org</a></p>
-              <p>Please subscribe by sending email to: <a href="mailto:dev-subscribe@kylin.incubator.apache.org" target="_blank">dev-subscribe@kylin.incubator.apache.org</a></p>              
-              <p>The official Kylin Twitter account: <a href="https://twitter.com/ApacheKylin" target="_blank"> @ApacheKylin</a></p>
-            </div>
-            <div class="col-sm-4 col-md-4">
-              <p class="big_text">DEVELOPMENT</p>
-              <p>All development takes place at : </p>
-              <p>Apache Git: <a href="git://git.apache.org/incubator-kylin.git" target="_blank">git://git.apache.org/incubator-kylin.git</a><br/>
-              Github Mirror: <a href="https://github.com/apache/incubator-kylin" target="_blank">https://github.com/apache/incubator-kylin</a></p>
-
-              <p>Issue tracking: <a href="https://issues.apache.org/jira/browse/KYLIN" target="_blank">Apache JIRA</a></p>
-            </div>
-          </div>
-        </div>
-        <!-- /container --> 
-        
-      </header>
-    </div>
-    <!-- / section --> 
-  </div>
-  <!-- /container -->
-  
-  </header>
-  </section>
-</main>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69dda1d6/docs/website/docs/index.md
----------------------------------------------------------------------
diff --git a/docs/website/docs/index.md b/docs/website/docs/index.md
deleted file mode 100644
index 599fd75..0000000
--- a/docs/website/docs/index.md
+++ /dev/null
@@ -1,91 +0,0 @@
----
-layout: default
-title: Docs
----
-  
-<main id="main" >
-  <div class="container" >
-    <div id="zero" class=" main" >
-      <header style=" padding:2em 0 4em 0">
-        <div class="container" >
-          <h4 class="section-title"><span>Kylin Docs</span></h4>
-
-         
-     <div id="content-container" class="animated fadeIn">
-       
-
-<p class="content-header" style="margin-top:0.25em">What should I use Kylin for?</p>
-<p class="content-p">
-If you want to do multi-dimension analysis on large data sets (billion+ rows) with low query latency (sub-seconds), Kylin is a good option. Kylin also provides good integration with existing BI tools (e.g Tableau).
-</p>
-
-<hr/>
- 
-<p class="content-header">Why existing SQL-on-Hadoop solutions fall short?</p>
-<p class="content-p">
-The existing SQL-on-Hadoop needs to scan partial or whole data set to answer a user query. Due to large data scan, many queries are very slow (minute+ latency).  
-</p>
-<hr/>
- 
-<p class="content-header">What is MOLAP/ROLAP?</p>
-<p class="content-p">
-MOLAP (Multi-dimensional OLAP) is to pre-compute data along different dimensions of interest and store resultant values in the cube. MOLAP is much faster but is inflexible.
-ROLAP (Relational-OLAP) is to use star or snow-flake schema to do runtime aggregation. ROLAP is flexible but much slower.
-</p>
-<hr/>
-
-<p class="content-header">How does Kylin support ROLAP/MOLAP?</p>
-<p class="content-p">
-Kylin builds data cube (MOLAP) from hive table (ROLAP) according to the metadata definition.
-If the query can be fulfilled by data cube, Kylin will route the query to data cube that is MOLAP.
-If the query can’t be fulfilled by data cube, Kylin will route the query to hive table that is ROLAP.
-Basically, you can think Kylin as HOLAP on top of MOLAP and ROLAP. 
-</p>
-<hr/>
-<p class="content-header">What does a Kylin query look like?</p>
-<p class="content-p">
-Kylin supports join, projection, filter, aggregation, groups and sub-query. For example:
-<div align="left">
-
-<pre class="prettyprint" style="margin-top:1em;">select test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name, sum(test_kylin_fact.price) as total_price, count(*) as total_count from test_kylin_fact left join test_cal_dt on test_kylin_fact.cal_dt = test_cal_dt.cal_dt left join test_category on test_kylin_fact.leaf_categ_id = test_category.leaf_categ_id and test_kylin_fact.site_id = test_category.site_id left join test_sites on test_kylin_fact.site_id = test_sites.site_id where test_kylin_fact.seller_id = 123456 or test_kylin_fact.format_name = 'New' group by test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name</pre>
-</div>
-<hr/>
-
-<p class="content-header">What Hadoop components does it work with?</p>
-<p class="content-p">
-Kylin depends on HDFS, MapReduce, Hive and HBase.
-Hive and MapReduce is used for cube building. Hive is used for pre-join and MapReduce is used for pre-aggregation.
-HDFS is used to store intermediated files during cube building.
-HBase is used to store data cube and answer the query. HBase coprocessor is also used for query processing.
-</p>
-<hr/>
-
-<!-- Migrate wiki to here 
-<p class="content-header">Where can I find the technical details about Kylin?</p>
-<p class="content-p"><a href="http://www.slideshare.net/XuJiang2/kylin-hadoop-olap-engine" target="_blank">Kylin Wiki</a></p>
-
--->
-
-     </div>
-         
-         </div><!--end of rightcontent-->
-         
-         </div><!--end of row-->
-        </div>
-        <!-- /container --> 
-        
-        
-        
-      </header>
-    </div>
-    <!-- / section --> 
-  </div>
-  <!-- /container -->
- 
-
-  
-
-      
-    </header>
-  </section>
-</main>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69dda1d6/docs/website/docs/installation-content.md
----------------------------------------------------------------------
diff --git a/docs/website/docs/installation-content.md b/docs/website/docs/installation-content.md
deleted file mode 100644
index 0a7f872..0000000
--- a/docs/website/docs/installation-content.md
+++ /dev/null
@@ -1,16 +0,0 @@
----
-layout: default
-title: Docs
----
-
-<p class="content-header" style="margin-top:0.25em">On Hadoop CLI installation</p>
-<p class="content-p">
-On-Hadoop-CLI installation is for demo use, or for those who want to host their own web site to provide Kylin service: <br/>
-<a href="https://github.com/KylinOLAP/Kylin/wiki/On-Hadoop-CLI-installation">On Hadoop CLI installation Wiki</a>
-</p>
-<br/>
-<p class="content-header" style="margin-top:0.25em">Off Hadoop CLI Installation</p>
-<p class="content-p">Off-Hadoop-CLI installation is usually for devlopment use, when developpers want to run kylin test cases or applications at their development machine: 
-<br/><a href="https://github.com/KylinOLAP/Kylin/wiki/Off-Hadoop-CLI-Installation">Off Hadoop CLI Installation Wiki</a>
-</p>
-

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69dda1d6/docs/website/docs/intro-content.md
----------------------------------------------------------------------
diff --git a/docs/website/docs/intro-content.md b/docs/website/docs/intro-content.md
deleted file mode 100644
index b1a9ad0..0000000
--- a/docs/website/docs/intro-content.md
+++ /dev/null
@@ -1,54 +0,0 @@
----
-layout: default
-title: Docs
----
-
-<p class="content-header" style="margin-top:0.25em">What should I use Kylin for?</p>
-<p class="content-p">
-If you want to do multi-dimension analysis on large data sets (billion+ rows) with low query latency (sub-seconds), Kylin is a good option. Kylin also provides good integration with existing BI tools (e.g Tableau).
-</p>
-
-<hr/>
- 
-<p class="content-header">Why existing SQL-on-Hadoop solutions fall short?</p>
-<p class="content-p">
-The existing SQL-on-Hadoop needs to scan partial or whole data set to answer a user query. Due to large data scan, many queries are very slow (minute+ latency).  
-</p>
-<hr/>
- 
-<p class="content-header">What is MOLAP/ROLAP?</p>
-<p class="content-p">
-MOLAP (Multi-dimensional OLAP) is to pre-compute data along different dimensions of interest and store resultant values in the cube. MOLAP is much faster but is inflexible.
-ROLAP (Relational-OLAP) is to use star or snow-flake schema to do runtime aggregation. ROLAP is flexible but much slower.
-</p>
-<hr/>
-
-<p class="content-header">How does Kylin support ROLAP/MOLAP?</p>
-<p class="content-p">
-Kylin builds data cube (MOLAP) from hive table (ROLAP) according to the metadata definition.
-If the query can be fulfilled by data cube, Kylin will route the query to data cube that is MOLAP.
-If the query can’t be fulfilled by data cube, Kylin will route the query to hive table that is ROLAP.
-Basically, you can think Kylin as HOLAP on top of MOLAP and ROLAP. 
-</p>
-<hr/>
-<p class="content-header">What does a Kylin query look like?</p>
-<p class="content-p">
-Kylin supports join, projection, filter, aggregation, groups and sub-query. For example:
-<div align="left">
-
-<pre class="prettyprint" style="margin-top:1em;">select test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name, sum(test_kylin_fact.price) as total_price, count(*) as total_count from test_kylin_fact left join test_cal_dt on test_kylin_fact.cal_dt = test_cal_dt.cal_dt left join test_category on test_kylin_fact.leaf_categ_id = test_category.leaf_categ_id and test_kylin_fact.site_id = test_category.site_id left join test_sites on test_kylin_fact.site_id = test_sites.site_id where test_kylin_fact.seller_id = 123456 or test_kylin_fact.format_name = 'New' group by test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name</pre>
-</div>
-<hr/>
-
-<p class="content-header">What Hadoop components does it work with?</p>
-<p class="content-p">
-Kylin depends on HDFS, MapReduce, Hive and HBase.
-Hive and MapReduce is used for cube building. Hive is used for pre-join and MapReduce is used for pre-aggregation.
-HDFS is used to store intermediated files during cube building.
-HBase is used to store data cube and answer the query. HBase coprocessor is also used for query processing.
-</p>
-<hr/>
-
-<p class="content-header">Where can I find the technical details about Kylin?</p>
-<p class="content-p"><a href="http://www.slideshare.net/XuJiang2/kylin-hadoop-olap-engine" target="_blank">Kylin OLAP</a></p>
-


[2/5] incubator-kylin git commit: update website structure and content

Posted by lu...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/docs/index.html
----------------------------------------------------------------------
diff --git a/docs/website/docs/index.html b/docs/website/docs/index.html
new file mode 100644
index 0000000..095d16a
--- /dev/null
+++ b/docs/website/docs/index.html
@@ -0,0 +1,108 @@
+---
+layout: docs
+title: Docs
+---
+
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+  
+<main id="main" >
+  <div class="container" >
+    <div id="zero" class=" main" >
+      <header style=" padding:2em 0 4em 0">
+        <div class="container" >
+
+         
+     <div id="content-container" class="animated fadeIn">
+       
+
+<p class="content-header" style="margin-top:0.25em">What should I use Kylin for?</p>
+<p class="content-p">
+If you want to do multi-dimension analysis on large data sets (billion+ rows) with low query latency (sub-seconds), Kylin is a good option. Kylin also provides good integration with existing BI tools (e.g Tableau).
+</p>
+
+<hr/>
+ 
+<p class="content-header">Why existing SQL-on-Hadoop solutions fall short?</p>
+<p class="content-p">
+The existing SQL-on-Hadoop needs to scan partial or whole data set to answer a user query. Due to large data scan, many queries are very slow (minute+ latency).  
+</p>
+<hr/>
+ 
+<p class="content-header">What is MOLAP/ROLAP?</p>
+<p class="content-p">
+MOLAP (Multi-dimensional OLAP) is to pre-compute data along different dimensions of interest and store resultant values in the cube. MOLAP is much faster but is inflexible.
+ROLAP (Relational-OLAP) is to use star or snow-flake schema to do runtime aggregation. ROLAP is flexible but much slower.
+</p>
+<hr/>
+
+<p class="content-header">How does Kylin support ROLAP/MOLAP?</p>
+<p class="content-p">
+Kylin builds data cube (MOLAP) from hive table (ROLAP) according to the metadata definition.
+If the query can be fulfilled by data cube, Kylin will route the query to data cube that is MOLAP.
+If the query can’t be fulfilled by data cube, Kylin will route the query to hive table that is ROLAP.
+Basically, you can think Kylin as HOLAP on top of MOLAP and ROLAP. 
+</p>
+<hr/>
+<p class="content-header">What does a Kylin query look like?</p>
+<p class="content-p">
+Kylin supports join, projection, filter, aggregation, groups and sub-query. For example:
+<div align="left">
+
+<pre class="prettyprint" style="margin-top:1em;">select test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name, sum(test_kylin_fact.price) as total_price, count(*) as total_count from test_kylin_fact left join test_cal_dt on test_kylin_fact.cal_dt = test_cal_dt.cal_dt left join test_category on test_kylin_fact.leaf_categ_id = test_category.leaf_categ_id and test_kylin_fact.site_id = test_category.site_id left join test_sites on test_kylin_fact.site_id = test_sites.site_id where test_kylin_fact.seller_id = 123456 or test_kylin_fact.format_name = 'New' group by test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name</pre>
+</div>
+<hr/>
+
+<p class="content-header">What Hadoop components does it work with?</p>
+<p class="content-p">
+Kylin depends on HDFS, MapReduce, Hive and HBase.
+Hive and MapReduce is used for cube building. Hive is used for pre-join and MapReduce is used for pre-aggregation.
+HDFS is used to store intermediated files during cube building.
+HBase is used to store data cube and answer the query. HBase coprocessor is also used for query processing.
+</p>
+<hr/>
+
+<!-- Migrate wiki to here 
+<p class="content-header">Where can I find the technical details about Kylin?</p>
+<p class="content-p"><a href="http://www.slideshare.net/XuJiang2/kylin-hadoop-olap-engine" target="_blank">Kylin Wiki</a></p>
+
+-->
+
+     </div>
+         
+         </div><!--end of rightcontent-->
+         
+         </div><!--end of row-->
+        </div>
+        <!-- /container --> 
+        
+        
+        
+      </header>
+    </div>
+    <!-- / section --> 
+  </div>
+  <!-- /container -->
+ 
+
+  
+
+      
+    </header>
+  </section>
+</main>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/docs/index.html~
----------------------------------------------------------------------
diff --git a/docs/website/docs/index.html~ b/docs/website/docs/index.html~
new file mode 100644
index 0000000..5a1f2e8
--- /dev/null
+++ b/docs/website/docs/index.html~
@@ -0,0 +1,109 @@
+---
+layout: docs
+title: Docs
+---
+
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+  
+<main id="main" >
+  <div class="container" >
+    <div id="zero" class=" main" >
+      <header style=" padding:2em 0 4em 0">
+        <div class="container" >
+          <h4 class="section-title"><span>Kylin Docs</span></h4>
+
+         
+     <div id="content-container" class="animated fadeIn">
+       
+
+<p class="content-header" style="margin-top:0.25em">What should I use Kylin for?</p>
+<p class="content-p">
+If you want to do multi-dimension analysis on large data sets (billion+ rows) with low query latency (sub-seconds), Kylin is a good option. Kylin also provides good integration with existing BI tools (e.g Tableau).
+</p>
+
+<hr/>
+ 
+<p class="content-header">Why existing SQL-on-Hadoop solutions fall short?</p>
+<p class="content-p">
+The existing SQL-on-Hadoop needs to scan partial or whole data set to answer a user query. Due to large data scan, many queries are very slow (minute+ latency).  
+</p>
+<hr/>
+ 
+<p class="content-header">What is MOLAP/ROLAP?</p>
+<p class="content-p">
+MOLAP (Multi-dimensional OLAP) is to pre-compute data along different dimensions of interest and store resultant values in the cube. MOLAP is much faster but is inflexible.
+ROLAP (Relational-OLAP) is to use star or snow-flake schema to do runtime aggregation. ROLAP is flexible but much slower.
+</p>
+<hr/>
+
+<p class="content-header">How does Kylin support ROLAP/MOLAP?</p>
+<p class="content-p">
+Kylin builds data cube (MOLAP) from hive table (ROLAP) according to the metadata definition.
+If the query can be fulfilled by data cube, Kylin will route the query to data cube that is MOLAP.
+If the query can’t be fulfilled by data cube, Kylin will route the query to hive table that is ROLAP.
+Basically, you can think Kylin as HOLAP on top of MOLAP and ROLAP. 
+</p>
+<hr/>
+<p class="content-header">What does a Kylin query look like?</p>
+<p class="content-p">
+Kylin supports join, projection, filter, aggregation, groups and sub-query. For example:
+<div align="left">
+
+<pre class="prettyprint" style="margin-top:1em;">select test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name, sum(test_kylin_fact.price) as total_price, count(*) as total_count from test_kylin_fact left join test_cal_dt on test_kylin_fact.cal_dt = test_cal_dt.cal_dt left join test_category on test_kylin_fact.leaf_categ_id = test_category.leaf_categ_id and test_kylin_fact.site_id = test_category.site_id left join test_sites on test_kylin_fact.site_id = test_sites.site_id where test_kylin_fact.seller_id = 123456 or test_kylin_fact.format_name = 'New' group by test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name</pre>
+</div>
+<hr/>
+
+<p class="content-header">What Hadoop components does it work with?</p>
+<p class="content-p">
+Kylin depends on HDFS, MapReduce, Hive and HBase.
+Hive and MapReduce is used for cube building. Hive is used for pre-join and MapReduce is used for pre-aggregation.
+HDFS is used to store intermediated files during cube building.
+HBase is used to store data cube and answer the query. HBase coprocessor is also used for query processing.
+</p>
+<hr/>
+
+<!-- Migrate wiki to here 
+<p class="content-header">Where can I find the technical details about Kylin?</p>
+<p class="content-p"><a href="http://www.slideshare.net/XuJiang2/kylin-hadoop-olap-engine" target="_blank">Kylin Wiki</a></p>
+
+-->
+
+     </div>
+         
+         </div><!--end of rightcontent-->
+         
+         </div><!--end of row-->
+        </div>
+        <!-- /container --> 
+        
+        
+        
+      </header>
+    </div>
+    <!-- / section --> 
+  </div>
+  <!-- /container -->
+ 
+
+  
+
+      
+    </header>
+  </section>
+</main>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/docs/installation-content.html
----------------------------------------------------------------------
diff --git a/docs/website/docs/installation-content.html b/docs/website/docs/installation-content.html
new file mode 100644
index 0000000..536f64d
--- /dev/null
+++ b/docs/website/docs/installation-content.html
@@ -0,0 +1,34 @@
+---
+layout: default
+title: Docs
+---
+
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+
+<p class="content-header" style="margin-top:0.25em">On Hadoop CLI installation</p>
+<p class="content-p">
+On-Hadoop-CLI installation is for demo use, or for those who want to host their own web site to provide Kylin service: <br/>
+<a href="https://github.com/KylinOLAP/Kylin/wiki/On-Hadoop-CLI-installation">On Hadoop CLI installation Wiki</a>
+</p>
+<br/>
+<p class="content-header" style="margin-top:0.25em">Off Hadoop CLI Installation</p>
+<p class="content-p">Off-Hadoop-CLI installation is usually for devlopment use, when developpers want to run kylin test cases or applications at their development machine: 
+<br/><a href="https://github.com/KylinOLAP/Kylin/wiki/Off-Hadoop-CLI-Installation">Off Hadoop CLI Installation Wiki</a>
+</p>
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/docs/installation-content.html~
----------------------------------------------------------------------
diff --git a/docs/website/docs/installation-content.html~ b/docs/website/docs/installation-content.html~
new file mode 100644
index 0000000..38ffdaf
--- /dev/null
+++ b/docs/website/docs/installation-content.html~
@@ -0,0 +1,34 @@
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+
+---
+layout: default
+title: Docs
+---
+
+<p class="content-header" style="margin-top:0.25em">On Hadoop CLI installation</p>
+<p class="content-p">
+On-Hadoop-CLI installation is for demo use, or for those who want to host their own web site to provide Kylin service: <br/>
+<a href="https://github.com/KylinOLAP/Kylin/wiki/On-Hadoop-CLI-installation">On Hadoop CLI installation Wiki</a>
+</p>
+<br/>
+<p class="content-header" style="margin-top:0.25em">Off Hadoop CLI Installation</p>
+<p class="content-p">Off-Hadoop-CLI installation is usually for devlopment use, when developpers want to run kylin test cases or applications at their development machine: 
+<br/><a href="https://github.com/KylinOLAP/Kylin/wiki/Off-Hadoop-CLI-Installation">Off Hadoop CLI Installation Wiki</a>
+</p>
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/docs/intro-content.html
----------------------------------------------------------------------
diff --git a/docs/website/docs/intro-content.html b/docs/website/docs/intro-content.html
new file mode 100644
index 0000000..34d759f
--- /dev/null
+++ b/docs/website/docs/intro-content.html
@@ -0,0 +1,72 @@
+---
+layout: default
+title: Docs
+---
+
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+
+<p class="content-header" style="margin-top:0.25em">What should I use Kylin for?</p>
+<p class="content-p">
+If you want to do multi-dimension analysis on large data sets (billion+ rows) with low query latency (sub-seconds), Kylin is a good option. Kylin also provides good integration with existing BI tools (e.g Tableau).
+</p>
+
+<hr/>
+ 
+<p class="content-header">Why existing SQL-on-Hadoop solutions fall short?</p>
+<p class="content-p">
+The existing SQL-on-Hadoop needs to scan partial or whole data set to answer a user query. Due to large data scan, many queries are very slow (minute+ latency).  
+</p>
+<hr/>
+ 
+<p class="content-header">What is MOLAP/ROLAP?</p>
+<p class="content-p">
+MOLAP (Multi-dimensional OLAP) is to pre-compute data along different dimensions of interest and store resultant values in the cube. MOLAP is much faster but is inflexible.
+ROLAP (Relational-OLAP) is to use star or snow-flake schema to do runtime aggregation. ROLAP is flexible but much slower.
+</p>
+<hr/>
+
+<p class="content-header">How does Kylin support ROLAP/MOLAP?</p>
+<p class="content-p">
+Kylin builds data cube (MOLAP) from hive table (ROLAP) according to the metadata definition.
+If the query can be fulfilled by data cube, Kylin will route the query to data cube that is MOLAP.
+If the query can’t be fulfilled by data cube, Kylin will route the query to hive table that is ROLAP.
+Basically, you can think Kylin as HOLAP on top of MOLAP and ROLAP. 
+</p>
+<hr/>
+<p class="content-header">What does a Kylin query look like?</p>
+<p class="content-p">
+Kylin supports join, projection, filter, aggregation, groups and sub-query. For example:
+<div align="left">
+
+<pre class="prettyprint" style="margin-top:1em;">select test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name, sum(test_kylin_fact.price) as total_price, count(*) as total_count from test_kylin_fact left join test_cal_dt on test_kylin_fact.cal_dt = test_cal_dt.cal_dt left join test_category on test_kylin_fact.leaf_categ_id = test_category.leaf_categ_id and test_kylin_fact.site_id = test_category.site_id left join test_sites on test_kylin_fact.site_id = test_sites.site_id where test_kylin_fact.seller_id = 123456 or test_kylin_fact.format_name = 'New' group by test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name</pre>
+</div>
+<hr/>
+
+<p class="content-header">What Hadoop components does it work with?</p>
+<p class="content-p">
+Kylin depends on HDFS, MapReduce, Hive and HBase.
+Hive and MapReduce is used for cube building. Hive is used for pre-join and MapReduce is used for pre-aggregation.
+HDFS is used to store intermediated files during cube building.
+HBase is used to store data cube and answer the query. HBase coprocessor is also used for query processing.
+</p>
+<hr/>
+
+<p class="content-header">Where can I find the technical details about Kylin?</p>
+<p class="content-p"><a href="http://www.slideshare.net/XuJiang2/kylin-hadoop-olap-engine" target="_blank">Kylin OLAP</a></p>
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/docs/intro-content.html~
----------------------------------------------------------------------
diff --git a/docs/website/docs/intro-content.html~ b/docs/website/docs/intro-content.html~
new file mode 100644
index 0000000..0c96388
--- /dev/null
+++ b/docs/website/docs/intro-content.html~
@@ -0,0 +1,72 @@
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+
+---
+layout: default
+title: Docs
+---
+
+<p class="content-header" style="margin-top:0.25em">What should I use Kylin for?</p>
+<p class="content-p">
+If you want to do multi-dimension analysis on large data sets (billion+ rows) with low query latency (sub-seconds), Kylin is a good option. Kylin also provides good integration with existing BI tools (e.g Tableau).
+</p>
+
+<hr/>
+ 
+<p class="content-header">Why existing SQL-on-Hadoop solutions fall short?</p>
+<p class="content-p">
+The existing SQL-on-Hadoop needs to scan partial or whole data set to answer a user query. Due to large data scan, many queries are very slow (minute+ latency).  
+</p>
+<hr/>
+ 
+<p class="content-header">What is MOLAP/ROLAP?</p>
+<p class="content-p">
+MOLAP (Multi-dimensional OLAP) is to pre-compute data along different dimensions of interest and store resultant values in the cube. MOLAP is much faster but is inflexible.
+ROLAP (Relational-OLAP) is to use star or snow-flake schema to do runtime aggregation. ROLAP is flexible but much slower.
+</p>
+<hr/>
+
+<p class="content-header">How does Kylin support ROLAP/MOLAP?</p>
+<p class="content-p">
+Kylin builds data cube (MOLAP) from hive table (ROLAP) according to the metadata definition.
+If the query can be fulfilled by data cube, Kylin will route the query to data cube that is MOLAP.
+If the query can’t be fulfilled by data cube, Kylin will route the query to hive table that is ROLAP.
+Basically, you can think Kylin as HOLAP on top of MOLAP and ROLAP. 
+</p>
+<hr/>
+<p class="content-header">What does a Kylin query look like?</p>
+<p class="content-p">
+Kylin supports join, projection, filter, aggregation, groups and sub-query. For example:
+<div align="left">
+
+<pre class="prettyprint" style="margin-top:1em;">select test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name, sum(test_kylin_fact.price) as total_price, count(*) as total_count from test_kylin_fact left join test_cal_dt on test_kylin_fact.cal_dt = test_cal_dt.cal_dt left join test_category on test_kylin_fact.leaf_categ_id = test_category.leaf_categ_id and test_kylin_fact.site_id = test_category.site_id left join test_sites on test_kylin_fact.site_id = test_sites.site_id where test_kylin_fact.seller_id = 123456 or test_kylin_fact.format_name = 'New' group by test_cal_dt.week_beg_dt, test_category.lv1_categ, test_category.lv2_categ, test_kylin_fact.format_name, test_sites.site_name</pre>
+</div>
+<hr/>
+
+<p class="content-header">What Hadoop components does it work with?</p>
+<p class="content-p">
+Kylin depends on HDFS, MapReduce, Hive and HBase.
+Hive and MapReduce is used for cube building. Hive is used for pre-join and MapReduce is used for pre-aggregation.
+HDFS is used to store intermediated files during cube building.
+HBase is used to store data cube and answer the query. HBase coprocessor is also used for query processing.
+</p>
+<hr/>
+
+<p class="content-header">Where can I find the technical details about Kylin?</p>
+<p class="content-p"><a href="http://www.slideshare.net/XuJiang2/kylin-hadoop-olap-engine" target="_blank">Kylin OLAP</a></p>
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/1 action-build.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/1 action-build.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/1 action-build.png
new file mode 100644
index 0000000..136b3de
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/1 action-build.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/2 pop-up.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/2 pop-up.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/2 pop-up.png
new file mode 100644
index 0000000..8bae515
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/2 pop-up.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/3 end-date.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/3 end-date.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/3 end-date.png
new file mode 100644
index 0000000..e102bd8
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/3 end-date.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/4 submit.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/4 submit.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/4 submit.png
new file mode 100644
index 0000000..3dc0c7e
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/4 submit.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/4.1 success.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/4.1 success.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/4.1 success.png
new file mode 100644
index 0000000..00a944c
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/4.1 success.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/5 jobs-page.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/5 jobs-page.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/5 jobs-page.png
new file mode 100644
index 0000000..175d231
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/5 jobs-page.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/6 discard.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/6 discard.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/6 discard.png
new file mode 100644
index 0000000..792d1b6
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/6 discard.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/7 job-steps.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/7 job-steps.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/7 job-steps.png
new file mode 100644
index 0000000..664b097
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/7 job-steps.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/8 hover-step.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/8 hover-step.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/8 hover-step.png
new file mode 100644
index 0000000..ffd6750
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/8 hover-step.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 log-d.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 log-d.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 log-d.png
new file mode 100644
index 0000000..dae85c9
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 log-d.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 log.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 log.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 log.png
new file mode 100644
index 0000000..b844ad4
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 log.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 mrjob-d.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 mrjob-d.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 mrjob-d.png
new file mode 100644
index 0000000..e57ae2e
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 mrjob-d.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 mrjob.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 mrjob.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 mrjob.png
new file mode 100644
index 0000000..2621695
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 mrjob.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 parameters-d.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 parameters-d.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 parameters-d.png
new file mode 100644
index 0000000..f4fd6d4
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 parameters-d.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 parameters.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 parameters.png b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 parameters.png
new file mode 100644
index 0000000..1b6053f
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 parameters.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/1 manage-prject.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/1 manage-prject.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/1 manage-prject.png
new file mode 100644
index 0000000..0127f7a
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/1 manage-prject.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/10 filter.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/10 filter.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/10 filter.png
new file mode 100644
index 0000000..6ae086b
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/10 filter.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/11 refresh-setting1.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/11 refresh-setting1.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/11 refresh-setting1.png
new file mode 100644
index 0000000..5fedf87
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/11 refresh-setting1.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/11 refresh-setting2.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/11 refresh-setting2.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/11 refresh-setting2.png
new file mode 100644
index 0000000..8f2dd0e
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/11 refresh-setting2.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/12 advanced.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/12 advanced.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/12 advanced.png
new file mode 100644
index 0000000..7663ac3
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/12 advanced.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/13 overview.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/13 overview.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/13 overview.png
new file mode 100644
index 0000000..a86c269
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/13 overview.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/2 +project.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/2 +project.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/2 +project.png
new file mode 100644
index 0000000..8b36313
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/2 +project.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/3 new-project.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/3 new-project.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/3 new-project.png
new file mode 100644
index 0000000..dcb574b
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/3 new-project.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/3.1 pj-created.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/3.1 pj-created.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/3.1 pj-created.png
new file mode 100644
index 0000000..aabaea8
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/3.1 pj-created.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/4 +table.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/4 +table.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/4 +table.png
new file mode 100644
index 0000000..5e8d896
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/4 +table.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/5 hive-table.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/5 hive-table.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/5 hive-table.png
new file mode 100644
index 0000000..7b4d67a
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/5 hive-table.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/6 +cube.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/6 +cube.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/6 +cube.png
new file mode 100644
index 0000000..b5e3cc9
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/6 +cube.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/7 cube-info.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/7 cube-info.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/7 cube-info.png
new file mode 100644
index 0000000..51bbc0e
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/7 cube-info.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-+dim.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-+dim.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-+dim.png
new file mode 100644
index 0000000..f4b835e
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-+dim.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-edit.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-edit.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-edit.png
new file mode 100644
index 0000000..6fe3846
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-edit.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-factable.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-factable.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-factable.png
new file mode 100644
index 0000000..6994f11
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-factable.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeA.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeA.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeA.png
new file mode 100644
index 0000000..f7c042f
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeA.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeB-1.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeB-1.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeB-1.png
new file mode 100644
index 0000000..bb19bb9
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeB-1.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeB-2.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeB-2.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeB-2.png
new file mode 100644
index 0000000..95f80b6
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeB-2.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeC.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeC.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeC.png
new file mode 100644
index 0000000..1bf1c93
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeC.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeD.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeD.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeD.png
new file mode 100644
index 0000000..430f0fb
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/8 dim-typeD.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-+meas.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-+meas.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-+meas.png
new file mode 100644
index 0000000..8c0ab35
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-+meas.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-count.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-count.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-count.png
new file mode 100644
index 0000000..af24812
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-count.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-distinct.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-distinct.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-distinct.png
new file mode 100644
index 0000000..6772d03
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-distinct.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-max.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-max.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-max.png
new file mode 100644
index 0000000..9c8e599
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-max.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-min.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-min.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-min.png
new file mode 100644
index 0000000..6ddab38
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-min.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-sum.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-sum.png b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-sum.png
new file mode 100644
index 0000000..09cfbab
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Creation-Tutorial/9 meas-sum.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/14 +grant.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/14 +grant.png b/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/14 +grant.png
new file mode 100644
index 0000000..ad65a01
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/14 +grant.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/15 grantInfo.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/15 grantInfo.png b/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/15 grantInfo.png
new file mode 100644
index 0000000..1a393d6
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/15 grantInfo.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/16 grant-user.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/16 grant-user.png b/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/16 grant-user.png
new file mode 100644
index 0000000..5bcc2ff
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/16 grant-user.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/16 user-update.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/16 user-update.png b/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/16 user-update.png
new file mode 100644
index 0000000..98ea4d3
Binary files /dev/null and b/docs/website/images/Kylin-Cube-Permission-Grant-Tutorial/16 user-update.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/1 login.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/1 login.png b/docs/website/images/Kylin-Web-Tutorial/1 login.png
new file mode 100644
index 0000000..8356341
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/1 login.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/10 query-result.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/10 query-result.png b/docs/website/images/Kylin-Web-Tutorial/10 query-result.png
new file mode 100644
index 0000000..7445314
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/10 query-result.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/11 save-query-2.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/11 save-query-2.png b/docs/website/images/Kylin-Web-Tutorial/11 save-query-2.png
new file mode 100644
index 0000000..5ce14d5
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/11 save-query-2.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/11 save-query.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/11 save-query.png b/docs/website/images/Kylin-Web-Tutorial/11 save-query.png
new file mode 100644
index 0000000..ab63aa7
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/11 save-query.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/12 general.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/12 general.png b/docs/website/images/Kylin-Web-Tutorial/12 general.png
new file mode 100644
index 0000000..090df22
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/12 general.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/13 results.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/13 results.png b/docs/website/images/Kylin-Web-Tutorial/13 results.png
new file mode 100644
index 0000000..cc17841
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/13 results.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/14 drag.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/14 drag.png b/docs/website/images/Kylin-Web-Tutorial/14 drag.png
new file mode 100644
index 0000000..e1b889e
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/14 drag.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/15 bar-chart.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/15 bar-chart.png b/docs/website/images/Kylin-Web-Tutorial/15 bar-chart.png
new file mode 100644
index 0000000..dc7a75d
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/15 bar-chart.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/16 pie-chart.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/16 pie-chart.png b/docs/website/images/Kylin-Web-Tutorial/16 pie-chart.png
new file mode 100644
index 0000000..d66dced
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/16 pie-chart.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/17 line-chart.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/17 line-chart.png b/docs/website/images/Kylin-Web-Tutorial/17 line-chart.png
new file mode 100644
index 0000000..12d1696
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/17 line-chart.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/2 tables.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/2 tables.png b/docs/website/images/Kylin-Web-Tutorial/2 tables.png
new file mode 100644
index 0000000..b7fd530
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/2 tables.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/3 cubes.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/3 cubes.png b/docs/website/images/Kylin-Web-Tutorial/3 cubes.png
new file mode 100644
index 0000000..34eee2e
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/3 cubes.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/4 form-view.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/4 form-view.png b/docs/website/images/Kylin-Web-Tutorial/4 form-view.png
new file mode 100644
index 0000000..ab5cbd1
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/4 form-view.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/5 sql-view.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/5 sql-view.png b/docs/website/images/Kylin-Web-Tutorial/5 sql-view.png
new file mode 100644
index 0000000..69a4cc6
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/5 sql-view.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/6 visualization.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/6 visualization.png b/docs/website/images/Kylin-Web-Tutorial/6 visualization.png
new file mode 100644
index 0000000..745f2d8
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/6 visualization.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/7 access.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/7 access.png b/docs/website/images/Kylin-Web-Tutorial/7 access.png
new file mode 100644
index 0000000..9db1da8
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/7 access.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/7 job-steps.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/7 job-steps.png b/docs/website/images/Kylin-Web-Tutorial/7 job-steps.png
new file mode 100644
index 0000000..664b097
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/7 job-steps.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/8 query.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/8 query.png b/docs/website/images/Kylin-Web-Tutorial/8 query.png
new file mode 100644
index 0000000..f30889e
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/8 query.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-Web-Tutorial/9 query-table.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-Web-Tutorial/9 query-table.png b/docs/website/images/Kylin-Web-Tutorial/9 query-table.png
new file mode 100644
index 0000000..1fecda4
Binary files /dev/null and b/docs/website/images/Kylin-Web-Tutorial/9 query-table.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/1 odbc.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/1 odbc.png b/docs/website/images/Kylin-and-Tableau-Tutorial/1 odbc.png
new file mode 100644
index 0000000..1a9988a
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/1 odbc.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/10 connectLive.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/10 connectLive.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/10 connectLive.jpg
new file mode 100644
index 0000000..d28fa06
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/10 connectLive.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/11 analysis.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/11 analysis.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/11 analysis.jpg
new file mode 100644
index 0000000..53bf70d
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/11 analysis.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/12 edit tables.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/12 edit tables.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/12 edit tables.jpg
new file mode 100644
index 0000000..bb7d4c6
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/12 edit tables.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/13 visual.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/13 visual.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/13 visual.jpg
new file mode 100644
index 0000000..74930ce
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/13 visual.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/14 publish.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/14 publish.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/14 publish.jpg
new file mode 100644
index 0000000..b118966
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/14 publish.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/16 prepare-publish.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/16 prepare-publish.png b/docs/website/images/Kylin-and-Tableau-Tutorial/16 prepare-publish.png
new file mode 100644
index 0000000..8a99ab6
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/16 prepare-publish.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/17 embedded-pwd.png
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/17 embedded-pwd.png b/docs/website/images/Kylin-and-Tableau-Tutorial/17 embedded-pwd.png
new file mode 100644
index 0000000..3f9227b
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/17 embedded-pwd.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/18 groupby-folder.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/18 groupby-folder.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/18 groupby-folder.jpg
new file mode 100644
index 0000000..3e4b246
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/18 groupby-folder.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/19 custom.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/19 custom.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/19 custom.jpg
new file mode 100644
index 0000000..93e058d
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/19 custom.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/2 serverhost.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/2 serverhost.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/2 serverhost.jpg
new file mode 100644
index 0000000..f06755f
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/2 serverhost.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/3 project.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/3 project.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/3 project.jpg
new file mode 100644
index 0000000..b127a3d
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/3 project.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/4 done.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/4 done.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/4 done.jpg
new file mode 100644
index 0000000..1777013
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/4 done.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/5 multipleTable.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/5 multipleTable.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/5 multipleTable.jpg
new file mode 100644
index 0000000..9e13460
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/5 multipleTable.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/6 facttable.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/6 facttable.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/6 facttable.jpg
new file mode 100644
index 0000000..f08ab52
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/6 facttable.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/6 facttable2.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/6 facttable2.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/6 facttable2.jpg
new file mode 100644
index 0000000..509d46b
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/6 facttable2.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/7 lkptable.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/7 lkptable.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/7 lkptable.jpg
new file mode 100644
index 0000000..cd4aad6
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/7 lkptable.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/8 join.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/8 join.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/8 join.jpg
new file mode 100644
index 0000000..05f7780
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/8 join.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/Kylin-and-Tableau-Tutorial/9 connName.jpg
----------------------------------------------------------------------
diff --git a/docs/website/images/Kylin-and-Tableau-Tutorial/9 connName.jpg b/docs/website/images/Kylin-and-Tableau-Tutorial/9 connName.jpg
new file mode 100644
index 0000000..5c816d3
Binary files /dev/null and b/docs/website/images/Kylin-and-Tableau-Tutorial/9 connName.jpg differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/On-Hadoop-CLI-installation/Picture1.png
----------------------------------------------------------------------
diff --git a/docs/website/images/On-Hadoop-CLI-installation/Picture1.png b/docs/website/images/On-Hadoop-CLI-installation/Picture1.png
new file mode 100644
index 0000000..5b07d25
Binary files /dev/null and b/docs/website/images/On-Hadoop-CLI-installation/Picture1.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/On-Hadoop-CLI-installation/Picture2.png
----------------------------------------------------------------------
diff --git a/docs/website/images/On-Hadoop-CLI-installation/Picture2.png b/docs/website/images/On-Hadoop-CLI-installation/Picture2.png
new file mode 100644
index 0000000..26e9e4f
Binary files /dev/null and b/docs/website/images/On-Hadoop-CLI-installation/Picture2.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/On-Hadoop-CLI-installation/cube.png
----------------------------------------------------------------------
diff --git a/docs/website/images/On-Hadoop-CLI-installation/cube.png b/docs/website/images/On-Hadoop-CLI-installation/cube.png
new file mode 100644
index 0000000..bb84b58
Binary files /dev/null and b/docs/website/images/On-Hadoop-CLI-installation/cube.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/On-Hadoop-CLI-installation/installation.pptx
----------------------------------------------------------------------
diff --git a/docs/website/images/On-Hadoop-CLI-installation/installation.pptx b/docs/website/images/On-Hadoop-CLI-installation/installation.pptx
new file mode 100644
index 0000000..548d276
Binary files /dev/null and b/docs/website/images/On-Hadoop-CLI-installation/installation.pptx differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/On-Hadoop-CLI-installation/job.png
----------------------------------------------------------------------
diff --git a/docs/website/images/On-Hadoop-CLI-installation/job.png b/docs/website/images/On-Hadoop-CLI-installation/job.png
new file mode 100644
index 0000000..0ff57f8
Binary files /dev/null and b/docs/website/images/On-Hadoop-CLI-installation/job.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/On-Hadoop-CLI-installation/query.png
----------------------------------------------------------------------
diff --git a/docs/website/images/On-Hadoop-CLI-installation/query.png b/docs/website/images/On-Hadoop-CLI-installation/query.png
new file mode 100644
index 0000000..dd30e27
Binary files /dev/null and b/docs/website/images/On-Hadoop-CLI-installation/query.png differ

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/images/On-Hadoop-CLI-installation/starthbase.png
----------------------------------------------------------------------
diff --git a/docs/website/images/On-Hadoop-CLI-installation/starthbase.png b/docs/website/images/On-Hadoop-CLI-installation/starthbase.png
new file mode 100644
index 0000000..ca5e825
Binary files /dev/null and b/docs/website/images/On-Hadoop-CLI-installation/starthbase.png differ


[5/5] incubator-kylin git commit: update website structure and content

Posted by lu...@apache.org.
update website structure and content

Signed-off-by: Luke Han <lu...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/d1b8e50f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/d1b8e50f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/d1b8e50f

Branch: refs/heads/0.7.1-staging
Commit: d1b8e50f064ee214f41a3e628abb018a9a9dd6e6
Parents: 69dda1d
Author: Luwei Chen <ch...@hotmail.com>
Authored: Wed May 27 18:18:28 2015 +0800
Committer: Luke Han <lu...@apache.org>
Committed: Wed May 27 18:51:02 2015 +0800

----------------------------------------------------------------------
 docs/website/_includes/navside.html             |   92 +
 docs/website/_layouts/docs.html                 |   48 +
 .../2014-12-31-Build-Cube-with-Restful-API.md   |   57 +
 .../API/2015-03-18-Restful-Service-Doc.md       | 2042 ++++++++++++++++++
 ...05-18-FAQ-on-Kylin-Installation-and-Usage.md |   46 +
 .../2014-10-23-Kylin-web-front-end-summary.md   |   47 +
 .../How to/2014-10-24-How-to-Contribute.md      |   52 +
 ...w to install kylin in your Hadoop cluster.md |   54 +
 .../2014-12-09-New-meta-data-model-structure.md |   31 +
 ...n-Kylin-test-case-with-HBase-Mini-Cluster.md |   23 +
 ...w-to-consume-Kylin-REST-API-in-javascript.md |   49 +
 .../How to/2015-03-05-Kylin-Metadata-Store.md   |   47 +
 ...03-18-How-to-use-kylin-remote-jdbc-driver.md |   93 +
 .../2015-05-18-Export-Kylin-HBase-data.md       |   25 +
 ...On-Hadoop-Kylin-installation-using-Docker.md |   44 +
 ...-22-Advance-settings-of-Kylin-environment.md |   37 +
 ...015-01-22-Kylin-Manual-Installation-Guide.md |   62 +
 ...f-Hadoop-CLI-Installation-(Dev-Env-Setup).md |   96 +
 .../2015-03-13-On-Hadoop-CLI-installation.md    |  149 ++
 .../2014-11-05-Kylin-Cube-Creation-Tutorial.md  |  127 ++
 .../2014-11-05-Kylin-ODBC-Driver-Tutorial.md    |   34 +
 ...in-Cube-Build-and-Job-Monitoring-Tutorial.md |   65 +
 ...1-11-Kylin-Cube-Permission-Grant-Tutorial.md |   32 +
 .../Tutorial/2015-04-17-Kylin-Web-Tutorial.md   |  138 ++
 .../2015-04-17-Kylin-and-Tableau-Tutorial.md    |  113 +
 docs/website/_posts/Tutorial/2015-05-25-test~   |   28 +
 .../blog/2015-01-25-introduce-data-model.md     |   40 +
 docs/website/assets/css/docs.css                |  106 +
 docs/website/assets/css/pygments.css            |   61 +
 docs/website/blog/index.html                    |   64 +
 docs/website/blog/index.html~                   |   64 +
 docs/website/blog/index.md~                     |   43 +
 docs/website/community/index.html               |   83 +
 docs/website/community/index.html~              |   83 +
 docs/website/docs/index.html                    |  108 +
 docs/website/docs/index.html~                   |  109 +
 docs/website/docs/installation-content.html     |   34 +
 docs/website/docs/installation-content.html~    |   34 +
 docs/website/docs/intro-content.html            |   72 +
 docs/website/docs/intro-content.html~           |   72 +
 .../1 action-build.png                          |  Bin 0 -> 93893 bytes
 .../2 pop-up.png                                |  Bin 0 -> 40055 bytes
 .../3 end-date.png                              |  Bin 0 -> 66610 bytes
 .../4 submit.png                                |  Bin 0 -> 36292 bytes
 .../4.1 success.png                             |  Bin 0 -> 14426 bytes
 .../5 jobs-page.png                             |  Bin 0 -> 96398 bytes
 .../6 discard.png                               |  Bin 0 -> 55747 bytes
 .../7 job-steps.png                             |  Bin 0 -> 157315 bytes
 .../8 hover-step.png                            |  Bin 0 -> 90405 bytes
 .../9 log-d.png                                 |  Bin 0 -> 85634 bytes
 .../9 log.png                                   |  Bin 0 -> 42840 bytes
 .../9 mrjob-d.png                               |  Bin 0 -> 197651 bytes
 .../9 mrjob.png                                 |  Bin 0 -> 43079 bytes
 .../9 parameters-d.png                          |  Bin 0 -> 102501 bytes
 .../9 parameters.png                            |  Bin 0 -> 43674 bytes
 .../1 manage-prject.png                         |  Bin 0 -> 44662 bytes
 .../Kylin-Cube-Creation-Tutorial/10 filter.png  |  Bin 0 -> 71620 bytes
 .../11 refresh-setting1.png                     |  Bin 0 -> 125565 bytes
 .../11 refresh-setting2.png                     |  Bin 0 -> 94895 bytes
 .../12 advanced.png                             |  Bin 0 -> 63237 bytes
 .../13 overview.png                             |  Bin 0 -> 59024 bytes
 .../Kylin-Cube-Creation-Tutorial/2 +project.png |  Bin 0 -> 57637 bytes
 .../3 new-project.png                           |  Bin 0 -> 35511 bytes
 .../3.1 pj-created.png                          |  Bin 0 -> 13207 bytes
 .../Kylin-Cube-Creation-Tutorial/4 +table.png   |  Bin 0 -> 58675 bytes
 .../5 hive-table.png                            |  Bin 0 -> 29548 bytes
 .../Kylin-Cube-Creation-Tutorial/6 +cube.png    |  Bin 0 -> 79558 bytes
 .../7 cube-info.png                             |  Bin 0 -> 159724 bytes
 .../Kylin-Cube-Creation-Tutorial/8 dim-+dim.png |  Bin 0 -> 56207 bytes
 .../Kylin-Cube-Creation-Tutorial/8 dim-edit.png |  Bin 0 -> 95337 bytes
 .../8 dim-factable.png                          |  Bin 0 -> 68022 bytes
 .../8 dim-typeA.png                             |  Bin 0 -> 61561 bytes
 .../8 dim-typeB-1.png                           |  Bin 0 -> 54939 bytes
 .../8 dim-typeB-2.png                           |  Bin 0 -> 50999 bytes
 .../8 dim-typeC.png                             |  Bin 0 -> 62033 bytes
 .../8 dim-typeD.png                             |  Bin 0 -> 54444 bytes
 .../9 meas-+meas.png                            |  Bin 0 -> 49541 bytes
 .../9 meas-count.png                            |  Bin 0 -> 49857 bytes
 .../9 meas-distinct.png                         |  Bin 0 -> 57420 bytes
 .../Kylin-Cube-Creation-Tutorial/9 meas-max.png |  Bin 0 -> 51820 bytes
 .../Kylin-Cube-Creation-Tutorial/9 meas-min.png |  Bin 0 -> 47379 bytes
 .../Kylin-Cube-Creation-Tutorial/9 meas-sum.png |  Bin 0 -> 44017 bytes
 .../14 +grant.png                               |  Bin 0 -> 96078 bytes
 .../15 grantInfo.png                            |  Bin 0 -> 131013 bytes
 .../16 grant-user.png                           |  Bin 0 -> 70868 bytes
 .../16 user-update.png                          |  Bin 0 -> 74230 bytes
 .../images/Kylin-Web-Tutorial/1 login.png       |  Bin 0 -> 19030 bytes
 .../Kylin-Web-Tutorial/10 query-result.png      |  Bin 0 -> 229099 bytes
 .../Kylin-Web-Tutorial/11 save-query-2.png      |  Bin 0 -> 217907 bytes
 .../images/Kylin-Web-Tutorial/11 save-query.png |  Bin 0 -> 29373 bytes
 .../images/Kylin-Web-Tutorial/12 general.png    |  Bin 0 -> 32194 bytes
 .../images/Kylin-Web-Tutorial/13 results.png    |  Bin 0 -> 77124 bytes
 .../images/Kylin-Web-Tutorial/14 drag.png       |  Bin 0 -> 81057 bytes
 .../images/Kylin-Web-Tutorial/15 bar-chart.png  |  Bin 0 -> 79660 bytes
 .../images/Kylin-Web-Tutorial/16 pie-chart.png  |  Bin 0 -> 91917 bytes
 .../images/Kylin-Web-Tutorial/17 line-chart.png |  Bin 0 -> 83227 bytes
 .../images/Kylin-Web-Tutorial/2 tables.png      |  Bin 0 -> 131629 bytes
 .../images/Kylin-Web-Tutorial/3 cubes.png       |  Bin 0 -> 106631 bytes
 .../images/Kylin-Web-Tutorial/4 form-view.png   |  Bin 0 -> 106172 bytes
 .../images/Kylin-Web-Tutorial/5 sql-view.png    |  Bin 0 -> 111612 bytes
 .../Kylin-Web-Tutorial/6 visualization.png      |  Bin 0 -> 73256 bytes
 .../images/Kylin-Web-Tutorial/7 access.png      |  Bin 0 -> 63248 bytes
 .../images/Kylin-Web-Tutorial/7 job-steps.png   |  Bin 0 -> 157315 bytes
 .../images/Kylin-Web-Tutorial/8 query.png       |  Bin 0 -> 86323 bytes
 .../images/Kylin-Web-Tutorial/9 query-table.png |  Bin 0 -> 106686 bytes
 .../Kylin-and-Tableau-Tutorial/1 odbc.png       |  Bin 0 -> 77143 bytes
 .../10 connectLive.jpg                          |  Bin 0 -> 36887 bytes
 .../Kylin-and-Tableau-Tutorial/11 analysis.jpg  |  Bin 0 -> 109334 bytes
 .../12 edit tables.jpg                          |  Bin 0 -> 87229 bytes
 .../Kylin-and-Tableau-Tutorial/13 visual.jpg    |  Bin 0 -> 170415 bytes
 .../Kylin-and-Tableau-Tutorial/14 publish.jpg   |  Bin 0 -> 93989 bytes
 .../16 prepare-publish.png                      |  Bin 0 -> 19791 bytes
 .../17 embedded-pwd.png                         |  Bin 0 -> 12464 bytes
 .../18 groupby-folder.jpg                       |  Bin 0 -> 112470 bytes
 .../Kylin-and-Tableau-Tutorial/19 custom.jpg    |  Bin 0 -> 57976 bytes
 .../Kylin-and-Tableau-Tutorial/2 serverhost.jpg |  Bin 0 -> 50146 bytes
 .../Kylin-and-Tableau-Tutorial/3 project.jpg    |  Bin 0 -> 50594 bytes
 .../Kylin-and-Tableau-Tutorial/4 done.jpg       |  Bin 0 -> 48155 bytes
 .../5 multipleTable.jpg                         |  Bin 0 -> 65831 bytes
 .../Kylin-and-Tableau-Tutorial/6 facttable.jpg  |  Bin 0 -> 58203 bytes
 .../Kylin-and-Tableau-Tutorial/6 facttable2.jpg |  Bin 0 -> 58269 bytes
 .../Kylin-and-Tableau-Tutorial/7 lkptable.jpg   |  Bin 0 -> 61669 bytes
 .../Kylin-and-Tableau-Tutorial/8 join.jpg       |  Bin 0 -> 67952 bytes
 .../Kylin-and-Tableau-Tutorial/9 connName.jpg   |  Bin 0 -> 82397 bytes
 .../On-Hadoop-CLI-installation/Picture1.png     |  Bin 0 -> 53722 bytes
 .../On-Hadoop-CLI-installation/Picture2.png     |  Bin 0 -> 72567 bytes
 .../images/On-Hadoop-CLI-installation/cube.png  |  Bin 0 -> 151306 bytes
 .../installation.pptx                           |  Bin 0 -> 83098 bytes
 .../images/On-Hadoop-CLI-installation/job.png   |  Bin 0 -> 226745 bytes
 .../images/On-Hadoop-CLI-installation/query.png |  Bin 0 -> 112305 bytes
 .../On-Hadoop-CLI-installation/starthbase.png   |  Bin 0 -> 210066 bytes
 131 files changed, 4604 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_includes/navside.html
----------------------------------------------------------------------
diff --git a/docs/website/_includes/navside.html b/docs/website/_includes/navside.html
new file mode 100755
index 0000000..058659a
--- /dev/null
+++ b/docs/website/_includes/navside.html
@@ -0,0 +1,92 @@
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+
+<div class="col-md-3 col-lg-3 col-xs-4 aside1 visible-md visible-lg">
+	<ul class="nav nav-pills nav-stacked">
+	{% for category in site.categories %}     <!-- categories -->
+   {% if category[0]  == 'installation' %}
+		<li><a href="#{{ category | first }}" data-toggle="collapse" >Installation</a></li>
+		<div class="collapse in" id="{{ category[0] }}">
+			<div class="list-group">
+				<ul style="list-style-type:disc">
+			{% for post in category[1] %}
+				<li><a href="{{ post.url }}" class="list-group-item-lay pjaxlink">{{post.title}}</a></li>
+			{% endfor %}
+				<ul>
+			</div>
+		</div>
+   {% endif %}
+	{% endfor %}
+	{% for category in site.categories %} 
+   {% if category[0]  == 'tutorial' %}
+		<li><a href="#{{ category | first }}" data-toggle="collapse" >Tutorial</a></li>
+		<div class="collapse in" id="{{ category[0] }}">
+			<div class="list-group">
+				<ul style="list-style-type:disc">
+			{% for post in category[1] %}
+				<li><a href="{{ post.url }}" class="list-group-item-lay pjaxlink">{{post.title}}</a></li>
+			{% endfor %}
+				<ul>
+			</div>
+		</div>
+   {% endif %}
+	{% for category in site.categories %} 
+	{% endfor %}
+   {% if category[0]  == 'howto' %}
+		<li><a href="#{{ category | first }}" data-toggle="collapse" >How to</a></li>
+		<div class="collapse in" id="{{ category[0] }}">
+			<div class="list-group">
+				<ul style="list-style-type:disc">
+			{% for post in category[1] %}
+				<li><a href="{{ post.url }}" class="list-group-item-lay pjaxlink">{{post.title}}</a></li>
+			{% endfor %}
+				<ul>
+			</div>
+		</div>
+   {% endif %}
+	{% endfor %}
+	{% for category in site.categories %} 
+   {% if category[0]  == 'api' %}
+		<li><a href="#{{ category | first }}" data-toggle="collapse" >API</a></li>
+		<div class="collapse in" id="{{ category[0] }}">
+			<div class="list-group">
+				<ul style="list-style-type:disc">
+			{% for post in category[1] %}
+				<li><a href="{{ post.url }}" class="list-group-item-lay pjaxlink">{{post.title}}</a></li>
+			{% endfor %}
+				<ul>
+			</div>
+		</div>
+   {% endif %}
+	{% endfor %}
+	{% for category in site.categories %} 
+   {% if category[0]  == 'faq' %}
+		<li><a href="#{{ category | first }}" data-toggle="collapse" >FAQ</a></li>
+		<div class="collapse in" id="{{ category[0] }}">
+			<div class="list-group">
+				<ul style="list-style-type:disc">
+			{% for post in category[1] %}
+				<li><a href="{{ post.url }}" class="list-group-item-lay pjaxlink">{{post.title}}</a></li>
+			{% endfor %}
+				<ul>
+			</div>
+		</div>
+   {% endif %}
+	{% endfor %}
+	</ul>
+</div>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_layouts/docs.html
----------------------------------------------------------------------
diff --git a/docs/website/_layouts/docs.html b/docs/website/_layouts/docs.html
new file mode 100755
index 0000000..d5b00d9
--- /dev/null
+++ b/docs/website/_layouts/docs.html
@@ -0,0 +1,48 @@
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+
+<!doctype html>
+<html>
+	{% include head.html %}
+	<body>
+		{% include header.html %}
+		<div class="page-content">
+			<header style=" padding:2em 0 0 0">
+			<div class="container" >
+				<h4 class="section-title"><span>Kylin Docs</span></h4>
+			</div>
+		</div>
+		<div class="container">
+			<div class="row">
+				{% include navside.html %}
+				<div class="col-md-9 col-lg-9 col-xs-14 aside2">
+					<div id="container">
+						<div id="pjax">
+							{{ content }}
+						</div>
+					</div>
+				</div>
+			</div>
+		</div>		
+		{% include footer.html %}
+
+	<script src="/assets/js/jquery-1.9.1.min.js"></script> 
+	<script src="/assets/js/bootstrap.min.js"></script> 
+	<script src="/assets/js/main.js"></script>
+	</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/API/2014-12-31-Build-Cube-with-Restful-API.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/API/2014-12-31-Build-Cube-with-Restful-API.md b/docs/website/_posts/API/2014-12-31-Build-Cube-with-Restful-API.md
new file mode 100644
index 0000000..6e7e34f
--- /dev/null
+++ b/docs/website/_posts/API/2014-12-31-Build-Cube-with-Restful-API.md
@@ -0,0 +1,57 @@
+---
+layout: post
+title:  "Build Cube with Restful API"
+date:   2014-12-31
+author: liyang-gmt8
+categories: api
+---
+
+### 1.	Authentication
+*   Currently, Kylin uses [basic authentication](http://en.wikipedia.org/wiki/Basic_access_authentication).
+*   Add `Authorization` header to first request for authentication
+*   Or you can do a specific request by `POST http://localhost:7070/kylin/api/user/authentication`
+*   Once authenticated, client can go subsequent requests with cookies.
+*   Example
+{% highlight Groff markup %}
+    POST http://localhost:7070/kylin/api/user/authentication
+    
+    Authorization:Basic xxxxJD124xxxGFxxxSDF
+    Content-Type: application/json;charset=UTF-8
+{% endhighlight %}
+
+### 2.	Get details of cube. 
+*   `GET http://localhost:7070/kylin/api/cubes?cubeName={cube_name}&limit=15&offset=0`
+*   Client can find cube segment date ranges in returned cube detail.
+*   Example
+{% highlight Groff markup %}
+    GET http://localhost:7070/kylin/api/cubes?cubeName=test_kylin_cube_with_slr&limit=15&offset=0
+
+    Authorization:Basic xxxxJD124xxxGFxxxSDF
+    Content-Type: application/json;charset=UTF-8
+{% endhighlight %}
+### 3.	Then submit a build job of the cube. 
+*   `PUT http://localhost:7070/kylin/api/cubes/{cube_name}/rebuild`
+*   For put request body detail please refer to [service doc](https://github.com/KylinOLAP/Kylin/wiki/Restful-Service-Doc). 
+    *   `startTime` and `endTime` should be utc timestamp.
+    *   `buildType` can be `BUILD` or `MERGE`. `BUILD` is for building a new segment or refreshing an existing segment. `MERGE` is for merging multiple existing segments into one bigger segment.
+*   This method will return a newly created job instance, in which the uuid is the identity of job to track job status.
+*   Example
+{% highlight Groff markup %}
+    PUT http://localhost:7070/kylin/api/cubes/test_kylin_cube_with_slr/rebuild
+
+    Authorization:Basic xxxxJD124xxxGFxxxSDF
+    Content-Type: application/json;charset=UTF-8
+    
+    {
+    	"startTime": 0,
+    	"endTime": 1388563200000,
+    	"buildType": "BUILD"
+    }
+{% endhighlight %}
+
+### 4.	Track job status. 
+*   `GET http://localhost:7070/kylin/api/jobs/{job_uuid}`
+*   Returned `job_status` represents current status of job.
+
+### 5.	If the job failed, you can resume the job. 
+*   `PUT http://localhost:7070/kylin/api/jobs/{job_uuid}/resume`


[4/5] incubator-kylin git commit: update website structure and content

Posted by lu...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/API/2015-03-18-Restful-Service-Doc.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/API/2015-03-18-Restful-Service-Doc.md b/docs/website/_posts/API/2015-03-18-Restful-Service-Doc.md
new file mode 100644
index 0000000..b636e64
--- /dev/null
+++ b/docs/website/_posts/API/2015-03-18-Restful-Service-Doc.md
@@ -0,0 +1,2042 @@
+---
+layout: post
+title:  "Restful Service Doc"
+date:   2015-03-18
+author: SHAOFENG SHI
+categories: api
+---
+
+## Kylin Restful API List
+
+* QUERY
+   * Login
+   * Query
+   * List queryable tables
+* CUBE
+   * List cubes
+   * Rebuild cube
+   * Disable cube
+   * Purge cube
+   * Enable cube
+* JOB
+   * Resume job
+   * Discard job
+   * Get job step log
+* Metadata
+   * Get Hive Table
+   * Get Hive Table (Extend Info)
+   * Get Hive Tables 
+   * Load Hive Table
+* Wipe cache
+
+***
+
+### Login
+`POST /user/authentication`
+
+for example: 
+{% highlight Groff markup %}sh
+curl -c /path/to/cookiefile.txt -X POST -H "Authorization: Basic XXXXXXXXX" -H 'Content-Type: application/json' http://<host>:<port>/kylin/api/user/authentication
+{% endhighlight %}
+
+If login successfully, the JSESSIONID will be saved into the cookie file; In the subsequent http requests, attach the cookie, for example:
+{% highlight Groff markup %}
+curl -b /path/to/cookiefile.txt -X PUT -H 'Content-Type: application/json' -d '{"startTime":'1423526400000', "endTime":'1423526400', "buildType":"BUILD"}' http://<host>:<port>/kylin/api/cubes/your_cube/rebuild
+{% endhighlight %}
+
+#### Header
+Authorization data encoded by basic auth. Header sample:
+Authorization:Basic {data}
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+{  
+   "userDetails":{  
+      "password":null,
+      "username":"sample",
+      "authorities":[  
+         {  
+            "authority":"ROLE_ANALYST"
+         },
+         {  
+            "authority":"ROLE_MODELER"
+         }
+      ],
+      "accountNonExpired":true,
+      "accountNonLocked":true,
+      "credentialsNonExpired":true,
+      "enabled":true
+   }
+}
+{% endhighlight %}
+
+***
+
+### Query
+`POST /query`
+
+#### Request Body
+* sql - `required` `string` The sql query string.
+* offset - `optional` `int` Query offset. If offset is set in sql, curIndex will be ignored.
+* limit - `optional` `int` Query limit. If limit is set in sql, perPage will be ignored.
+* acceptPartial - `optional` `bool` Flag to switch partial query.
+* project - `optional` `string` Project to perform query. Default value is 'DEFAULT'
+{% highlight Groff markup %}
+{  
+   "sql":"select * from TEST_KYLIN_FACT",
+   "offset":0,
+   "limit":50000,
+   "acceptPartial":true,
+   "project":"DEFAULT"
+}
+{% endhighlight %}
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+{  
+   "columnMetas":[  
+      {  
+         "isNullable":1,
+         "displaySize":0,
+         "label":"CAL_DT",
+         "name":"CAL_DT",
+         "schemaName":null,
+         "catelogName":null,
+         "tableName":null,
+         "precision":0,
+         "scale":0,
+         "columnType":91,
+         "columnTypeName":"DATE",
+         "readOnly":true,
+         "writable":false,
+         "caseSensitive":true,
+         "searchable":false,
+         "currency":false,
+         "signed":true,
+         "autoIncrement":false,
+         "definitelyWritable":false
+      },
+      {  
+         "isNullable":1,
+         "displaySize":10,
+         "label":"LEAF_CATEG_ID",
+         "name":"LEAF_CATEG_ID",
+         "schemaName":null,
+         "catelogName":null,
+         "tableName":null,
+         "precision":10,
+         "scale":0,
+         "columnType":4,
+         "columnTypeName":"INTEGER",
+         "readOnly":true,
+         "writable":false,
+         "caseSensitive":true,
+         "searchable":false,
+         "currency":false,
+         "signed":true,
+         "autoIncrement":false,
+         "definitelyWritable":false
+      },
+      {  
+         "isNullable":1,
+         "displaySize":10,
+         "label":"LSTG_SITE_ID",
+         "name":"LSTG_SITE_ID",
+         "schemaName":null,
+         "catelogName":null,
+         "tableName":null,
+         "precision":10,
+         "scale":0,
+         "columnType":4,
+         "columnTypeName":"INTEGER",
+         "readOnly":true,
+         "writable":false,
+         "caseSensitive":true,
+         "searchable":false,
+         "currency":false,
+         "signed":true,
+         "autoIncrement":false,
+         "definitelyWritable":false
+      },
+      {  
+         "isNullable":1,
+         "displaySize":5,
+         "label":"SLR_SEGMENT_CD",
+         "name":"SLR_SEGMENT_CD",
+         "schemaName":null,
+         "catelogName":null,
+         "tableName":null,
+         "precision":5,
+         "scale":0,
+         "columnType":5,
+         "columnTypeName":"SMALLINT",
+         "readOnly":true,
+         "writable":false,
+         "caseSensitive":true,
+         "searchable":false,
+         "currency":false,
+         "signed":true,
+         "autoIncrement":false,
+         "definitelyWritable":false
+      },
+      {  
+         "isNullable":1,
+         "displaySize":256,
+         "label":"LSTG_FORMAT_NAME",
+         "name":"LSTG_FORMAT_NAME",
+         "schemaName":null,
+         "catelogName":null,
+         "tableName":null,
+         "precision":256,
+         "scale":0,
+         "columnType":12,
+         "columnTypeName":"VARCHAR(256)",
+         "readOnly":true,
+         "writable":false,
+         "caseSensitive":true,
+         "searchable":false,
+         "currency":false,
+         "signed":true,
+         "autoIncrement":false,
+         "definitelyWritable":false
+      },
+      {  
+         "isNullable":1,
+         "displaySize":19,
+         "label":"SELLER_ID",
+         "name":"SELLER_ID",
+         "schemaName":null,
+         "catelogName":null,
+         "tableName":null,
+         "precision":19,
+         "scale":0,
+         "columnType":-5,
+         "columnTypeName":"BIGINT",
+         "readOnly":true,
+         "writable":false,
+         "caseSensitive":true,
+         "searchable":false,
+         "currency":false,
+         "signed":true,
+         "autoIncrement":false,
+         "definitelyWritable":false
+      },
+      {  
+         "isNullable":1,
+         "displaySize":19,
+         "label":"PRICE",
+         "name":"PRICE",
+         "schemaName":null,
+         "catelogName":null,
+         "tableName":null,
+         "precision":19,
+         "scale":4,
+         "columnType":3,
+         "columnTypeName":"DECIMAL(19, 4)",
+         "readOnly":true,
+         "writable":false,
+         "caseSensitive":true,
+         "searchable":false,
+         "currency":false,
+         "signed":true,
+         "autoIncrement":false,
+         "definitelyWritable":false
+      },
+      {  
+         "isNullable":1,
+         "displaySize":19,
+         "label":"MIN_PRICE_",
+         "name":"MIN_PRICE_",
+         "schemaName":null,
+         "catelogName":null,
+         "tableName":null,
+         "precision":19,
+         "scale":4,
+         "columnType":3,
+         "columnTypeName":"DECIMAL(19, 4)",
+         "readOnly":true,
+         "writable":false,
+         "caseSensitive":true,
+         "searchable":false,
+         "currency":false,
+         "signed":true,
+         "autoIncrement":false,
+         "definitelyWritable":false
+      },
+      {  
+         "isNullable":1,
+         "displaySize":19,
+         "label":"MAX_PRICE_",
+         "name":"MAX_PRICE_",
+         "schemaName":null,
+         "catelogName":null,
+         "tableName":null,
+         "precision":19,
+         "scale":4,
+         "columnType":3,
+         "columnTypeName":"DECIMAL(19, 4)",
+         "readOnly":true,
+         "writable":false,
+         "caseSensitive":true,
+         "searchable":false,
+         "currency":false,
+         "signed":true,
+         "autoIncrement":false,
+         "definitelyWritable":false
+      },
+      {  
+         "isNullable":1,
+         "displaySize":19,
+         "label":"COUNT__",
+         "name":"COUNT__",
+         "schemaName":null,
+         "catelogName":null,
+         "tableName":null,
+         "precision":19,
+         "scale":0,
+         "columnType":-5,
+         "columnTypeName":"BIGINT",
+         "readOnly":true,
+         "writable":false,
+         "caseSensitive":true,
+         "searchable":false,
+         "currency":false,
+         "signed":true,
+         "autoIncrement":false,
+         "definitelyWritable":false
+      }
+   ],
+   "results":[  
+      [  
+         "2013-08-07",
+         "32996",
+         "15",
+         "15",
+         "Auction",
+         "10000000",
+         "49.048952730908745",
+         "49.048952730908745",
+         "49.048952730908745",
+         "1"
+      ],
+      [  
+         "2013-08-07",
+         "43398",
+         "0",
+         "14",
+         "ABIN",
+         "10000633",
+         "85.78317064220418",
+         "85.78317064220418",
+         "85.78317064220418",
+         "1"
+      ],
+      [  
+         "2013-08-07",
+         "170083",
+         "3",
+         "12",
+         "FP-non GTC",
+         "10000688",
+         "49.4518822857833",
+         "49.4518822857833",
+         "49.4518822857833",
+         "1"
+      ],
+      [  
+         "2013-08-07",
+         "73506",
+         "0",
+         "14",
+         "Others",
+         "10000858",
+         "35.7556514660872",
+         "35.7556514660872",
+         "35.7556514660872",
+         "1"
+      ],
+      [  
+         "2013-08-07",
+         "26262",
+         "0",
+         "5",
+         "FP-GTC",
+         "10000914",
+         "69.63202173718798",
+         "69.63202173718798",
+         "69.63202173718798",
+         "1"
+      ],
+      [  
+         "2013-08-07",
+         "1161",
+         "3",
+         "12",
+         "Others",
+         "10000959",
+         "76.72392839984632",
+         "76.72392839984632",
+         "76.72392839984632",
+         "1"
+      ]
+   ],
+   "cube":"test_kylin_cube_with_slr_desc",
+   "affectedRowCount":0,
+   "isException":false,
+   "exceptionMessage":null,
+   "duration":3451,
+   "partial":false
+}
+{% endhighlight %}
+
+***
+
+### List queryable tables
+`GET /tables_and_columns`
+
+#### Request Parameters
+* project - `required` `string` The project to load tables
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+[  
+   {  
+      "columns":[  
+         {  
+            "table_NAME":"TEST_CAL_DT",
+            "table_SCHEM":"EDW",
+            "column_NAME":"CAL_DT",
+            "data_TYPE":91,
+            "nullable":1,
+            "column_SIZE":-1,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":-1,
+            "ordinal_POSITION":1,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"DATE"
+         },
+         {  
+            "table_NAME":"TEST_CAL_DT",
+            "table_SCHEM":"EDW",
+            "column_NAME":"WEEK_BEG_DT",
+            "data_TYPE":91,
+            "nullable":1,
+            "column_SIZE":-1,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":-1,
+            "ordinal_POSITION":2,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"DATE"
+         }
+      ],
+      "table_NAME":"TEST_CAL_DT",
+      "table_SCHEM":"EDW",
+      "ref_GENERATION":null,
+      "self_REFERENCING_COL_NAME":null,
+      "type_SCHEM":null,
+      "table_TYPE":"TABLE",
+      "table_CAT":"defaultCatalog",
+      "remarks":null,
+      "type_CAT":null,
+      "type_NAME":null
+   },
+   {  
+      "columns":[  
+         {  
+            "table_NAME":"TEST_CATEGORY_GROUPINGS",
+            "table_SCHEM":"EDW",
+            "column_NAME":"LEAF_CATEG_ID",
+            "data_TYPE":4,
+            "nullable":1,
+            "column_SIZE":-1,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":-1,
+            "ordinal_POSITION":1,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"INTEGER"
+         },
+         {  
+            "table_NAME":"TEST_CATEGORY_GROUPINGS",
+            "table_SCHEM":"EDW",
+            "column_NAME":"SITE_ID",
+            "data_TYPE":4,
+            "nullable":1,
+            "column_SIZE":-1,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":-1,
+            "ordinal_POSITION":2,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"INTEGER"
+         },
+         {  
+            "table_NAME":"TEST_CATEGORY_GROUPINGS",
+            "table_SCHEM":"EDW",
+            "column_NAME":"META_CATEG_NAME",
+            "data_TYPE":12,
+            "nullable":1,
+            "column_SIZE":256,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":256,
+            "ordinal_POSITION":3,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"VARCHAR(256) CHARACTER SET \"UTF-16LE\" COLLATE \"UTF-16LE$en_US$primary\""
+         },
+         {  
+            "table_NAME":"TEST_CATEGORY_GROUPINGS",
+            "table_SCHEM":"EDW",
+            "column_NAME":"CATEG_LVL2_NAME",
+            "data_TYPE":12,
+            "nullable":1,
+            "column_SIZE":256,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":256,
+            "ordinal_POSITION":4,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"VARCHAR(256) CHARACTER SET \"UTF-16LE\" COLLATE \"UTF-16LE$en_US$primary\""
+         },
+         {  
+            "table_NAME":"TEST_CATEGORY_GROUPINGS",
+            "table_SCHEM":"EDW",
+            "column_NAME":"CATEG_LVL3_NAME",
+            "data_TYPE":12,
+            "nullable":1,
+            "column_SIZE":256,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":256,
+            "ordinal_POSITION":5,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"VARCHAR(256) CHARACTER SET \"UTF-16LE\" COLLATE \"UTF-16LE$en_US$primary\""
+         },
+         {  
+            "table_NAME":"TEST_CATEGORY_GROUPINGS",
+            "table_SCHEM":"EDW",
+            "column_NAME":"USER_DEFINED_FIELD1",
+            "data_TYPE":12,
+            "nullable":1,
+            "column_SIZE":256,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":256,
+            "ordinal_POSITION":6,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"VARCHAR(256) CHARACTER SET \"UTF-16LE\" COLLATE \"UTF-16LE$en_US$primary\""
+         },
+         {  
+            "table_NAME":"TEST_CATEGORY_GROUPINGS",
+            "table_SCHEM":"EDW",
+            "column_NAME":"USER_DEFINED_FIELD3",
+            "data_TYPE":12,
+            "nullable":1,
+            "column_SIZE":256,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":256,
+            "ordinal_POSITION":7,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"VARCHAR(256) CHARACTER SET \"UTF-16LE\" COLLATE \"UTF-16LE$en_US$primary\""
+         },
+         {  
+            "table_NAME":"TEST_CATEGORY_GROUPINGS",
+            "table_SCHEM":"EDW",
+            "column_NAME":"UPD_DATE",
+            "data_TYPE":12,
+            "nullable":1,
+            "column_SIZE":256,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":256,
+            "ordinal_POSITION":8,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"VARCHAR(256) CHARACTER SET \"UTF-16LE\" COLLATE \"UTF-16LE$en_US$primary\""
+         },
+         {  
+            "table_NAME":"TEST_CATEGORY_GROUPINGS",
+            "table_SCHEM":"EDW",
+            "column_NAME":"UPD_USER",
+            "data_TYPE":12,
+            "nullable":1,
+            "column_SIZE":256,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":256,
+            "ordinal_POSITION":9,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"VARCHAR(256) CHARACTER SET \"UTF-16LE\" COLLATE \"UTF-16LE$en_US$primary\""
+         }
+      ],
+      "table_NAME":"TEST_CATEGORY_GROUPINGS",
+      "table_SCHEM":"EDW",
+      "ref_GENERATION":null,
+      "self_REFERENCING_COL_NAME":null,
+      "type_SCHEM":null,
+      "table_TYPE":"TABLE",
+      "table_CAT":"defaultCatalog",
+      "remarks":null,
+      "type_CAT":null,
+      "type_NAME":null
+   },
+   {  
+      "columns":[  
+         {  
+            "table_NAME":"TEST_KYLIN_FACT",
+            "table_SCHEM":"EDW",
+            "column_NAME":"CAL_DT",
+            "data_TYPE":91,
+            "nullable":1,
+            "column_SIZE":-1,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":-1,
+            "ordinal_POSITION":1,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"DATE"
+         },
+         {  
+            "table_NAME":"TEST_KYLIN_FACT",
+            "table_SCHEM":"EDW",
+            "column_NAME":"LEAF_CATEG_ID",
+            "data_TYPE":4,
+            "nullable":1,
+            "column_SIZE":-1,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":-1,
+            "ordinal_POSITION":2,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"INTEGER"
+         },
+         {  
+            "table_NAME":"TEST_KYLIN_FACT",
+            "table_SCHEM":"EDW",
+            "column_NAME":"LSTG_SITE_ID",
+            "data_TYPE":4,
+            "nullable":1,
+            "column_SIZE":-1,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":-1,
+            "ordinal_POSITION":3,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"INTEGER"
+         },
+         {  
+            "table_NAME":"TEST_KYLIN_FACT",
+            "table_SCHEM":"EDW",
+            "column_NAME":"SLR_SEGMENT_CD",
+            "data_TYPE":5,
+            "nullable":1,
+            "column_SIZE":-1,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":-1,
+            "ordinal_POSITION":4,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"SMALLINT"
+         },
+         {  
+            "table_NAME":"TEST_KYLIN_FACT",
+            "table_SCHEM":"EDW",
+            "column_NAME":"LSTG_FORMAT_NAME",
+            "data_TYPE":12,
+            "nullable":1,
+            "column_SIZE":256,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":256,
+            "ordinal_POSITION":5,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"VARCHAR(256) CHARACTER SET \"UTF-16LE\" COLLATE \"UTF-16LE$en_US$primary\""
+         },
+         {  
+            "table_NAME":"TEST_KYLIN_FACT",
+            "table_SCHEM":"EDW",
+            "column_NAME":"SELLER_ID",
+            "data_TYPE":-5,
+            "nullable":1,
+            "column_SIZE":-1,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":-1,
+            "ordinal_POSITION":6,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"BIGINT"
+         },
+         {  
+            "table_NAME":"TEST_KYLIN_FACT",
+            "table_SCHEM":"EDW",
+            "column_NAME":"PRICE",
+            "data_TYPE":3,
+            "nullable":1,
+            "column_SIZE":19,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":4,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":19,
+            "ordinal_POSITION":7,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"DECIMAL(19, 4)"
+         }
+      ],
+      "table_NAME":"TEST_KYLIN_FACT",
+      "table_SCHEM":"EDW",
+      "ref_GENERATION":null,
+      "self_REFERENCING_COL_NAME":null,
+      "type_SCHEM":null,
+      "table_TYPE":"TABLE",
+      "table_CAT":"defaultCatalog",
+      "remarks":null,
+      "type_CAT":null,
+      "type_NAME":null
+   },
+   {  
+      "columns":[  
+         {  
+            "table_NAME":"TEST_SELLER_TYPE_DIM",
+            "table_SCHEM":"EDW",
+            "column_NAME":"SELLER_TYPE_CD",
+            "data_TYPE":5,
+            "nullable":1,
+            "column_SIZE":-1,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":-1,
+            "ordinal_POSITION":1,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"SMALLINT"
+         },
+         {  
+            "table_NAME":"TEST_SELLER_TYPE_DIM",
+            "table_SCHEM":"EDW",
+            "column_NAME":"SELLER_TYPE_DESC",
+            "data_TYPE":12,
+            "nullable":1,
+            "column_SIZE":256,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":256,
+            "ordinal_POSITION":2,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"VARCHAR(256) CHARACTER SET \"UTF-16LE\" COLLATE \"UTF-16LE$en_US$primary\""
+         }
+      ],
+      "table_NAME":"TEST_SELLER_TYPE_DIM",
+      "table_SCHEM":"EDW",
+      "ref_GENERATION":null,
+      "self_REFERENCING_COL_NAME":null,
+      "type_SCHEM":null,
+      "table_TYPE":"TABLE",
+      "table_CAT":"defaultCatalog",
+      "remarks":null,
+      "type_CAT":null,
+      "type_NAME":null
+   },
+   {  
+      "columns":[  
+         {  
+            "table_NAME":"TEST_SITES",
+            "table_SCHEM":"EDW",
+            "column_NAME":"SITE_ID",
+            "data_TYPE":4,
+            "nullable":1,
+            "column_SIZE":-1,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":-1,
+            "ordinal_POSITION":1,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"INTEGER"
+         },
+         {  
+            "table_NAME":"TEST_SITES",
+            "table_SCHEM":"EDW",
+            "column_NAME":"SITE_NAME",
+            "data_TYPE":12,
+            "nullable":1,
+            "column_SIZE":256,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":256,
+            "ordinal_POSITION":2,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"VARCHAR(256) CHARACTER SET \"UTF-16LE\" COLLATE \"UTF-16LE$en_US$primary\""
+         },
+         {  
+            "table_NAME":"TEST_SITES",
+            "table_SCHEM":"EDW",
+            "column_NAME":"CRE_USER",
+            "data_TYPE":12,
+            "nullable":1,
+            "column_SIZE":256,
+            "buffer_LENGTH":-1,
+            "decimal_DIGITS":0,
+            "num_PREC_RADIX":10,
+            "column_DEF":null,
+            "sql_DATA_TYPE":-1,
+            "sql_DATETIME_SUB":-1,
+            "char_OCTET_LENGTH":256,
+            "ordinal_POSITION":3,
+            "is_NULLABLE":"YES",
+            "scope_CATLOG":null,
+            "scope_SCHEMA":null,
+            "scope_TABLE":null,
+            "source_DATA_TYPE":-1,
+            "iS_AUTOINCREMENT":null,
+            "table_CAT":"defaultCatalog",
+            "remarks":null,
+            "type_NAME":"VARCHAR(256) CHARACTER SET \"UTF-16LE\" COLLATE \"UTF-16LE$en_US$primary\""
+         }
+      ],
+      "table_NAME":"TEST_SITES",
+      "table_SCHEM":"EDW",
+      "ref_GENERATION":null,
+      "self_REFERENCING_COL_NAME":null,
+      "type_SCHEM":null,
+      "table_TYPE":"TABLE",
+      "table_CAT":"defaultCatalog",
+      "remarks":null,
+      "type_CAT":null,
+      "type_NAME":null
+   }
+]
+{% endhighlight %}
+
+
+***
+
+### List cubes
+`GET /cubes`
+
+#### Request Parameters
+* cubeName - `optional` `string` Cube name to find.
+* offset - `required` `int` Offset used by pagination
+* limit - `required` `int ` Cubes per page.
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+[  
+   {  
+      "uuid":"1eaca32a-a33e-4b69-83dd-0bb8b1f8c53b",
+      "last_modified":1407831634847,
+      "name":"test_kylin_cube_with_slr_empty",
+      "owner":null,
+      "version":null,
+      "descriptor":"test_kylin_cube_with_slr_desc",
+      "cost":50,
+      "status":"DISABLED",
+      "segments":[  
+      ],
+      "create_time":null,
+      "source_records_count":0,
+      "source_records_size":0,
+      "size_kb":0
+   }
+]
+{% endhighlight %}
+
+### Rebuild cube
+`PUT /cubes/{cubeName}/rebuild`
+
+#### Path Variable
+* cubeName - `required` `string` Cube name.
+
+#### Request Body
+* startTime - `required` `long` Start timestamp of data to build, e.g. 1388563200000 for 2014-1-1
+* endTime - `required` `long` End timestamp of data to build
+* buildType - `required` `string` Build type: 'BUILD' OR 'MERGE'
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+{  
+   "uuid":"c143e0e4-ac5f-434d-acf3-46b0d15e3dc6",
+   "last_modified":1407908916705,
+   "name":"test_kylin_cube_with_slr_empty - 19700101000000_20140731160000 - BUILD - PDT 2014-08-12 22:48:36",
+   "type":"BUILD",
+   "duration":0,
+   "related_cube":"test_kylin_cube_with_slr_empty",
+   "related_segment":"19700101000000_20140731160000",
+   "exec_start_time":0,
+   "exec_end_time":0,
+   "mr_waiting":0,
+   "steps":[  
+      {  
+         "interruptCmd":null,
+         "name":"Create Intermediate Flat Hive Table",
+         "sequence_id":0,
+         "exec_cmd":"hive -e \"DROP TABLE IF EXISTS kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6;\nCREATE EXTERNAL TABLE IF NOT EXISTS kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6\n(\nCAL_DT date\n,LEAF_CATEG_ID int\n,LSTG_SITE_ID int\n,META_CATEG_NAME string\n,CATEG_LVL2_NAME string\n,CATEG_LVL3_NAME string\n,LSTG_FORMAT_NAME string\n,SLR_SEGMENT_CD smallint\n,SELLER_ID bigint\n,PRICE decimal\n)\nROW FORMAT DELIMITED FIELDS TERMINATED BY '\\177'\nSTORED AS SEQUENCEFILE\nLOCATION '/tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6';\nSET mapreduce.job.split.metainfo.maxsize=-1;\nSET mapred.compress.map.output=true;\nSET mapred.map.output.compression.codec=com.hadoop.compression.lzo.LzoCodec;\nSET mapred.output.compress=true;\nSET ma
 pred.output.compression.codec=com.hadoop.compression.lzo.LzoCodec;\nSET mapred.output.compression.type=BLOCK;\nSET mapreduce.job.max.split.locations=2000;\nSET hive.exec.compress.output=true;\nSET hive.auto.convert.join.noconditionaltask = true;\nSET hive.auto.convert.join.noconditionaltask.size = 300000000;\nINSERT OVERWRITE TABLE kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6\nSELECT\nTEST_KYLIN_FACT.CAL_DT\n,TEST_KYLIN_FACT.LEAF_CATEG_ID\n,TEST_KYLIN_FACT.LSTG_SITE_ID\n,TEST_CATEGORY_GROUPINGS.META_CATEG_NAME\n,TEST_CATEGORY_GROUPINGS.CATEG_LVL2_NAME\n,TEST_CATEGORY_GROUPINGS.CATEG_LVL3_NAME\n,TEST_KYLIN_FACT.LSTG_FORMAT_NAME\n,TEST_KYLIN_FACT.SLR_SEGMENT_CD\n,TEST_KYLIN_FACT.SELLER_ID\n,TEST_KYLIN_FACT.PRICE\nFROM TEST_KYLIN_FACT\nINNER JOIN TEST_CAL_DT\nON TEST_KYLIN_FACT.CAL_DT = TEST_CAL_DT.CAL_DT\nINNER JOIN TEST_CATEGORY_GROUPINGS\nON TEST_KYLIN_FACT.LEAF_CATEG_ID = TEST_CATEGORY_GROUPINGS.LEAF_CATEG_ID AN
 D TEST_KYLIN_FACT.LSTG_SITE_ID = TEST_CATEGORY_GROUPINGS.SITE_ID\nINNER JOIN TEST_SITES\nON TEST_KYLIN_FACT.LSTG_SITE_ID = TEST_SITES.SITE_ID\nINNER JOIN TEST_SELLER_TYPE_DIM\nON TEST_KYLIN_FACT.SLR_SEGMENT_CD = TEST_SELLER_TYPE_DIM.SELLER_TYPE_CD\nWHERE (test_kylin_fact.cal_dt < '2014-07-31 16:00:00')\n;\n\"",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"SHELL_CMD_HADOOP",
+         "info":null,
+         "run_async":false
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Extract Fact Table Distinct Columns",
+         "sequence_id":1,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6 -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/fact_distinct_columns -jobname Kylin_Fact_Distinct_Columns_test_kylin_cube_with_slr_empty_Step_1",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_FACTDISTINCT",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build Dimension Dictionary",
+         "sequence_id":2,
+         "exec_cmd":" -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/fact_distinct_columns",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NO_MR_DICTIONARY",
+         "info":null,
+         "run_async":false
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build Base Cuboid Data",
+         "sequence_id":3,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6 -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/base_cuboid -jobname Kylin_Base_Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_3 -level 0",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_BASECUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 8-Dimension",
+         "sequence_id":4,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/base_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/8d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_4 -level 1",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 7-Dimension",
+         "sequence_id":5,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/8d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/7d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_5 -level 2",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 6-Dimension",
+         "sequence_id":6,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/7d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/6d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_6 -level 3",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 5-Dimension",
+         "sequence_id":7,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/6d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/5d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_7 -level 4",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 4-Dimension",
+         "sequence_id":8,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/5d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/4d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_8 -level 5",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Calculate HTable Region Splits",
+         "sequence_id":9,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/* -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/rowkey_stats -jobname Kylin_Region_Splits_Calculator_test_kylin_cube_with_slr_empty_Step_9 -cubename test_kylin_cube_with_slr_empty",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_RANGEKEYDISTRIBUTION",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Create HTable",
+         "sequence_id":10,
+         "exec_cmd":" -cubename test_kylin_cube_with_slr_empty -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/rowkey_stats/part-r-00000 -htablename KYLIN-CUBE-TEST_KYLIN_CUBE_WITH_SLR_EMPTY-19700101000000_20140731160000_11BB4326-5975-4358-804C-70D53642E03A",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADDOP_NO_MR_CREATEHTABLE",
+         "info":null,
+         "run_async":false
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Convert Cuboid Data to HFile",
+         "sequence_id":11,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/* -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/hfile -htablename KYLIN-CUBE-TEST_KYLIN_CUBE_WITH_SLR_EMPTY-19700101000000_20140731160000_11BB4326-5975-4358-804C-70D53642E03A -jobname Kylin_HFile_Generator_test_kylin_cube_with_slr_empty_Step_11",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_CONVERTHFILE",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Load HFile to HBase Table",
+         "sequence_id":12,
+         "exec_cmd":" -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/hfile/ -htablename KYLIN-CUBE-TEST_KYLIN_CUBE_WITH_SLR_EMPTY-19700101000000_20140731160000_11BB4326-5975-4358-804C-70D53642E03A -cubename test_kylin_cube_with_slr_empty",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NO_MR_BULKLOAD",
+         "info":null,
+         "run_async":false
+      }
+   ],
+   "job_status":"PENDING",
+   "progress":0.0
+}
+{% endhighlight %}
+
+
+### Disable Cube
+`PUT /cubes/{cubeName}/disable`
+
+#### Path variable
+* cubeName - `required` `string` Cube name.
+
+#### Response Sample
+(Same as "Enable Cube")
+
+
+### Purge Cube
+`PUT /cubes/{cubeName}/purge`
+
+#### Path variable
+* cubeName - `required` `string` Cube name.
+
+#### Response Sample
+(Same as "Enable Cube")
+
+
+### Enable Cube
+`PUT /cubes/{cubeName}/enable`
+
+#### Path variable
+* cubeName - `required` `string` Cube name.
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+{  
+   "uuid":"1eaca32a-a33e-4b69-83dd-0bb8b1f8c53b",
+   "last_modified":1407909046305,
+   "name":"test_kylin_cube_with_slr_ready",
+   "owner":null,
+   "version":null,
+   "descriptor":"test_kylin_cube_with_slr_desc",
+   "cost":50,
+   "status":"ACTIVE",
+   "segments":[  
+      {  
+         "name":"19700101000000_20140531160000",
+         "storage_location_identifier":"KYLIN-CUBE-TEST_KYLIN_CUBE_WITH_SLR_READY-19700101000000_20140531160000_BF043D2D-9A4A-45E9-AA59-5A17D3F34A50",
+         "date_range_start":0,
+         "date_range_end":1401552000000,
+         "status":"READY",
+         "size_kb":4758,
+         "source_records":6000,
+         "source_records_size":620356,
+         "last_build_time":1407832663227,
+         "last_build_job_id":"2c7a2b63-b052-4a51-8b09-0c24b5792cda",
+         "binary_signature":null,
+         "dictionaries":{  
+            "TEST_CATEGORY_GROUPINGS/CATEG_LVL2_NAME":"/dict/TEST_CATEGORY_GROUPINGS/CATEG_LVL2_NAME/16d8185c-ee6b-4f8c-a919-756d9809f937.dict",
+            "TEST_KYLIN_FACT/LSTG_SITE_ID":"/dict/TEST_SITES/SITE_ID/0bec6bb3-1b0d-469c-8289-b8c4ca5d5001.dict",
+            "TEST_KYLIN_FACT/SLR_SEGMENT_CD":"/dict/TEST_SELLER_TYPE_DIM/SELLER_TYPE_CD/0c5d77ec-316b-47e0-ba9a-0616be890ad6.dict",
+            "TEST_KYLIN_FACT/CAL_DT":"/dict/PREDEFINED/date(yyyy-mm-dd)/64ac4f82-f2af-476e-85b9-f0805001014e.dict",
+            "TEST_CATEGORY_GROUPINGS/CATEG_LVL3_NAME":"/dict/TEST_CATEGORY_GROUPINGS/CATEG_LVL3_NAME/270fbfb0-281c-4602-8413-2970a7439c47.dict",
+            "TEST_KYLIN_FACT/LEAF_CATEG_ID":"/dict/TEST_CATEGORY_GROUPINGS/LEAF_CATEG_ID/2602386c-debb-4968-8d2f-b52b8215e385.dict",
+            "TEST_CATEGORY_GROUPINGS/META_CATEG_NAME":"/dict/TEST_CATEGORY_GROUPINGS/META_CATEG_NAME/0410d2c4-4686-40bc-ba14-170042a2de94.dict"
+         },
+         "snapshots":{  
+            "TEST_CAL_DT":"/table_snapshot/TEST_CAL_DT.csv/8f7cfc8a-020d-4019-b419-3c6deb0ffaa0.snapshot",
+            "TEST_SELLER_TYPE_DIM":"/table_snapshot/TEST_SELLER_TYPE_DIM.csv/c60fd05e-ac94-4016-9255-96521b273b81.snapshot",
+            "TEST_CATEGORY_GROUPINGS":"/table_snapshot/TEST_CATEGORY_GROUPINGS.csv/363f4a59-b725-4459-826d-3188bde6a971.snapshot",
+            "TEST_SITES":"/table_snapshot/TEST_SITES.csv/78e0aecc-3ec6-4406-b86e-bac4b10ea63b.snapshot"
+         }
+      }
+   ],
+   "create_time":null,
+   "source_records_count":6000,
+   "source_records_size":0,
+   "size_kb":4758
+}
+{% endhighlight %}
+
+### Resume Job
+`PUT /jobs/{jobId}/resume`
+
+#### Path variable
+* jobId- `required` `string` Job id.
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+{  
+   "uuid":"c143e0e4-ac5f-434d-acf3-46b0d15e3dc6",
+   "last_modified":1407908916705,
+   "name":"test_kylin_cube_with_slr_empty - 19700101000000_20140731160000 - BUILD - PDT 2014-08-12 22:48:36",
+   "type":"BUILD",
+   "duration":0,
+   "related_cube":"test_kylin_cube_with_slr_empty",
+   "related_segment":"19700101000000_20140731160000",
+   "exec_start_time":0,
+   "exec_end_time":0,
+   "mr_waiting":0,
+   "steps":[  
+      {  
+         "interruptCmd":null,
+         "name":"Create Intermediate Flat Hive Table",
+         "sequence_id":0,
+         "exec_cmd":"hive -e \"DROP TABLE IF EXISTS kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6;\nCREATE EXTERNAL TABLE IF NOT EXISTS kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6\n(\nCAL_DT date\n,LEAF_CATEG_ID int\n,LSTG_SITE_ID int\n,META_CATEG_NAME string\n,CATEG_LVL2_NAME string\n,CATEG_LVL3_NAME string\n,LSTG_FORMAT_NAME string\n,SLR_SEGMENT_CD smallint\n,SELLER_ID bigint\n,PRICE decimal\n)\nROW FORMAT DELIMITED FIELDS TERMINATED BY '\\177'\nSTORED AS SEQUENCEFILE\nLOCATION '/tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6';\nSET mapreduce.job.split.metainfo.maxsize=-1;\nSET mapred.compress.map.output=true;\nSET mapred.map.output.compression.codec=com.hadoop.compression.lzo.LzoCodec;\nSET mapred.output.compress=true;\nSET ma
 pred.output.compression.codec=com.hadoop.compression.lzo.LzoCodec;\nSET mapred.output.compression.type=BLOCK;\nSET mapreduce.job.max.split.locations=2000;\nSET hive.exec.compress.output=true;\nSET hive.auto.convert.join.noconditionaltask = true;\nSET hive.auto.convert.join.noconditionaltask.size = 300000000;\nINSERT OVERWRITE TABLE kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6\nSELECT\nTEST_KYLIN_FACT.CAL_DT\n,TEST_KYLIN_FACT.LEAF_CATEG_ID\n,TEST_KYLIN_FACT.LSTG_SITE_ID\n,TEST_CATEGORY_GROUPINGS.META_CATEG_NAME\n,TEST_CATEGORY_GROUPINGS.CATEG_LVL2_NAME\n,TEST_CATEGORY_GROUPINGS.CATEG_LVL3_NAME\n,TEST_KYLIN_FACT.LSTG_FORMAT_NAME\n,TEST_KYLIN_FACT.SLR_SEGMENT_CD\n,TEST_KYLIN_FACT.SELLER_ID\n,TEST_KYLIN_FACT.PRICE\nFROM TEST_KYLIN_FACT\nINNER JOIN TEST_CAL_DT\nON TEST_KYLIN_FACT.CAL_DT = TEST_CAL_DT.CAL_DT\nINNER JOIN TEST_CATEGORY_GROUPINGS\nON TEST_KYLIN_FACT.LEAF_CATEG_ID = TEST_CATEGORY_GROUPINGS.LEAF_CATEG_ID AN
 D TEST_KYLIN_FACT.LSTG_SITE_ID = TEST_CATEGORY_GROUPINGS.SITE_ID\nINNER JOIN TEST_SITES\nON TEST_KYLIN_FACT.LSTG_SITE_ID = TEST_SITES.SITE_ID\nINNER JOIN TEST_SELLER_TYPE_DIM\nON TEST_KYLIN_FACT.SLR_SEGMENT_CD = TEST_SELLER_TYPE_DIM.SELLER_TYPE_CD\nWHERE (test_kylin_fact.cal_dt < '2014-07-31 16:00:00')\n;\n\"",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"SHELL_CMD_HADOOP",
+         "info":null,
+         "run_async":false
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Extract Fact Table Distinct Columns",
+         "sequence_id":1,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6 -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/fact_distinct_columns -jobname Kylin_Fact_Distinct_Columns_test_kylin_cube_with_slr_empty_Step_1",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_FACTDISTINCT",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build Dimension Dictionary",
+         "sequence_id":2,
+         "exec_cmd":" -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/fact_distinct_columns",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NO_MR_DICTIONARY",
+         "info":null,
+         "run_async":false
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build Base Cuboid Data",
+         "sequence_id":3,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6 -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/base_cuboid -jobname Kylin_Base_Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_3 -level 0",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_BASECUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 8-Dimension",
+         "sequence_id":4,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/base_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/8d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_4 -level 1",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 7-Dimension",
+         "sequence_id":5,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/8d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/7d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_5 -level 2",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 6-Dimension",
+         "sequence_id":6,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/7d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/6d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_6 -level 3",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 5-Dimension",
+         "sequence_id":7,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/6d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/5d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_7 -level 4",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 4-Dimension",
+         "sequence_id":8,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/5d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/4d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_8 -level 5",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Calculate HTable Region Splits",
+         "sequence_id":9,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/* -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/rowkey_stats -jobname Kylin_Region_Splits_Calculator_test_kylin_cube_with_slr_empty_Step_9 -cubename test_kylin_cube_with_slr_empty",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_RANGEKEYDISTRIBUTION",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Create HTable",
+         "sequence_id":10,
+         "exec_cmd":" -cubename test_kylin_cube_with_slr_empty -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/rowkey_stats/part-r-00000 -htablename KYLIN-CUBE-TEST_KYLIN_CUBE_WITH_SLR_EMPTY-19700101000000_20140731160000_11BB4326-5975-4358-804C-70D53642E03A",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADDOP_NO_MR_CREATEHTABLE",
+         "info":null,
+         "run_async":false
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Convert Cuboid Data to HFile",
+         "sequence_id":11,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/* -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/hfile -htablename KYLIN-CUBE-TEST_KYLIN_CUBE_WITH_SLR_EMPTY-19700101000000_20140731160000_11BB4326-5975-4358-804C-70D53642E03A -jobname Kylin_HFile_Generator_test_kylin_cube_with_slr_empty_Step_11",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_CONVERTHFILE",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Load HFile to HBase Table",
+         "sequence_id":12,
+         "exec_cmd":" -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/hfile/ -htablename KYLIN-CUBE-TEST_KYLIN_CUBE_WITH_SLR_EMPTY-19700101000000_20140731160000_11BB4326-5975-4358-804C-70D53642E03A -cubename test_kylin_cube_with_slr_empty",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NO_MR_BULKLOAD",
+         "info":null,
+         "run_async":false
+      }
+   ],
+   "job_status":"PENDING",
+   "progress":0.0
+}
+{% endhighlight %}
+
+### Discard Job
+`PUT /jobs/{jobId}/cancel`
+
+#### Path variable
+* jobId- `required` `string` Job id.
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+{  
+   "uuid":"c143e0e4-ac5f-434d-acf3-46b0d15e3dc6",
+   "last_modified":1407908916705,
+   "name":"test_kylin_cube_with_slr_empty - 19700101000000_20140731160000 - BUILD - PDT 2014-08-12 22:48:36",
+   "type":"BUILD",
+   "duration":0,
+   "related_cube":"test_kylin_cube_with_slr_empty",
+   "related_segment":"19700101000000_20140731160000",
+   "exec_start_time":0,
+   "exec_end_time":0,
+   "mr_waiting":0,
+   "steps":[  
+      {  
+         "interruptCmd":null,
+         "name":"Create Intermediate Flat Hive Table",
+         "sequence_id":0,
+         "exec_cmd":"hive -e \"DROP TABLE IF EXISTS kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6;\nCREATE EXTERNAL TABLE IF NOT EXISTS kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6\n(\nCAL_DT date\n,LEAF_CATEG_ID int\n,LSTG_SITE_ID int\n,META_CATEG_NAME string\n,CATEG_LVL2_NAME string\n,CATEG_LVL3_NAME string\n,LSTG_FORMAT_NAME string\n,SLR_SEGMENT_CD smallint\n,SELLER_ID bigint\n,PRICE decimal\n)\nROW FORMAT DELIMITED FIELDS TERMINATED BY '\\177'\nSTORED AS SEQUENCEFILE\nLOCATION '/tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6';\nSET mapreduce.job.split.metainfo.maxsize=-1;\nSET mapred.compress.map.output=true;\nSET mapred.map.output.compression.codec=com.hadoop.compression.lzo.LzoCodec;\nSET mapred.output.compress=true;\nSET ma
 pred.output.compression.codec=com.hadoop.compression.lzo.LzoCodec;\nSET mapred.output.compression.type=BLOCK;\nSET mapreduce.job.max.split.locations=2000;\nSET hive.exec.compress.output=true;\nSET hive.auto.convert.join.noconditionaltask = true;\nSET hive.auto.convert.join.noconditionaltask.size = 300000000;\nINSERT OVERWRITE TABLE kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6\nSELECT\nTEST_KYLIN_FACT.CAL_DT\n,TEST_KYLIN_FACT.LEAF_CATEG_ID\n,TEST_KYLIN_FACT.LSTG_SITE_ID\n,TEST_CATEGORY_GROUPINGS.META_CATEG_NAME\n,TEST_CATEGORY_GROUPINGS.CATEG_LVL2_NAME\n,TEST_CATEGORY_GROUPINGS.CATEG_LVL3_NAME\n,TEST_KYLIN_FACT.LSTG_FORMAT_NAME\n,TEST_KYLIN_FACT.SLR_SEGMENT_CD\n,TEST_KYLIN_FACT.SELLER_ID\n,TEST_KYLIN_FACT.PRICE\nFROM TEST_KYLIN_FACT\nINNER JOIN TEST_CAL_DT\nON TEST_KYLIN_FACT.CAL_DT = TEST_CAL_DT.CAL_DT\nINNER JOIN TEST_CATEGORY_GROUPINGS\nON TEST_KYLIN_FACT.LEAF_CATEG_ID = TEST_CATEGORY_GROUPINGS.LEAF_CATEG_ID AN
 D TEST_KYLIN_FACT.LSTG_SITE_ID = TEST_CATEGORY_GROUPINGS.SITE_ID\nINNER JOIN TEST_SITES\nON TEST_KYLIN_FACT.LSTG_SITE_ID = TEST_SITES.SITE_ID\nINNER JOIN TEST_SELLER_TYPE_DIM\nON TEST_KYLIN_FACT.SLR_SEGMENT_CD = TEST_SELLER_TYPE_DIM.SELLER_TYPE_CD\nWHERE (test_kylin_fact.cal_dt < '2014-07-31 16:00:00')\n;\n\"",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"SHELL_CMD_HADOOP",
+         "info":null,
+         "run_async":false
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Extract Fact Table Distinct Columns",
+         "sequence_id":1,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6 -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/fact_distinct_columns -jobname Kylin_Fact_Distinct_Columns_test_kylin_cube_with_slr_empty_Step_1",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_FACTDISTINCT",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build Dimension Dictionary",
+         "sequence_id":2,
+         "exec_cmd":" -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/fact_distinct_columns",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NO_MR_DICTIONARY",
+         "info":null,
+         "run_async":false
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build Base Cuboid Data",
+         "sequence_id":3,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/kylin_intermediate_test_kylin_cube_with_slr_desc_19700101000000_20140731160000_c143e0e4_ac5f_434d_acf3_46b0d15e3dc6 -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/base_cuboid -jobname Kylin_Base_Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_3 -level 0",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_BASECUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 8-Dimension",
+         "sequence_id":4,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/base_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/8d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_4 -level 1",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 7-Dimension",
+         "sequence_id":5,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/8d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/7d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_5 -level 2",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 6-Dimension",
+         "sequence_id":6,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/7d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/6d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_6 -level 3",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 5-Dimension",
+         "sequence_id":7,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/6d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/5d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_7 -level 4",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Build N-Dimension Cuboid Data : 4-Dimension",
+         "sequence_id":8,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -segmentname 19700101000000_20140731160000 -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/5d_cuboid -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/4d_cuboid -jobname Kylin_ND-Cuboid_Builder_test_kylin_cube_with_slr_empty_Step_8 -level 5",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NDCUBOID",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Calculate HTable Region Splits",
+         "sequence_id":9,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/* -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/rowkey_stats -jobname Kylin_Region_Splits_Calculator_test_kylin_cube_with_slr_empty_Step_9 -cubename test_kylin_cube_with_slr_empty",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_RANGEKEYDISTRIBUTION",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Create HTable",
+         "sequence_id":10,
+         "exec_cmd":" -cubename test_kylin_cube_with_slr_empty -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/rowkey_stats/part-r-00000 -htablename KYLIN-CUBE-TEST_KYLIN_CUBE_WITH_SLR_EMPTY-19700101000000_20140731160000_11BB4326-5975-4358-804C-70D53642E03A",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADDOP_NO_MR_CREATEHTABLE",
+         "info":null,
+         "run_async":false
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Convert Cuboid Data to HFile",
+         "sequence_id":11,
+         "exec_cmd":" -conf C:/kylin/Kylin/server/src/main/resources/hadoop_job_conf_medium.xml -cubename test_kylin_cube_with_slr_empty -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/cuboid/* -output /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/hfile -htablename KYLIN-CUBE-TEST_KYLIN_CUBE_WITH_SLR_EMPTY-19700101000000_20140731160000_11BB4326-5975-4358-804C-70D53642E03A -jobname Kylin_HFile_Generator_test_kylin_cube_with_slr_empty_Step_11",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_CONVERTHFILE",
+         "info":null,
+         "run_async":true
+      },
+      {  
+         "interruptCmd":null,
+         "name":"Load HFile to HBase Table",
+         "sequence_id":12,
+         "exec_cmd":" -input /tmp/kylin-c143e0e4-ac5f-434d-acf3-46b0d15e3dc6/test_kylin_cube_with_slr_empty/hfile/ -htablename KYLIN-CUBE-TEST_KYLIN_CUBE_WITH_SLR_EMPTY-19700101000000_20140731160000_11BB4326-5975-4358-804C-70D53642E03A -cubename test_kylin_cube_with_slr_empty",
+         "interrupt_cmd":null,
+         "exec_start_time":0,
+         "exec_end_time":0,
+         "exec_wait_time":0,
+         "step_status":"PENDING",
+         "cmd_type":"JAVA_CMD_HADOOP_NO_MR_BULKLOAD",
+         "info":null,
+         "run_async":false
+      }
+   ],
+   "job_status":"PENDING",
+   "progress":0.0
+}
+{% endhighlight %}
+
+### Get job step output
+`GET /{jobId}/steps/{stepId}/output`
+
+#### Path Variable
+* jobId - `required` `string` Job id.
+* stepId - `required` `string` Step id; the step id is composed by jobId with step sequence id; for example, the jobId is "fb479e54-837f-49a2-b457-651fc50be110", its 3rd step id is "fb479e54-837f-49a2-b457-651fc50be110-3", 
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+{  
+   "cmd_output":"log string"
+}
+{% endhighlight %}
+
+
+### Get Hive Table
+`GET /tables/{tableName}`
+
+#### Request Parameters
+* tableName - `required` `string` table name to find.
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+{
+    uuid: "69cc92c0-fc42-4bb9-893f-bd1141c91dbe",
+    name: "SAMPLE_07",
+    columns: [{
+        id: "1",
+        name: "CODE",
+        datatype: "string"
+    }, {
+        id: "2",
+        name: "DESCRIPTION",
+        datatype: "string"
+    }, {
+        id: "3",
+        name: "TOTAL_EMP",
+        datatype: "int"
+    }, {
+        id: "4",
+        name: "SALARY",
+        datatype: "int"
+    }],
+    database: "DEFAULT",
+    last_modified: 1419330476755
+}
+{% endhighlight %}
+
+### Get Hive Table  (Extend Info)
+`GET /tables/{tableName}/exd-map`
+
+#### Request Parameters
+* tableName - `optional` `string` table name to find.
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+{
+    "minFileSize": "46055",
+    "totalNumberFiles": "1",
+    "location": "hdfs://sandbox.hortonworks.com:8020/apps/hive/warehouse/sample_07",
+    "lastAccessTime": "1418374103365",
+    "lastUpdateTime": "1398176493340",
+    "columns": "struct columns { string code, string description, i32 total_emp, i32 salary}",
+    "partitionColumns": "",
+    "EXD_STATUS": "true",
+    "maxFileSize": "46055",
+    "inputformat": "org.apache.hadoop.mapred.TextInputFormat",
+    "partitioned": "false",
+    "tableName": "sample_07",
+    "owner": "hue",
+    "totalFileSize": "46055",
+    "outputformat": "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat"
+}
+{% endhighlight %}
+
+### Get Hive Tables
+`GET /tables`
+
+#### Request Parameters
+* project- `required` `string` will list all tables in the project.
+* ext- `optional` `boolean`  set true to get extend info of table.
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+[
+ {
+    uuid: "53856c96-fe4d-459e-a9dc-c339b1bc3310",
+    name: "SAMPLE_08",
+    columns: [{
+        id: "1",
+        name: "CODE",
+        datatype: "string"
+    }, {
+        id: "2",
+        name: "DESCRIPTION",
+        datatype: "string"
+    }, {
+        id: "3",
+        name: "TOTAL_EMP",
+        datatype: "int"
+    }, {
+        id: "4",
+        name: "SALARY",
+        datatype: "int"
+    }],
+    database: "DEFAULT",
+    cardinality: {},
+    last_modified: 0,
+    exd: {
+        minFileSize: "46069",
+        totalNumberFiles: "1",
+        location: "hdfs://sandbox.hortonworks.com:8020/apps/hive/warehouse/sample_08",
+        lastAccessTime: "1398176495945",
+        lastUpdateTime: "1398176495981",
+        columns: "struct columns { string code, string description, i32 total_emp, i32 salary}",
+        partitionColumns: "",
+        EXD_STATUS: "true",
+        maxFileSize: "46069",
+        inputformat: "org.apache.hadoop.mapred.TextInputFormat",
+        partitioned: "false",
+        tableName: "sample_08",
+        owner: "hue",
+        totalFileSize: "46069",
+        outputformat: "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat"
+    }
+}, {
+    uuid: "82d72d9c-705c-4706-aaf5-358ac2661cf9",
+    name: "TEST_KYLIN_FACT",
+    columns: [{
+        id: "1",
+        name: "TRANS_ID",
+        datatype: "bigint"
+    }, {
+        id: "2",
+        name: "CAL_DT",
+        datatype: "date"
+    }, {
+        id: "3",
+        name: "LSTG_FORMAT_NAME",
+        datatype: "string"
+    }, {
+        id: "4",
+        name: "LEAF_CATEG_ID",
+        datatype: "int"
+    }, {
+        id: "5",
+        name: "LSTG_SITE_ID",
+        datatype: "int"
+    }, {
+        id: "6",
+        name: "SLR_SEGMENT_CD",
+        datatype: "smallint"
+    }, {
+        id: "7",
+        name: "PRICE",
+        datatype: "decimal(38,16)"
+    }, {
+        id: "8",
+        name: "ITEM_COUNT",
+        datatype: "bigint"
+    }, {
+        id: "9",
+        name: "SELLER_ID",
+        datatype: "bigint"
+    }],
+    database: "DEFAULT",
+    cardinality: {},
+    last_modified: 0,
+    exd: {
+        minFileSize: "607328",
+        totalNumberFiles: "1",
+        location: "hdfs://sandbox.hortonworks.com:8020/apps/hive/warehouse/test_kylin_fact",
+        lastAccessTime: "1418899958520",
+        lastUpdateTime: "1414051037179",
+        columns: "struct columns { i64 trans_id, date cal_dt, string lstg_format_name, i32 leaf_categ_id, i32 lstg_site_id, i16 slr_segment_cd, decimal(38,16) price, i64 item_count, i64 seller_id}",
+        partitionColumns: "",
+        EXD_STATUS: "true",
+        maxFileSize: "607328",
+        inputformat: "org.apache.hadoop.mapred.TextInputFormat",
+        partitioned: "false",
+        tableName: "test_kylin_fact",
+        owner: "root",
+        totalFileSize: "607328",
+        outputformat: "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat"
+    }
+ }
+]
+{% endhighlight %}
+
+### Load Hive Tables
+`POST /tables/{tables}/{project}`
+
+* tables- `required` `string` tables you want to load from hive,split with comma.
+* project- `required` `String`  specif.
+
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}
+{% highlight Groff markup %}
+{
+    "result.loaded": ["DEFAULT.SAMPLE_07"],
+    "result.unloaded": ["sapmle_08"]
+}
+{% endhighlight %}
+
+
+### Wipe cache
+`GET /cache/{type}/{name}/{action}`
+
+#### Path variable
+* type - `required` `string` 'METADATA' or 'CUBE'
+* name - `required` `string` Cache key.
+* action - `required` `string` 'create', 'update' or 'drop'
+
+#### Response Sample
+{% highlight Groff markup %}
+Status: 200OK
+{% endhighlight %}

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/FAQ/2015-05-18-FAQ-on-Kylin-Installation-and-Usage.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/FAQ/2015-05-18-FAQ-on-Kylin-Installation-and-Usage.md b/docs/website/_posts/FAQ/2015-05-18-FAQ-on-Kylin-Installation-and-Usage.md
new file mode 100644
index 0000000..511f8e6
--- /dev/null
+++ b/docs/website/_posts/FAQ/2015-05-18-FAQ-on-Kylin-Installation-and-Usage.md
@@ -0,0 +1,46 @@
+---
+layout: post
+title:  "FAQ on Kylin Installation and Usage"
+date:   2015-05-18
+author: liyang-gmt8
+categories: faq
+---
+
+#### Some NPM error causes ERROR exit (中国大陆地区用户请特别注意此问题)?
+Check out [https://github.com/KylinOLAP/Kylin/issues/35](https://github.com/KylinOLAP/Kylin/issues/35)
+
+#### Can't get master address from ZooKeeper" when installing Kylin on Hortonworks Sandbox
+Check out [https://github.com/KylinOLAP/Kylin/issues/9](https://github.com/KylinOLAP/Kylin/issues/9).
+
+#### Install scripted finished in my virtual machine, but cannot visit via http://localhost:9080
+Check out [https://github.com/KylinOLAP/Kylin/issues/12](https://github.com/KylinOLAP/Kylin/issues/12).
+
+#### Map Reduce Job information can't display on sandbox deployment
+Check out [https://github.com/KylinOLAP/Kylin/issues/40](https://github.com/KylinOLAP/Kylin/issues/40)
+
+#### Install Kylin on CDH 5.2 or Hadoop 2.5.x
+Check out discussion: [https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/kylin-olap/X0GZfsX1jLc/nzs6xAhNpLkJ](https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/kylin-olap/X0GZfsX1jLc/nzs6xAhNpLkJ)
+{% highlight Groff markup %}
+I was able to deploy Kylin with following option in POM.
+<hadoop2.version>2.5.0</hadoop2.version>
+<yarn.version>2.5.0</yarn.version>
+<hbase-hadoop2.version>0.98.6-hadoop2</hbase-hadoop2.version>
+<zookeeper.version>3.4.5</zookeeper.version>
+<hive.version>0.13.1</hive.version>
+My Cluster is running on Cloudera Distribution CDH 5.2.0.
+{% endhighlight %}
+
+#### Unable to load a big cube as HTable, with java.lang.OutOfMemoryError: unable to create new native thread
+HBase (as of writing) allocates one thread per region when bulk loading a HTable. Try reduce the number of regions of your cube by setting its "capacity" to "MEDIUM" or "LARGE". Also tweaks OS & JVM can allow more threads, for example see [this article](http://blog.egilh.com/2006/06/2811aspx.html).
+
+#### Failed to run BuildCubeWithEngineTest, saying failed to connect to hbase while hbase is active
+User may get this error when first time run hbase client, please check the error trace to see whether there is an error saying couldn't access a folder like "/hadoop/hbase/local/jars"; If that folder doesn't exist, create it.
+
+#### SUM(field) returns a negtive result while all the numbers in this field are > 0
+If a column is declared as integer in Hive, the SQL engine (calcite) will use column's type (integer) as the data type for "SUM(field)", while the aggregated value on this field may exceed the scope of integer; in that case the cast will cause a negtive value be returned; The workround is, alter that column's type to BIGINT in hive, and then sync the table schema to Kylin (the cube doesn't need rebuild); Keep in mind that, always declare as BIGINT in hive for an integer column which would be used as a measure in Kylin; See hive number types: [https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types#LanguageManualTypes-NumericTypes](https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types#LanguageManualTypes-NumericTypes)
+
+#### Why Kylin need extract the distinct columns from Fact Table before building cube?
+Kylin uses dictionary to encode the values in each column, this greatly reduce the cube's storage size. To build the dictionary, Kylin need fetch the distinct values for each column.
+
+#### Why Kylin calculate the HIVE table cardinality?
+The cardinality of dimensions is an important measure of cube complexity. The higher the cardinality, the bigger the cube, and thus the longer to build and the slower to query. Cardinality > 1,000 is worth attention and > 1,000,000 should be avoided at best effort. For optimal cube performance, try reduce high cardinality by categorize values or derive features.

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/How to/2014-10-23-Kylin-web-front-end-summary.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/How to/2014-10-23-Kylin-web-front-end-summary.md b/docs/website/_posts/How to/2014-10-23-Kylin-web-front-end-summary.md
new file mode 100644
index 0000000..7d3cb77
--- /dev/null
+++ b/docs/website/_posts/How to/2014-10-23-Kylin-web-front-end-summary.md	
@@ -0,0 +1,47 @@
+---
+layout: post
+title:  "Kylin web front end summary"
+date:   2014-10-23
+author: xduo
+categories: howto
+---
+
+### Project Dependencies
+* npm: used in development phase to install grunt and bower
+* grunt: build and set up kylin web
+* bower: manage kylin tech dependencies
+
+### Tech Dependencies
+* Angular JS: fundamental support of kylin web
+* ACE: sql and json editor
+* D3 JS: draw report chart and cube graph
+* Bootstrap: css lib
+
+### Supported Use Cases:
+
+###### Kylin web supports needs of various of roles in BI workflow. 
+
+* Analyst: Run query and checkout results
+* Modeler: cube design, cube/job operation and monitor
+* Admin: system operation.
+
+### Tech Overview 
+Kylin web is a one-page application build on top of restful services. Kylin web uses tools from nodejs to manage project and use AngularJS to enable one-page web app. Kylin web uses popular techs from js opensource community making it easy to catch up and contribute. 
+
+### Highlights:
+* Query utility functions:
+    * SQL auto-suggestions on table and column name
+    * Query remote/local save.
+    * Data grid supporting million level data with easy BI operations
+    * Data export
+    * Simple data visualization(line, bar, pie)
+* Cube management:
+    * Well-designed cube creation flow
+    * Visualization of cube relational structure.
+    * Well-designed cube access management
+* Job management:
+    * Job steps and log monitor
+    * Kill
+    * Resume
+* Useful admin tools.
+* Refined look&feel.



[3/5] incubator-kylin git commit: update website structure and content

Posted by lu...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/How to/2014-10-24-How-to-Contribute.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/How to/2014-10-24-How-to-Contribute.md b/docs/website/_posts/How to/2014-10-24-How-to-Contribute.md
new file mode 100644
index 0000000..047f822
--- /dev/null
+++ b/docs/website/_posts/How to/2014-10-24-How-to-Contribute.md	
@@ -0,0 +1,52 @@
+---
+layout: post
+title:  "How to Contribute"
+date:   2014-10-24
+author: liyang-gmt8
+categories: howto
+---
+
+#### Setup Dev Env
+* Join [google group](https://groups.google.com/forum/#!forum/kylin-olap) for general discussion
+* Fork on [GitHub](https://github.com/KylinOLAP)
+* ...
+
+
+#### Making Changes
+* Raise an issue on GitHub, describe the feature/enhancement/bug
+* Discuss with others in google group or issue comments, make sure the proposed changes fit in with what others are doing and have planned for the project
+* Make changes in your fork
+* Write unit test if no existing cover your change
+* Push to GitHub under your fork
+
+
+#### Contribute The Work
+* Raise a pull request on GitHub, include both **code** and **test**, link with **related issue**
+* Committer will review in terms of correctness, performance, design, coding style, test coverage
+* Discuss and revise if necessary
+* Finally committer merge code into main branch
+
+
+#### Wish List
+
+###### Some potential work items
+* Query Engine
+  + Cache generated class, reduce delay into ms level and avoid full GC triggered by perm generation
+  + [Issue #14](https://github.com/KylinOLAP/Kylin/issues/14) Derive meaningful cost in OLAP relational operator
+  + [Issue #15](https://github.com/KylinOLAP/Kylin/issues/15) Implement multi-column distinct count
+* Metadata
+  + [Issue #7](https://github.com/KylinOLAP/Kylin/issues/7) Merge multiple hbase tables
+* Job Engine
+  + [Issue #16](https://github.com/KylinOLAP/Kylin/issues/16) Tune HDFS & HBase parameters
+  + [Issue #17](https://github.com/KylinOLAP/Kylin/issues/17) Increase HDFS block size 1GB or close
+  + Shell command to support kill operation
+  + Use DoubleDouble instead of BigDecimal during cube build
+  + Drop quartz dependency, assess the cost/benefit first
+  + Cardinality run as one step job, allows progress tracking
+* ODBC/JDBC
+  + Test Kylin remote JDBC with java report tools
+  + Implement ODBC async mode, fetching from Kylin and feeding to client in parallel
+* Benchmark
+  + [Issue #18](https://github.com/KylinOLAP/Kylin/issues/18) Benchmark on standard dataset
+
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/How to/2014-11-14-How to install kylin in your Hadoop cluster.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/How to/2014-11-14-How to install kylin in your Hadoop cluster.md b/docs/website/_posts/How to/2014-11-14-How to install kylin in your Hadoop cluster.md
new file mode 100644
index 0000000..30ef3a3
--- /dev/null
+++ b/docs/website/_posts/How to/2014-11-14-How to install kylin in your Hadoop cluster.md	
@@ -0,0 +1,54 @@
+---
+layout: post
+title:  "How to install kylin in your Hadoop cluster"
+date:   2014-11-14
+author: xfhap
+categories: howto
+---
+
+## 1 Environment
+We can open the Kylin’ code directory and read the pom.xml, and find some components version:
+
+### 1.1 Install hadoop cluster
+
+{% highlight Groff markup %}
+  <hadoop2.version>2.4.1</hadoop2.version>
+  <hbase-hadoop2.version>0.98.0-hadoop2</hbase-hadoop2.version>
+  <hive.version>0.13.0</hive.version> (ps: install mysql --use mysql to store metastore_db)
+{% endhighlight %}
+
+Attach:
+
+1) When you build the cube and get this error: java.net.ConnectException: to 0.0.0.0:10020 failed on connection exception, you can try to change this file.
+
+config ${hadoop install}/etc/hadoop/mapred-site.xml, and add this code:
+{% highlight Groff markup %}
+  <property>
+    <name>mapreduce.jobhistory.address</name>
+    <value>host:10020</value>
+  </property>
+{% endhighlight %}
+
+Execute this cmd after the configuration:
+$ mr-jobhistory-daemon.sh start historyserver
+
+2) The version of hadoop which Hbase used must be same as the hadoop cluster.
+
+For example:
+
+In Hbase0.98.0-hadoop2 use hadoop 2.2.0, if your hadoop cluster is 2.4.1, then you need to replace all the hadoop jars from 2.2.0 to 2.4.1.
+
+### 1.2	Install other components
+
+Command hadoop, hive, hbase is workable on your hadoop cluster, this step can read this link [https://github.com/KylinOLAP/Kylin/wiki/On-Hadoop-CLI-installation](https://github.com/KylinOLAP/Kylin/wiki/On-Hadoop-CLI-installation)
+{% highlight Groff markup %}
+  <javaVersion>1.7</javaVersion>
+  Maven
+  Git
+  Tomcat (CATALINA_HOME being set)
+  Npm
+{% endhighlight %}
+
+## 2 Install Kylin
+
+### 2.1	Run the deploy.sh

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/How to/2014-12-09-New-meta-data-model-structure.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/How to/2014-12-09-New-meta-data-model-structure.md b/docs/website/_posts/How to/2014-12-09-New-meta-data-model-structure.md
new file mode 100644
index 0000000..8dc0e86
--- /dev/null
+++ b/docs/website/_posts/How to/2014-12-09-New-meta-data-model-structure.md	
@@ -0,0 +1,31 @@
+---
+layout: post
+title:  "New meta data model structure"
+date:   2014-12-09
+author: shaofengshi
+categories: howto
+---
+
+Kylin is doing a round code refactor which will introduce the following two changes on meta data:
+
+* Abstract a "model_desc" layer from "cube_desc"
+
+Before define a cube, user will need firstly define a model ("model_desc"); The model defines which is the fact table, which are lookup tables and how they be joined;
+
+With the model be defined, when user define a cube ("cube_desc"), he/she only need to specify the table/column name for a dimension, as the join conditions have already been defined;
+
+This abstraction is to extend the meta data to fulfill non-cube queries (coming soon);
+
+* Support data tables from multiple hive databases;
+
+User has the case that tables are from multiple hive database, and the table name might be the same; To support this case Kylin will use the database name + table name as the unique name for tables; And user need to specify the database name (if it is not "default") in SQL when query Kylin. 
+
+Here is a sample; the fact table "test_kylin_fact" is from default hive database, you don't need to specify the db name; while lookup table is from "edw", you need use "edw.test_cal_dt" in the query:
+
+{% highlight Groff markup %}
+select test_cal_dt.Week_Beg_Dt, sum(price) as c1, count(1) as c2 
+ from test_kylin_fact
+ inner JOIN edw.test_cal_dt as test_cal_dt
+ ON test_kylin_fact.cal_dt = test_cal_dt.cal_dt 
+ where test_kylin_fact.lstg_format_name='ABIN' 
+{% endhighlight %}

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/How to/2015-01-04-Run-Kylin-test-case-with-HBase-Mini-Cluster.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/How to/2015-01-04-Run-Kylin-test-case-with-HBase-Mini-Cluster.md b/docs/website/_posts/How to/2015-01-04-Run-Kylin-test-case-with-HBase-Mini-Cluster.md
new file mode 100644
index 0000000..33ad1b7
--- /dev/null
+++ b/docs/website/_posts/How to/2015-01-04-Run-Kylin-test-case-with-HBase-Mini-Cluster.md	
@@ -0,0 +1,23 @@
+---
+layout: post
+title:  "Run Kylin test case with HBase Mini Cluster"
+date:   2015-01-04
+author: shaofengshi
+categories: howto
+---
+
+## Run test case with HBase Mini Cluster
+
+Kylin is moving as many as possible unit test cases from sandbox to HBase mini cluster, so that user can run tests easily in local without a hadoop sandbox; Two maven profiles are created in the root pom.xml, "default" and "sandbox"; The default profile will startup a HBase Mini Cluster to prepare the test data and run the unit tests (the test cases that are not supported by Mini cluster have been added in the "exclude" list); If you want to keep using Sandbox to run test, just run:
+mvn test -P sandbox
+
+
+### When use the "default" profile, Kylin will:
+
+* 	Startup a HBase minicluster and update KylinConfig with the dynamic HBase configurations;
+* 	Create Kylin metadata tables and import six example cube tables;
+* 	Import the hbase data from a tar ball from local: examples/test_case_data/minicluster/hbase-export.tar.gz (the hbase-export.tar.gz will be updated on complete of running BuildCubeWithEngineTest)
+* 	After all test cases be completed, shutdown minicluster and cleanup KylinConfig cache;
+
+### To ensure Mini cluster can run successfully, you need:
+* 	Make sure JAVA_HOME is properly set; 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/How to/2015-03-03-How-to-consume-Kylin-REST-API-in-javascript.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/How to/2015-03-03-How-to-consume-Kylin-REST-API-in-javascript.md b/docs/website/_posts/How to/2015-03-03-How-to-consume-Kylin-REST-API-in-javascript.md
new file mode 100644
index 0000000..1598945
--- /dev/null
+++ b/docs/website/_posts/How to/2015-03-03-How-to-consume-Kylin-REST-API-in-javascript.md	
@@ -0,0 +1,49 @@
+---
+layout: post
+title:  "How to consume Kylin REST API in javascript"
+date:   2015-03-03
+author: liyang-gmt8
+categories: howto
+---
+Kypin securicty authorization is based on basic access authorization, so when you want to use API in your javascript,you need to involve the authorization info in http headers.
+
+
+## Here is a demo show how to use Kylin Query API.
+{% highlight Groff markup %}
+$.ajaxSetup({
+      headers: { 'Authorization': "Basic eWFu**********X***ZA==", 'Content-Type': 'application/json;charset=utf-8' } // use your own authorization code here
+    });
+    var request = $.ajax({
+       url: "http://hostname/kylin/api/query",
+       type: "POST",
+       data: '{"sql":"select count(*) from SUMMARY;","offset":0,"limit":50000,"partial":true,"project":"test"}',
+       dataType: "json"
+    });
+    request.done(function( msg ) {
+       alert(msg);
+    }); 
+    request.fail(function( jqXHR, textStatus ) {
+       alert( "Request failed: " + textStatus );
+  });
+
+{% endhighlight %}
+
+
+For what is basic access authorization ,click here [http://en.wikipedia.org/wiki/Basic_access_authentication](http://en.wikipedia.org/wiki/Basic_access_authentication)
+
+## Keypoint:
+1. add basic access authorization info in heders.
+2. use right ajax type and right data synax
+
+How to generate your authorization code (download and import "jquery.base64.js" from [https://github.com/yckart/jquery.base64.js](https://github.com/yckart/jquery.base64.js))
+
+{% highlight Groff markup %}
+var authorizationCode = $.base64('encode', 'NT_USERNAME' + ":" + 'NT_PASSWORD');
+ 
+$.ajaxSetup({
+   headers: { 
+    'Authorization': "Basic " + authorizationCode, 
+    'Content-Type': 'application/json;charset=utf-8' 
+   }
+});
+{% endhighlight %}

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/How to/2015-03-05-Kylin-Metadata-Store.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/How to/2015-03-05-Kylin-Metadata-Store.md b/docs/website/_posts/How to/2015-03-05-Kylin-Metadata-Store.md
new file mode 100644
index 0000000..98525b0
--- /dev/null
+++ b/docs/website/_posts/How to/2015-03-05-Kylin-Metadata-Store.md	
@@ -0,0 +1,47 @@
+---
+layout: post
+title:  "Kylin Metadata Store"
+date:   2015-03-05
+author: hongbin ma
+categories: howto
+---
+
+Kylin organizes all of its metadata(including cube descriptions and instances, projects, inverted index description and instances, jobs, tables and dictionaries) as a hierarchy file system. However, Kylin uses hbase to store it, rather than normal file system. If you check your kylin configuration file(kylin.properties) you will find such a line:
+
+{% highlight Groff markup %}
+# The metadata store in hbase
+kylin.metadata.url=kylin_metadata_qa@hbase:sandbox.hortonworks.com:2181:/hbase-unsecure
+{% endhighlight %}
+
+
+This indicates that the metadata will be saved as a htable called `kylin_metadata_qa`. You can scan the htable in hbase shell to check it out.
+
+# Backup Metadata Store
+
+Sometimes you need to backup the Kylin's Metadata Store from hbase to your disk file system.
+In such cases, assuming you're on the hadoop CLI(or sandbox) where you deployed Kylin, you can use:
+
+{% highlight Groff markup %}
+mkdir ~/meta_dump
+
+hbase  org.apache.hadoop.util.RunJar  PATH_TO_KYLIN_JOB_JAR_FOLDER/kylin-job-x.x.x-SNAPSHOT-job.jar com.kylinolap.common.persistence.ResourceTool  copy PATH_TO_KYLIN_CONFIG/kylin.properties ~/meta_dump
+{% endhighlight %}
+
+to dump your metadata to your local folder ~/meta_dump.
+
+# Restore Metadata Store
+
+In case you find your metadata store messed up, and you want to restore to a previous backup:
+
+first clean up the metadata store:
+
+{% highlight Groff markup %}
+hbase  org.apache.hadoop.util.RunJar PATH_TO_KYLIN_JOB_JAR_FOLDER/kylin-job-x.x.x-SNAPSHOT-job.jar com.kylinolap.common.persistence.ResourceTool  reset 
+{% endhighlight %}
+
+then upload the backup metadata in ~/meta_dump to Kylin's metadata store:
+
+{% highlight Groff markup %}
+hbase  org.apache.hadoop.util.RunJar  PATH_TO_KYLIN_JOB_JAR_FOLDER/kylin-job-x.x.x-SNAPSHOT-job.jar com.kylinolap.common.persistence.ResourceTool  copy ~/meta_dump PATH_TO_KYLIN_CONFIG/kylin.properties
+{% endhighlight %}
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/How to/2015-03-18-How-to-use-kylin-remote-jdbc-driver.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/How to/2015-03-18-How-to-use-kylin-remote-jdbc-driver.md b/docs/website/_posts/How to/2015-03-18-How-to-use-kylin-remote-jdbc-driver.md
new file mode 100644
index 0000000..e58ff10
--- /dev/null
+++ b/docs/website/_posts/How to/2015-03-18-How-to-use-kylin-remote-jdbc-driver.md	
@@ -0,0 +1,93 @@
+---
+layout: post
+title:  "How to use kylin remote jdbc driver"
+date:   2015-03-18
+author: SHAOFENG SHI
+categories: howto
+---
+
+### Authentication
+
+###### Build on kylin authentication restful service. Supported parameters:
+* user : username 
+* password : password
+* ssl: true/false. Default be false; If true, all the services call will use https.
+
+### Connection URL format:
+{% highlight Groff markup %}
+jdbc:kylin://<hostname>:<port>/<kylin_project_name>
+{% endhighlight %}
+* If "ssl" = true, the "port" should be Kylin server's HTTPS port; 
+* If "port" is not specified, the driver will use default port: HTTP 80, HTTPS 443;
+* The "kylin_project_name" must be specified and user need ensure it exists in Kylin server;
+
+### 1. Query with Statement
+{% highlight Groff markup %}
+        Driver driver = (Driver) Class.forName("org.apache.kylin.jdbc.Driver").newInstance();
+
+        Properties info = new Properties();
+        info.put("user", "ADMIN");
+        info.put("password", "KYLIN");
+        Connection conn = driver.connect("jdbc:kylin://localhost:7070/kylin_project_name", info);
+        Statement state = conn.createStatement();
+        ResultSet resultSet = state.executeQuery("select * from test_table");
+
+        while (resultSet.next()) {
+            assertEquals("foo", resultSet.getString(1));
+            assertEquals("bar", resultSet.getString(2));
+            assertEquals("tool", resultSet.getString(3));
+        }
+{% endhighlight %}
+
+### 2. Query with PreparedStatement
+
+###### Supported prepared statement parameters:
+* setString
+* setInt
+* setShort
+* setLong
+* setFloat
+* setDouble
+* setBoolean
+* setByte
+* setDate
+* setTime
+* setTimestamp
+
+{% highlight Groff markup %}
+        Driver driver = (Driver) Class.forName("org.apache.kylin.jdbc.Driver").newInstance();
+        Properties info = new Properties();
+        info.put("user", "ADMIN");
+        info.put("password", "KYLIN");
+        Connection conn = driver.connect("jdbc:kylin://localhost:7070/kylin_project_name", info);
+        PreparedStatement state = conn.prepareStatement("select * from test_table where id=?");
+        state.setInt(1, 10);
+        ResultSet resultSet = state.executeQuery();
+
+        while (resultSet.next()) {
+            assertEquals("foo", resultSet.getString(1));
+            assertEquals("bar", resultSet.getString(2));
+            assertEquals("tool", resultSet.getString(3));
+        }
+{% endhighlight %}
+
+### 3. Get query result metadata
+Kylin jdbc driver supports metadata list methods:
+List catalog, schema, table and column with sql pattern filters(such as %).
+
+{% highlight Groff markup %}
+        Driver driver = (Driver) Class.forName("org.apache.kylin.jdbc.Driver").newInstance();
+        Properties info = new Properties();
+        info.put("user", "ADMIN");
+        info.put("password", "KYLIN");
+        Connection conn = driver.connect("jdbc:kylin://localhost:7070/kylin_project_name", info);
+        Statement state = conn.createStatement();
+        ResultSet resultSet = state.executeQuery("select * from test_table");
+
+        ResultSet tables = conn.getMetaData().getTables(null, null, "dummy", null);
+        while (tables.next()) {
+            for (int i = 0; i < 10; i++) {
+                assertEquals("dummy", tables.getString(i + 1));
+            }
+        }
+{% endhighlight %}

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/How to/2015-05-18-Export-Kylin-HBase-data.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/How to/2015-05-18-Export-Kylin-HBase-data.md b/docs/website/_posts/How to/2015-05-18-Export-Kylin-HBase-data.md
new file mode 100644
index 0000000..9237035
--- /dev/null
+++ b/docs/website/_posts/How to/2015-05-18-Export-Kylin-HBase-data.md	
@@ -0,0 +1,25 @@
+---
+layout: post
+title:  "Export Kylin HBase data"
+date:   2015-05-18
+author: SHAOFENG SHI
+categories: howto
+---
+
+Kylin persists all data (meta data and cube) in HBase; You may want to export the data sometimes for whatever purposes (backup, migration, troubleshotting etc); This page describes the steps to do this and also there is a Java app for you to do this easily;
+
+Steps:
+
+1. Cleanup unused cubes to save storage space (be cautious on production!): run the following command in hbase CLI: 
+{% highlight Groff markup %}
+hbase org.apache.hadoop.util.RunJar /${KYLIN_HOME}/lib/kylin-job-(version).jar org.apache.kylin.job.hadoop.cube.StorageCleanupJob --delete true
+{% endhighlight %}
+2. List all HBase tables, iterate and then export each Kylin table to HDFS; See [https://hbase.apache.org/book/ops_mgt.html#export](https://hbase.apache.org/book/ops_mgt.html#export)
+
+3. Copy the export folder from HDFS to local file system, and then archive it;
+
+4. (optional) Download the archive from Hadoop CLI to local;
+
+5. Cleanup the export folder from CLI HDFS and local file system;
+
+Kylin provide the "ExportHBaseData.java" (currently only exist in "minicluster" branch) for you to do the step 2-5 in one run; Please ensure the correct path of "kylin.properties" has been set in the sys env; This Java uses the sandbox config by default;

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Installation/2014-12-05-On-Hadoop-Kylin-installation-using-Docker.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Installation/2014-12-05-On-Hadoop-Kylin-installation-using-Docker.md b/docs/website/_posts/Installation/2014-12-05-On-Hadoop-Kylin-installation-using-Docker.md
new file mode 100644
index 0000000..726c11f
--- /dev/null
+++ b/docs/website/_posts/Installation/2014-12-05-On-Hadoop-Kylin-installation-using-Docker.md
@@ -0,0 +1,44 @@
+---
+layout: post
+title:  "On Hadoop Kylin installation using Docker"
+date:   2014-12-05
+author: abansal
+categories: installation
+---
+
+With help of SequenceIQ, we have put together a fully automated method of creating a Kylin cluster (along with Hadoop, HBase and Hive). The only thing you will need to do is to pull the container from the official Docker repository by using the commands listed below:
+
+### Pre-Requisite
+
+1. Docker (If you don't have Docker installed, follow this [link](https://docs.docker.com/installation/#installation))
+2. Minimum RAM - 4Gb (We'll be running Kylin, Hadoop, HBase & Hive)
+
+### Installation
+{% highlight Groff markup %}
+docker pull sequenceiq/kylin
+{% endhighlight %}
+
+Once the container is pulled you are ready to start playing with Kylin. Get the following helper functions from our Kylin GitHub [repository](https://github.com/sequenceiq/docker-kylin/blob/master/ambari-functions) - _(make sure you source it)._
+
+{% highlight Groff markup %}
+ $ wget https://raw.githubusercontent.com/sequenceiq/docker-kylin/master/ambari-functions
+ $ source ambari-functions
+{% endhighlight %}
+{% highlight Groff markup %}
+ $ kylin-deploy-cluster 3
+{% endhighlight %}
+
+You can specify the number of nodes you'd like to have in your cluster (3 in this case). Once we installed all the necessary Hadoop
+services we'll build Kylin on top of it and then you can reach the UI on: 
+{% highlight Groff markup %}
+#Ambari Dashboard
+http://<container_ip>:8080
+{% endhighlight %}
+Use `admin/admin` to login. Make sure HBase is running. 
+
+{% highlight Groff markup %}
+#Kylin Dashboard
+http://<container_ip>:7070
+{% endhighlight %}
+The default credentials to login are: `ADMIN:KYLIN`. The cluster is pre-populated with sample data and is ready to build cubes as shown [here](https://github.com/KylinOLAP/Kylin/wiki/Kylin-Cube-Creation-Tutorial).
+  

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Installation/2015-01-22-Advance-settings-of-Kylin-environment.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Installation/2015-01-22-Advance-settings-of-Kylin-environment.md b/docs/website/_posts/Installation/2015-01-22-Advance-settings-of-Kylin-environment.md
new file mode 100644
index 0000000..0338b13
--- /dev/null
+++ b/docs/website/_posts/Installation/2015-01-22-Advance-settings-of-Kylin-environment.md
@@ -0,0 +1,37 @@
+---
+layout: post
+title:  "Advance settings of Kylin environment"
+date:   2015-01-22
+author: hongbin ma
+categories: installation
+---
+
+## Enabling LZO compression
+
+LZO compression can be leveraged to compress the output of MR jobs, as well as hbase table storage, reducing the storage overhead. By default we do not enable LZO compression in Kylin because hadoop sandbox venders tend to not include LZO in their distributions due to license(GPL) issues.
+
+To enable LZO in Kylin, there are three steps:
+
+### Make sure LZO is working in your environment
+
+we have a simple tool to test whether LZO is well installed and configured in your environment(we only test it on the hadoop CLI that you deployed Kylin), Just run
+
+{% highlight Groff markup %}
+hbase org.apache.hadoop.util.RunJar kylin-job-latest.jar com.kylinolap.job.tools.LZOSupportnessChecker
+{% endhighlight %}
+
+If the program prints "LZO supported by current env? true", you're good to go. Otherwise you'll need to first install LZO properly.
+
+### Modify kylin_job_conf.xml
+
+You'll need to stop Kylin first by running `./kylin.sh stop`, and then modify /etc/kylin/kylin_job_conf.xml by uncommenting some configuration entries related to LZO compression. 
+
+### export KYLIN_LD_LIBRARY_PATH to carry your native library paths
+
+Before running `./kylin.sh start` again, you'll need to export KYLIN_LD_LIBRARY_PATH to carry your LZO native library paths. If you are not sure where it is, you can simply find it in /tmp/kylin_retrieve.sh, Kylin retrieved this from hbase, normally this should work. Here's an example for hdp 2.1:
+
+{% highlight Groff markup %}
+export KYLIN_LD_LIBRARY_PATH=::/usr/lib/hadoop/lib/native/Linux-amd64-64:/usr/lib/hadoop/lib/native
+{% endhighlight %}
+
+After exporting, you need to run `./kylin.sh start` to start Kylin again. Now Kylin will use LZO to compress MR outputs and hbase tables.

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Installation/2015-01-22-Kylin-Manual-Installation-Guide.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Installation/2015-01-22-Kylin-Manual-Installation-Guide.md b/docs/website/_posts/Installation/2015-01-22-Kylin-Manual-Installation-Guide.md
new file mode 100644
index 0000000..ae41465
--- /dev/null
+++ b/docs/website/_posts/Installation/2015-01-22-Kylin-Manual-Installation-Guide.md
@@ -0,0 +1,62 @@
+---
+layout: post
+title:  "Kylin Manual Installation Guide"
+date:   2015-01-22
+author: hongbin ma
+categories: installation
+---
+
+## INTRODUCTION
+
+In most cases our automated script [On-Hadoop-CLI-installation](https://github.com/KylinOLAP/Kylin/wiki/On-Hadoop-CLI-installation) can help you launch Kylin in your hadoop sandbox and even your hadoop cluster. However, in case something went wrong in the deploy script, this article comes as an reference guide to fix your issues.
+
+Basically this article explains every step in the automatic script. We assume that you are already very familiar with Hadoop operations on Linux. 
+
+## PREREQUISITES
+* Tomcat installed, with CATALINA_HOME exported. ([quick help](https://github.com/KylinOLAP/Kylin/wiki/On-Hadoop-CLI-installation#install-tomcat))
+* Maven installed, with `mvn` command accessible at shell. ([quick help](https://github.com/KylinOLAP/Kylin/wiki/On-Hadoop-CLI-installation#install-maven)) 
+* Npm installed, with command `npm` accessible at shell. ([quick help](https://github.com/KylinOLAP/Kylin/wiki/On-Hadoop-CLI-installation#install-npm))
+* Kylin git repo cloned to a folder later referenced as $KYLIN_HOME
+
+## STEPS
+
+### 1.Build kylin.war from source code
+
+We have provided a script( $KYLIN_HOME/package.sh ) to help you automate this step. The kylin.war composes of two parts: (Take a look at package.sh to better understand)
+
+* A REST server that accepts cube build requests, queries requests ,etc. This part is purely in Java, and is built by maven.
+* An angular-based web application, this is the real website users see, and it will call the REST APIs in the above REST server. This part is purely html+js, and is built by npm.
+
+Running package.sh will build both parts and combine them to a single kylin.war.
+
+### 2.Customize kylin configuration files 
+
+Kylin's configuration file includes a kylin.properties and a kylin_job_conf.xml for MR job settings. You can find a template for these two configuration files in $KYLIN_HOME/examples/test_case_data/sandbox/. They're almost ready to use, the only thing you need to do is copy them to a configuration folder(we suggest /etc/kylin, if you choose not to use it, you'll replace the "/etc/kylin" with yours in later occurrence) and replace every "sandbox" in kylin.properties with the real hostname of your server.
+
+When you find you cubes's expansion rate too large, you'll need to consider enabling LZO compression by modifying kylin_job_conf.xml, checkout [this chapter ](https://github.com/KylinOLAP/Kylin/wiki/Advance-settings-of-Kylin-environment#enabling-lzo-compression) to find how. For test cubes you can safely ignore this.
+
+### 3. Prepare tomcat
+* Copy $KYLIN_HOME/server/target/kylin.war to $CATALINA_HOME/webapps/, change kylin.war's mode to 644 in case tomcat have no access to it.
+* By default tomcat uses port 8080 as well as several other ports. However, these ports are already occupied in many hadoop sandboxes. For example, port 8080 is used by ambari on hortonworks sandbox. So you need to modify port if necessary. If you're not familiar with this, you can choose to overwrite $CATALINA_HOME/conf/server.xml with $KYLIN_HOME/deploy/server.xml. With our server.xml, kylin will run on port 7070.
+
+### 4. Prepare Jars
+
+There are two jars that Kylin will need to use, there two jars and configured in the default kylin.properties:
+
+####  kylin.job.jar=/tmp/kylin/kylin-job-latest.jar
+
+This is job jar that Kylin uses for MR jobs. You need to copy $KYLIN_HOME/job/target/kylin-job-latest.jar to /tmp/kylin/
+
+#### kylin.coprocessor.local.jar=/tmp/kylin/kylin-coprocessor-latest.jar
+
+This is a hbase coprocessor jar that Kylin will put on hbase. It is used for performance boosting. You need to copy $KYLIN_HOME/storage/target/kylin-coprocessor-latest.jar to /tmp/kylin/
+
+### 5. Start Kylin
+
+Start Kylin with
+
+`./kylin.sh start`
+
+and stop Kylin with
+
+`./Kylin.sh stop`

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Installation/2015-02-15-Off-Hadoop-CLI-Installation-(Dev-Env-Setup).md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Installation/2015-02-15-Off-Hadoop-CLI-Installation-(Dev-Env-Setup).md b/docs/website/_posts/Installation/2015-02-15-Off-Hadoop-CLI-Installation-(Dev-Env-Setup).md
new file mode 100644
index 0000000..236c353
--- /dev/null
+++ b/docs/website/_posts/Installation/2015-02-15-Off-Hadoop-CLI-Installation-(Dev-Env-Setup).md
@@ -0,0 +1,96 @@
+---
+layout: post
+title:  "Off Hadoop CLI Installation (Dev Env Setup)"
+date:   2015-02-15
+author: SHAOFENG SHI
+categories: installation
+---
+
+Off-Hadoop-CLI installation is usually for **development use**.
+
+Developers want to run kylin test cases or applications at their development machine. The scenario is depicted at [https://github.com/KylinOLAP/Kylin#off-hadoop-cli-installation](https://github.com/KylinOLAP/Kylin#off-hadoop-cli-installation).
+
+
+By following this tutorial, you will be able to build kylin test cubes by running a specific test case, and you can further run other test cases against the cubes having been built.
+
+
+## Environment on the Hadoop CLI
+
+Off-Hadoop-CLI installation requires you having a hadoop CLI machine (or a hadoop sandbox) as well as your local develop machine. To make things easier we strongly recommend you starting with running Kylin on a hadoop sandbox, like <http://hortonworks.com/products/hortonworks-sandbox/>. In the following tutorial we'll go with **Hortonworks Sandbox 2.2**. 
+
+### Start Hadoop
+
+In Hortonworks sandbox, ambari helps to launch hadoop:
+
+{% highlight Groff markup %}
+	ambari-agent start
+	ambari-server start
+{% endhighlight %}
+	
+With both command successfully run you can go to ambari home page at <http://yoursandboxip:8080> (user:admin,password:admin) to check everything's status. By default ambari disables Hbase, you'll need manually start the `Hbase` service.
+
+For other hadoop distribution, basically start the hadoop cluster, make sure HDFS, YARN, Hive, HBase are running.
+
+
+## Environment on the dev machine
+
+
+### Install maven
+
+The latest maven can be found at <http://maven.apache.org/download.cgi>, we create a symbolic so that `mvn` can be run anywhere.
+
+{% highlight Groff markup %}
+	cd ~
+	wget http://xenia.sote.hu/ftp/mirrors/www.apache.org/maven/maven-3/3.2.5/binaries/apache-maven-3.2.5-bin.tar.gz
+	tar -xzvf apache-maven-3.2.5-bin.tar.gz
+	ln -s /root/apache-maven-3.2.5/bin/mvn /usr/bin/mvn
+{% endhighlight %}
+
+### Compile
+
+First clone the Kylin project to your local:
+
+{% highlight Groff markup %}
+	git clone https://github.com/KylinOLAP/Kylin.git
+{% endhighlight %}
+	
+Install Kylin artifacts to the maven repo
+
+{% highlight Groff markup %}
+	mvn clean install -DskipTests
+{% endhighlight %}
+
+### Modify local configuration
+
+Local configuration must be modified to point to your hadoop sandbox (or CLI) machine. 
+
+* In **examples/test_case_data/sandbox/kylin.properties**
+   * Find `sandbox` and replace with your hadoop hosts (if you're using HDP sandbox, this can be skipped)
+   * Fine `kylin.job.run.as.remote.cmd` and change it to "true" (in code repository the default is false, which assume running it on hadoop CLI)
+   * Find `kylin.job.remote.cli.username` and `kylin.job.remote.cli.password`, fill in the user name and password used to login hadoop cluster for hadoop command execution; If you're using HDP sandbox, the default username is "root" and password is "hadoop".
+
+* In **examples/test_case_data/sandbox**
+   * For each configuration xml file, find all occurrence of `sandbox` and replace with your hadoop hosts; (if you're using HDP sandbox, this can be skipped)
+
+An alternative to the host replacement is updating your `hosts` file to resolve `sandbox` and `sandbox.hortonworks.com` to the IP of your sandbox machine.
+
+### Run unit tests
+
+Run a end-to-end cube building test
+ 
+{% highlight Groff markup %}
+	mvn test -Dtest=com.kylinolap.job.BuildCubeWithEngineTest -DfailIfNoTests=false
+{% endhighlight %}
+	
+Run other tests, the end-to-end cube building test is exclueded
+
+{% highlight Groff markup %}
+	mvn test
+{% endhighlight %}
+
+### Launch Kylin Web Server
+
+In your Eclipse IDE, launch `com.kylinolap.rest.DebugTomcat` with specifying VM arguments "-Dspring.profiles.active=sandbox". (By default Kylin server will listen on 7070 port; If you want to use another port, please specify it as a parameter when run `DebugTomcat)
+
+Check Kylin Web available at http://localhost:7070/kylin (user:ADMIN,password:KYLIN)
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Installation/2015-03-13-On-Hadoop-CLI-installation.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Installation/2015-03-13-On-Hadoop-CLI-installation.md b/docs/website/_posts/Installation/2015-03-13-On-Hadoop-CLI-installation.md
new file mode 100644
index 0000000..710301f
--- /dev/null
+++ b/docs/website/_posts/Installation/2015-03-13-On-Hadoop-CLI-installation.md
@@ -0,0 +1,149 @@
+---
+layout: post
+title:  "On Hadoop CLI installation"
+date:   2015-03-13
+author: Luke Han
+categories: installation
+---
+
+>For new users: Please go with v0.7.x, binary package and installation guide here: [http://kylin.incubator.apache.org/download/](http://kylin.incubator.apache.org/download/)
+> 
+> For Version: v0.6.6 only, tested: HDP 2.1/2.2 sandbox, HDP 2.1 Cluster
+
+
+On-Hadoop-CLI installation is for demo use, or for those who want to host their own web site to provide Kylin service. The scenario is depicted at <https://github.com/KylinOLAP/Kylin#on-hadoop-cli-installation>.
+
+Except for some prerequisite software installations, the core of Kylin installation is accomplished by running a single script. After running the script, you will be able to build sample cube and query the tables behind the cubes via a unified web interface.
+
+## Environment
+
+Running On-Hadoop-CLI installation requires you having access to a hadoop CLI, where you have full permissions to hdfs, hive, hbase and map-reduce. To make things easier we strongly recommend you starting with running Kylin on a hadoop sandbox, like <http://hortonworks.com/products/hortonworks-sandbox/>. In the following tutorial we'll go with **Hortonworks Sandbox 2.1/2.2** and **Cloudera QuickStart VM 5.1/5.2**. 
+
+To avoid permission issue, we suggest you using `root` account. The password for **Hortonworks Sandbox 2.1/2.2** is `hadoop` , for **Cloudera QuickStart VM 5.1/5.2** is `cloudera`.
+
+For account other than `root`, please make sure your account has privileges to access relative folders and files. For example, if you are using `cloudera` account in Cloudera VM, please run follow command first before run Kylin deploy script:
+
+{% highlight Groff markup %}
+sudo mkdir /etc/kylin
+sudo chmod -R 777 /etc/kylin
+{% endhighlight %}
+
+We also suggest you using bridged mode instead of NAT mode in your virtual box settings. Bridged mode will assign your sandbox an independent IP so that you can avoid issues like https://github.com/KylinOLAP/Kylin/issues/12
+
+### Start Hadoop
+
+For Hortonworks, ambari helps to launch hadoop:
+
+{% highlight Groff markup %}
+ambari-agent start
+ambari-server start
+{% endhighlight %}
+	
+With both command successfully run you can go to ambari homepage at <http://your_sandbox_ip:8080> (user:admin,password:admin) to check everything's status. **By default hortonworks ambari disables Hbase, you'll need manually start the `Hbase` service at ambari homepage.**
+
+![start hbase in ambari]( /images/On-Hadoop-CLI-installation/starthbase.png)
+
+For Cloudera, you can skip this step since they're by default activated.
+
+### Install tomcat
+
+The latest tomcat can be found at <http://tomcat.apache.org/download-70.cgi>, we need the variable `CATALINA_HOME` exported.
+
+{% highlight Groff markup %}
+cd ~
+wget http://apache.mirrors.lucidnetworks.net/tomcat/tomcat-7/v7.0.59/bin/apache-tomcat-7.0.59.tar.gz
+tar -xzvf apache-tomcat-7.0.59.tar.gz
+export CATALINA_HOME=~/apache-tomcat-7.0.59
+{% endhighlight %}
+
+### Install maven:
+
+For Cloudera, you can skip this step since maven is by default installed.
+
+The latest maven can be found at <http://maven.apache.org/download.cgi>, we create a symbolic so that `mvn` can be run anywhere.
+
+{% highlight Groff markup %}
+cd ~
+wget http://xenia.sote.hu/ftp/mirrors/www.apache.org/maven/maven-3/3.2.5/binaries/apache-maven-3.2.5-bin.tar.gz
+tar -xzvf apache-maven-3.2.5-bin.tar.gz 
+ln -s ~/apache-maven-3.2.5/bin/mvn /usr/bin/mvn
+{% endhighlight %}
+
+### Install npm
+
+Npm comes with latest versions of nodejs, just donwload nodejs from <http://nodejs.org/download/>, `npm` is located at the `/bin` folder of `nodejs`, we append the folder to `PATH` so that `npm` can be run anywhere.
+
+{% highlight Groff markup %}
+cd ~
+wget http://nodejs.org/dist/v0.10.32/node-v0.10.32-linux-x64.tar.gz
+tar -xzvf node-v0.10.32-linux-x64.tar.gz
+export PATH=~/node-v0.10.32-linux-x64/bin:$PATH
+{% endhighlight %}
+	
+## Build cubes & Query tables
+
+First clone the Kylin project to your local:
+
+{% highlight Groff markup %}
+git clone https://github.com/KylinOLAP/Kylin.git
+{% endhighlight %}
+	
+Go into the folder and run deploy script:
+
+{% highlight Groff markup %}	
+cd Kylin/
+./deploy.sh
+{% endhighlight %}
+
+At this point, if you're installing Kylin on a cluster, please take a look at this:[a limitation](https://issues.apache.org/jira/browse/KYLIN-604), If you're using a sandbox, please just go ahead.
+
+After successfully deployed, you can start run with:
+
+{% highlight Groff markup %}	
+cd Kylin/
+./kylin.sh start
+{% endhighlight %}
+
+And later stop it by:
+	
+{% highlight Groff markup %}
+cd Kylin/
+./kylin.sh stop
+{% endhighlight %}
+
+If you meet any problems, please check [FAQ](https://github.com/KylinOLAP/Kylin/wiki/FAQ-on-Kylin-Installation-and-Usage) first.
+This script will help to:
+
+1. Check your environment
+2. Build Kylin artifacts with Maven
+3. Generate some sample tables
+3. Create empty cubes for these tables
+4. Lauch a one-stop website to build cubes & query tables
+
+After successfully running the script, please navigate to <http://your_hostname:7070> to build your cube and query it. The username/password is ADMIN/KYLIN
+
+If you want to check detail log, you can find it at ${CATALINA_HOME}/logs/kylin.log
+
+### Build Cube in Cubes Tab
+
+![build cube]( /images/On-Hadoop-CLI-installation/cube.png)
+
+### Check Building Progress in Job Tab
+![check job status]( /images/On-Hadoop-CLI-installation/job.png)
+
+### Query Tables in Query Tab
+![query tables]( /images/On-Hadoop-CLI-installation/query.png)
+
+## What if I closed my VM?
+
+If you shut down the VM and restarted it, Kylin will not automatically start. Depending on whether you succeed in running the deploy.sh, you should:
+
+### If running deploy.sh failed last time
+1. Kill it if any tomcat instance exist
+2. Start over again
+
+### If running deploy.sh succeeded last time
+1. Kill it if any tomcat instance exist
+2. Make sure Hbase is running
+3. run `export CATALINA_HOME=~/apache-tomcat-7.0.56`
+4. run `sudo -i "${CATALINA_HOME}/bin/startup.sh"`

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Tutorial/2014-11-05-Kylin-Cube-Creation-Tutorial.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Tutorial/2014-11-05-Kylin-Cube-Creation-Tutorial.md b/docs/website/_posts/Tutorial/2014-11-05-Kylin-Cube-Creation-Tutorial.md
new file mode 100644
index 0000000..da56a26
--- /dev/null
+++ b/docs/website/_posts/Tutorial/2014-11-05-Kylin-Cube-Creation-Tutorial.md
@@ -0,0 +1,127 @@
+---
+layout: post
+title:  "Kylin Cube Creation Tutorial"
+date:   2014-11-15
+author: Kejia-Wang
+categories: tutorial
+---
+
+### I. Create a Project
+1. Go to `Query` page in top menu bar, then click `Manage Projects`.
+
+   ![]( /images/Kylin-Cube-Creation-Tutorial/1 manage-prject.png)
+
+2. Click the `+ Project` button to add a new project.
+
+   ![]( /images/Kylin-Cube-Creation-Tutorial/2 +project.png)
+
+3. Fulfill the following form and click `submit` button to send a request.
+
+   ![]( /images/Kylin-Cube-Creation-Tutorial/3 new-project.png)
+
+4. After success, there will be a notification show in the bottom.
+
+   ![]( /images/Kylin-Cube-Creation-Tutorial/3.1 pj-created.png)
+
+### II. Sync up a Table
+1. Click `Tables` in top bar and then click the `+ Sync` button to load hive table metadata.
+
+   ![]( /images/Kylin-Cube-Creation-Tutorial/4 +table.png)
+
+2. Enter the table names and click `Sync` to send a request.
+
+   ![]( /images/Kylin-Cube-Creation-Tutorial/5 hive-table.png)
+
+### III. Create a Cube
+To start with, click `Cubes` in top bar.Then click `+Cube` button to enter the cube designer page.
+
+![]( /images/Kylin-Cube-Creation-Tutorial/6 +cube.png)
+
+**Step 1. Cube Info**
+
+Fill up the basic information of the cube. Click `Next` to enter the next step.
+
+You can use letters, numbers and '_' to name your cube (Notice that space in name is not allowed).
+
+![]( /images/Kylin-Cube-Creation-Tutorial/7 cube-info.png)
+
+**Step 2. Dimensions**
+
+1. Set up the fact table.
+
+    ![]( /images/Kylin-Cube-Creation-Tutorial/8 dim-factable.png)
+
+2. Click `+Dimension` to add a new dimension.
+
+    ![]( /images/Kylin-Cube-Creation-Tutorial/8 dim-+dim.png)
+
+3. There are different types of dimensions that might be added to a cube. Here we list some of them for your reference.
+
+    * Dimensions from fact table.
+        ![]( /images/Kylin-Cube-Creation-Tutorial/8 dim-typeA.png)
+
+    * Dimensions from look up table.
+        ![]( /images/Kylin-Cube-Creation-Tutorial/8 dim-typeB-1.png)
+
+        ![]( /images/Kylin-Cube-Creation-Tutorial/8 dim-typeB-2.png)
+   
+    * Dimensions from look up table with hierarchy.
+        ![]( /images/Kylin-Cube-Creation-Tutorial/8 dim-typeC.png)
+
+    * Dimensions from look up table with derived dimensions.
+        ![]( /images/Kylin-Cube-Creation-Tutorial/8 dim-typeD.png)
+
+4. User can edit the dimension after saving it.
+   ![]( /images/Kylin-Cube-Creation-Tutorial/8 dim-edit.png)
+
+**Step 3. Measures**
+
+1. Click the `+Measure` to add a new measure.
+   ![]( /images/Kylin-Cube-Creation-Tutorial/9 meas-+meas.png)
+
+2. There are 5 different types of measure according to its expression: `SUM`, `MAX`, `MIN`, `COUNT` and `COUNT_DISTINCT`. Please be  carefully to choose the return type, which is related to the error rate of the `COUNT(DISTINCT)`.
+   * SUM
+
+     ![]( /images/Kylin-Cube-Creation-Tutorial/9 meas-sum.png)
+
+   * MIN
+
+     ![]( /images/Kylin-Cube-Creation-Tutorial/9 meas-min.png)
+
+   * MAX
+
+     ![]( /images/Kylin-Cube-Creation-Tutorial/9 meas-max.png)
+
+   * COUNT
+
+     ![]( /images/Kylin-Cube-Creation-Tutorial/9 meas-count.png)
+
+   * DISTINCT_COUNT
+
+     ![]( /images/Kylin-Cube-Creation-Tutorial/9 meas-distinct.png)
+
+**Step 4. Filter**
+
+This step is optional. You can add some condition filter in `SQL` format.
+
+![]( /images/Kylin-Cube-Creation-Tutorial/10 filter.png)
+
+**Step 5. Refresh Setting**
+
+This step is designed for incremental cube build. 
+
+![]( /images/Kylin-Cube-Creation-Tutorial/11 refresh-setting1.png)
+
+Choose partition type, partition column and start date.
+
+![]( /images/Kylin-Cube-Creation-Tutorial/11 refresh-setting2.png)
+
+**Step 6. Advanced Setting**
+
+![]( /images/Kylin-Cube-Creation-Tutorial/12 advanced.png)
+
+**Step 7. Overview & Save**
+
+You can overview your cube and go back to previous step to modify it. Click the `Save` button to complete the cube creation.
+
+![]( /images/Kylin-Cube-Creation-Tutorial/13 overview.png)

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Tutorial/2014-11-05-Kylin-ODBC-Driver-Tutorial.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Tutorial/2014-11-05-Kylin-ODBC-Driver-Tutorial.md b/docs/website/_posts/Tutorial/2014-11-05-Kylin-ODBC-Driver-Tutorial.md
new file mode 100644
index 0000000..cb88e4d
--- /dev/null
+++ b/docs/website/_posts/Tutorial/2014-11-05-Kylin-ODBC-Driver-Tutorial.md
@@ -0,0 +1,34 @@
+---
+layout: post
+title:  "Kylin ODBC Driver Tutorial"
+date:   2014-11-05
+author: lukehan
+categories: tutorial
+---
+
+> We provide Kylin ODBC driver to enable data access from ODBC-compatible client applications.
+> 
+> Both 32-bit version or 64-bit version driver are available.
+> 
+> Tested Operation System: Windows 7, Windows Server 2008 R2
+> 
+> Tested Application: Tableau 8.0.4 and Tableau 8.1.3
+
+## Prerequisites
+1. Microsoft Visual C++ 2012 Redistributable 
+   * For 32 bit Windows or 32 bit Tableau Desktop: Download: [32bit version](http://download.microsoft.com/download/1/6/B/16B06F60-3B20-4FF2-B699-5E9B7962F9AE/VSU_4/vcredist_x86.exe) 
+   * For 64 bit Windows or 64 bit Tableau Desktop: Download: [64bit version](http://download.microsoft.com/download/1/6/B/16B06F60-3B20-4FF2-B699-5E9B7962F9AE/VSU_4/vcredist_x64.exe)
+
+
+2. ODBC driver internally gets results from a REST server, make sure you have access to one
+
+## Installation
+1. Uninstall existing Kylin ODBC first, if you already installled it before
+2. Download the attached driver installer at [KylinOLAP/odbc-driver/exe](https://github.com/KylinOLAP/odbc-driver/tree/master/exe), run it.
+   * For 32 bit Tableau Desktop: Please install KylinODBCDriver (x86).exe
+   * For 64 bit Tableau Desktop: Please install KylinODBCDriver (x64).exe
+
+3. Both drivers already be installed on Tableau Server, you properly should be able to publish to there without issues
+
+## Bug Report
+Open github issue here

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Tutorial/2014-11-06-Kylin-Cube-Build-and-Job-Monitoring-Tutorial.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Tutorial/2014-11-06-Kylin-Cube-Build-and-Job-Monitoring-Tutorial.md b/docs/website/_posts/Tutorial/2014-11-06-Kylin-Cube-Build-and-Job-Monitoring-Tutorial.md
new file mode 100644
index 0000000..aab389c
--- /dev/null
+++ b/docs/website/_posts/Tutorial/2014-11-06-Kylin-Cube-Build-and-Job-Monitoring-Tutorial.md
@@ -0,0 +1,65 @@
+---
+layout: post
+title:  "Kylin Cube Build and Job Monitoring Tutorial"
+date:   2014-11-06
+author: Kejia-Wang
+categories: tutorial
+---
+
+### Cube Build
+First of all, make sure that you have authority of the cube you want to build.
+
+1. In `Cubes` page, click the `Action` drop down button in the right of a cube column and select operation `Build`.
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/1 action-build.png)
+
+2. There is a pop-up window after the selection. 
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/2 pop-up.png)
+
+3. Click `END DATE` input box to choose end date of this incremental cube build.
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/3 end-date.png)
+
+4. Click `Submit` to send request. 
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/4 submit.png)
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/4.1 success.png)
+
+   After submit the request successfully, you will see the job just be created in the `Jobs` page.
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/5 jobs-page.png)
+
+5. To discard this job, just click the `Discard` button.
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/6 discard.png)
+
+### Job Monitoring
+In the `Jobs` page, click the job detail button to see detail information show in the right side.
+
+![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/7 job-steps.png)
+
+The detail information of a job provides a step-by-step record to trace a job. You can hover a step status icon to see the basic status and information.
+
+![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/8 hover-step.png)
+
+Click the icon button show in each step to see the details: `Parameters`, `Log`, `MRJob`, `EagleMonitoring`.
+
+* Parameters
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 parameters.png)
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 parameters-d.png)
+
+* Log
+        
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 log.png)
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 log-d.png)
+
+* MRJob(MapReduce Job)
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 mrjob.png)
+
+   ![](/images/Kylin-Cube-Build-and-Job-Monitoring-Tutorial/9 mrjob-d.png)

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Tutorial/2014-11-11-Kylin-Cube-Permission-Grant-Tutorial.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Tutorial/2014-11-11-Kylin-Cube-Permission-Grant-Tutorial.md b/docs/website/_posts/Tutorial/2014-11-11-Kylin-Cube-Permission-Grant-Tutorial.md
new file mode 100644
index 0000000..78cbdcd
--- /dev/null
+++ b/docs/website/_posts/Tutorial/2014-11-11-Kylin-Cube-Permission-Grant-Tutorial.md
@@ -0,0 +1,32 @@
+---
+layout: post
+title:  "Kylin Cube Permission Grant Tutorial"
+date:   2014-11-11
+author: Kejia-Wang
+categories: tutorial
+---
+
+In `Cubes` page, double click the cube row to see the detail information. Here we focus on the `Access` tab.
+Click the `+Grant` button to grant permission. 
+
+![](/images/Kylin-Cube-Permission-Grant-Tutorial/14 +grant.png)
+
+There are four different kinds of permissions for a cube. Move your mouse over the `?` icon to see detail information. 
+
+![](/images/Kylin-Cube-Permission-Grant-Tutorial/15 grantInfo.png)
+
+There are also two types of user that a permission can be granted: `User` and `Role`. `Role` means a group of users who have the same role.
+
+### 1. Grant User Permission
+* Select `User` type, enter the username of the user you want to grant and select the related permission. 
+
+     ![](/images/Kylin-Cube-Permission-Grant-Tutorial/16 grant-user.png)
+
+* Then click the `Grant` button to send a request. After the success of this operation, you will see a new table entry show in the table. You can select various permission of access to change the permission of a user. To delete a user with permission, just click the `Revoke` button.
+
+     ![](/images/Kylin-Cube-Permission-Grant-Tutorial/16 user-update.png)
+
+### 2. Grant Role Permission
+* Select `Role` type, choose a group of users that you want to grant by click the drop down button and select a permission.
+
+* Then click the `Grant` button to send a request. After the success of this operation, you will see a new table entry show in the table. You can select various permission of access to change the permission of a group. To delete a group with permission, just click the `Revoke` button.

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Tutorial/2015-04-17-Kylin-Web-Tutorial.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Tutorial/2015-04-17-Kylin-Web-Tutorial.md b/docs/website/_posts/Tutorial/2015-04-17-Kylin-Web-Tutorial.md
new file mode 100644
index 0000000..b63715e
--- /dev/null
+++ b/docs/website/_posts/Tutorial/2015-04-17-Kylin-Web-Tutorial.md
@@ -0,0 +1,138 @@
+---
+layout: post
+title:  "Kylin Web Tutorial"
+date:   2015-04-17
+author: Luwei
+categories: tutorial
+---
+
+> **Supported Browsers**
+> 
+> Windows: Google Chrome, FireFox
+> 
+> Mac: Google Chrome, FireFox, Safari
+
+## 1. Access & Login
+Host to access: http://your_sandbox_ip:9080
+Login with username/password: ADMIN/KYLIN
+
+![](/images/Kylin-Web-Tutorial/1 login.png)
+
+## 2. Available Hive Tables in Kylin
+Although Kylin will using SQL as query interface and leverage Hive metadata, kylin will not enable user to query all hive tables since it's a pre-build OLAP (MOLAP) system so far. To enable Table in Kylin, it will be easy to using "Sync" function to sync up tables from Hive.
+
+![](/images/Kylin-Web-Tutorial/2 tables.png)
+
+## 3. Kylin OLAP Cube
+Kylin's OLAP Cubes are pre-calculation datasets from Star Schema Hive tables, Here's the web management interface for user to explorer, manage all cubes.Go to `Cubes` Menu, it will list all cubes available in system:
+
+![](/images/Kylin-Web-Tutorial/3 cubes.png)
+
+To explore more detail about the Cube
+
+* Form View:
+
+   ![](/images/Kylin-Web-Tutorial/4 form-view.png)
+
+* SQL View (Hive Query to read data to generate the cube):
+
+   ![](/images/Kylin-Web-Tutorial/5 sql-view.png)
+
+* Visualization (Showing the Star Schema behind of this cube):
+
+   ![](/images/Kylin-Web-Tutorial/6 visualization.png)
+
+* Access (Grant user/role privileges, Grant operation only open to Admin in beta):
+
+   ![](/images/Kylin-Web-Tutorial/7 access.png)
+
+## 4. Write and Execute SQL on web
+Kylin's web offer a simple query tool for user to run SQL to explorer existing cube, verify result and explorer the result set using #5's Pivot analysis and visualization
+
+> **Query Limit**
+> 
+> 1. Only SELECT query be supported
+> 
+> 2. To avoid huge network traffic from server to client, the scan range's threshold be set to 1,000,000 in beta.
+> 
+> 3. SQL can't found data from cube will not redirect to Hive in beta
+
+Go to "Query" menu:
+
+![](/images/Kylin-Web-Tutorial/8 query.png)
+
+* Source Tables:
+
+   Browser current available Tables (same structure and metadata as Hive):
+  
+   ![](/images/Kylin-Web-Tutorial/9 query-table.png)
+
+* New Query:
+
+   You can write and execute your query and explorer the result. One query for you reference:
+
+   ![](/images/Kylin-Web-Tutorial/10 query-result.png)
+
+* Saved Query:
+
+   Associate with user account, you can get saved query from different browsers even machines.
+   Click "Save" in Result area, it will popup for name and description to save current query:
+
+   ![](/images/Kylin-Web-Tutorial/11 save-query.png)
+
+   Click "Saved Queries" to browser all your saved queries, you could direct resubmit it to run or remove it:
+
+   ![](/images/Kylin-Web-Tutorial/11 save-query-2.png)
+
+* Query History:
+
+   Only keep the current user's query history in current bowser, it will require cookie enabled and will lost if you clean up bowser's cache.Click "Query History" tab, you could directly resubmit any of them to execute again.
+
+## 5. Pivot Analysis and Visualization
+There's one simple pivot and visualization analysis tool in Kylin's web for user to explore their query result:
+
+* General Information:
+
+   When the query execute success, it will present a success indictor and also a cube's name which be hit. 
+   Also it will present how long this query be executed in backend engine (not cover network traffic from Kylin server to browser):
+
+   ![](/images/Kylin-Web-Tutorial/12 general.png)
+
+* Query Result:
+
+   It's easy to order on one column.
+
+   ![](/images/Kylin-Web-Tutorial/13 results.png)
+
+* Export to CSV File
+
+   Click "Export" button to save current result as CSV file.
+
+* Pivot Table:
+
+   Drag and Drop one or more columns into the header, the result will grouping by such column's value:
+
+   ![](/images/Kylin-Web-Tutorial/14 drag.png)
+
+* Visualization:
+
+   Also, the result set will be easy to show with different charts in "Visualization":
+
+   note: line chart only available when there's at least one dimension with real "Date" data type of column from Hive Table.
+
+   * Bar Chart:
+
+   ![](/images/Kylin-Web-Tutorial/15 bar-chart.png)
+   
+   * Pie Chart:
+
+   ![](/images/Kylin-Web-Tutorial/16 pie-chart.png)
+
+   * Line Chart
+
+   ![](/images/Kylin-Web-Tutorial/17 line-chart.png)
+
+## 6. Cube Build Job Monitoring
+Monitor and manage cube build process, diagnostic into the detail and even link to Hadoop's job information directly:
+
+![](/images/Kylin-Web-Tutorial/7 job-steps.png)

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Tutorial/2015-04-17-Kylin-and-Tableau-Tutorial.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Tutorial/2015-04-17-Kylin-and-Tableau-Tutorial.md b/docs/website/_posts/Tutorial/2015-04-17-Kylin-and-Tableau-Tutorial.md
new file mode 100644
index 0000000..6dbbd99
--- /dev/null
+++ b/docs/website/_posts/Tutorial/2015-04-17-Kylin-and-Tableau-Tutorial.md
@@ -0,0 +1,113 @@
+---
+layout: post
+title:  "Kylin and Tableau Tutorial"
+date:   2015-04-17
+author: Luwei
+categories: tutorial
+---
+
+> There are some limitations of Kylin ODBC driver with Tableau, please read carefully this instruction before you try it.
+> 
+> * Only support "managed" analysis path, Kylin engine will raise exception for unexpected dimension or metric
+> * Please always select Fact Table first, then add lookup tables with correct join condition (defined join type in cube)
+> * Do not try to join between fact tables or lookup tables;
+> * You can try to use high cardinality dimensions like seller id as Tableau Filter, but the engine will only return limited seller id in Tableau's filter now.
+> 
+> More detail information or any issue, please contact Kylin Team: `kylinolap@gmail.com`
+
+### Step 1. Install ODBC Driver
+Refer to wiki page [Kylin ODBC Driver Tutorial](https://github.com/KylinOLAP/Kylin/wiki/Kylin-ODBC-Driver-Tutorial).
+
+### Step 2. Connect to Kylin Server
+> We recommended to use Connect Using Driver instead of Using DSN since Tableau team will not manage your DSN on Tableau Servers.
+
+Connect Using Driver: Select "Other Database(ODBC)" in the left panel and choose KylinODBCDriver in the pop-up window. 
+
+![](/images/Kylin-and-Tableau-Tutorial/1 odbc.png)
+
+Enter your Sever location and credentials: server host, port, username and password.
+
+![]( /images/Kylin-and-Tableau-Tutorial/2 serverhost.jpg)
+
+Click "Connect" to get the list of projects that you have permission to access. See details about permission in [Kylin Cube Permission Grant Tutorial](https://github.com/KylinOLAP/Kylin/wiki/Kylin-Cube-Permission-Grant-Tutorial). Then choose the project you want to connect in the drop down list. 
+
+![]( /images/Kylin-and-Tableau-Tutorial/3 project.jpg)
+
+Click "Done" to complete the connection.
+
+![]( /images/Kylin-and-Tableau-Tutorial/4 done.jpg)
+
+### Step 3. Using Single Table or Multiple Tables
+> Limitation
+> 
+>    * Must select FACT table first
+>    * Do not support select from lookup table only
+>    * The join condition must match within cube definition
+
+**Select Fact Table**
+
+Select `Multiple Tables`.
+
+![]( /images/Kylin-and-Tableau-Tutorial/5 multipleTable.jpg)
+
+Then click `Add Table...` to add a fact table.
+
+![]( /images/Kylin-and-Tableau-Tutorial/6 facttable.jpg)
+
+![]( /images/Kylin-and-Tableau-Tutorial/6 facttable2.jpg)
+
+**Select Look-up Table**
+
+Click `Add Table...` to add a look-up table. 
+
+![]( /images/Kylin-and-Tableau-Tutorial/7 lkptable.jpg)
+
+Set up the join clause carefully. 
+
+![]( /images/Kylin-and-Tableau-Tutorial/8 join.jpg)
+
+Keep add tables through click `Add Table...` until all the look-up tables have been added properly. Give the connection a name for use in Tableau.
+
+![]( /images/Kylin-and-Tableau-Tutorial/9 connName.jpg)
+
+**Using Connect Live**
+
+There are three types of `Data Connection`. Choose the `Connect Live` option. 
+
+![]( /images/Kylin-and-Tableau-Tutorial/10 connectLive.jpg)
+
+Then you can enjoy analyzing with Tableau.
+
+![]( /images/Kylin-and-Tableau-Tutorial/11 analysis.jpg)
+
+**Add additional look-up Tables**
+
+Click `Data` in the top menu bar, select `Edit Tables...` to update the look-up table information.
+
+![]( /images/Kylin-and-Tableau-Tutorial/12 edit tables.jpg)
+
+### Step 4. Using Customized SQL
+To use customized SQL resembles using Single Table/Multiple Tables, except that you just need to paste your SQL in `Custom SQL` tab and take the same instruction as above.
+
+![]( /images/Kylin-and-Tableau-Tutorial/19 custom.jpg)
+
+### Step 5. Publish to Tableau Server
+Suppose you have finished making a dashboard with Tableau, you can publish it to Tableau Server.
+Click `Server` in the top menu bar, select `Publish Workbook...`. 
+
+![]( /images/Kylin-and-Tableau-Tutorial/14 publish.jpg)
+
+Then sign in your Tableau Server and prepare to publish. 
+
+![]( /images/Kylin-and-Tableau-Tutorial/16 prepare-publish.png)
+
+If you're Using Driver Connect instead of DSN connect, you'll need to additionally embed your password in. Click the `Authentication` button at left bottom and select `Embedded Password`. Click `Publish` and you will see the result.
+
+![]( /images/Kylin-and-Tableau-Tutorial/17 embedded-pwd.png)
+
+### Tips
+* Hide Table name in Tableau
+
+    * Tableau will display columns be grouped by source table name, but user may want to organize columns with different structure. Using "Group by Folder" in Tableau and Create Folders to group different columns.
+
+     ![]( /images/Kylin-and-Tableau-Tutorial/18 groupby-folder.jpg)

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/Tutorial/2015-05-25-test~
----------------------------------------------------------------------
diff --git a/docs/website/_posts/Tutorial/2015-05-25-test~ b/docs/website/_posts/Tutorial/2015-05-25-test~
new file mode 100644
index 0000000..0a67385
--- /dev/null
+++ b/docs/website/_posts/Tutorial/2015-05-25-test~
@@ -0,0 +1,28 @@
+---
+layout: post
+title:  "test"
+date:   2015-05-25
+author: clw
+categories: test
+---
+
+3. There are different types of dimensions that might be added to a cube. Here we list some of them for your reference.
+
+    * Dimensions from fact table.
+
+          https://github.com/KylinOLAP/kylinolap.github.io/blob/master/docs/tutorial/8%20dim-typeA.png
+ssadfs
+
+dddd gdg
+
+   Dimensions from look up table.
+         ![](https://github.com/KylinOLAP/kylinolap.github.io/blob/master/docs/tutorial/8%20dim-typeB-1.png)
+
+          ![](https://github.com/KylinOLAP/kylinolap.github.io/blob/master/docs/tutorial/8%20dim-typeB-2.png)     
+   
+    * Dimensions from look up table with hierarchy.
+          ![](https://github.com/KylinOLAP/kylinolap.github.io/blob/master/docs/tutorial/8%20dim-typeC.png)
+
+    * Dimensions from look up table with derived dimensions.
+          ![](https://github.com/KylinOLAP/kylinolap.github.io/blob/master/docs/tutorial/8%20dim-typeD.png)
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/_posts/blog/2015-01-25-introduce-data-model.md
----------------------------------------------------------------------
diff --git a/docs/website/_posts/blog/2015-01-25-introduce-data-model.md b/docs/website/_posts/blog/2015-01-25-introduce-data-model.md
new file mode 100644
index 0000000..2016207
--- /dev/null
+++ b/docs/website/_posts/blog/2015-01-25-introduce-data-model.md
@@ -0,0 +1,40 @@
+---
+layout: post
+title:  "Introduce Data Model of Cube Designer"
+date:   2015-01-25 22:28:00
+author: Luke Han
+categories: blog
+---
+
+### Background
+In previous version (before v0.6.4), Kylin introduced a GUI tool called Cube Designer for user (we called this role as __Cube Modeler__) to architect OLAP Cube with dimensions, measures and other settings. It works well for most of the features but still not user friendly yet: 
+
+1. A user has to add dimension one by one, considering there are 20+ even 50+ dimensions, the entire process is really boring. 
+2. Each dimension requires define join condition between fact table and lookup table which even already be defined in previous dimensions many times.
+3. Less validation check, especially for Hierarchy and Derived dimension, there are many exceptions in further steps which blocked many people to save the cube definition without any idea about the issue.
+4. Save/Next buttons are confusing user to click which one for real next step or just save current dimension settings
+
+### Data Model of Cube Designer
+With the feedback from our internal users and external community, we have came up one idea and would like to introduce a new concept (widely known in Data Warehouse and Business Intelligence domain): Data Model: a data model organises data elements and standardises how the data elements relate to one another.[Wikipedia](http://en.wikipedia.org/wiki/Data_model). In Kylin, it using [Star Schema](http://en.wikipedia.org/wiki/Star_schema) as Data Model, which is the simplest style of data warehouse schema. The star schema consists of a few "fact tables" (possibly only one, justifying the name) referencing any number of "dimension tables". It actually already there behind dimensions and measures and now just come to first step to define the relationship between different tables before create each dimension. 
+Now (after v0.6.4), to create a cube will follow below steps:
+
+1. Define data model first: pick up one fact table and then add other lookup tables (with their join conditions). The data mode must be presents as Star Schema.
+2. Then add dimensions, since all join conditions already presented in data model, each dimension could be more easy to create, just need to know what's kind of type: normal, hierarchy and derived (will have another blog to introduce them). There's also one helper called _Auto Generator_ to help generate many dimensions within simple clicks.
+3. Then define measures and others as previous cube designer did
+
+### Benefits
+1. A data model is very easy to communicate between different roles and teams. Most of cases it just mapping to real database table relationship, like from Hive tables
+2. More easy to create dimensions and measures based on the data model
+3. Friendly error message with enhanced validation check when save cube
+
+
+### What's Next
+After this refactor, Kylin is now be able to introduce more powerful features, the major idea is to using different storages to serve same data model:
+
+* __Logical Model__: A Data Model presents logical data structure like Star Schema beyond data tables with more business meaning
+* __Physical Model__: define how the underlying data to be stored in persistent system, like HBase. There are already two of them: MOLAP (current Kylin version) and InvertedIndex (coming with 0.7.x release). And it also easy to extend to support others without change the Logical Model.
+* A new GUI of Cube Designer to support above is on the way.
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/assets/css/docs.css
----------------------------------------------------------------------
diff --git a/docs/website/assets/css/docs.css b/docs/website/assets/css/docs.css
new file mode 100755
index 0000000..d46052b
--- /dev/null
+++ b/docs/website/assets/css/docs.css
@@ -0,0 +1,106 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+.aside {
+  height: 100%;
+  background-color:#fff;
+}
+
+.aside1 {
+  background-color: #fff;
+  height: 100%;
+  padding-left: 0px;
+  padding-right: 0px;
+  text-align: left;
+}
+
+.aside1 > .nav > li > a {
+  border-radius: 0px;
+  color: #454545;
+  font-weight: 600;
+  font-family: 'Open sans';
+  font-size: 15px;
+  padding: 10px 10px;
+}
+
+.aside1> .nav > li > a:hover {
+  color: #000000;
+  background-color: #ffffff;
+}
+
+.aside1 > .nav-pills>li.active>a ,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus {
+  color: #000000;
+  background-color: #ffffff;
+}
+
+.list-group {
+  font-family: 'Open sans';
+}
+
+
+.aside2 {
+  height: 100%;
+  overflow-y: auto;
+  background-color: #fff;
+  overflow-x: hidden;
+}
+
+.post-title {
+  font-family: 'Open sans';
+  font-size: 30px;
+}
+
+.post-meta {
+  font-family: 'Open sans';
+}
+
+.post-content {
+  font-family: 'Open sans';
+}
+
+.post-content> h1  {
+  font-family: 'Open sans';
+  font-size: 28px;
+}
+
+.post-content> h2  {
+  font-family: 'Open sans';
+  font-size: 24px;
+}
+
+.post-content> h3  {
+  font-family: 'Open sans';
+  font-size: 20px;
+}
+
+.post-content> h4  {
+  font-family: 'Open sans';
+  font-size: 18px;
+}
+
+.post-content> h5  {
+  font-family: 'Open sans';
+  font-size: 16px;
+}
+
+.post-content> h6  {
+  font-family: 'Open sans';
+  font-size: 16px;
+  color: #666666;
+}
+
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/assets/css/pygments.css
----------------------------------------------------------------------
diff --git a/docs/website/assets/css/pygments.css b/docs/website/assets/css/pygments.css
new file mode 100644
index 0000000..122b429
--- /dev/null
+++ b/docs/website/assets/css/pygments.css
@@ -0,0 +1,61 @@
+.hll { background-color: #ffffcc }
+.c { color: #408080; font-style: italic } /* Comment */
+.err { border: 1px solid #FF0000 } /* Error */
+.k { color: #008000; font-weight: bold } /* Keyword */
+.o { color: #666666 } /* Operator */
+.cm { color: #408080; font-style: italic } /* Comment.Multiline */
+.cp { color: #BC7A00 } /* Comment.Preproc */
+.c1 { color: #408080; font-style: italic } /* Comment.Single */
+.cs { color: #408080; font-style: italic } /* Comment.Special */
+.gd { color: #A00000 } /* Generic.Deleted */
+.ge { font-style: italic } /* Generic.Emph */
+.gr { color: #FF0000 } /* Generic.Error */
+.gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.gi { color: #00A000 } /* Generic.Inserted */
+.go { color: #808080 } /* Generic.Output */
+.gp { color: #000080; font-weight: bold } /* Generic.Prompt */
+.gs { font-weight: bold } /* Generic.Strong */
+.gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.gt { color: #0040D0 } /* Generic.Traceback */
+.kc { color: #008000; font-weight: bold } /* Keyword.Constant */
+.kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
+.kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
+.kp { color: #008000 } /* Keyword.Pseudo */
+.kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
+.kt { color: #B00040 } /* Keyword.Type */
+.m { color: #666666 } /* Literal.Number */
+.s { color: #BA2121 } /* Literal.String */
+.na { color: #7D9029 } /* Name.Attribute */
+.nb { color: #008000 } /* Name.Builtin */
+.nc { color: #0000FF; font-weight: bold } /* Name.Class */
+.no { color: #880000 } /* Name.Constant */
+.nd { color: #AA22FF } /* Name.Decorator */
+.ni { color: #999999; font-weight: bold } /* Name.Entity */
+.ne { color: #D2413A; font-weight: bold } /* Name.Exception */
+.nf { color: #0000FF } /* Name.Function */
+.nl { color: #A0A000 } /* Name.Label */
+.nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
+.nt { color: #008000; font-weight: bold } /* Name.Tag */
+.nv { color: #19177C } /* Name.Variable */
+.ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
+.w { color: #bbbbbb } /* Text.Whitespace */
+.mf { color: #666666 } /* Literal.Number.Float */
+.mh { color: #666666 } /* Literal.Number.Hex */
+.mi { color: #666666 } /* Literal.Number.Integer */
+.mo { color: #666666 } /* Literal.Number.Oct */
+.sb { color: #BA2121 } /* Literal.String.Backtick */
+.sc { color: #BA2121 } /* Literal.String.Char */
+.sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
+.s2 { color: #BA2121 } /* Literal.String.Double */
+.se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
+.sh { color: #BA2121 } /* Literal.String.Heredoc */
+.si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
+.sx { color: #008000 } /* Literal.String.Other */
+.sr { color: #BB6688 } /* Literal.String.Regex */
+.s1 { color: #BA2121 } /* Literal.String.Single */
+.ss { color: #19177C } /* Literal.String.Symbol */
+.bp { color: #008000 } /* Name.Builtin.Pseudo */
+.vc { color: #19177C } /* Name.Variable.Class */
+.vg { color: #19177C } /* Name.Variable.Global */
+.vi { color: #19177C } /* Name.Variable.Instance */
+.il { color: #666666 } /* Literal.Number.Integer.Long */

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/blog/index.html
----------------------------------------------------------------------
diff --git a/docs/website/blog/index.html b/docs/website/blog/index.html
new file mode 100644
index 0000000..3f772bd
--- /dev/null
+++ b/docs/website/blog/index.html
@@ -0,0 +1,64 @@
+---
+layout: default
+title: Blog
+---
+
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+
+
+<main id="main" >
+<section id="first" class="main">
+    <header style="padding:2em 0 4em 0;">
+      <div class="container" >
+        <h4 class="section-title"><span> Kylin Technical Blog </span></h4>
+         <!-- second-->
+          <div id="content-container" class="animated fadeIn">
+            <div >
+            <!--
+            <p class="aboutkylin" style="font-size:1.2em">Comming Soon...</p>
+            -->
+             <ul class="post-list">
+            {% for category in site.categories %}     <!-- categories -->
+            {% if category[0]  == 'blog' %}
+            {% for post in category[1] %}
+            <li>
+            <!--
+            <span align="left" class="content-header">{{ post.date | date: "%b %-d, %Y" }}</span>
+            -->
+        <h2 align="left">
+          <a class="post-link" href="{{ post.url | prepend: site.baseurl }}">{{ post.title }}</a>
+        </h2>
+      </li>
+    {% endfor %}
+    {% endif %}
+    {% endfor %}
+  </ul>
+
+  <p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | prepend: site.baseurl }}">via RSS</a></p>
+          </div>
+        </div>
+      </div>
+      <!-- /container --> 
+      
+    </header>
+  </section>
+
+  
+    
+</main>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/blog/index.html~
----------------------------------------------------------------------
diff --git a/docs/website/blog/index.html~ b/docs/website/blog/index.html~
new file mode 100644
index 0000000..b287c89
--- /dev/null
+++ b/docs/website/blog/index.html~
@@ -0,0 +1,64 @@
+---
+layout: default
+title: Blog
+---
+
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+
+
+<main id="main" >
+<section id="first" class="main">
+    <header style="padding:2em 0 4em 0;">
+      <div class="container" >
+        <h4 class="section-title"><span> Kylin Technical Blog </span></h4>
+         <!-- second-->
+          <div id="content-container" class="animated fadeIn">
+            <div >
+            <!--
+            <p class="aboutkylin" style="font-size:1.2em">Comming Soon...</p>
+            -->
+             <ul class="post-list">
+            {% for category in site.categories %}     <!-- categories -->
+            {% if category[0]  != 'blog' %}
+            {% for post in category[1] %}
+            <li>
+            <!--
+            <span align="left" class="content-header">{{ post.date | date: "%b %-d, %Y" }}</span>
+            -->
+        <h2 align="left">
+          <a class="post-link" href="{{ post.url | prepend: site.baseurl }}">{{ post.title }}</a>
+        </h2>
+      </li>
+    {% endfor %}
+    {% endif %}
+    {% endfor %}
+  </ul>
+
+  <p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | prepend: site.baseurl }}">via RSS</a></p>
+          </div>
+        </div>
+      </div>
+      <!-- /container --> 
+      
+    </header>
+  </section>
+
+  
+    
+</main>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/blog/index.md~
----------------------------------------------------------------------
diff --git a/docs/website/blog/index.md~ b/docs/website/blog/index.md~
new file mode 100644
index 0000000..28a57e1
--- /dev/null
+++ b/docs/website/blog/index.md~
@@ -0,0 +1,43 @@
+---
+layout: default
+title: Blog
+---
+
+
+<main id="main" >
+<section id="first" class="main">
+    <header style="padding:2em 0 4em 0;">
+      <div class="container" >
+        <h4 class="section-title"><span> Kylin Technical Blog </span></h4>
+         <!-- second-->
+          <div id="content-container" class="animated fadeIn">
+            <div >
+            <!--
+            <p class="aboutkylin" style="font-size:1.2em">Comming Soon...</p>
+            -->
+             <ul class="post-list">
+            <!-- {% for post in site.posts %} -->
+            <li>
+            <!--
+            <span align="left" class="content-header">{{ post.date | date: "%b %-d, %Y" }}</span>
+            -->
+            <p>{{post.url}}</p>
+        <h2 align="left">
+          <a class="post-link" href="{{ post.url | prepend: site.baseurl }}">{{ post.title }}</a>
+        </h2>
+      </li>
+    {% endfor %}
+  </ul>
+
+  <p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | prepend: site.baseurl }}">via RSS</a></p>
+          </div>
+        </div>
+      </div>
+      <!-- /container --> 
+      
+    </header>
+  </section>
+
+  
+    
+</main>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/community/index.html
----------------------------------------------------------------------
diff --git a/docs/website/community/index.html b/docs/website/community/index.html
new file mode 100644
index 0000000..28b7d00
--- /dev/null
+++ b/docs/website/community/index.html
@@ -0,0 +1,83 @@
+---
+layout: default
+title: Community
+---
+
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+
+
+  <main id="main" >
+  <div class="container" >
+    <div id="zero" class=" main" >
+      <header style=" padding:2em 0 4em 0">
+        <div class="container" >
+          <h4 class="section-title"><span>Kylin Community</span></h4>
+          <div class="row" style="margin-top:-20px;">
+            <div class="col-sm-4 col-md-4">
+              <p class="big_text">EVENTS</p>
+
+
+
+
+              <p><a href="http://strataconf.com/big-data-conference-uk-2015/public/schedule/detail/40029" target="_blank">Strata+Hadoop World 2015, London </a> 
+              <br/>Date - Wednesday, May 6, 2015 <br/>
+              Kylin will be present at Strata+Hadooop World</p>
+
+              <p><a href="http://bdtc2014.hadooper.cn/m/zone/bdtc_2014" target="_blank">Big Data Technology Conference, Beijing </a> 
+              <br/>Date - Sunday, December 14, 2014 <br/>
+              Kylin be presented by Luke Han, Sr. Product Manager of Kylin</p>
+
+              <p><a href="http://www.meetup.com/Cloud-at-ebayinc/events/218914395/" target="_blank">Apache Kylin Meetup @Bay Area </a> 
+              <br/>6:00PM - 7:30PM, Thursday, December 4, 2014 <br/>
+               Learn about "Extreme OLAP engine for Hadoop - Kylin", which eBay recently Open sourced and is now an Apache Incubator Project</p>
+
+              <p><a href="http://2014ebay.csdn.net/m/zone/ebay_en/" target="_blank">Shanghai Big Data Summit 2014 </a> 
+              <br/>Date - October 25th, 2014 <br/>
+                Kylin be presented by Jiang Xu, Cheif Architect of Kylin<br/>
+                <a href="http://ebay.csdn.net/" target="_blank">Slides and Video</a></p>
+                  
+            </div>
+            
+            <div class="col-sm-4 col-md-4">
+              <p class="big_text">DISCUSSION</p>
+              <p>Developement and User maililng list: <a href="mailto:dev@kylin.incubator.apache.org" target="_blank"> dev@kylin.incubator.apache.org</a></p>
+              <p>Please subscribe by sending email to: <a href="mailto:dev-subscribe@kylin.incubator.apache.org" target="_blank">dev-subscribe@kylin.incubator.apache.org</a></p>              
+              <p>The official Kylin Twitter account: <a href="https://twitter.com/ApacheKylin" target="_blank"> @ApacheKylin</a></p>
+            </div>
+            <div class="col-sm-4 col-md-4">
+              <p class="big_text">DEVELOPMENT</p>
+              <p>All development takes place at : </p>
+              <p>Apache Git: <a href="git://git.apache.org/incubator-kylin.git" target="_blank">git://git.apache.org/incubator-kylin.git</a><br/>
+              Github Mirror: <a href="https://github.com/apache/incubator-kylin" target="_blank">https://github.com/apache/incubator-kylin</a></p>
+
+              <p>Issue tracking: <a href="https://issues.apache.org/jira/browse/KYLIN" target="_blank">Apache JIRA</a></p>
+            </div>
+          </div>
+        </div>
+        <!-- /container --> 
+        
+      </header>
+    </div>
+    <!-- / section --> 
+  </div>
+  <!-- /container -->
+  
+  </header>
+  </section>
+</main>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/d1b8e50f/docs/website/community/index.html~
----------------------------------------------------------------------
diff --git a/docs/website/community/index.html~ b/docs/website/community/index.html~
new file mode 100644
index 0000000..e451fba
--- /dev/null
+++ b/docs/website/community/index.html~
@@ -0,0 +1,83 @@
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+
+---
+layout: default
+title: Community
+---
+
+
+  <main id="main" >
+  <div class="container" >
+    <div id="zero" class=" main" >
+      <header style=" padding:2em 0 4em 0">
+        <div class="container" >
+          <h4 class="section-title"><span>Kylin Community</span></h4>
+          <div class="row" style="margin-top:-20px;">
+            <div class="col-sm-4 col-md-4">
+              <p class="big_text">EVENTS</p>
+
+
+
+
+              <p><a href="http://strataconf.com/big-data-conference-uk-2015/public/schedule/detail/40029" target="_blank">Strata+Hadoop World 2015, London </a> 
+              <br/>Date - Wednesday, May 6, 2015 <br/>
+              Kylin will be present at Strata+Hadooop World</p>
+
+              <p><a href="http://bdtc2014.hadooper.cn/m/zone/bdtc_2014" target="_blank">Big Data Technology Conference, Beijing </a> 
+              <br/>Date - Sunday, December 14, 2014 <br/>
+              Kylin be presented by Luke Han, Sr. Product Manager of Kylin</p>
+
+              <p><a href="http://www.meetup.com/Cloud-at-ebayinc/events/218914395/" target="_blank">Apache Kylin Meetup @Bay Area </a> 
+              <br/>6:00PM - 7:30PM, Thursday, December 4, 2014 <br/>
+               Learn about "Extreme OLAP engine for Hadoop - Kylin", which eBay recently Open sourced and is now an Apache Incubator Project</p>
+
+              <p><a href="http://2014ebay.csdn.net/m/zone/ebay_en/" target="_blank">Shanghai Big Data Summit 2014 </a> 
+              <br/>Date - October 25th, 2014 <br/>
+                Kylin be presented by Jiang Xu, Cheif Architect of Kylin<br/>
+                <a href="http://ebay.csdn.net/" target="_blank">Slides and Video</a></p>
+                  
+            </div>
+            
+            <div class="col-sm-4 col-md-4">
+              <p class="big_text">DISCUSSION</p>
+              <p>Developement and User maililng list: <a href="mailto:dev@kylin.incubator.apache.org" target="_blank"> dev@kylin.incubator.apache.org</a></p>
+              <p>Please subscribe by sending email to: <a href="mailto:dev-subscribe@kylin.incubator.apache.org" target="_blank">dev-subscribe@kylin.incubator.apache.org</a></p>              
+              <p>The official Kylin Twitter account: <a href="https://twitter.com/ApacheKylin" target="_blank"> @ApacheKylin</a></p>
+            </div>
+            <div class="col-sm-4 col-md-4">
+              <p class="big_text">DEVELOPMENT</p>
+              <p>All development takes place at : </p>
+              <p>Apache Git: <a href="git://git.apache.org/incubator-kylin.git" target="_blank">git://git.apache.org/incubator-kylin.git</a><br/>
+              Github Mirror: <a href="https://github.com/apache/incubator-kylin" target="_blank">https://github.com/apache/incubator-kylin</a></p>
+
+              <p>Issue tracking: <a href="https://issues.apache.org/jira/browse/KYLIN" target="_blank">Apache JIRA</a></p>
+            </div>
+          </div>
+        </div>
+        <!-- /container --> 
+        
+      </header>
+    </div>
+    <!-- / section --> 
+  </div>
+  <!-- /container -->
+  
+  </header>
+  </section>
+</main>