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 2021/07/06 07:50:58 UTC

svn commit: r1891303 [21/22] - in /kylin/site: ./ blog/ blog/2021/07/ blog/2021/07/02/ blog/2021/07/02/Apache-Kylin4-A-new-storage-and-compute-architecture/ cn/development/ cn/development40/ cn/docs/install/ cn/docs40/ cn/docs40/gettingstarted/ cn/docs...

Modified: kylin/site/docs40/index.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/index.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/index.html (original)
+++ kylin/site/docs40/index.html Tue Jul  6 07:50:56 2021
@@ -41,7 +41,7 @@
   <meta http-equiv="X-UA-Compatible" content="IE=edge">
   <meta name="viewport" content="width=device-width, initial-scale=1">
 
-  <title>Apache Kylin | Overview</title>
+  <title>Apache Kylin | Overview of Apache Kylin4.x</title>
   <meta name="description" content="Apache Kylin Home">
   <meta name="author"      content="Apache Kylin">
   <link rel="shortcut icon" href="fav.png" type="image/png">
@@ -8810,7 +8810,7 @@ var _hmt = _hmt || [];
 				<div class="col-md-8 col-lg-8 col-xs-12 col-sm-12 aside2" style="float:right;">
 					<div id="container" class="docs">
 						<div id="pjax">
-							<h1 class="post-title">Overview</h1>
+							<h1 class="post-title">Overview of Apache Kylin4.x</h1>
 							
 							
 							<article class="post-content" >	
@@ -8823,57 +8823,188 @@ var _hmt = _hmt || [];
 * <a href="/docs24">v2.4 document</a><br />
 * <a href="/archive/">Archived</a></p>
 
-<h2 id="installation--setup">Installation &amp; Setup</h2>
-<ol>
-  <li><a href="install/index.html">Installation Guide</a></li>
-  <li><a href="install/configuration.html">Configurations</a></li>
-  <li><a href="install/kylin_cluster.html">Deploy in cluster mode</a></li>
-  <li><a href="install/advance_settings.html">Advanced settings</a></li>
-  <li><a href="install/kylin_docker.html">Run Kylin with Docker</a></li>
-</ol>
+<p>Apache kylin 4.0 is a major version after Apache kylin 3.x. Kylin4 uses a new spark build engine and parquet as storage, and uses spark as query engine.</p>
+
+<p>Kylin 4.0.0-alpha, the first version of Apache kylin 4.0, was released in July 2020, and then kylin 4.0.0-beta and official version were released.</p>
+
+<p>In order to facilitate users to have a more comprehensive and deeper understanding of kylin4.x, this document will focus on a comprehensive overview of kylin4.x from the perspective of the similarities and differences between kylin4.x and previous versions.</p>
+
+<p>The article includes the following parts:</p>
+
+<ul>
+  <li>Why replace HBase with Parquet</li>
+  <li>How to store pre calculation results in kylin 4.0</li>
+  <li>Build engine of Kylin 4.0</li>
+  <li>Query engine of kylin 4.0</li>
+  <li>Feature comparison between kylin 4.0 and kylin 3.1</li>
+  <li>Kylin 4.0 performance</li>
+  <li>Kylin 4.0 query and build tuning</li>
+  <li>Kylin 4.0 use case</li>
+</ul>
+
+<h2 id="why-replace-hbase-with-parquet">Why replace HBase with Parquet</h2>
+<p>In versions 3.x and before, Kylin has been using HBase as a storage engine to save the precomputing results generated after cube builds. HBase, as the database of HDFS, has been excellent in query performance, but it still has the following disadvantages:</p>
 
-<h2 id="tutorial">Tutorial</h2>
 <ol>
-  <li><a href="tutorial/kylin_sample.html">Quick Start with Sample Cube</a></li>
-  <li><a href="tutorial/web.html">Web Interface</a></li>
-  <li><a href="tutorial/create_cube.html">Cube Wizard</a></li>
-  <li><a href="tutorial/cube_build_job.html">Cube Build and Job Monitoring</a></li>
-  <li><a href="tutorial/sql_reference.html">SQL reference</a></li>
-  <li><a href="tutorial/cube_build_performance.html">Cube Build Tuning</a></li>
-  <li><a href="tutorial/query_pushdown.html">Enable Query Pushdown</a></li>
-  <li><a href="tutorial/setup_systemcube.html">Setup System Cube</a></li>
-  <li><a href="tutorial/use_cube_planner.html">Optimize with Cube Planner</a></li>
-  <li><a href="tutorial/use_dashboard.html">Use System Dashboard</a></li>
-  <li><a href="howto/howto_optimize_build_and_query.html">Optimize build and query</a></li>
-  <li><a href="howto/howto_config_spark_pool.html">Config Spark Pool</a></li>
+  <li>HBase is not real columnar storage;</li>
+  <li>HBase has no secondary index; Rowkey is the only index;</li>
+  <li>HBase has no encoding, Kylin has to do the encoding by itself;</li>
+  <li>HBase does not fit for cloud deployment and auto-scaling;</li>
+  <li>HBase has different API versions  and has compatible issues (e.g, 0.98, 1.0, 1.1, 2.0);</li>
+  <li>HBase has different vendor releases and has compatible issues (e.g, Cloudera’s is not compatible with others);</li>
 </ol>
 
-<h2 id="connectivity-and-apis">Connectivity and APIs</h2>
+<p>In view of the above problems, Kylin community proposed to replace HBase with Apache parquet + spark, for the following reasons:</p>
+
 <ol>
-  <li><a href="tutorial/odbc.html">ODBC driver</a></li>
-  <li><a href="howto/howto_jdbc.html">JDBC driver</a></li>
-  <li><a href="howto/howto_use_restapi.html">RESTful API list</a></li>
-  <li><a href="howto/howto_build_cube_with_restapi.html">Build cube with RESTful API</a></li>
-  <li><a href="tutorial/powerbi.html">Connect from MS Excel and PowerBI</a></li>
-  <li><a href="tutorial/tableau.html">Connect from Tableau 8</a></li>
-  <li><a href="tutorial/tableau_91.html">Connect from Tableau 9</a></li>
-  <li><a href="tutorial/microstrategy.html">Connect from MicroStrategy</a></li>
-  <li><a href="tutorial/squirrel.html">Connect from SQuirreL</a></li>
-  <li><a href="tutorial/flink.html">Connect from Apache Flink</a></li>
-  <li><a href="tutorial/spark.html">Connect from Apache Spark</a></li>
-  <li><a href="tutorial/hue.html">Connect from Hue</a></li>
-  <li><a href="tutorial/Qlik.html">Connect from Qlik Sense</a></li>
-  <li><a href="tutorial/superset.html">Connect from Apache Superset</a></li>
-  <li><a href="/blog/2018/05/08/redash-kylin-plugin-strikingly/">Connect from Redash</a></li>
+  <li>parquet is an open source and mature and stable column storage format;</li>
+  <li>Parquet is more cloud-friendly, can work with most FS including HDFS, S3, Azure Blob store, Ali OSS, etc;</li>
+  <li>parquet can be well integrated with Hadoop, hive, spark, impala, etc;</li>
+  <li>parquet supports custom index.</li>
 </ol>
 
-<h2 id="operations">Operations</h2>
+<h2 id="how-to-store-pre-calculation-results-in-kylin-40">How to store pre calculation results in kylin 4.0</h2>
+<p>In kylin4.x, the pre calculation results are stored in the file system in parquet format. The file storage structure is very important for I/O optimization. If the storage directory structure is designed in advance, the data files can be filtered through the directory or file name during query to avoid unnecessary file scan.</p>
+
+<p>The directory structure of parquet file stored in the file system is as follows:<br />
+- cube_name<br />
+  - SegmentA<br />
+    - Cuboid-111<br />
+      - part-0000-XXX.snappy.parquet<br />
+      - part-0001-XXX.snappy.parquet<br />
+      - …<br />
+    - Cuboid-222<br />
+      - part-0000-XXX.snappy.parquet<br />
+      - part-0001-XXX.snappy.parquet<br />
+      - …<br />
+  - SegmentB<br />
+      - Cuboid-111<br />
+        - part-0000-XXX.snappy.parquet<br />
+        - part-0001-XXX.snappy.parquet<br />
+        - …<br />
+      - Cuboid-222<br />
+        - part-0000-XXX.snappy.parquet<br />
+        - part-0001-XXX.snappy.parquet<br />
+        - …</p>
+
+<p>It can be seen that, using parquet storage can add and delete cuboid easily without affecting other data. With this feature, kylin4 realizes the feature of supporting users to add and delete cuboid manually. Please refer to: [how to update cuboid list for a cube]( https://cwiki.apache.org/confluence/display/KYLIN/How+to+update+cuboid+list+for+a+cube )</p>
+
+<h2 id="build-engine-of-kylin-40">Build engine of Kylin 4.0</h2>
+<p>In kylin4, spark engine is the only build engine. Compared with the build engine in previous versions, it has the following characteristics:</p>
+
 <ol>
-  <li><a href="howto/howto_backup_metadata.html">Backup/restore Kylin metadata</a></li>
-  <li><a href="howto/howto_cleanup_storage.html">Cleanup storage</a></li>
-  <li><a href="howto/howto_upgrade.html">Upgrade from old version</a></li>
+  <li>Building kylin4 simplifies many steps. For example, in cube build job, kylin4 only needs two steps: resource detection and cubing;</li>
+  <li>Since parquet encodes the stored data, the process of dimension dictionary and dimension column encoding is no longer needed in kylin4;</li>
+  <li>Kylin4 implements a new global dictionary. For more details, please refer to <a href="https://cwiki.apache.org/confluence/display/KYLIN/Global+Dictionary+on+Spark">kylin4 global dictionary</a>;</li>
+  <li>Kylin4 will automatically adjust parameters of spark according to cluster resources and build job;</li>
+  <li>Kylin4 can improve the build performance.</li>
 </ol>
 
+<p>Users can manually modify the build the relevant spark configuration through the configuration item beginning with <code class="highlighter-rouge">kylin.build.spark-conf</code>. The manually modified spark configuration item will no longer participate in automatic parameter adjustment.</p>
+
+<h2 id="query-engine-of-kylin-40">Query engine of kylin 4.0</h2>
+
+<p><code class="highlighter-rouge">Sparder (spardercontext)</code>, the query engine of Kylin4, is a new distributed query engine implemented by the back end of spark application. Compared with the original query engine, sparder has the following advantages:<br />
+1. Distributed query engine,avoid single-point-of-failure;<br />
+2. Unified calculation engine for building and querying;<br />
+3. There is a substantial increase in complex query performance;<br />
+4. Can benefit from spark new features and ecology.</p>
+
+<p>In kylin4, sparder exists as a long-running spark application. Sparder will obtain the horn resource according to the spark parameter configured in the configuration item beginning with <code class="highlighter-rouge">kylin.query.spark-conf</code>. If the configured resource parameter is too large, the build engine may be affected, and even sparder cannot be started successfully. If sparder is not started successfully, all query tasks will fail, Users can check the sparder status in the system page of kylin webui.<br />
+By default, the spark parameter used for query will be set smaller. In the production environment, you can increase these parameters appropriately to improve query performance.<br />
+<code class="highlighter-rouge">Kylin.query.auto-sparder-context</code> parameter is used to control whether to start sparder when kylin is started. The default value is <code class="highlighter-rouge">false</code>, that is, sparder will be started only when the first SQL is executed by default. For this reason, it will take a long time to execute the first SQL.<br />
+If you don’t want the query speed of the first SQL to be lower than expected, you can set <code class="highlighter-rouge">kylin.query.auto-sparder-context</code> to <code class="highlighter-rouge">true</code>, and sparder will start with kylin.</p>
+
+<h2 id="feature-comparison-between-kylin-40-and-kylin-31">Feature comparison between kylin 4.0 and kylin 3.1</h2>
+
+<table>
+  <thead>
+    <tr>
+      <th>Feature</th>
+      <th style="text-align: left">Kylin 3.1.0</th>
+      <th style="text-align: left">Kylin 4.0</th>
+    </tr>
+  </thead>
+  <tbody>
+    <tr>
+      <td>Storage</td>
+      <td style="text-align: left">HBase</td>
+      <td style="text-align: left">Parquet</td>
+    </tr>
+    <tr>
+      <td>BuildEngine</td>
+      <td style="text-align: left">MapReduce/Spark/Flink</td>
+      <td style="text-align: left">New Spark Engine</td>
+    </tr>
+    <tr>
+      <td>Metastore</td>
+      <td style="text-align: left">HBase(Default)/Mysql</td>
+      <td style="text-align: left">Mysql(Default)</td>
+    </tr>
+    <tr>
+      <td>DataSource</td>
+      <td style="text-align: left">Kafka/Hive/JDBC</td>
+      <td style="text-align: left">Hive/CSV</td>
+    </tr>
+    <tr>
+      <td>Global Dictionary</td>
+      <td style="text-align: left">Two implementation</td>
+      <td style="text-align: left">New implementation</td>
+    </tr>
+    <tr>
+      <td>Cube Optimization Tool</td>
+      <td style="text-align: left">Cube Planner</td>
+      <td style="text-align: left">Cube Planner phase1 and Optimize cube manually</td>
+    </tr>
+    <tr>
+      <td>Self-monitoring</td>
+      <td style="text-align: left">System cube and Dashboard</td>
+      <td style="text-align: left">System cube and Dashboard</td>
+    </tr>
+    <tr>
+      <td>PushDown Engine</td>
+      <td style="text-align: left">Hive/JDBC</td>
+      <td style="text-align: left">Spark SQL</td>
+    </tr>
+    <tr>
+      <td>Hadoop platform</td>
+      <td style="text-align: left">HDP2/HDP3/CDH5/CDH6/EMR5</td>
+      <td style="text-align: left">HDP2/CDH5/CDH6/EMR5/EMR6/HDI</td>
+    </tr>
+    <tr>
+      <td>Deployment mode</td>
+      <td style="text-align: left">Single node/Cluster/Read and write separation</td>
+      <td style="text-align: left">Single node/Cluster/Read and write separation</td>
+    </tr>
+  </tbody>
+</table>
+
+<h2 id="kylin-40-performance">Kylin 4.0 performance</h2>
+<p>In order to test the performance of kylin 4.0, we benchmark SSB dataset and TPC-H dataset respectively, and compare with kylin 3.1.0. The test environment is a 4-node CDH cluster, and the yarn queue is used to allocate 400G memory and 128 CPU cores.<br />
+The results of performance test are as follows:</p>
+
+<ul>
+  <li>Comparison of build duration and result size(SSB)</li>
+</ul>
+
+<p><img src="/images/tutorial/4.0/overview/build_duration_ssb.png" alt="" />  <br />
+<img src="/images/tutorial/4.0/overview/result_size_ssb.png" alt="" /></p>
+
+<p>The test results can reflect the following two points:<br />
+- The build speed of kylin4 is significantly higher than that of kylin3.1.0 spark engine;<br />
+- Compared with HBase, the parquet file size of kylin4 is significantly reduced;</p>
+
+<p>From the comparison of query results, it can be seen that kylin3 and kylin4 are the same for <strong><em>simple query</em></strong>, kylin4 is slightly insufficient; However, kylin4 has obvious advantages over kylin3 for <strong><em>complex query</em></strong>.<br />
+Moreover, there is still a lot of room to optimize the performance of <strong><em>simple query</em></strong> in kylin4. In the practice of Youzan using kylin4, the performance of <strong><em>simple query</em></strong> can be optimized to less than 1 second.</p>
+
+<h2 id="kylin-40-query-and-build-tuning">Kylin 4.0 query and build tuning</h2>
+<p>For kylin4 tuning, please refer to: <a href="/docs40/howto/howto_optimize_build_and_query.html">How to improve cube building and query performance</a></p>
+
+<h2 id="kylin-40-use-case">Kylin 4.0 use case</h2>
+<p><a href="/blog/2021/06/17/Why-did-Youzan-choose-Kylin4">Why did Youzan choose Kylin4</a></p>
+
+<p>Reference link:<br />
+<a href="https://cwiki.apache.org/confluence/display/KYLIN/KIP-1%3A+Parquet+storage">Kylin Improvement Proposal 1: Parquet Storage</a></p>
 
 							</article>
 						</div>
@@ -8980,7 +9111,7 @@ var _hmt = _hmt || [];
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/install/advance_settings.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/install/advance_settings.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/install/advance_settings.html (original)
+++ kylin/site/docs40/install/advance_settings.html Tue Jul  6 07:50:56 2021
@@ -9007,7 +9007,7 @@ java -classpath kylin-server-base-\&lt;v
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/install/configuration.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/install/configuration.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/install/configuration.html (original)
+++ kylin/site/docs40/install/configuration.html Tue Jul  6 07:50:56 2021
@@ -8922,7 +8922,7 @@ var _hmt = _hmt || [];
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/install/index.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/install/index.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/install/index.html (original)
+++ kylin/site/docs40/install/index.html Tue Jul  6 07:50:56 2021
@@ -9051,7 +9051,7 @@ Kylin with pid 25964 has been stopped.
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/install/kylin_cluster.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/install/kylin_cluster.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/install/kylin_cluster.html (original)
+++ kylin/site/docs40/install/kylin_cluster.html Tue Jul  6 07:50:56 2021
@@ -8860,6 +8860,9 @@ The <em>job</em> mode means that the ser
 
 <p>To send query requests to a cluster instead of a single node, you can deploy a load balancer such as <a href="http://nginx.org/en/">Nginx</a>, <a href="https://www.f5.com/">F5</a> or <a href="https://rubygems.org/gems/cloudlb/">cloudlb</a>, etc., so that the client and load balancer communication instead communicate with a specific Kylin instance.</p>
 
+<h3 id="read-and-write-separation-deployment">Read and write separation deployment</h3>
+<p>There are some differences between read and write separation deployment of kylin 4 and kylin 3, Please refer to : <a href="https://cwiki.apache.org/confluence/display/KYLIN/Read-Write+Separation+Deployment+for+Kylin+4.0">Read Write Separation Deployment for Kylin 4</a></p>
+
 							</article>
 						</div>
 					</div>
@@ -8965,7 +8968,7 @@ The <em>job</em> mode means that the ser
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/install/kylin_docker.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/install/kylin_docker.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/install/kylin_docker.html (original)
+++ kylin/site/docs40/install/kylin_docker.html Tue Jul  6 07:50:56 2021
@@ -8980,7 +8980,7 @@ apachekylin/apache-kylin-standalone:4.0.
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/release_notes.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/release_notes.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/release_notes.html (original)
+++ kylin/site/docs40/release_notes.html Tue Jul  6 07:50:56 2021
@@ -12650,7 +12650,7 @@ Critical bug fixes after v0.7.1 release,
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/security.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/security.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/security.html (original)
+++ kylin/site/docs40/security.html Tue Jul  6 07:50:56 2021
@@ -9007,7 +9007,7 @@ var _hmt = _hmt || [];
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/Qlik.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/Qlik.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/Qlik.html (original)
+++ kylin/site/docs40/tutorial/Qlik.html Tue Jul  6 07:50:56 2021
@@ -9074,7 +9074,7 @@ on (KYLIN_COUNTRY.COUNTRY=KYLIN_ACCOUNT.
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/acl.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/acl.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/acl.html (original)
+++ kylin/site/docs40/tutorial/acl.html Tue Jul  6 07:50:56 2021
@@ -8959,7 +8959,7 @@ Click the <code class="highlighter-rouge
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/create_cube.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/create_cube.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/create_cube.html (original)
+++ kylin/site/docs40/tutorial/create_cube.html Tue Jul  6 07:50:56 2021
@@ -9176,7 +9176,7 @@ Approximate TopN measure pre-calculates
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/cube_build_job.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/cube_build_job.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/cube_build_job.html (original)
+++ kylin/site/docs40/tutorial/cube_build_job.html Tue Jul  6 07:50:56 2021
@@ -8973,7 +8973,7 @@ var _hmt = _hmt || [];
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/jdbc.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/jdbc.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/jdbc.html (original)
+++ kylin/site/docs40/tutorial/jdbc.html Tue Jul  6 07:50:56 2021
@@ -9007,7 +9007,7 @@ while (tables.next()) {
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/kylin_client_tool.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/kylin_client_tool.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/kylin_client_tool.html (original)
+++ kylin/site/docs40/tutorial/kylin_client_tool.html Tue Jul  6 07:50:56 2021
@@ -9070,7 +9070,7 @@ Commands:
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/microstrategy.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/microstrategy.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/microstrategy.html (original)
+++ kylin/site/docs40/tutorial/microstrategy.html Tue Jul  6 07:50:56 2021
@@ -9007,7 +9007,7 @@ Please make sure to download and install
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/mysql_metastore.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/mysql_metastore.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/mysql_metastore.html (original)
+++ kylin/site/docs40/tutorial/mysql_metastore.html Tue Jul  6 07:50:56 2021
@@ -8999,7 +8999,7 @@ bUmSqT/opyqz89Geu0yQ3g==
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/odbc.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/odbc.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/odbc.html (original)
+++ kylin/site/docs40/tutorial/odbc.html Tue Jul  6 07:50:56 2021
@@ -8976,7 +8976,7 @@ var _hmt = _hmt || [];
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/powerbi.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/powerbi.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/powerbi.html (original)
+++ kylin/site/docs40/tutorial/powerbi.html Tue Jul  6 07:50:56 2021
@@ -8992,7 +8992,7 @@ Please make sure to download and install
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/project_level_acl.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/project_level_acl.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/project_level_acl.html (original)
+++ kylin/site/docs40/tutorial/project_level_acl.html Tue Jul  6 07:50:56 2021
@@ -9140,7 +9140,7 @@ Once table-level access permission has b
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/query_pushdown.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/query_pushdown.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/query_pushdown.html (original)
+++ kylin/site/docs40/tutorial/query_pushdown.html Tue Jul  6 07:50:56 2021
@@ -8940,7 +8940,7 @@ var _hmt = _hmt || [];
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/setup_systemcube.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/setup_systemcube.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/setup_systemcube.html (original)
+++ kylin/site/docs40/tutorial/setup_systemcube.html Tue Jul  6 07:50:56 2021
@@ -9058,7 +9058,7 @@ var _hmt = _hmt || [];
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/sql_reference.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/sql_reference.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/sql_reference.html (original)
+++ kylin/site/docs40/tutorial/sql_reference.html Tue Jul  6 07:50:56 2021
@@ -9366,7 +9366,7 @@ group by city, version</code></pre></div
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/squirrel.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/squirrel.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/squirrel.html (original)
+++ kylin/site/docs40/tutorial/squirrel.html Tue Jul  6 07:50:56 2021
@@ -9026,7 +9026,7 @@ order by part_dt
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/superset.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/superset.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/superset.html (original)
+++ kylin/site/docs40/tutorial/superset.html Tue Jul  6 07:50:56 2021
@@ -8954,7 +8954,7 @@ var _hmt = _hmt || [];
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/tableau.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/tableau.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/tableau.html (original)
+++ kylin/site/docs40/tutorial/tableau.html Tue Jul  6 07:50:56 2021
@@ -9042,7 +9042,7 @@ Click <code class="highlighter-rouge">Se
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/tableau_91.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/tableau_91.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/tableau_91.html (original)
+++ kylin/site/docs40/tutorial/tableau_91.html Tue Jul  6 07:50:56 2021
@@ -8960,7 +8960,7 @@ Please make sure to download and install
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/use_cube_planner.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/use_cube_planner.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/use_cube_planner.html (original)
+++ kylin/site/docs40/tutorial/use_cube_planner.html Tue Jul  6 07:50:56 2021
@@ -8950,7 +8950,7 @@ kylin.metrics.monitor-enabled=true</code
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/use_dashboard.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/use_dashboard.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/use_dashboard.html (original)
+++ kylin/site/docs40/tutorial/use_dashboard.html Tue Jul  6 07:50:56 2021
@@ -9033,7 +9033,7 @@ var _hmt = _hmt || [];
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>      
       
 

Modified: kylin/site/docs40/tutorial/web.html
URL: http://svn.apache.org/viewvc/kylin/site/docs40/tutorial/web.html?rev=1891303&r1=1891302&r2=1891303&view=diff
==============================================================================
--- kylin/site/docs40/tutorial/web.html (original)
+++ kylin/site/docs40/tutorial/web.html Tue Jul  6 07:50:56 2021
@@ -9049,7 +9049,7 @@ Login with password:KYLIN</p>
   
     
       <li class="navlist">
-        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview</a>
+        <a href="/docs40/index.html" class="list-group-item-lay pjaxlink">Overview of Apache Kylin4.x</a>
       </li>