Add documents for kylin_client_tool. Signed-off-by: Hongbin Ma <[email protected]>
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/4f49bce5 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/4f49bce5 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/4f49bce5 Branch: refs/heads/document Commit: 4f49bce58fcb15b26fbb2227341282cc920d651c Parents: 6bbdee4 Author: nichunen <[email protected]> Authored: Wed Feb 24 22:54:42 2016 +0800 Committer: Hongbin Ma <[email protected]> Committed: Thu Mar 17 18:30:28 2016 +0800 ---------------------------------------------------------------------- website/_docs/tutorial/kylin_client_tool.cn.md | 99 +++++++++++++++++++ website/_docs/tutorial/kylin_client_tool.md | 100 ++++++++++++++++++++ 2 files changed, 199 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/4f49bce5/website/_docs/tutorial/kylin_client_tool.cn.md ---------------------------------------------------------------------- diff --git a/website/_docs/tutorial/kylin_client_tool.cn.md b/website/_docs/tutorial/kylin_client_tool.cn.md new file mode 100644 index 0000000..b8c6d8f --- /dev/null +++ b/website/_docs/tutorial/kylin_client_tool.cn.md @@ -0,0 +1,99 @@ +--- +layout: docs-cn +title: Kylin Client Tool ä½¿ç¨æç¨ +categories: æç¨ +permalink: /cn/docs/tutorial/kylin_client_tool.html +version: v1.0 +since: v1.2.0 +--- + +> Kylin-client-toolæ¯ä¸ä¸ªç¨pythonç¼åçï¼å®å ¨åºäºkylinçrest apiçå·¥å ·ãå¯ä»¥å®ç°kylinçcubeåå»ºï¼ææ¶build cubeï¼jobçæäº¤ãè°åº¦ãæ¥çã忶䏿¢å¤ã + +## å®è£ +1.确认è¿è¡ç¯å¢å®è£ äºpython2.6/2.7 + +2.æ¬å·¥å ·éå®è£ ç¬¬ä¸æ¹pythonå apschedulerårequestsï¼è¿è¡setup.shè¿è¡å®è£ ï¼macç¨æ·è¿è¡setup-mac.shè¿è¡å®è£ ãä¹å¯ç¨setuptoolsè¿è¡å®è£ + +## é ç½® +ä¿®æ¹å·¥å ·ç®å½ä¸çsettings/settings.pyæä»¶ï¼è¿è¡é ç½® + +`KYLIN_USER` Kylinç¨æ·å + +`KYLIN_PASSWORD` Kylinçå¯ç + +`KYLIN_REST_HOST` Kylinçå°å + +`KYLIN_REST_PORT` Kylinçç«¯å£ + +`KYLIN_JOB_MAX_COCURRENT` å è®¸åæ¶buildçjobæ°é + +`KYLIN_JOB_MAX_RETRY` cube buildåºç°erroråï¼å 许çéå¯jobæ¬¡æ° + +## å½ä»¤è¡çä½¿ç¨ +æ¬å·¥å ·ä½¿ç¨optparseéè¿å½ä»¤è¡æ¥æ§è¡æä½ï¼å ·ä½ç¨æ³å¯éè¿`python kylin_client_tool.py ï¼h`æ¥æ¥ç + +## cubeçå建 +æ¬å·¥å ·å®ä¹äºä¸ç§è¯»æåçææ¬ï¼æ¥å¿«écubeåå»ºçæ¹æ³ï¼æ ¼å¼å¦ä¸ + +`cubeå|fact tableå|维度1,维度1ç±»å;维度2,维度2ç±»å...|ææ 1,ææ 1表达å¼,ææ 1ç±»å...|设置项|filter|` + +è®¾ç½®é¡¹å æä»¥ä¸éé¡¹ï¼ + +`no_dictionary` 设置Rowkeysä¸ä¸çædictionaryç维度åå ¶é¿åº¦ + +`mandatory_dimension` 设置Rowkeysä¸mandatoryç维度 + +`aggregation_group` 设置aggregation group + +`partition_date_column` 设置partition date column + +`partition_date_start` 设置partition start date + +å ·ä½ä¾åå¯ä»¥æ¥çcube_def.csvæä»¶ï¼ç®å䏿¯æå«lookup tableçcubeå建 + +使ç¨`-c`å½ä»¤è¿è¡å建ï¼ç¨`-F`æå®cubeå®ä¹æä»¶ï¼ä¾å¦ + +`python kylin_client_tool.py -c -F cube_def.csv` + +## build cube +###使ç¨cubeå®ä¹æä»¶build +使ç¨`-b`å½ä»¤ï¼éè¦ç¨`-F`æå®cubeå®ä¹æä»¶ï¼å¦ææå®äºpartition date columnï¼éè¿`-T`æå®end date(year-month-dayæ ¼å¼)ï¼è¥ä¸æå®ï¼ä»¥å½åæ¶é´ä¸ºend dateï¼ä¾å¦ + +`python kylin_client_tool.py -b -F cube_def.csv -T 2016-03-01` + +###使ç¨cubeåæä»¶build +ç¨`-f`æå®cubeåæä»¶ï¼æä»¶æ¯è¡ä¸ä¸ªcubeå + +`python kylin_client_tool.py -b -f cube_names.csv -T 2016-03-01` + +###ç´æ¥å½ä»¤è¡åcubeåbuild +ç¨`-C`æå®cubeåï¼éè¿éå·è¿è¡åé + +`python kylin_client_tool.py -b -C client_tool_test1,client_tool_test2 -T 2016-03-01` + +## job管ç +###æ¥çjobç¶æ +使ç¨`-s`å½ä»¤æ¥çï¼ç¨`-f`æå®cubeåæä»¶ï¼ç¨`-C`æå®cubeåï¼è¥ä¸æå®ï¼å°æ¥çææcubeç¶æãç¨`-S`æå®jobç¶æï¼R表示`Running`ï¼E表示`Error`ï¼F表示`Finished`ï¼D表示`Discarded`ï¼ä¾å¦ï¼ + +`python kylin_client_tool.py -s -C kylin_sales_cube -f cube_names.csv -S F` + +###æ¢å¤job +ç¨`-r`å½ä»¤æ¢å¤jobï¼ç¨`-f`æå®cubeåæä»¶ï¼ç¨`-C`æå®cubeåï¼è¥ä¸æå®ï¼å°æ¢å¤ææErrorç¶æçjobï¼ä¾å¦ï¼ + +`python kylin_client_tool.py -r -C kylin_sales_cube -f cube_names.csv` + +###åæ¶job +ç¨`-k`å½ä»¤åæ¶jobï¼ç¨`-f`æå®cubeåæä»¶ï¼ç¨`-C`æå®cubeåï¼è¥ä¸æå®ï¼å°åæ¶ææRunningæErrorç¶æçjobï¼ä¾å¦ï¼ + +`python kylin_client_tool.py -k -C kylin_sales_cube -f cube_names.csv` + +## 宿¶build cube +### æ¯é䏿®µæ¶é´build cube +å¨cube buildå½ä»¤çåºç¡ä¸ï¼ä½¿ç¨`-B i`æå®æ¯é䏿®µæ¶é´buildçæ¹å¼ï¼ä½¿ç¨`-O`æå®é´éçå°æ¶æ°ï¼ä¾å¦ï¼ + +`python kylin_client_tool.py -b -F cube_def.csv -B i -O 1` + +### è®¾å®æ¶é´build cube +使ç¨`-B t`æå®ææ¶build cubeçæ¹å¼ï¼ä½¿ç¨`-O`æå®buildæ¶é´ï¼ç¨éå·è¿è¡åé + +`python kylin_client_tool.py -b -F cube_def.csv -T 2016-03-04 -B t -O 2016,3,1,0,0,0` http://git-wip-us.apache.org/repos/asf/kylin/blob/4f49bce5/website/_docs/tutorial/kylin_client_tool.md ---------------------------------------------------------------------- diff --git a/website/_docs/tutorial/kylin_client_tool.md b/website/_docs/tutorial/kylin_client_tool.md new file mode 100644 index 0000000..f81a4cf --- /dev/null +++ b/website/_docs/tutorial/kylin_client_tool.md @@ -0,0 +1,100 @@ +--- +layout: docs +title: Kylin Client Tool Tutorial +categories: tutorial +permalink: /docs/tutorial/kylin_client_tool.html +version: v1.0 +since: v1.2.0 +--- + +> Kylin-client-tool is a tool coded with python, completely based on Kylin's restful apis. +> With it, users can easily create Kylin Cubes, timely build cubes, summit/schedule/check/cancel/resume jobs. + +## Install +1.Make sure python2.6/2.7 installed + +2.Two python packages `apscheduler` and `requests` are needed, run `setup.sh` to install. For mac users, please run`setup-mac.sh`. Or you can install them with setuptools. + +## Settings +Modify settings/settings.py to set, + +`KYLIN_USER` Kylin's username + +`KYLIN_PASSWORD` Kylin's password + +`KYLIN_REST_HOST` Kylin's address + +`KYLIN_REST_PORT` Kylin's port + +`KYLIN_JOB_MAX_COCURRENT` Max concurrent jobs for cube building + +`KYLIN_JOB_MAX_RETRY` Max failover time after job failed + +## About command lines +This tool is used by command lines, please run `python kylin_client_tool.py ï¼h` to check for details. + +## Cube's creation +This tool has its own cube definition method, the format is as below, + +`cube name|fact table name|dimension1,type of dimension1;dimension2,type of dimension2...|measure1,expression of measure1,type of measure1...|settings|filter|` + +`settings` has options below, + +`no_dictionary` Set dimensions not generate dictionaries in "Rowkeys" and their lengths + +`mandatory_dimension` Set mandatory dimensions in "Rowkeys" + +`aggregation_group` Set aggregation group + +`partition_date_column` Set partition date column + +`partition_date_start` Set partition start date + +Cases can be found in file cube_def.csv, it does not support cube creation with lookup table + +Use `-c` to create, use `-F` to specify cube definition file, for instance + +`python kylin_client_tool.py -c -F cube_def.csv` + +## Build cube +###Build cube with cube definition file +Use `-b` to build, use `-F` to specify the cube definition file, if "partition date column" specified, use `-T` to specify the end date(year-month-day), if not specified, it will take current time as end date, for instance, + +`python kylin_client_tool.py -b -F cube_def.csv -T 2016-03-01` + +###Build cube with file of cube names +Use `-f` to specify the file of cube names, each line of the file has one cube name, for instance, + +`python kylin_client_tool.py -b -f cube_names.csv -T 2016-03-01` + +###Build cube with cube names +Use `-C` to specify cube names, split with commas, for instance, + +`python kylin_client_tool.py -b -C client_tool_test1,client_tool_test2 -T 2016-03-01` + +## Job management +###Check jobs' statuses +Use `-s` to check, use `-f` to specify file of cube names, use `-C` to specify cube names, if not specified, it will check all cubes' statuses. Use `-S` to specify jobs' statuses, R for `Running`, E for `Error`, F for `Finished`, D for `Discarded`, for instance, + +`python kylin_client_tool.py -s -C kylin_sales_cube -f cube_names.csv -S F` + +###Resume jobs +Use `-r` to resume jobs, use `-f` to specify file of cube names, use `-C` to specify cube names, if not specified, it will reuse all jobs with error status, for instance, + +`python kylin_client_tool.py -r -C kylin_sales_cube -f cube_names.csv` + +###Cancel jobs +Use `-k` to cancel jobs, use `-f` to specify file with cube names, use `-C` to specify cube names, if not specified, it will cancel all jobs with running or error statuses, for instance, + +`python kylin_client_tool.py -k -C kylin_sales_cube -f cube_names.csv` + +## Schedule cubes building +### Build cube at set intervals +On the basis of command of cube building, use `-B i` to specify the mode of build cube at set intervals, use `-O` to specify how many hours, for instance, + +`python kylin_client_tool.py -b -F cube_def.csv -B i -O 1` + +### Build cube at given time +Use `-B t` to specify the mode of build cube at given time, use `-O` to specify the build time, split with commas,for instance, + +`python kylin_client_tool.py -b -F cube_def.csv -T 2016-03-04 -B t -O 2016,3,1,0,0,0`
