You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by li...@apache.org on 2016/02/11 13:52:17 UTC

[14/18] kylin git commit: KYLIN-1416 remove website from coding branch

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-01-25-introduce-data-model.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-01-25-introduce-data-model.md b/website/_posts/blog/2015-01-25-introduce-data-model.md
deleted file mode 100644
index 6f23a10..0000000
--- a/website/_posts/blog/2015-01-25-introduce-data-model.md
+++ /dev/null
@@ -1,40 +0,0 @@
----
-layout: post-blog
-title:  "Introduce Data Model of Cube Designer"
-date:   2015-01-25 12: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 storage 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/kylin/blob/0a74e9cb/website/_posts/blog/2015-06-10-release-v0.7.1-incubating.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-06-10-release-v0.7.1-incubating.md b/website/_posts/blog/2015-06-10-release-v0.7.1-incubating.md
deleted file mode 100644
index f4c262a..0000000
--- a/website/_posts/blog/2015-06-10-release-v0.7.1-incubating.md
+++ /dev/null
@@ -1,149 +0,0 @@
----
-layout: post-blog
-title:  "Release v0.7.1-incubating"
-date:   2015-06-10 12:28:00
-author: Luke Han
-categories: blog
----
-
-Apache Kylin v0.7.1-incubating has rolled out on June 10, 2015. This is also the first Apache release after join incubating. 
-
-To download this release, please visit: [http://kylin.apache.org/download/](http://kylin.apache.org/download/), there are source code package, binary package, ODBC driver and installation guide avaliable.
-
-Any problem or issue, please send to Apache Kylin mailing list: [dev@kylin.apache.org](mailto:dev@kylin.apache.org)
-
-Or, report to Apache Kylin JIRA project: [https://issues.apache.org/jira/browse/KYLIN](https://issues.apache.org/jira/browse/KYLIN)
-
-__Main Changes:__
-
-* Package renamed from com.kylinolap to org.apache.kylin
-* Code cleaned up to apply Apache License policy
-* Easy install and setup with bunch of scripts and automation
-* Job engine refactor to be generic job manager for all jobs, and improved efficiency
-* Support Hive database other than 'default'
-* JDBC driver avaliable for client to interactive with Kylin server
-* Binary pacakge avaliable download 
-
-__New Feature__
-
-    * [KYLIN-327] - Binary distribution 
-    * [KYLIN-368] - Move MailService to Common module
-    * [KYLIN-540] - Data model upgrade for legacy cube descs
-    * [KYLIN-576] - Refactor expansion rate expression
-
-__Task__
-
-    * [KYLIN-361] - Rename package name with Apache Kylin
-    * [KYLIN-531] - Rename package name to org.apache.kylin
-    * [KYLIN-533] - Job Engine Refactoring
-    * [KYLIN-585] - Simplify deployment
-    * [KYLIN-586] - Add Apache License header in each source file
-    * [KYLIN-587] - Remove hard copy of javascript libraries
-    * [KYLIN-624] - Add dimension and metric info into DataModel
-    * [KYLIN-650] - Move all document from github wiki to code repository (using md file)
-    * [KYLIN-669] - Release v0.7.1 as first apache release
-
-__Sub-task__
-
-    * [KYLIN-670] - Update pom with "incubating" in version number
-    * [KYLIN-737] - Generate and sign release package for review and vote
-    * [KYLIN-795] - Release after success vote
-
-__Bug__
-
-    * [KYLIN-132] - Job framework
-    * [KYLIN-194] - Dict & ColumnValueContainer does not support number comparison, they do string comparison right now
-    * [KYLIN-220] - Enable swap column of Rowkeys in Cube Designer
-    * [KYLIN-230] - Error when create HTable
-    * [KYLIN-255] - Error when a aggregated function appear twice in select clause
-    * [KYLIN-383] - Sample Hive EDW database name should be replaced by "default" in the sample
-    * [KYLIN-399] - refreshed segment not correctly published to cube
-    * [KYLIN-412] - No exception or message when sync up table which can't access
-    * [KYLIN-421] - Hive table metadata issue
-    * [KYLIN-436] - Can't sync Hive table metadata from other database rather than "default"
-    * [KYLIN-508] - Too high cardinality is not suitable for dictionary!
-    * [KYLIN-509] - Order by on fact table not works correctly
-    * [KYLIN-517] - Always delete the last one of Add Lookup page buttom even if deleting the first join condition
-    * [KYLIN-524] - Exception will throw out if dimension is created on a lookup table, then deleting the lookup table.
-    * [KYLIN-547] - Create cube failed if column dictionary sets false and column length value greater than 0
-    * [KYLIN-556] - error tip enhance when cube detail return empty
-    * [KYLIN-570] - Need not to call API before sending login request
-    * [KYLIN-571] - Dimensions lost when creating cube though Joson Editor
-    * [KYLIN-572] - HTable size is wrong
-    * [KYLIN-581] - unable to build cube
-    * [KYLIN-583] - Dependency of Hive conf/jar in II branch will affect auto deploy
-    * [KYLIN-588] - Error when run package.sh
-    * [KYLIN-593] - angular.min.js.map and angular-resource.min.js.map are missing in kylin.war
-    * [KYLIN-594] - Making changes in build and packaging with respect to apache release process
-    * [KYLIN-595] - Kylin JDBC driver should not assume Kylin server listen on either 80 or 443
-    * [KYLIN-605] - Issue when install Kylin on a CLI which does not have yarn Resource Manager
-    * [KYLIN-614] - find hive dependency shell fine is unable to set the hive dependency correctly
-    * [KYLIN-615] - Unable add measures in Kylin web UI
-    * [KYLIN-619] - Cube build fails with hive+tez
-    * [KYLIN-620] - Wrong duration number
-    * [KYLIN-621] - SecurityException when running MR job
-    * [KYLIN-627] - Hive tables' partition column was not sync into Kylin
-    * [KYLIN-628] - Couldn't build a new created cube
-    * [KYLIN-629] - Kylin failed to run mapreduce job if there is no mapreduce.application.classpath in mapred-site.xml
-    * [KYLIN-630] - ArrayIndexOutOfBoundsException when merge cube segments 
-    * [KYLIN-638] - kylin.sh stop not working
-    * [KYLIN-639] - Get "Table 'xxxx' not found while executing SQL" error after a cube be successfully built
-    * [KYLIN-640] - sum of float not working
-    * [KYLIN-642] - Couldn't refresh cube segment
-    * [KYLIN-643] - JDBC couldn't connect to Kylin: "java.sql.SQLException: Authentication Failed"
-    * [KYLIN-644] - join table as null error when build the cube
-    * [KYLIN-652] - Lookup table alias will be set to null
-    * [KYLIN-657] - JDBC Driver not register into DriverManager
-    * [KYLIN-658] - java.lang.IllegalArgumentException: Cannot find rowkey column XXX in cube CubeDesc
-    * [KYLIN-659] - Couldn't adjust the rowkey sequence when create cube
-    * [KYLIN-666] - Select float type column got class cast exception
-    * [KYLIN-681] - Failed to build dictionary if the rowkey's dictionary property is "date(yyyy-mm-dd)"
-    * [KYLIN-682] - Got "No aggregator for func 'MIN' and return type 'decimal(19,4)'" error when build cube
-    * [KYLIN-684] - Remove holistic distinct count and multiple column distinct count from sample cube
-    * [KYLIN-691] - update tomcat download address in download-tomcat.sh
-    * [KYLIN-696] - Dictionary couldn't recognize a value and throw IllegalArgumentException: "Not a valid value"
-    * [KYLIN-703] - UT failed due to unknown host issue
-    * [KYLIN-711] - UT failure in REST module
-    * [KYLIN-739] - Dimension as metrics does not work with PK-FK derived column
-    * [KYLIN-761] - Tables are not shown in the "Query" tab, and couldn't run SQL query after cube be built
-
-__Improvement__
-
-    * [KYLIN-168] - Installation fails if multiple ZK
-    * [KYLIN-182] - Validation Rule: columns used in Join condition should have same datatype
-    * [KYLIN-204] - Kylin web not works properly in IE
-    * [KYLIN-217] - Enhance coprocessor with endpoints 
-    * [KYLIN-251] - job engine refactoring
-    * [KYLIN-261] - derived column validate when create cube
-    * [KYLIN-317] - note: grunt.json need to be configured when add new javascript or css file
-    * [KYLIN-324] - Refactor metadata to support InvertedIndex
-    * [KYLIN-407] - Validation: There's should no Hive table column using "binary" data type
-    * [KYLIN-445] - Rename cube_desc/cube folder
-    * [KYLIN-452] - Automatically create local cluster for running tests
-    * [KYLIN-498] - Merge metadata tables 
-    * [KYLIN-532] - Refactor data model in kylin front end
-    * [KYLIN-539] - use hbase command to launch tomcat
-    * [KYLIN-542] - add project property feature for cube
-    * [KYLIN-553] - From cube instance, couldn't easily find the project instance that it belongs to
-    * [KYLIN-563] - Wrap kylin start and stop with a script 
-    * [KYLIN-567] - More flexible validation of new segments
-    * [KYLIN-569] - Support increment+merge job
-    * [KYLIN-578] - add more generic configuration for ssh
-    * [KYLIN-601] - Extract content from kylin.tgz to "kylin" folder
-    * [KYLIN-616] - Validation Rule: partition date column should be in dimension columns
-    * [KYLIN-634] - Script to import sample data and cube metadata
-    * [KYLIN-636] - wiki/On-Hadoop-CLI-installation is not up to date
-    * [KYLIN-637] - add start&end date for hbase info in cubeDesigner
-    * [KYLIN-714] - Add Apache RAT to pom.xml
-    * [KYLIN-753] - Make the dependency on hbase-common to "provided"
-    * [KYLIN-758] - Updating port forwarding issue Hadoop Installation on Hortonworks Sandbox.
-    * [KYLIN-779] - [UI] jump to cube list after create cube
-    * [KYLIN-796] - Add REST API to trigger storage cleanup/GC
-
-__Wish__
-
-    * [KYLIN-608] - Distinct count for ii storage
-
-
-
-

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-08-13-kylin-dictionary.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-08-13-kylin-dictionary.md b/website/_posts/blog/2015-08-13-kylin-dictionary.md
deleted file mode 100644
index 7e3c8b8..0000000
--- a/website/_posts/blog/2015-08-13-kylin-dictionary.md
+++ /dev/null
@@ -1,68 +0,0 @@
----
-layout: post-blog
-title:  "Dictionary in Kylin"
-date:   2015-08-13 14:37:00
-author: Li Yang
-categories: blog
----
-
-### Purpose of Dictionary
-
-Dictionary is a [classic compression technique](https://en.wikipedia.org/wiki/Dictionary_coder) that can greatly reduce the size of data. Kylin apply dictionary to all dimension values stored in cube.
-
-Kylin's requirement to dictionary:
-
-* Compress cube size by storing IDs instead of real values
-* Bi-way mapping of dimension values from/to IDs
-* Preserving order to facilitate range query
-* Minimal memory & storage footprint
-
-### Dictionary Design
-
-Dictionary is implemented as a [trie](https://en.wikipedia.org/wiki/Trie) data structure. Dictionary ID (or "seq. no" below) is chosen in a way to preserve value order. Then at query time, predicate filters can be pushed down to storage and be evaluated on the IDs.
-
-* Trie node are labeled by 1) number of values underneath; 2) is end of value or not
-* Bi-way lookup between "value" <==> "seq. no" by top-down navigate
-* The "seq. no" preserves value order and is a minimal integer for space advantage
-* O(L) lookup time, where L=max(value length)
-
-An example of a trie dictionary.
-
-![](/images/develop/dictionary-trie-sample.png)
-
-### Memory structure
-
-Once built, the dictionary is serialized into a chunk of bytes. This is how it stays in memory and also in file.
-
-* Head
-   * magic, head len, body len, child_offset size, seq_no size, base ID, max value len, bytes converter
-* Body
-   * a flattened trie, where each node is
-      * child offset (size specified in head)
-         * 1st MSB: isLastChild
-         * 2nd MSB: isEndOfValue
-      * no. values beneath (size specified in head)
-      * value len (1 byte unsigned)
-      * value bytes
-
-![](/images/develop/dictionary-bytes-format.png)
-
-### Benchmark result
-
-We compared dictionary's size and performance with HashMap and ID Based Array. It's memory footprint is an order less and the throughput is very stable accross scales.
-
-|                                     | HashMap (value=>id) | Dictionary (value=>id) | IdArray (id=>value) | Dictionary (id=>value) |                      |     
-| ------------------------------------|---------------------|------------------------|---------------------|------------------------|----------------------|
-| 150K eng words footprint (bytes)    | 18.8M               | *1.7M*                 | 11.1M               | *1.7M*                 | 1.4M raw size        |
-| 150K eng words throughput (acc/s)   | 13M                 | 1.9M                   | 150M                | 1.96M                  | 31 max value len     |
-| 6.6K categories footprint (bytes)   | 0.94M               | 0.13M                  | 0.58M               | 0.12M                  | 0.1M raw size        |
-| 6.6K categories throughput (acc/s)  | 26M                 | 2.0M                   | 98M                 | 2.0M                   | 30 max value len     |
-| 6 words footprint (bytes)           | 792B                | 168B                   | 416B                | 168B                   | 33B raw size         |
-| 6 works throughput (acc/s)          | 68.5M               | 14.7M                  | 714M                | 11.1M                  | 9 max value len      |
-
-### Cache layer
-
-To achieve maximum lookup throughput, a cache layer (HashMap or IdArray) sits on top of dictionary using weak reference. The cache could be gone when memory runs short, then dictionary will be hit directly.
-
-![](/images/develop/dictionary-cache-layer.png)
-

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-08-15-fast-cubing.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-08-15-fast-cubing.md b/website/_posts/blog/2015-08-15-fast-cubing.md
deleted file mode 100644
index 5325b02..0000000
--- a/website/_posts/blog/2015-08-15-fast-cubing.md
+++ /dev/null
@@ -1,119 +0,0 @@
----
-layout: post-blog
-title:  "Fast Cubing Algorithm in Apache Kylin: Concept"
-date:   2015-08-15 12:28:00
-author: Shaofeng Shi
-categories: blog
----
-
-This article is the first post of a series document that introducing the fast cubing algorithm in Apache Kylin; The new algorithm will be released in the future release; Now it is under internal testing and pilot; All the source code has been published in Kylin's Git repository <https://github.com/apache/kylin/> on 0.8 branch. 
-
-
-## By Layer Cubing Algorithm
-Before introduce the fast cubing, I'd like to make a brief introduction on the as-is cubing algorithm, which is called "by layer cubing"; 
-
-As its name indicates, a full cube is calculated by layer: N-dimension, N-1 dimension, N-2 dimension, ... until 0 dimension; Each layer's calculation is based on its parent layer (except the first, which base on source data); So this algorithm need N rounds of MapReduce running in sequence;
-
-In the MapReduce, the key is the composite of the dimensions, the value is the composite of the measures; When the mapper reads a key-value pair, it calculates its possible child cuboids; for each child cuboid, remove 1 dimension from the key, and then output the new key and value to the reducer; 
-
-The reducer gets the values grouped by key; it aggregates the measures, and then output to HDFS; one layer's MR is finished;
-
-When all layers are finished, the cube is calculated;
-
-Figure 1 describes the flow:
-
-![]( /images/blog/by-layer-cubing.png)
-Figure 1: By layer cubing
-
-
-**Advantage**
-
-* This algorithm is clear as it mostly leverage the capability of Hadoop MapReduce; The sorting, grouping and shuffling are all taken care by MapReduce, developer just focus on the cubing logic;
-* Benefiting from Hadoop's maturity, this algorithm is very stable; In our experience there is seldom case that the mapper or reducer could fail; Even if your Hadoop cluster is small or is busy, it can finish in the end;
-
-
-**Disadvantage**
-
-* If the cube has many dimensions, it need the same number of MR jobs; As each Hadoop job scheduling need extra resource, the overhead cost to Hadoop is considerable; 
-* This algorithm causes too much shuffling to Hadoop; The mapper doesn't do aggregation, all the records that having same dimension values in next layer will be omitted to Hadoop, and then aggregated by combiner and reducer;
-* Many reads/writes on HDFS: each layer's cubing need write its output to HDFS for next layer MR to consume; In the end, Kylin need another round MR to convert these output files to HBase HFile for bulk load; These jobs generates many intermediate files in HDFS;
-* All in all: the performance is not good, especially when the cube has many dimensions; 
-
-
-
-## Fast Cubing Algorithm
-The fast cubing algorithm is also called "by segment cubing"; The core idea is, each mapper calculates the feed data block into a small cube segment (with all cuboids), and then output all key/values to reducer; The reducer aggregates them into one big cube segment, finishing the cubing; Figure 2 illustrates the flow;
-
-
-![]( /images/blog/by-segment-cubing.png)
-Figure 2: By segment cubing
-
-### Pre-aggregation in Mapper
-Compared with the origin algorithm, the fast cubing has two main differences:
-
-* The mapper will do pre-aggregation, this will reduce the number of records that the mapper output to Hadoop, and also reduce the number that reducer need to aggregate;
-* One round MR can calculate all cuboids; 
-
-Let take an example: a cube has 4 dimensions: A, B, C, D; Each mapper has 1 million source records to process; The column cardinality in the mapper is Car(A), Car(B), Car(C) and Car(D); 
-
-* When aggregate the source records to base cuboid (1111), with the old "by layer" algorithm, the mapper will output 1 million records to Hadoop; With the fast cubing algorithm, after the pre-aggregation, it only outputs the number of [distinct A, B, C, D] records to Hadoop, which is certainly smaller than source data; In a normal case, it can be 1/10 to 1/1000 of the source records size;
-
-* When aggregate from parent to a child cuboid, say from base cuboid (1111) to 3-dimension cuboid 0111, the dimension A will be aggregated; We assume the dimension A is independent with other dimensions, after aggregation, the cuboid 0111's size will be about 1/Card(A) of the base cuboid; So the output will be reduced to 1/Card(A) of the original one in this step. 
-
-Totally, assume the average cardinality of the dimensions is Card(N), the records that written from mapper to reducer can be reduced to 1/Card(N) of origin size; The less output to Hadoop, the less I/O and computing, the better performance.
-
-### Cuboid spanning tree
-Inner the mapper, there is another change in the cuboid spanning tree visiting order; In origin cubing, Kylin calculates the cuboids with Broad First Search order; In the fast cubing, it uses Depth First Search order, to reduce the cuboids that need be cached in memory.
-
-Let's look at the figure 3, which is a full spanning tree of a 4-dimension cube: before 0-Dimenson cuboid "\*" be aggregated, cuboid "ABCD", "BCD", "CD" and "D" will be cached in memory; As "\*" has no child, it will be outputted once be calculated, then comes "D"; After "C" be outputted, "CD" will be outputted as all of its children has finished; The memory for a cuboid can be released once it be outputted; The base cuboid ABCD will be the last one to output.
-
-![]( /images/blog/cube-spanning-tree.png)
-Figure 3: Cuboid spanning tree
-
-With the DFS visiting order, the output from a mapper is fully sorted (except some special cases), as the cuboid ID is at the beginning position of row key, and inner a cuboid the rows are already sorted:
-
-```
-0000
-0001[D0]
-0001[D1]
-....
-0010[C0]
-0010[C1]
-....
-0011[C0][D0]
-0011[C0][D1]
-....
-....
-1111[A0][B0][C0][D0]
-....
-```
-Since the outputs from mapper are already sorted, Hadoop's sort would be more efficient;  
-
-Besides, mapper's pre-aggregation happens in memory, this avoids unnecessary disk and network I/O, and the overhead to Hadoop is reduced; 
-
-###OutOfMemory error
-During the development phase, we encountered the OutOfMemory error in mappers; this could happen when: 
-
-	a) The mapper's JVM heap size is small;
-	b) "Distinct count" measure is used (HyperLogLog is space consuming) 
-	c) The spanning tree is too deep (too many dimensions);
-	d) The data blog feed to a mapper is too big;
-
-We realized that Kylin couldn't assume the mappers always have enough memory; The cubing algorithm need be self-adapting to various situations; A lot of efforts were put on optimizing the memory use and spilling data to disk when proactively detects an OutOfMemory error; The result is promising, the OOM error is rare to occur now;
-
-Here let's do a summary on the fast cubing algorithm;
-
-**Advantage**
-
-* It is faster than the old method; can reduce 30% to 50% overall building time from our comparison test; 
-* It produces less work load on Hadoop, and leaves less intermediate files on HDFS;
-* The cubing code can be easily reused by other cubing engines like Streaming and Spark;
-
-**Disadvantage**
-
-* The algorithm is a little complicated; This adds the maintenance effort;
-* Although the algorithm can spill data to disk automatically, it still wish the mapper has enough memory to gain best performance; User need more knowledge to tune the cubing; (this can be discussed in detail later)
-
-## Other Enhancements in Fast Cubing
-
-Together with the fast cubing algorithm, we also introduced several other enhancements in the cube build flow, like estimating the region splits by sampling, directly outputting HFile, and merging Cube over HBase Table, etc; I'd like to elaborate in the next articles, please keep posted here; If you have interest on Apache Kylin, welcome to visit our home page <http://kylin.apache.org/> and subscribe our development mailing list at <de...@kylin.apache.org>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-09-06-release-v1.0-incubating.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-09-06-release-v1.0-incubating.md b/website/_posts/blog/2015-09-06-release-v1.0-incubating.md
deleted file mode 100644
index 02025f8..0000000
--- a/website/_posts/blog/2015-09-06-release-v1.0-incubating.md
+++ /dev/null
@@ -1,44 +0,0 @@
----
-layout: post-blog
-title:  Apache Kylin v1.0 (incubating) Release Announcement
-date:   2015-09-06 17:28:00
-author: Luke Han
-categories: blog
----
-
-The Apache Kylin team is pleased to announce the release of Apache Kylin v1.0 (incubating). Apache Kylin is an open source Distributed Analytics Engine designed to provide SQL interface and multi-dimensional analysis (OLAP) on Hadoop supporting extremely large datasets.
-
-To download Apache Kylin v1.0 (incubating) visit the [download](http://kylin.apache.org/download) page.
-
-This is a major release which brings more stable, robust and well management version, Apache Kylin team resolved about 47 issues including bug fixes, improvements, and few new features.
-
-## Change Highlights
-
-__Kylin Core Improvement__
-
-* Dynamic Data Model has been added to supporting adding or removing column in data model without rebuild cube from the beginning [KYLIN-867](https://issues.apache.org/jira/browse/KYLIN-867)
-* Upgraded Apache Calcite to 1.3 for more bug fixes and new SQL functions [KYLIN-881](https://issues.apache.org/jira/browse/KYLIN-881) 
-* Cleanup job enhanced to make sure there’s no garbage files left in OS and HDFS/HBase after job build [KYLIN-926](https://issues.apache.org/jira/browse/KYLIN-926)
-* Added setting option for Hive intermediate tables created by Kylin [KYLIN-883](https://issues.apache.org/jira/browse/KYLIN-883) 
-* HBase coprocessor enhanced to imrpove query performance [KYLIN-857](https://issues.apache.org/jira/browse/KYLIN-857)
-* Kylin System Dashboard for usage, storage, performance [KYLIN-792](https://issues.apache.org/jira/browse/KYLIN-792)
-
-__Main Bug Fixes__
-
-* Can’t get source record size, especially when using other Hadoop distribution rather than HDP, like Cloudera and MapR [KYLIN-404](https://issues.apache.org/jira/browse/KYLIN-404)
-* Front-end cache cleanup issue [KYLIN-757](https://issues.apache.org/jira/browse/KYLIN-757)
-* Useless hive intermediate tables and HBase tables will be dropped after cube build/merge [KYLIN-805](https://issues.apache.org/jira/browse/KYLIN-805)
-* Support More than one HDFS files of lookup table, especially for large lookup table [KYLIN-889](https://issues.apache.org/jira/browse/KYLIN-889)
-* JDBC driver bug fixes [KYLIN-945](https://issues.apache.org/jira/browse/KYLIN-945), [KYLIN-626](https://issues.apache.org/jira/browse/KYLIN-626)
-* UI Bug fixes [KYLIN-946](https://issues.apache.org/jira/browse/KYLIN-946), [KYLIN-935](https://issues.apache.org/jira/browse/KYLIN-935)
-
-__Zeppelin Integration__
-
-[Apache Zeppelin](http://zeppelin.incubator.apache.org/) is a web-based notebook that enables interactive data analytics. The Apache Kylin team has contributed Kylin Interpreter which enables Zeppelin interaction with Kylin from notebook using ANSI SQL, this interpreter could be found from Zeppelin master code repo [here](https://github.com/apache/incubator-zeppelin/tree/master/kylin).
-
-__Upgrade__
-
-We recommend to upgrade to this version from v0.7.x or even more early version for better performance, stablility and clear one (most of the intermediate files will be cleaned up automatically). Also to keep up to date with community with latest features and supports.
-Any issue or question during upgrade, please send to Apache Kylin dev mailing list: [dev@kylin.apache.org](mailto:dev@kylin.apache.org)
-
-_Great thanks to everyone who contributed!_
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-09-09-fast-cubing-on-spark.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-09-09-fast-cubing-on-spark.md b/website/_posts/blog/2015-09-09-fast-cubing-on-spark.md
deleted file mode 100644
index c41523a..0000000
--- a/website/_posts/blog/2015-09-09-fast-cubing-on-spark.md
+++ /dev/null
@@ -1,117 +0,0 @@
----
-layout: post-blog
-title:  Fast Cubing on Spark in Apache Kylin
-date:   2015-09-09 15:28:00
-author: Qianhao Zhou
-categories: blog
----
-
-## Preparation
-
-In order to make POC phase as simple as possible, a standalone spark cluster is the best choice.
-So the environment setup is as below:
-
-1. hadoop sandbox (hortonworks hdp 2.2.0)
-	
-	(8 cores, 16G) * 1
-
-2. spark (1.4.1)
-
-	master:(4 cores, 8G)
-	
-	worker:(4 cores, 8G) * 2
-	
-The hadoop conf should also be in the SPARK_HOME/conf
-
-
-## Fast Cubing Implementation on Spark
-
-Spark as a computation framework has provided much richer operators than map-reduce. And some of them are quite suitable for the cubing algorithm, for instance **aggregate**.
-
-As the [Fast cubing algorithm](http://kylin.apache.org/blog/2015/08/15/fast-cubing/ "Fast Cubing Algorithm in Apache Kylin"), it contains several steps:
-
-1. build dictionary
-2. calculate region split for hbase
-3. build & output cuboid data
-
-----
-
-**build dictionary**
-
-In order to build dictionary, distinct values of the column are needed, which new API ***DataFrame*** has already provided(since spark 1.3.0).
-
-So after got the data from the hive through SparkSQL, it is quite natural to directly use the api to build dictionary.
-
-----
-
-**calculate region split**
-
-In order to calculate the distribution of all cuboids, Kylin use a HyperLogLog implementation. And each record will have a counter, whose size is by default 16KB each. So if the counter shuffles across the cluster, that will be very expensive.
-
-Spark has provided an operator ***aggregate*** to reduce shuffle size. It first does a map-reduce phase locally, and then another round of reduce to merge the data from each node.
-
-----
-
-**build & output cuboid data**
-
-In order to build cube, Kylin requires a small batch which can fit into memory in the same time.
-
-Previously in map-reduce implementation, Kylin leverage the life-cycle callback **cleanup** to gather all the input together as a batch. This cannot be directly applied in the map reduce operator in spark which we don't have such life-cycle callback.
-
-However spark has provided an operator ***glom*** which coalescing all elements within each partition into an array which is exactly Kylin want to build a small batch.
-
-Once the batch data is ready, we can just apply the Fast Cubing algorithm. 
-
-Then spark api ***saveAsNewAPIHadoopFile*** allow us to write hfile to hdfs and bulk load to HBase.
-
-
-## Statistics
-
-We use the sample data Kylin provided to build cube, total record count is 10000.
-
-Below are results(system environments are mentioned above)
-<table>
-    <tr>
-        <td></td>
-        <td>Spark</td>
-        <td>MR</td>
-    </tr>
-    <tr>
-        <td>Duration</td>
-        <td>5.5 min</td>
-        <td>10+ min</td>
-    </tr>
-</table>
-
-## Issues
-
-Since hdp 2.2+ requires Hive 0.14.0 while spark 1.3.0 only supports Hive 0.13.0. There are several compatibility problems in hive-site.xml we need to fix.
-
-1. some time-related settings
-
-    There are several settings, whose default value in hive 0.14.0 cannot be parsed in 0.13.0. Such as **hive.metastore.client.connect.retry.delay**, its default value is **5s**. And in hive 0.13.0, this value can only be in the format of Long value. So you have to manually change to from **5s** to **5**.
-
-2. hive.security.authorization.manager
-
-    If you have enabled this configuration, its default value is **org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdConfOnlyAuthorizerFactory** which is newly introduced in hive 0.14.0, it means you have to use the another implementation, such as **org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider**
-
-3. hive.execution.engine
-
-    In hive 0.14.0, the default value of **hive.execution.engine** is **tez**, change it to **mr** in the Spark classpath, otherwise there will be NoClassDefFoundError.
-
-NOTE: Spark 1.4.0 has a [bug](https://issues.apache.org/jira/browse/SPARK-8368) which will lead to ClassNotFoundException. And it has been fixed in Spark 1.4.1. So if you are planning to run on Spark 1.4.0, you may need to upgrade to 1.4.1
-
-Last but not least, when you trying to run Spark application on YARN, make sure that you have hive-site.xml and hbase-site.xml in the  HADDOP_CONF_DIR or YARN_CONF_DIR. Since by default HDP lays these conf in separate directories.
-
-
-
-
-## Next move
-
-Clearly above is not a fair competition. The environment is not the same, test data size is too small, etc.
-
-However it showed that it is practical to migrate from MR to Spark, while some useful operators in Spark will save us quite a few codes.
-
-So the next move for us is to setup a cluster, do the benchmark on real data set for both MR and Spark.
-
-We will update the benchmark once we finished, please stay tuned.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-09-22-hybrid-model.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-09-22-hybrid-model.md b/website/_posts/blog/2015-09-22-hybrid-model.md
deleted file mode 100644
index d966fa5..0000000
--- a/website/_posts/blog/2015-09-22-hybrid-model.md
+++ /dev/null
@@ -1,136 +0,0 @@
----
-layout: post-blog
-title:  "Hybrid Model in Apache Kylin 1.0"
-date:   2015-09-25 16:00:00
-author: Shaofeng Shi
-categories: blog
----
-
-**Apache Kylin v1.0 introduces a new realization "hybrid model" (also called "dynamic model"); This post introduces the concept and how to create a hybrid instance.**
-
-# Problem
-
-For incoming SQL queries, Kylin picks one (and only one) realization to serve the query; Before the "hybrid", there is only one type of realization open for user: Cube. That to say, only 1 Cube would be selected to answer a query;
-
-Now let's start with a sample case; Assume user has a Cube called "Cube_V1", it has been built for a couple of months; Now the user wants to add new dimension or metrics to fulfill their business need; So he created a new Cube named "Cube_V2"; 
-
-Due to some reason user wants to keep "Cube_V1", and expects to build "Cube_V2" from the end date of "Cube_V1"; Possible reasons include:
-
-* History source data has been dropped from Hadoop, not possible to build "Cube_V2" from the very beginning;
-* The cube is large, rebuilding takes very long time;
-* New dimension/metrics is only available or applied since some day;
-* User feels okay that the result is empty for old days when the query uses new dimensions/metrics.
-
-For the queries against the common dimensions/metrics, user expects both "Cube_V1" and "Cube_V2" be scanned to get a full result set; Under such a background, the "hybrid model" is introduced to solve this problem.
-
-## Hybrid Model
-
-Hybrid model is a new realization which is a composite of one or multiple other realizations (cubes); See the figure below.
-
-![]( /images/blog/hybrid-model.png)
-
-Hybrid doesn't have its real storage; It is like a virtual database view over the tables; A hybrid instance acts as a delegator who forward the requests to its children realizations and then union the results when gets back from them.
-
-## How to add a hybrid instance
-
-So far there is no UI for creating/editing hybrid; if have the need, you need manually edit Kylin metadata;
-
-### Step 1: Take a backup of kylin metadata store 
-
-```
-export KYLIN_HOME="/path/to/kylin"
-
-$KYLIN_HOME/bin/metastore.sh backup
-
-```
-
-A backup folder will be created, assume it is $KYLIN_HOME/metadata_backup/2015-09-25/
- 
-### Step 2: Create sub-folder "hybrid"
-
-```
-mkdir -p $KYLIN_HOME/metadata_backup/2015-09-25/hybrid
-```
-
-### Step 3: Create a hybrid instance json file: 
-
-```
-vi $KYLIN_HOME/metadata_backup/2015-09-25/hybrid/my_hybrid.json
-
-```
-
-Input content like below, the "name" and "uuid" need be unique:
-
-```
-{
-  "uuid": "9iiu8590-64b6-4367-8fb5-7500eb95fd9c",
-  "name": "my_hybrid",
-  "realizations": [
-    {
-           "type": "CUBE",
-           "realization": "Cube_V1"
-    },
-    {
-            "type": "CUBE",
-            "realization": "Cube_V2"
-    }
-  ]
-}
-
-```
-Here "Cube_V1" and "Cube_V2" are the cubes that you want to combine.
-
-
-### Step 4: Add hybrid instance to project
-
-Open project json file (for example project "default") with text editor:
-
-```
-vi $KYLIN_HOME/metadata_backup/2015-09-25/project/default.json
-
-```
-
-In the "realizations" array, add one entry like below, the type need be "HYBRID", "realization" is the name of the hybrid instance:
-
-```
-    {
-      "name": "my_hybrid",
-      "type": "HYBRID",
-      "realization": "my_hybrid"
-    }
-```
-
-### Step 5: Upload the metadata:
-
-```
-  $KYLIN_HOME/bin/metastore.sh restore $KYLIN_HOME/metadata_backup/2015-09-25/
-
-```
-Please note, the "restore" action will upload the metadata from local to remote hbase store, which may overwrite the changes in remote; So please do this when there is no metadata change from Kylin server during this period (no building job, no cube creation/update, etc), or only pickup the changed files to an empty local folder before run "restore";
-
-### Step 6: Reload metadata
-
-Restart Kylin server, or click "Reload metadata" in the "Admin" tab on Kylin web UI to load the changes; Ideally the hybrid will start to work; You can do some verifications by writing some SQLs.
-
-## FAQ:
-
-**Question 1**: When will hybrid be selected to answer a SQL query?
-If one of its underlying cube can answer the query, the hybrid will be selected; 
-
-**Question 2**: How hybrid to answer the query?
-Hybrid will delegate the query to each of its children realizations; If a child cube is capable for this query (match all dimensions/metrics), it will return the results to the hybrid, otherwise it will be skipped; Finally query engine will aggregate the data from hybrid before return to user;
-
-**Question 3**: Will hybrid check the date/time duplication?
-No; it depends on user to ensure the cubes in a hybrid don't have date/time range duplication; For example, the "Cube_V1" is ended at 2015-9-20 (excluding), the "Cube_V2" should start from 2015-9-20 (including); 
-
-**Question 4**: Will hybrid restrict the children cubes having the same data model?
-No; To provide as much as flexibility, hybrid doesn't check whether the children cubes' fact/lookup tables and join conditions are the same; But user should understand what they're doing to avoid unexpected behavior.
-
-**Question 5**: Can hybrid have another hybrid as child?
-No; we don't see the need; so far it assumes all children are Cubes;
-
-**Question 6**: Can I use hybrid to join multiple cubes?
-No; the purpose of hybrid is to consolidate history cube and new cube, something like a "union", not "join";
-
-**Question 7**: If a child cube is disabled, will it be scanned via the hybrid?
-No; hybrid instance will check the child realization's status before sending query to it; so if the cube is disabled, it will not be scanned. 
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-10-14-Apache-Kylin-Meetup.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-10-14-Apache-Kylin-Meetup.md b/website/_posts/blog/2015-10-14-Apache-Kylin-Meetup.md
deleted file mode 100644
index 3e33da8..0000000
--- a/website/_posts/blog/2015-10-14-Apache-Kylin-Meetup.md
+++ /dev/null
@@ -1,63 +0,0 @@
----
-layout: post-blog
-title:  Apache Kylin Meetup @Shanghai Oct 10, 2015
-date:   2015-10-14 17:00:00
-author: Luke Han
-categories: blog
----
-
-{:.center}
-![]( /images/blog/meetup_1.jpeg)
-
-
-On Oct 10th, 2015, Apache Kylin Meetup was successfully held in German Centre, Shanghai. It was the first Kylin meetup held in Shanghai (the third time worldwide, the first in Silicon Valley, the second in Beijing). Mr. Chad Chun, Director of eBay ADI CCOE made a welcome speech to the meetup. After that, members of Kylin core development team, Kylin’s users in eBay, Apache Tez Committer, Apache Zeppelin Committer and technology partner of MiningLAMP shared rich topics in turn, offering a technology feast of big data to more than 100 attendees.
-
-{:.center}
-![]( /images/blog/meetup_2.jpeg)
-
-
-## 1. Apache Kylin Tech Deep Dive - Streaming and Plugin Architecture
--Yang Li, Sr. Architect eBay ADI, Apache Kylin Tech Leader, PMC member, introduced the detail design and implementation of Plugin architecture, Streaming Cubing, Fast Cubing, TopN, etc. in Kylin2 which will be released this year. Some new coming features were also mentioned.
-[Slides](http://www.slideshare.net/lukehan/1-apache-kylin-deep-dive-streaming-and-plugin-architecture-apache-kylin-meetup-shanghai)
-
-{:.center}
-![]( /images/blog/meetup_3.jpeg)
-
-## 2. How Kylin help eCG to analysis Google Analytics Data
--Naiqin Wu, Sr. PM of eBay Classifieds Group, described the difficulties and challenges encountered during the use of Google Analytics by eCG. Then she introduced how to download and organize Google Analytics Data into eBay internal Hadoop Cluster and then build analysis tools for business analysts using Kylin.
-
-{:.center}
-![]( /images/blog/meetup_4.jpeg)
-
-## 3. Apache Tez - Next Gen Execute Engine on Hadoop
--Jeff Zhang, Sr. Engineer of Hortonworks, Apache Tez committer, introduced the detail architecture and design of Apache Tez, comparison between Tez and MapReduce, community development and roadmap etc.
-[Slides](http://www.slideshare.net/lukehan/3-apache-tez-introducation-apache-kylin-meetup-shanghai)
-
-{:.center}
-![]( /images/blog/meetup_5.jpeg)
-
-## 4. Building Data Products with Apache Zeppelin
--Alexander Bezzubov, Sr. Engineer NFLabs (from Korea), Apache Zeppelin committer & PMC member, presented the method of how to leverage Zeppelin to build data product based on github open source. In the end he introduced Zeppelin’s Apache Kylin Intepreter.
-[Slides](http://www.slideshare.net/lukehan/4building-a-data-product-using-apache-zeppelin-apache-kylin-meetup-shanghai)
-
-{:.center}
-![]( /images/blog/meetup_6.jpeg)
-
-## 5. Kylin Use Case from Finance
--Hua Huang, technology partner of MiningLAMP, Apache Kylin committer, showed the result of the MiningLAMP’s recent research over big data, especially from finance field. He then introduced how MiningLAMP offer big data analysis product to its customers using Kylin. The product has been deployed and launched among its finance customers, supporting report and OLAP analysis capability based on more than 100 Kylin Cubes and dozens of TBs’ data.
-[Slides](http://www.slideshare.net/lukehan/5-apache-kylin-apache-kylin-meetup-shanghai)
-
-{:.center}
-![]( /images/blog/meetup_7.jpeg)
-
-## 6. Apache Kylin Roadmap and open source community
--Luke Han, Lead Product Manager of eBay ADI, Apache Kylin Product Lead, PMC member, introduced the development history of Apache Kylin and the future Roadmap, especially the upcoming release of StreamingOLAP and the correlated properties and release plan. The condition of community development since Kylin became open source was also referred, including newly added Committers (from eBay, Meituan, MiningLAMP), version release etc. Luke made a special mention that Apache Kylin has finished its first round voting, which means it is about to graduate from Apache Incubator and promoted as Apache top-level project soon.
-[Slides](http://www.slideshare.net/lukehan/6-apache-kylin-roadmap-and-community-apache-kylin-meetup-shanghai)
-
-{:.center}
-![]( /images/blog/meetup_8.jpeg)
-
-Finally, thanks the staffs from eBay and girls from Fudan University ;-)
-
-{:.center}
-![]( /images/blog/meetup_9.jpeg)

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-10-25-release-v1.1-incubating.cn.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-10-25-release-v1.1-incubating.cn.md b/website/_posts/blog/2015-10-25-release-v1.1-incubating.cn.md
deleted file mode 100644
index 3f799fb..0000000
--- a/website/_posts/blog/2015-10-25-release-v1.1-incubating.cn.md
+++ /dev/null
@@ -1,53 +0,0 @@
----
-layout: post-blog
-title:  Apache Kylin v1.1 (incubating) 正式发布
-date:   2015-10-25 17:28:00
-author: Luke Han
-categories: blog
----
-
-Apache Kylin社区非常高兴宣布Apache Kylin v1.1 (incubating)正式发布.
- 
-Apache Kylin一个开源的分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力以支持超大规模数据,最初由eBay Inc. 开发并贡献至开源社区。
-
-下载Apache Kylin v1.1 (incubating) 源代码及二进制安装包, 
-请访问[下载](http://kylin.apache.org/cn/download/)页面.
-
-这是一个主要的版本发布带来了更稳定,健壮及更好管理的版本,Apache Kylin社区解决了56个issue,包括Bug修复,功能增强及一些新特性等。
-
-## 主要变化
-
-__Kylin 核心功能增强__
-
-* 支持Cube数据保留时间设置 [KYLIN-906](https://issues.apache.org/jira/browse/KYLIN-906)
-* 升级Apache Calcite至1.4 [KYLIN-1047](https://issues.apache.org/jira/browse/KYLIN-1047) 
-* 在Cube构建成功后清理Hive中间文件 [KYLIN-589](https://issues.apache.org/jira/browse/KYLIN-589)
-* 当Hive返回空值时继续Cube构建任务 [KYLIN-772](https://issues.apache.org/jira/browse/KYLIN-772)
-* 支持可配置HBase压缩算法,包括Snappy及GZip [KYLIN-956](https://issues.apache.org/jira/browse/KYLIN-956) 
-* 支持将Cube数据导入到独立的HBase集群 [KYLIN-957](https://issues.apache.org/jira/browse/KYLIN-957)
-* 将Roaring bitmaps引入InvertedIndex模块 [KYLIN-1034](https://issues.apache.org/jira/browse/KYLIN-1034)
-
-__主要Bug修复__
-
-* 当有多个IN条件时SQL执行缓慢 [KYLIN-740](https://issues.apache.org/jira/browse/KYLIN-740)
-* Jobs页面加载Bug [KYLIN-950](https://issues.apache.org/jira/browse/KYLIN-950)
-* 查询缓存没有随元数据更新而刷新 [KYLIN-771](https://issues.apache.org/jira/browse/KYLIN-771)
-* 在事实表上执行“select * from fact”不工作 [KYLIN-847](https://issues.apache.org/jira/browse/KYLIN-847)
-* SQL执行时报Float 不能转换成为Double异常 [KYLIN-918](https://issues.apache.org/jira/browse/KYLIN-918)
-* 更新Cube数据模型失败后元数据状态不一致 [KYLIN-958](https://issues.apache.org/jira/browse/KYLIN-958)
-* SQL中关键字"offset"的Bug [KYLIN-983](https://issues.apache.org/jira/browse/KYLIN-983)
-* 平均值函数AVG不工作 [KYLIN-985](https://issues.apache.org/jira/browse/KYLIN-985)
-* 字典中空值''导致Cube合并失败 [KYLIN-1004](https://issues.apache.org/jira/browse/KYLIN-1004)
-
-
-__升级__  
-我们建议从v0.7.x及v1.0升级到此版本已获得更好的性能,稳定性及Bug修复等。
-并且与社区最新特性及支持保持同步。
-
-__支持__  
-升级和使用过程中有任何问题,请: 
-提交至Kylin的JIRA: [https://issues.apache.org/jira/browse/KYLIN/](https://issues.apache.org/jira/browse/KYLIN/)  
-或者  
-发送邮件到Apache Kylin邮件列表: [dev@kylin.apache.org](mailto:dev@kylin.apache.org)  
-
-_感谢各位的贡献!_
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-10-25-release-v1.1-incubating.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-10-25-release-v1.1-incubating.md b/website/_posts/blog/2015-10-25-release-v1.1-incubating.md
deleted file mode 100644
index 2468f42..0000000
--- a/website/_posts/blog/2015-10-25-release-v1.1-incubating.md
+++ /dev/null
@@ -1,53 +0,0 @@
----
-layout: post-blog
-title:  Apache Kylin v1.1 (incubating) Release Announcement
-date:   2015-10-25 17:28:00
-author: Luke Han
-categories: blog
----
-
-The Apache Kylin community is pleased to announce the release of Apache Kylin v1.1 (incubating).
- 
-Apache Kylin is an open source Distributed Analytics Engine designed to provide SQL interface and multi-dimensional analysis (OLAP) on Hadoop supporting extremely large datasets, original contributed from eBay Inc.
-
-To download Apache Kylin v1.1 (incubating) source code or binary package: 
-please visit the [download](http://kylin.apache.org/download) page.
-
-This is a major release which brings more stable, robust and well management version, Apache Kylin community resolved about 56 issues including bug fixes, improvements, and few new features.
-
-## Change Highlights
-
-__Kylin Core Improvement__
-
-* Support data retention by cube [KYLIN-906](https://issues.apache.org/jira/browse/KYLIN-906)
-* Upgraded Apache Calcite to 1.4 for more bug fixes and SQL functions [KYLIN-1047](https://issues.apache.org/jira/browse/KYLIN-1047) 
-* Cleanup intermediate Hive data after cube build [KYLIN-589](https://issues.apache.org/jira/browse/KYLIN-589)
-* Continue cube job when Hive return empty resultset [KYLIN-772](https://issues.apache.org/jira/browse/KYLIN-772)
-* Support setting for HBase compression with Snappy or GZip [KYLIN-956](https://issues.apache.org/jira/browse/KYLIN-956) 
-* Support load data to separated HBase cluster [KYLIN-957](https://issues.apache.org/jira/browse/KYLIN-957)
-* Introduced Roaring bitmaps for InvertedIndex, contributed by Daniel Lemire [KYLIN-1034](https://issues.apache.org/jira/browse/KYLIN-1034)
-
-__Main Bug Fixes__
-
-* Slowness with many IN() values [KYLIN-740](https://issues.apache.org/jira/browse/KYLIN-740)
-* Web UI "Jobs" issue [KYLIN-950](https://issues.apache.org/jira/browse/KYLIN-950)
-* Query cache is not evicted when metadata changed [KYLIN-771](https://issues.apache.org/jira/browse/KYLIN-771)
-* Select * from fact not work [KYLIN-847](https://issues.apache.org/jira/browse/KYLIN-847)
-* Float can't be cast to Double when execute SQL [KYLIN-918](https://issues.apache.org/jira/browse/KYLIN-918)
-* Update cube data model may fail and leave metadata in inconsistent state [KYLIN-958](https://issues.apache.org/jira/browse/KYLIN-958)
-* SQL keyword "offset" bug [KYLIN-983](https://issues.apache.org/jira/browse/KYLIN-983)
-* AVG not work [KYLIN-985](https://issues.apache.org/jira/browse/KYLIN-985)
-* Dictionary with '' value cause cube merge fail [KYLIN-1004](https://issues.apache.org/jira/browse/KYLIN-1004)
-
-
-__Upgrade__  
-We recommend to upgrade to this version from v0.7.x and v1.0 for better performance, stability and bug fixes.
-Also to keep up to date with community with latest features and supports.
-
-__Support__  
-Any issue or question during upgrade, please 
-open JIRA to Kylin project: [https://issues.apache.org/jira/browse/KYLIN/](https://issues.apache.org/jira/browse/KYLIN/)  
-or  
-send mail to Apache Kylin dev mailing list: [dev@kylin.apache.org](mailto:dev@kylin.apache.org)  
-
-_Great thanks to everyone who contributed!_
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-12-23-release-v1.2.cn.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-12-23-release-v1.2.cn.md b/website/_posts/blog/2015-12-23-release-v1.2.cn.md
deleted file mode 100644
index 37d12f0..0000000
--- a/website/_posts/blog/2015-12-23-release-v1.2.cn.md
+++ /dev/null
@@ -1,54 +0,0 @@
----
-layout: post-blog
-title:  Apache Kylin v1.2 正式发布
-date:   2015-12-23 22:28:00
-author: Luke Han
-categories: blog
----
-
-Apache Kylin社区非常高兴宣布Apache Kylin v1.2正式发布,这是自顺利毕业成Apache顶级项目后的第一个发布版本。
- 
-Apache Kylin一个开源的分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力以支持超大规模数据,最初由eBay Inc. 开发并贡献至开源社区。
-
-下载Apache Kylin v1.2源代码及二进制安装包, 
-请访问[下载](http://kylin.apache.org/cn/download/)页面.
-
-这是一个主要的版本发布带来了更稳定,健壮及更好管理的版本,Apache Kylin社区解决了44个issue,包括Bug修复,功能增强及一些新特性等。
-
-## 主要变化
-
-__Kylin 核心功能增强__
-
-* 支持Excel, Power BI 及 Tableau 9.1 [KYLIN-596](https://issues.apache.org/jira/browse/KYLIN-596),[KYLIN-1065](https://issues.apache.org/jira/browse/KYLIN-1065)
-* 增强HDFS小文件处理机制 [KYLIN-702](https://issues.apache.org/jira/browse/KYLIN-702) 
-* 环境检查脚本中对Hive HCatalog的增强 [KYLIN-1081](https://issues.apache.org/jira/browse/KYLIN-1081), [KYLIN-1119](https://issues.apache.org/jira/browse/KYLIN-1119)
-* 维度列字典编码支持超过千万以上基数 [KYLIN-1099](https://issues.apache.org/jira/browse/KYLIN-1099)
-* Job页面加载性能改进 [KYLIN-1154](https://issues.apache.org/jira/browse/KYLIN-1154) 
-* 基于每个查询分配内存预算 [KYLIN-1190](https://issues.apache.org/jira/browse/KYLIN-1190)
-
-__主要Bug修复__
-
-* 修复在编辑模式中保存Cube的Bug [KYLIN-1168](https://issues.apache.org/jira/browse/KYLIN-1168)
-* Cube创建后不能重命名 [KYLIN-693](https://issues.apache.org/jira/browse/KYLIN-693)
-* 项目页面中Cube列表消失 [KYLIN-930](https://issues.apache.org/jira/browse/KYLIN-930)
-* Join两个字查询时报错 [KYLIN-1033](https://issues.apache.org/jira/browse/KYLIN-1033)
-* 当过滤条件是 (A or false) 时导致错误结果 [KYLIN-1039](https://issues.apache.org/jira/browse/KYLIN-1039)
-* 支持通过ResourceManager HA环境中获取MapReduce任务状态 [KYLIN-1067](https://issues.apache.org/jira/browse/KYLIN-1067)
-* Build Base Cuboid Data出错后无法发送邮件 [KYLIN-1106](https://issues.apache.org/jira/browse/KYLIN-1106)
-* 二进制包中ResourceTool 下载/上传不工作 [KYLIN-1121](https://issues.apache.org/jira/browse/KYLIN-1121)
-* Kylin示例Cube "kylin_sales_cube"无法被保存 [KYLIN-1140](https://issues.apache.org/jira/browse/KYLIN-1140)
-* 1.x 分支中使用Minicluster的单元测试不工作 [KYLIN-1155](https://issues.apache.org/jira/browse/KYLIN-1155)
-* 在查询中无法解析如'YYYYMMDD'的日期格式 [KYLIN-1216](https://issues.apache.org/jira/browse/KYLIN-1216)
-
-
-__升级__  
-我们建议从早前颁布升级到此版本已获得更好的性能,稳定性及Bug修复等。
-并且与社区最新特性及支持保持同步。
-
-__支持__  
-升级和使用过程中有任何问题,请: 
-提交至Kylin的JIRA: [https://issues.apache.org/jira/browse/KYLIN/](https://issues.apache.org/jira/browse/KYLIN/)  
-或者  
-发送邮件到Apache Kylin邮件列表: [dev@kylin.apache.org](mailto:dev@kylin.apache.org)  
-
-_感谢每一位朋友的参与和贡献!_
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-12-23-release-v1.2.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-12-23-release-v1.2.md b/website/_posts/blog/2015-12-23-release-v1.2.md
deleted file mode 100644
index a248a18..0000000
--- a/website/_posts/blog/2015-12-23-release-v1.2.md
+++ /dev/null
@@ -1,54 +0,0 @@
----
-layout: post-blog
-title:  Apache Kylin v1.2 Release Announcement
-date:   2015-12-23 22:28:00
-author: Luke Han
-categories: blog
----
-
-The Apache Kylin community is pleased to announce the release of Apache Kylin v1.2, the first release after graduation.
- 
-Apache Kylin is an open source Distributed Analytics Engine designed to provide SQL interface and multi-dimensional analysis (OLAP) on Hadoop supporting extremely large datasets, original contributed from eBay Inc.
-
-To download Apache Kylin v1.2 source code or binary package: 
-please visit the [download](http://kylin.apache.org/download) page.
-
-This is a major release which brings more stable, robust and well management version, Apache Kylin community resolved about 44 issues including bug fixes, improvements, and few new features.
-
-## Change Highlights
-
-__Kylin Core Improvement__
-
-* Support Excel, Power BI and Tableau 9.1 [KYLIN-596](https://issues.apache.org/jira/browse/KYLIN-596),[KYLIN-1065](https://issues.apache.org/jira/browse/KYLIN-1065)
-* Improve small file management on HDFS [KYLIN-702](https://issues.apache.org/jira/browse/KYLIN-702) 
-* Env shell script enhance for Hive HCatalog [KYLIN-1081](https://issues.apache.org/jira/browse/KYLIN-1081), [KYLIN-1119](https://issues.apache.org/jira/browse/KYLIN-1119)
-* Dimenion column supports high cardinality over 10 million [KYLIN-1099](https://issues.apache.org/jira/browse/KYLIN-1099)
-* Enhance job page loading performance [KYLIN-1154](https://issues.apache.org/jira/browse/KYLIN-1154) 
-* Make memory budget per query configurable [KYLIN-1190](https://issues.apache.org/jira/browse/KYLIN-1190)
-
-__Main Bug Fixes__
-
-* Save cube issue in edit model [KYLIN-1168](https://issues.apache.org/jira/browse/KYLIN-1168)
-* Couldn't change a cube's name after it be created [KYLIN-693](https://issues.apache.org/jira/browse/KYLIN-693)
-* Cube list missing under project [KYLIN-930](https://issues.apache.org/jira/browse/KYLIN-930)
-* Error when join two sub-query [KYLIN-1033](https://issues.apache.org/jira/browse/KYLIN-1033)
-* Filter like (A or false) yields wrong result [KYLIN-1039](https://issues.apache.org/jira/browse/KYLIN-1039)
-* Support get MapReduce Job status for ResourceManager HA Env [KYLIN-1067](https://issues.apache.org/jira/browse/KYLIN-1067)
-* Can not send email caused by Build Base Cuboid Data step failed [KYLIN-1106](https://issues.apache.org/jira/browse/KYLIN-1106)
-* ResourceTool download/upload does not work in binary package [KYLIN-1121](https://issues.apache.org/jira/browse/KYLIN-1121)
-* Kylin's sample cube "kylin_sales_cube" couldn't be saved [KYLIN-1140](https://issues.apache.org/jira/browse/KYLIN-1140)
-* Unit test with minicluster doesn't work on 1.x [KYLIN-1155](https://issues.apache.org/jira/browse/KYLIN-1155)
-* Can't parse DateFormat like 'YYYYMMDD' correctly in query [KYLIN-1216](https://issues.apache.org/jira/browse/KYLIN-1216)
-
-
-__Upgrade__  
-We recommend to upgrade to this version for better performance, stability and bug fixes.
-Also to keep up to date with community with latest features and supports.
-
-__Support__  
-Any issue or question during upgrade, please 
-open JIRA to Kylin project: [https://issues.apache.org/jira/browse/KYLIN/](https://issues.apache.org/jira/browse/KYLIN/)  
-or  
-send mail to Apache Kylin dev mailing list: [dev@kylin.apache.org](mailto:dev@kylin.apache.org)  
-
-_Great thanks to everyone who contributed!_
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-12-25-support-powerbi-tableau9.cn.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-12-25-support-powerbi-tableau9.cn.md b/website/_posts/blog/2015-12-25-support-powerbi-tableau9.cn.md
deleted file mode 100644
index be26804..0000000
--- a/website/_posts/blog/2015-12-25-support-powerbi-tableau9.cn.md
+++ /dev/null
@@ -1,28 +0,0 @@
----
-layout: post-blog
-title:  Apache Kylin增加对Tableau 9及微软Excel, Power BI的支持
-date:   2015-12-25 23:23:00
-author: Luke Han
-categories: blog
----
-
-Apache Kylin社区更新了最新的ODBC Driver(v1.2),增加了对Tableau9.1、Microsoft Excel、Microsoft Power BI 等常用商业分析软件的支持。这次的更新为广大数据分析工作者带来了更多的选择
-
-### 微软Excel 及 Power BI
-Microsoft Excel是当今Windows平台上最流行的数据处理软件之一,支持多种数据处理功能,可以利用Power Query从ODBC数据源读取数据并返回到数据表中。
-
-Microsoft Power BI是由微软推出的商业智能的专业分析工具,给用户提供简单且丰富的数据可视化及分析功能。
-
-### Tableau 9
-Tableau是Windows平台上最流行的商业智能工具之一,它操作简洁、功能强大,通过简单地拖拽就可以将大量数据体现在可视化图表中,在最新的9.1版本中,用户体验得到了更进一步的提升
-
-### Kylin的支持
-从eBay及其他正在使用Kylin的用户中有很强烈的需求希望支持这几个工具,特别是每天使用这些工具的分析师们。 在Hadoop上通过其他工具,例如Hive,对大数据进行交互式分析给他们带来了巨大的挑战。通过Apache Kylin的亚秒级查询延迟特性,及这些漂亮的报表和可视化工具使得分析师能够在十亿以上规模数据上能够以秒级延迟进行交互式分析。
-
-### 教程
-迫不及待的想试试? 请参考以下教程:  
-* [微软Excel及Power BI教程](/cn/docs/tutorial/powerbi.html) 
-* [Tableau 9 教程](/cn/docs/tutorial/tableau_91.html)
-
-Enjoy!
-

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_posts/blog/2015-12-25-support-powerbi-tableau9.md
----------------------------------------------------------------------
diff --git a/website/_posts/blog/2015-12-25-support-powerbi-tableau9.md b/website/_posts/blog/2015-12-25-support-powerbi-tableau9.md
deleted file mode 100644
index e6f8fb3..0000000
--- a/website/_posts/blog/2015-12-25-support-powerbi-tableau9.md
+++ /dev/null
@@ -1,28 +0,0 @@
----
-layout: post-blog
-title:  Apache Kylin supports Tableau 9 and MS Excel, Power BI now
-date:   2015-12-25 23:23:00
-author: Luke Han
-categories: blog
----
-
-Apache Kylin Community has rolled out an updated ODBC Driver (v1.2), which enforced more support for Business Intelligence clients, including Microsoft Excel, Microsoft Power BI and Tableau 9. This update did bring more convenience and selectivity for analysts and end users.
-
-### MS Excel and Power BI
-Microsoft Excel is one of the most famous data tool on Windows platform, and has plenty of data analyzing functions. With Power Query installed as plug-in, excel can easily read data from ODBC data source and fill spreadsheets. 
-
-Microsoft Power BI is a business intelligence tool providing rich functionality and experience for data visualization and processing to user.
-
-### Tableau 9
-Tableau is one of the most famous business intelligence software on Windows platform. With simple operation and powerful functionality, users can easily drag and drop to visualize data in large scale. Besides, Tableau supports reading ODBC data sources, in a Live connection mode. In latest version 9.1, user experience gets better improved very much.
-
-### Support from Kylin community
-There are many requirements from eBay and other users who are using Kylin today, especially from analysts who using these tools everyday. The slow query performance of interactive with big data on Hadoop through other tool, like Hive, brings big chellenge for them.
-With sub-seconds query latency feature of Apache Kylin platform, analysts are able to run interactive query agaisting billions rows data in seconds, with these fancy reporting and visualization tools.
-
-### Tutorial
-Can't wait to try? Please refer to following tutorials:  
-* [MS Excel and Power BI Tutorial](/docs/tutorial/powerbi.html) 
-* [Tableau 9 Tutorial](/docs/tutorial/tableau_91.html)
-
-Enjoy!

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_sass/_base.scss
----------------------------------------------------------------------
diff --git a/website/_sass/_base.scss b/website/_sass/_base.scss
deleted file mode 100644
index 6fed5eb..0000000
--- a/website/_sass/_base.scss
+++ /dev/null
@@ -1,221 +0,0 @@
-/*
- * 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.
- */
-
-/**
- * Reset some basic elements
- */
-body, h1, h2, h3, h4, h5, h6,
-p, blockquote, pre, hr,
-dl, dd, ol, ul, figure {
-    margin: 0;
-    padding: 0;
-}
-
-
-
-/**
- * Basic styling
- */
-body {
-    font-family: $base-font-family;
-    font-size: $base-font-size;
-    line-height: $base-line-height;
-    font-weight: 300;
-    color: $text-color;
-    background-color: $background-color;
-    -webkit-text-size-adjust: 100%;
-}
-
-
-
-/**
- * Set `margin-bottom` to maintain vertical rhythm
- */
-h1, h2, h3, h4, h5, h6,
-p, blockquote, pre,
-ul, ol, dl, figure,
-%vertical-rhythm {
-    margin-bottom: $spacing-unit / 2;
-}
-
-
-
-/**
- * Images
- */
-img {
-    max-width: 100%;
-    vertical-align: middle;
-}
-
-
-
-/**
- * Figures
- */
-figure > img {
-    display: block;
-}
-
-figcaption {
-    font-size: $small-font-size;
-}
-
-
-
-/**
- * Lists
- */
-ul, ol {
-    margin-left: $spacing-unit;
-}
-
-li {
-    > ul,
-    > ol {
-         margin-bottom: 0;
-    }
-}
-
-
-
-/**
- * Headings
- */
-h1, h2, h3, h4, h5, h6 {
-    font-weight: 300;
-}
-
-
-
-/**
- * Links
- */
-a {
-    color: $brand-color;
-    text-decoration: none;
-
-    &:visited {
-        color: darken($brand-color, 15%);
-    }
-
-    &:hover {
-        color: $text-color;
-        text-decoration: underline;
-    }
-}
-
-
-
-/**
- * Blockquotes
- */
-blockquote {
-    color: $grey-color;
-    border-left: 4px solid $grey-color-light;
-    padding-left: $spacing-unit / 2;
-    font-size: 18px;
-    letter-spacing: -1px;
-    font-style: italic;
-
-    > :last-child {
-        margin-bottom: 0;
-    }
-}
-
-
-
-/**
- * Code formatting
- */
-pre,
-code {
-    font-size: 15px;
-    border: 1px solid $grey-color-light;
-    border-radius: 3px;
-    background-color: #eef;
-}
-
-code {
-    padding: 1px 5px;
-}
-
-pre {
-    padding: 8px 12px;
-    overflow-x: scroll;
-
-    > code {
-        border: 0;
-        padding-right: 0;
-        padding-left: 0;
-    }
-}
-
-
-
-/**
- * Wrapper
- */
-.wrapper {
-    max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit} * 2));
-    max-width:         calc(#{$content-width} - (#{$spacing-unit} * 2));
-    margin-right: auto;
-    margin-left: auto;
-    padding-right: $spacing-unit;
-    padding-left: $spacing-unit;
-    @extend %clearfix;
-
-    @include media-query($on-laptop) {
-        max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit}));
-        max-width:         calc(#{$content-width} - (#{$spacing-unit}));
-        padding-right: $spacing-unit / 2;
-        padding-left: $spacing-unit / 2;
-    }
-}
-
-
-
-/**
- * Clearfix
- */
-%clearfix {
-
-    &:after {
-        content: "";
-        display: table;
-        clear: both;
-    }
-}
-
-
-
-/**
- * Icons
- */
-.icon {
-
-    > svg {
-        display: inline-block;
-        width: 16px;
-        height: 16px;
-        vertical-align: middle;
-
-        path {
-            fill: $grey-color;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_sass/_layout.scss
----------------------------------------------------------------------
diff --git a/website/_sass/_layout.scss b/website/_sass/_layout.scss
deleted file mode 100644
index 01c4336..0000000
--- a/website/_sass/_layout.scss
+++ /dev/null
@@ -1,253 +0,0 @@
-/*
- * 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.
- */
-
-/**
- * Site header
- */
-.site-header {
-    border-top: 5px solid $grey-color-dark;
-    border-bottom: 1px solid $grey-color-light;
-    min-height: 56px;
-
-    // Positioning context for the mobile navigation icon
-    position: relative;
-}
-
-.site-title {
-    font-size: 26px;
-    line-height: 56px;
-    letter-spacing: -1px;
-    margin-bottom: 0;
-    float: left;
-
-    &,
-    &:visited {
-        color: $grey-color-dark;
-    }
-}
-
-.site-nav {
-    float: right;
-    line-height: 56px;
-
-    .menu-icon {
-        display: none;
-    }
-
-    .page-link {
-        color: $text-color;
-        line-height: $base-line-height;
-
-        // Gaps between nav items, but not on the first one
-        &:not(:first-child) {
-            margin-left: 20px;
-        }
-    }
-
-    @include media-query($on-palm) {
-        position: absolute;
-        top: 9px;
-        right: 30px;
-        background-color: $background-color;
-        border: 1px solid $grey-color-light;
-        border-radius: 5px;
-        text-align: right;
-
-        .menu-icon {
-            display: block;
-            float: right;
-            width: 36px;
-            height: 26px;
-            line-height: 0;
-            padding-top: 10px;
-            text-align: center;
-
-            > svg {
-                width: 18px;
-                height: 15px;
-
-                path {
-                    fill: $grey-color-dark;
-                }
-            }
-        }
-
-        .trigger {
-            clear: both;
-            display: none;
-        }
-
-        &:hover .trigger {
-            display: block;
-            padding-bottom: 5px;
-        }
-
-        .page-link {
-            display: block;
-            padding: 5px 10px;
-        }
-    }
-}
-
-
-
-/**
- * Site footer
- */
-.site-footer {
-    border-top: 1px solid $grey-color-light;
-    padding: $spacing-unit 0;
-}
-
-.footer-heading {
-    font-size: 18px;
-    margin-bottom: $spacing-unit / 2;
-}
-
-.contact-list,
-.social-media-list {
-    list-style: none;
-    margin-left: 0;
-}
-
-.footer-col-wrapper {
-    font-size: 15px;
-    color: $grey-color;
-    margin-left: -$spacing-unit / 2;
-    @extend %clearfix;
-}
-
-.footer-col {
-    float: left;
-    margin-bottom: $spacing-unit / 2;
-    padding-left: $spacing-unit / 2;
-}
-
-.footer-col-1 {
-    width: -webkit-calc(35% - (#{$spacing-unit} / 2));
-    width:         calc(35% - (#{$spacing-unit} / 2));
-}
-
-.footer-col-2 {
-    width: -webkit-calc(20% - (#{$spacing-unit} / 2));
-    width:         calc(20% - (#{$spacing-unit} / 2));
-}
-
-.footer-col-3 {
-    width: -webkit-calc(45% - (#{$spacing-unit} / 2));
-    width:         calc(45% - (#{$spacing-unit} / 2));
-}
-
-@include media-query($on-laptop) {
-    .footer-col-1,
-    .footer-col-2 {
-        width: -webkit-calc(50% - (#{$spacing-unit} / 2));
-        width:         calc(50% - (#{$spacing-unit} / 2));
-    }
-
-    .footer-col-3 {
-        width: -webkit-calc(100% - (#{$spacing-unit} / 2));
-        width:         calc(100% - (#{$spacing-unit} / 2));
-    }
-}
-
-@include media-query($on-palm) {
-    .footer-col {
-        float: none;
-        width: -webkit-calc(100% - (#{$spacing-unit} / 2));
-        width:         calc(100% - (#{$spacing-unit} / 2));
-    }
-}
-
-
-
-/**
- * Page content
- */
-.page-content {
-    padding: $spacing-unit 0;
-}
-
-.page-heading {
-    font-size: 20px;
-}
-
-.post-list {
-    margin-left: 0;
-    list-style: none;
-
-    > li {
-        margin-bottom: $spacing-unit;
-    }
-}
-
-.post-meta {
-    font-size: $small-font-size;
-    color: $grey-color;
-}
-
-.post-link {
-    display: block;
-    font-size: 24px;
-}
-
-
-
-/**
- * Posts
- */
-.post-header {
-    margin-bottom: $spacing-unit;
-}
-
-.post-title {
-    font-size: 42px;
-    letter-spacing: -1px;
-    line-height: 1;
-
-    @include media-query($on-laptop) {
-        font-size: 36px;
-    }
-}
-
-.post-content {
-    margin-bottom: $spacing-unit;
-
-    h2 {
-        font-size: 32px;
-
-        @include media-query($on-laptop) {
-            font-size: 28px;
-        }
-    }
-
-    h3 {
-        font-size: 26px;
-
-        @include media-query($on-laptop) {
-            font-size: 22px;
-        }
-    }
-
-    h4 {
-        font-size: 20px;
-
-        @include media-query($on-laptop) {
-            font-size: 18px;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/_sass/_syntax-highlighting.scss
----------------------------------------------------------------------
diff --git a/website/_sass/_syntax-highlighting.scss b/website/_sass/_syntax-highlighting.scss
deleted file mode 100644
index 44e482c..0000000
--- a/website/_sass/_syntax-highlighting.scss
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * 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.
- */
-
-/**
- * Syntax highlighting styles
- */
-.highlight {
-    background: #fff;
-    @extend %vertical-rhythm;
-
-    .c     { color: #998; font-style: italic } // Comment
-    .err   { color: #a61717; background-color: #e3d2d2 } // Error
-    .k     { font-weight: bold } // Keyword
-    .o     { font-weight: bold } // Operator
-    .cm    { color: #998; font-style: italic } // Comment.Multiline
-    .cp    { color: #999; font-weight: bold } // Comment.Preproc
-    .c1    { color: #998; font-style: italic } // Comment.Single
-    .cs    { color: #999; font-weight: bold; font-style: italic } // Comment.Special
-    .gd    { color: #000; background-color: #fdd } // Generic.Deleted
-    .gd .x { color: #000; background-color: #faa } // Generic.Deleted.Specific
-    .ge    { font-style: italic } // Generic.Emph
-    .gr    { color: #a00 } // Generic.Error
-    .gh    { color: #999 } // Generic.Heading
-    .gi    { color: #000; background-color: #dfd } // Generic.Inserted
-    .gi .x { color: #000; background-color: #afa } // Generic.Inserted.Specific
-    .go    { color: #888 } // Generic.Output
-    .gp    { color: #555 } // Generic.Prompt
-    .gs    { font-weight: bold } // Generic.Strong
-    .gu    { color: #aaa } // Generic.Subheading
-    .gt    { color: #a00 } // Generic.Traceback
-    .kc    { font-weight: bold } // Keyword.Constant
-    .kd    { font-weight: bold } // Keyword.Declaration
-    .kp    { font-weight: bold } // Keyword.Pseudo
-    .kr    { font-weight: bold } // Keyword.Reserved
-    .kt    { color: #458; font-weight: bold } // Keyword.Type
-    .m     { color: #099 } // Literal.Number
-    .s     { color: #d14 } // Literal.String
-    .na    { color: #008080 } // Name.Attribute
-    .nb    { color: #0086B3 } // Name.Builtin
-    .nc    { color: #458; font-weight: bold } // Name.Class
-    .no    { color: #008080 } // Name.Constant
-    .ni    { color: #800080 } // Name.Entity
-    .ne    { color: #900; font-weight: bold } // Name.Exception
-    .nf    { color: #900; font-weight: bold } // Name.Function
-    .nn    { color: #555 } // Name.Namespace
-    .nt    { color: #000080 } // Name.Tag
-    .nv    { color: #008080 } // Name.Variable
-    .ow    { font-weight: bold } // Operator.Word
-    .w     { color: #bbb } // Text.Whitespace
-    .mf    { color: #099 } // Literal.Number.Float
-    .mh    { color: #099 } // Literal.Number.Hex
-    .mi    { color: #099 } // Literal.Number.Integer
-    .mo    { color: #099 } // Literal.Number.Oct
-    .sb    { color: #d14 } // Literal.String.Backtick
-    .sc    { color: #d14 } // Literal.String.Char
-    .sd    { color: #d14 } // Literal.String.Doc
-    .s2    { color: #d14 } // Literal.String.Double
-    .se    { color: #d14 } // Literal.String.Escape
-    .sh    { color: #d14 } // Literal.String.Heredoc
-    .si    { color: #d14 } // Literal.String.Interpol
-    .sx    { color: #d14 } // Literal.String.Other
-    .sr    { color: #009926 } // Literal.String.Regex
-    .s1    { color: #d14 } // Literal.String.Single
-    .ss    { color: #990073 } // Literal.String.Symbol
-    .bp    { color: #999 } // Name.Builtin.Pseudo
-    .vc    { color: #008080 } // Name.Variable.Class
-    .vg    { color: #008080 } // Name.Variable.Global
-    .vi    { color: #008080 } // Name.Variable.Instance
-    .il    { color: #099 } // Literal.Number.Integer.Long
-}

http://git-wip-us.apache.org/repos/asf/kylin/blob/0a74e9cb/website/about/index.md
----------------------------------------------------------------------
diff --git a/website/about/index.md b/website/about/index.md
deleted file mode 100644
index facf995..0000000
--- a/website/about/index.md
+++ /dev/null
@@ -1,35 +0,0 @@
----
-layout: default
-title: About
----
-
-
-<main id="main" >
-<section id="first" class="main">
-    <header style="padding:2em 0 4em 0;">
-      <div class="container" >
-        <h4 class="section-title"><span> About Kylin </span></h4>
-         <!-- second-->
-  <div class="row">
-          <div class="col-sm-12 col-md-12">
-            <div >
-            <p>Video on Youtube: <a href="http://youtu.be/xg4sm_N2_CM" target="_blank">Apache Kylin</a></p>
-            <p class="aboutkylin" style="font-size:1.2em">Apache Kylin, which is a distributed and scalable OLAP engine built on Hadoop to support
-extremely large datasets, developed and contributed by <a href="http://www.ebayinc.com/" target="_blank">eBay Inc</a> to open source community on Oct 1, 2014 and has been Apache Incubator Project since Nov 25, 2014. Refer to announcement on eBay Tech Blog for more detail: <a href="http://www.ebaytechblog.com/2014/10/20/announcing-kylin-extreme-olap-engine-for-big-data" target="_blank">Announcing Kylin: Extreme OLAP Engine for Big Data</a> </p>
-            
-           
-          </div>
-        </div>
-         </div>
-      </div>
-      <!-- /container --> 
-      
-    </header>
-  </section>
-    <!-- / section --> 
-  </div>
-  <!-- /container -->
-  
-  </header>
-  </section>
-</main>