This is an automated email from the ASF dual-hosted git repository.

shaofengshi pushed a commit to branch document
in repository https://gitbox.apache.org/repos/asf/kylin.git


The following commit(s) were added to refs/heads/document by this push:
     new 8f67b78  minor add more detail for data source sdk
8f67b78 is described below

commit 8f67b78d2f78055d917e4c987ae76e21dee5dee6
Author: edouardzyc <edouard...@hotmail.com>
AuthorDate: Mon Jan 28 11:22:19 2019 +0800

    minor add more detail for data source sdk
---
 website/_dev/datasource_sdk.cn.md | 80 +++++++++++++++++++++++++++++++++---
 website/_dev/datasource_sdk.md    | 85 +++++++++++++++++++++++++++++++++++----
 2 files changed, 152 insertions(+), 13 deletions(-)

diff --git a/website/_dev/datasource_sdk.cn.md 
b/website/_dev/datasource_sdk.cn.md
index 0a50652..80d6ded 100644
--- a/website/_dev/datasource_sdk.cn.md
+++ b/website/_dev/datasource_sdk.cn.md
@@ -19,8 +19,78 @@ permalink: /cn/development/datasource_sdk.html
 开发者不需要编码, 只需要为新的数据源新建一个配置文件 *{dialect}.xml*, 
 
 配置文件结构:
-* 根节点:  
-&lt;DATASOURCE_DEF NAME="kylin" ID="default"&gt;, ID的值为方言的名称.
+* 根节点: 
+
+``` 
+<DATASOURCE_DEF NAME="kylin" ID="mysql" DIALECT="mysql"/>
+``` 
+
+ID的值通常和配置文件的名字相同。  
+DIALECT的值的定义主要是为了区分不同数据库对于标识符的引用。  
+举个例子 Mysql 使用 ``, Microsoft sql server 使用 [].   
+Kylin 里定义的DIALECT 和 Apache Calcite 里定义DIALECT 的对应关系:  
+<table>
+  <tbody align="left">  
+  <tr>
+    <td align="center"> Kylin 里定义的方言 </td>
+    <td align="center"> Apache Calcite 里定义的方言 </td>
+  </tr>
+  <tr>
+    <td> default </td>
+    <td> SqlDialect.CALCITE </td>
+  </tr>
+  <tr>
+    <td> calcite </td>
+    <td> SqlDialect.CALCITE </td>
+  </tr>
+  <tr>
+    <td> greenplum </td>
+    <td> SqlDialect.DatabaseProduct.POSTGRESQL </td>
+  </tr>
+  <tr>
+    <td> postgresql </td>
+    <td> SqlDialect.DatabaseProduct.POSTGRESQL </td>
+  </tr>
+  <tr>
+    <td> mysql  </td>
+    <td> SqlDialect.DatabaseProduct.MYSQL </td>
+  </tr>
+  <tr>
+     <td> sql.keyword-default-uppercase </td>
+     <td> whether &lt;default&gt; should be transform to uppercase </td>
+  </tr>
+  <tr>
+    <td> mssql </td>
+    <td> SqlDialect.DatabaseProduct.MSSQL </td>
+  </tr>
+  <tr>
+    <td> oracle </td>
+    <td> SqlDialect.DatabaseProduct.ORACLE </td>
+  </tr>
+  <tr>
+    <td> vertica </td>
+    <td> SqlDialect.DatabaseProduct.VERTICA </td>
+  </tr>
+  <tr>
+    <td> redshift </td>
+    <td> SqlDialect.DatabaseProduct.REDSHIFT </td>
+  </tr>
+  <tr>
+    <td> hive </td>
+    <td> SqlDialect.DatabaseProduct.HIVE </td>
+  </tr>
+  <tr>
+    <td> h2 </td>
+    <td> SqlDialect.DatabaseProduct.H2 </td>
+  </tr>
+  <tr>
+    <td> unkown </td>
+    <td> SqlDialect.DUMMY </td>
+  </tr>    
+  </tbody>
+</table>
+
+
 * 属性节点:  
 定义方言的属性。
 
@@ -141,9 +211,9 @@ 
kylin.query.pushdown.runner-class-name=org.apache.kylin.query.pushdown.PushdownR
 kylin.source.default=16
 kylin.source.jdbc.dialect=mysql
 kylin.source.jdbc.adaptor=org.apache.kylin.sdk.datasource.adaptor.MysqlAdaptor
-kylin.source.jdbc.user={mysql username}
-kylin.source.jdbc.pass={mysql password}
-kylin.source.jdbc.connection-url=jdbc:mysql://{HOST_URL}:3306/{Database name}
+kylin.source.jdbc.user={mysql 用户名}
+kylin.source.jdbc.pass={mysql 用户密码}
+kylin.source.jdbc.connection-url=jdbc:mysql://{主机url}:3306/{数据库名称}
 kylin.source.jdbc.driver=com.mysql.jdbc.Driver
 {% endhighlight %}
 
diff --git a/website/_dev/datasource_sdk.md b/website/_dev/datasource_sdk.md
index 9d8258d..94fa310 100644
--- a/website/_dev/datasource_sdk.md
+++ b/website/_dev/datasource_sdk.md
@@ -5,7 +5,7 @@ categories: development
 permalink: /development/datasource_sdk.html
 ---
 
-&gt; Available since Apache Kylin v2.6.0
+> Available since Apache Kylin v2.6.0
 
 ## Data source SDK
 
@@ -21,16 +21,85 @@ Developers do not need coding, what they should do is just 
create a new configur
 
 Structure of the configuration:
 
-* Root node:  
-&lt;DATASOURCE_DEF NAME="kylin" ID="default"&gt;, the value of ID should be 
name of dialect.
+* Root node: 
+
+```
+<DATASOURCE_DEF NAME="kylin" ID="mysql" DIALECT="mysql"/>
+```
+
+The value of ID is normally the same with configuration file.  
+The value of DIALECT is defined mainly for quote string for database 
identifier.  
+For example Mysql use ``, Microsoft sql server use [].   
+Mapping of Kylin DIALECT and Apache Calcite Dialect as belows:  
+<table>
+  <tbody align="left">  
+  <tr>
+    <td align="center">Dialect in Kylin</td>
+    <td align="center">Dialect in Apache Calcite</td>
+  </tr>
+  <tr>
+    <td> default </td>
+    <td> SqlDialect.CALCITE </td>
+  </tr>
+  <tr>
+    <td> calcite </td>
+    <td> SqlDialect.CALCITE </td>
+  </tr>
+  <tr>
+    <td> greenplum </td>
+    <td> SqlDialect.DatabaseProduct.POSTGRESQL </td>
+  </tr>
+  <tr>
+    <td> postgresql </td>
+    <td> SqlDialect.DatabaseProduct.POSTGRESQL </td>
+  </tr>
+  <tr>
+    <td> mysql  </td>
+    <td> SqlDialect.DatabaseProduct.MYSQL </td>
+  </tr>
+  <tr>
+     <td> sql.keyword-default-uppercase </td>
+     <td> whether &lt;default&gt; should be transform to uppercase </td>
+  </tr>
+  <tr>
+    <td> mssql </td>
+    <td> SqlDialect.DatabaseProduct.MSSQL </td>
+  </tr>
+  <tr>
+    <td> oracle </td>
+    <td> SqlDialect.DatabaseProduct.ORACLE </td>
+  </tr>
+  <tr>
+    <td> vertica </td>
+    <td> SqlDialect.DatabaseProduct.VERTICA </td>
+  </tr>
+  <tr>
+    <td> redshift </td>
+    <td> SqlDialect.DatabaseProduct.REDSHIFT </td>
+  </tr>
+  <tr>
+    <td> hive </td>
+    <td> SqlDialect.DatabaseProduct.HIVE </td>
+  </tr>
+  <tr>
+    <td> h2 </td>
+    <td> SqlDialect.DatabaseProduct.H2 </td>
+  </tr>
+  <tr>
+    <td> unkown </td>
+    <td> SqlDialect.DUMMY </td>
+  </tr>    
+  </tbody>
+</table>
+
 * Property node:  
 Define the properties of the dialect.
 
 <table>
   <tbody align="left">  
   <tr>
-    <td align="center">属性</td>
-    <td align="center">描述</td>
+    <td align="center">Property</td>
+    <td align="center">Description</td>
   </tr>
   <tr>
     <td> sql.default-converted-enabled </td>
@@ -143,9 +212,9 @@ 
kylin.query.pushdown.runner-class-name=org.apache.kylin.query.pushdown.PushdownR
 kylin.source.default=16
 kylin.source.jdbc.dialect=mysql
 kylin.source.jdbc.adaptor=org.apache.kylin.sdk.datasource.adaptor.MysqlAdaptor
-kylin.source.jdbc.user={mysql username}
-kylin.source.jdbc.pass={mysql password}
-kylin.source.jdbc.connection-url=jdbc:mysql://{HOST_URL}:3306/{Database name}
+kylin.source.jdbc.user={MYSQL_USERNAME}
+kylin.source.jdbc.pass={MYSQL_PASSWORD}
+kylin.source.jdbc.connection-url=jdbc:mysql://{HOST_URL}:3306/{DATABASE_NAME}
 kylin.source.jdbc.driver=com.mysql.jdbc.Driver
 {% endhighlight %}
 

Reply via email to