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 2022/04/21 08:37:13 UTC
svn commit: r1900099 [1/4] - in /kylin/site: ./ cn/blog/ cn_blog/2022/04/ cn_blog/2022/04/20/ cn_blog/2022/04/20/kylin4-on-cloud-part1/ cn_blog/2022/04/20/kylin4-on-cloud-part2/ images/blog/kylin4_on_cloud/
Author: lidong
Date: Thu Apr 21 08:37:12 2022
New Revision: 1900099
URL: http://svn.apache.org/viewvc?rev=1900099&view=rev
Log:
Add new blog:Kylin on Cloud
Added:
kylin/site/cn_blog/2022/04/
kylin/site/cn_blog/2022/04/20/
kylin/site/cn_blog/2022/04/20/kylin4-on-cloud-part1/
kylin/site/cn_blog/2022/04/20/kylin4-on-cloud-part1/index.html
kylin/site/cn_blog/2022/04/20/kylin4-on-cloud-part2/
kylin/site/cn_blog/2022/04/20/kylin4-on-cloud-part2/index.html
kylin/site/images/blog/kylin4_on_cloud/
kylin/site/images/blog/kylin4_on_cloud/0_deploy_kylin.png (with props)
kylin/site/images/blog/kylin4_on_cloud/10_full_build_cube.png (with props)
kylin/site/images/blog/kylin4_on_cloud/11_kylin_job_complete.png (with props)
kylin/site/images/blog/kylin4_on_cloud/12_destroy_job_cluster.png (with props)
kylin/site/images/blog/kylin4_on_cloud/13_check_aws_stacks.png (with props)
kylin/site/images/blog/kylin4_on_cloud/14_kylin_web_ui.png (with props)
kylin/site/images/blog/kylin4_on_cloud/15_query_in_kylin.png (with props)
kylin/site/images/blog/kylin4_on_cloud/16_mdx_web_ui.png (with props)
kylin/site/images/blog/kylin4_on_cloud/17_connect_to_kylin.png (with props)
kylin/site/images/blog/kylin4_on_cloud/18_exit_management.png (with props)
kylin/site/images/blog/kylin4_on_cloud/19_kylin_running.png (with props)
kylin/site/images/blog/kylin4_on_cloud/1_table_ER.png (with props)
kylin/site/images/blog/kylin4_on_cloud/20_import_dataset.png (with props)
kylin/site/images/blog/kylin4_on_cloud/21_tableau_connect.png (with props)
kylin/site/images/blog/kylin4_on_cloud/22_tableau_server.png (with props)
kylin/site/images/blog/kylin4_on_cloud/23_tableau_dataset.png (with props)
kylin/site/images/blog/kylin4_on_cloud/24_tableau_covid19_map.png (with props)
kylin/site/images/blog/kylin4_on_cloud/25_tableau_province.png (with props)
kylin/site/images/blog/kylin4_on_cloud/26_tableau_us_covid19.png (with props)
kylin/site/images/blog/kylin4_on_cloud/27_tableau_taxi_1.png (with props)
kylin/site/images/blog/kylin4_on_cloud/27_tableau_taxi_2.png (with props)
kylin/site/images/blog/kylin4_on_cloud/28_tableau_taxi_3.png (with props)
kylin/site/images/blog/kylin4_on_cloud/29_tableau_taxi_4.png (with props)
kylin/site/images/blog/kylin4_on_cloud/2_step_overview.jpg (with props)
kylin/site/images/blog/kylin4_on_cloud/30_excel_connect.png (with props)
kylin/site/images/blog/kylin4_on_cloud/31_excel_server.png (with props)
kylin/site/images/blog/kylin4_on_cloud/32_tableau_dataset.png (with props)
kylin/site/images/blog/kylin4_on_cloud/33_tableau_covid19_1.png (with props)
kylin/site/images/blog/kylin4_on_cloud/34_excel_covid20_2.png (with props)
kylin/site/images/blog/kylin4_on_cloud/35_excel_taxi_1.png (with props)
kylin/site/images/blog/kylin4_on_cloud/36_excel_taxi_2.png (with props)
kylin/site/images/blog/kylin4_on_cloud/37_jdk_8.png (with props)
kylin/site/images/blog/kylin4_on_cloud/38_demo_result.png (with props)
kylin/site/images/blog/kylin4_on_cloud/39_check_s3_demo.png (with props)
kylin/site/images/blog/kylin4_on_cloud/3_kylin_cluster.jpg (with props)
kylin/site/images/blog/kylin4_on_cloud/4_deploy_cluster_successfully.png (with props)
kylin/site/images/blog/kylin4_on_cloud/5_check_aws_stacks.png (with props)
kylin/site/images/blog/kylin4_on_cloud/6_list_cluster_node.png (with props)
kylin/site/images/blog/kylin4_on_cloud/7_query_in_spark_sql.png (with props)
kylin/site/images/blog/kylin4_on_cloud/8_kylin_web_ui.png (with props)
kylin/site/images/blog/kylin4_on_cloud/9_reload_kylin_metadata.png (with props)
kylin/site/images/blog/kylin4_on_cloud/kylin_on_cloud.png (with props)
Modified:
kylin/site/cn/blog/index.html
kylin/site/feed.xml
Modified: kylin/site/cn/blog/index.html
URL: http://svn.apache.org/viewvc/kylin/site/cn/blog/index.html?rev=1900099&r1=1900098&r2=1900099&view=diff
==============================================================================
--- kylin/site/cn/blog/index.html (original)
+++ kylin/site/cn/blog/index.html Thu Apr 21 08:37:12 2022
@@ -199,6 +199,26 @@ var _hmt = _hmt || [];
<div class="col-md-6 col-lg-6 col-xs-12">
+ <a class="blog-card" href="/cn_blog/2022/04/20/kylin4-on-cloud-part2/">
+ <div class="blog-pic">
+ <img width="20" src="/assets/images/icon_blog_w.png" />
+ </div>
+ <p class="blog-title">Kylin on Cloud ââ 两å°æ¶å¿«éæ建äºä¸æ°æ®åæå¹³å°(ä¸)</p>
+ <p align="left" class="post-meta">posted: Apr 20, 2022</p>
+ </a>
+ </div>
+
+ <div class="col-md-6 col-lg-6 col-xs-12">
+ <a class="blog-card" href="/cn_blog/2022/04/20/kylin4-on-cloud-part1/">
+ <div class="blog-pic">
+ <img width="20" src="/assets/images/icon_blog_w.png" />
+ </div>
+ <p class="blog-title">Kylin on Cloud ââ 两å°æ¶å¿«éæ建äºä¸æ°æ®åæå¹³å°(ä¸)</p>
+ <p align="left" class="post-meta">posted: Apr 20, 2022</p>
+ </a>
+ </div>
+
+ <div class="col-md-6 col-lg-6 col-xs-12">
<a class="blog-card" href="/cn_blog/2022/03/31/how-to-use-excel-to-query-kylin/">
<div class="blog-pic">
<img width="20" src="/assets/images/icon_blog_w.png" />
Added: kylin/site/cn_blog/2022/04/20/kylin4-on-cloud-part1/index.html
URL: http://svn.apache.org/viewvc/kylin/site/cn_blog/2022/04/20/kylin4-on-cloud-part1/index.html?rev=1900099&view=auto
==============================================================================
--- kylin/site/cn_blog/2022/04/20/kylin4-on-cloud-part1/index.html (added)
+++ kylin/site/cn_blog/2022/04/20/kylin4-on-cloud-part1/index.html Thu Apr 21 08:37:12 2022
@@ -0,0 +1,637 @@
+<!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+<!doctype html>
+<html>
+ <!--
+* 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.
+-->
+
+<head>
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+
+ <title>Apache Kylin | Kylin on Cloud ââ 两å°æ¶å¿«éæ建äºä¸æ°æ®åæå¹³å°(ä¸)</title>
+ <meta name="description" content="èæ¯">
+ <meta name="author" content="Apache Kylin">
+ <link rel="shortcut icon" href="fav.png" type="image/png">
+
+
+
+<link rel="stylesheet" href="/assets/css/animate.css">
+<!-- Bootstrap -->
+<link rel="stylesheet" href="/assets/css/bootstrap.min.css">
+
+<!-- Fonts -->
+<!-- <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Alice|Open+Sans:400,300,700"> -->
+
+<!-- Icons -->
+<link rel="stylesheet" href="/assets/css/font-awesome.min.css">
+
+ <!-- Custom styles -->
+ <link rel="stylesheet" href="/assets/css/styles.css">
+ <link rel="stylesheet" href="/assets/css/docs.css">
+ <link rel="stylesheet" href="/assets/css/pygments.css">
+
+ <link rel="canonical" href="http://kylin.apache.org/cn_blog/2022/04/20/kylin4-on-cloud-part1/">
+ <link rel="alternate" type="application/rss+xml" title="Apache Kylin" href="http://kylin.apache.org/feed.xml" />
+
+<!--[if lt IE 9]> <script src="assets/js/html5shiv.js"></script> <![endif]-->
+<!-- Global site tag (gtag.js) - Google Analytics -->
+<script async src="https://www.googletagmanager.com/gtag/js?id=UA-120788561-1"></script>
+<script>
+ window.dataLayer = window.dataLayer || [];
+ function gtag(){dataLayer.push(arguments);}
+ gtag('js', new Date());
+
+ gtag('config', 'UA-120788561-1');
+</script>
+<script type="text/javascript" src="/assets/js/jquery-1.9.1.min.js"></script>
+<script type="text/javascript" src="/assets/js/nside.js"></script> </script>
+<script type="text/javascript" src="/assets/js/nnav.js"></script> </script>
+<script>
+var _hmt = _hmt || [];
+(function() {
+ var hm = document.createElement("script");
+ hm.src = "https://hm.baidu.com/hm.js?bdc5e03add430c0b72cc0eb91eabfa99";
+ var s = document.getElementsByTagName("script")[0];
+ s.parentNode.insertBefore(hm, s);
+})();
+</script>
+
+</head>
+
+ <body>
+ <!--
+* 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.
+-->
+
+<header id="header" >
+
+ <!-- Main Menu -->
+ <nav class="navbar navbar-default" role="navigation" id="nav-wrapper">
+ <div class="container-fluid" id="nav">
+ <!--
+ <img class="img-circle" width="40px" height="40px" id="circlelogo" src="/assets/images/kylin_logo.jpg">
+ -->
+ <!-- Brand and toggle get grouped for better mobile display -->
+ <div class="navbar-header">
+ <img class="navbar-logo" width="46" src="/assets/images/kylin_logo.png" ></img>
+ <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
+ <span class="sr-only">Toggle navigation</span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ <span class="icon-bar"></span>
+ </button>
+ <ul class="nav icon-navbar">
+ <li><a href="https://twitter.com/apachekylin" target="_blank" class="fa fa-twitter fa-lg" title="Twitter: @ApacheKylin" ></a></li>
+ <li><a href="https://github.com/apache/kylin" target="_blank" class="fa fa-github-alt fa-lg" title="Github: apache/kylin" ></a></li>
+ <li><a href="https://www.facebook.com/kylinio" target="_blank" class="fa fa-facebook fa-lg" title="Facebook: kylin.io" ></a></li>
+ </ul>
+ </div>
+
+ <!-- Collect the nav links, forms, and other content for toggling -->
+ <div class="navbar-collapse collapse" id="bs-example-navbar-collapse-1">
+
+ <ul class="nav navbar-nav">
+
+ <li><a href="/">Home</a></li>
+ <li>
+ <a href="/docs" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Docs<span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="/docs/">Latest Release(Kylin 4.0.1)</a></li>
+ <li><a href="/docs31/">Kylin 3.1.3</a></li>
+ <li><a href="/docs24/">Kylin 2.4.0</a></li>
+ <li><a href="/archive/">Archive</a></li>
+ </ul>
+ </li>
+ <li><a href="/download">Download</a></li>
+ <li><a href="/community" >Community</a></li>
+ <li>
+ <a href="/development" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Development<span class="caret"></span></a>
+ <ul class="dropdown-menu">
+ <li><a href="/development40/">Kylin 4.x</a></li>
+ <li><a href="/development/">Kylin 3.x And Older Versions</a></li>
+ </ul>
+ </li>
+ <li><a href="/blog">Blog</a></li>
+ <li><a href="/cn" >ä¸æç</a></li>
+ </ul>
+ </div><!-- /.navbar-collapse -->
+ </div><!-- /.container-fluid -->
+ </nav>
+
+ <div id="head" class="parallax normal-header" >
+ <div class="text-center header-apache">
+ <a href="http://apache.org/foundation/contributing.html" title="Support Apache" style="margin-left: 150px;">
+ <div>
+ <img src="https://www.apache.org/images/SupportApache-small.png" >
+ </div>
+ </a>
+ </div>
+ </div>
+
+ </header>
+
+ <div class="page-content main">
+ <header style=" padding:2em 0 0 ">
+ <div class="container" >
+ <div style=" padding:0 4em">
+ <div class="blog-icon">
+ <img width="30" src="/assets/images/icon_blog_w.png">
+ </div>
+ <h4 class="index-title" style=" float:left;"><span>Apache Kylin⢠Technical Blog</span></h4>
+ </div>
+ </div>
+ </div>
+
+ <div class="container blog">
+ <div>
+ <article class="post-content" >
+ <!--
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+-->
+
+<div class="post" style=" padding:2em 4em 4em 4em">
+
+ <header class="post-header">
+ <h1 class="post-title">Kylin on Cloud ââ 两å°æ¶å¿«éæ建äºä¸æ°æ®åæå¹³å°(ä¸)</h1>
+ <p class="post-meta" >Apr 20, 2022 ⢠Yaqian Zhang</p>
+ </header>
+
+ <article class="post-content" >
+ <h2 id="section">èæ¯</h2>
+
+<p>Apache Kylin æ¯åºäºé¢è®¡ç®åå¤ç»´æ¨¡åçå¤ç»´æ°æ®åºï¼æ¯æ SQL æ åæ¥è¯¢æ¥å£ï¼å¨ Kylin ä¸ç¨æ·å¯ä»¥éè¿å建 Model å®ä¹è¡¨å
³ç³»ï¼éè¿å建 Cube å®ä¹ç»´åº¦å度éï¼ç¶åæ建 Cube 对éè¦èåçæ°æ®è¿è¡é¢è®¡ç®ï¼å°é¢è®¡ç®å¥½çæ°æ®ä¿åèµ·æ¥ï¼ç¨æ·æ§è¡æ¥è¯¢æ¶ä¾¿å¯ä»¥ç´æ¥å¨ç»è¿é¢è®¡ç®çæ°æ®ä¸è¿è¡è¿ä¸æ¥çèåæè
ç´æ¥è¿åæ¥è¯¢ç»æï¼æåæåæ¥è¯¢æçã</p>
+
+<p>éç Kylin 4.0 æ°æ¶æççæ¬åå¸ä¸æ´æ°ï¼Kylin å
·å¤äºå¨è±ç¦» Hadoop çäºç¯å¢ä¸è¿è¡é群é¨ç½²çè½åï¼ä¸ºäºä½¿ç¨æ·è½å¤è½»æ¾å°å¨äºä¸é¨ç½² Kylinï¼Kylin 社åºåäºè¿æ¥å¼åäºäºä¸é¨ç½²å·¥å
·ï¼ç¨æ·ä½¿ç¨é¨ç½²å·¥å
·åªéæ§è¡ä¸è¡å½ä»¤ä¾¿å¯ä»¥å¾å°ä¸ä¸ªå®å¤ç kylin é群ï¼è·å¾é«æå¿«éçåæä½éªï¼2022 å¹´1æ份ï¼Kylin 社åºåå¸äº mdx for kylin æ¥å 强 Kylin ä½ä¸ºå¤ç»´æ°æ®åºçä¸å¡è¡¨è¾¾è½åï¼MDX for Kylin æä¾äº MDX çæ¥è¯¢æ¥å£ï¼mdx for kylin å¯ä»¥å¨
Kylin å·²ç»å®ä¹å¥½çå¤ç»´æ¨¡åçåºç¡ä¸æ´è¿ä¸æ¥çå建ä¸å¡ææ ï¼å° Kylin ä¸çæ°æ®æ¨¡å转æ¢ä¸ºä¸å¡å好çè¯è¨ï¼èµäºæ°æ®ä¸å¡ä»·å¼ï¼æ¹ä¾¿å¯¹æ¥ ExcelãTableau ç BI å·¥å
·è¿è¡å¤ç»´åæã</p>
+
+<p>åºäºä»¥ä¸ä¸ç³»åçææ¯æ¯æï¼ç¨æ·ä¸ä»
å¯ä»¥æ¹ä¾¿å¿«æ·çå¨äºä¸é¨ç½² Kylin é群ï¼å建å¤ç»´æ¨¡åï¼ä½éªç»è¿é¢è®¡ç®çå¿«éæ¥è¯¢ååºï¼è¿è½å¤ç»å MDX for Kylin 对ä¸å¡ææ è¿è¡å®ä¹å管çï¼å° DW ææ¯å±æåå°ä¸å¡è¯ä¹å±ã</p>
+
+<p>ç¨æ·å¯ä»¥å¨ Kylin + MDX for Kylin ä¹ä¸ç´æ¥å¯¹æ¥ BI å·¥å
·è¿è¡å¤ç»´æ°æ®åæï¼ä¹å¯ä»¥ä»¥æ¤ä¸ºåºåº§å»ºè®¾ææ å¹³å°çå¤æåºç¨ãç¸æ¯äºç´æ¥åºäº SparkãHive çå¨è¿è¡æ¶è¿è¡ Join åèåæ¥è¯¢ç计ç®å¼æä¹ä¸æ建ææ å¹³å°ï¼å©ç¨ Kylin å¯ä»¥ä¾æäºå¤ç»´æ¨¡ååé¢è®¡ç®ææ¯ï¼ä»¥å mdx for kylin çè¯ä¹å±è½åï¼æ»¡è¶³ææ å¹³å°æéè¦çæµ·éæ°æ®è®¡ç®ãæéæ¥è¯¢ååºãç»ä¸çå¤ç»´æ¨¡åã对æ¥å¤ç§ BIãåºç¡çä¸å¡ææ 管ççå¤ç§å
³é®�
�è½ã</p>
+
+<p>æ¬æç以ä¸é¨åå°ä¼å¸¦é¢è¯»è
ï¼ä»ä¸ä¸ªæ°æ®å·¥ç¨å¸çè§åº¦ï¼å¿«éä½éªå¨äºä¸æ建åºäº Kylin çæ°æ®åæå¹³å°ï¼Kylin on Cloudï¼ï¼å¨äº¿è¡çº§æ°æ®ä¹ä¸è·å¾é«æ§è½ä½ææ¬çæ¥è¯¢ä½éªï¼å¹¶éè¿ mdx for kylin 管çä¸å¡ææ ï¼ç´æ¥å¯¹æ¥ BI å·¥å
·å¿«éçææ¥è¡¨ã</p>
+
+<p>æ¬æç¨æ¯ä¸ä¸ªæ¥éª¤é½æ详ç»è¯´æï¼å¹¶éæé
å¾åæ£æ¥ç¹ï¼å¸®å©æ°æä¸è·¯ã读è
åªéè¦åå¤ä¸ä¸ª AWS è´¦å·ï¼é¢è®¡è¿ä¸ªè¿ç¨éè¦å¤§çº¦ 2 å°æ¶ï¼è±è´¹ ï¿¥100 å·¦å³ã</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/0_deploy_kylin.png" alt="" /></p>
+
+<h2 id="section-1">ä¸å¡åºæ¯</h2>
+
+<p>èª 2020 å¹´åä»¥æ¥ COVID-19 å¨å
¨ä¸çèå´å
å¿«éä¼ æï¼å¯¹äººä»¬çè¡£é£ä½è¡å°¤å
¶æ¯åºè¡ä¹ æ¯é ææ大影åãè¿æ¬¡æ°æ®åæç»å COVID-19 ç«æ
æ°æ®å 2018 年以æ¥çº½çº¦åºç§è½¦åºè¡æ°æ®ï¼éè¿åæç«æ
ææ ååç§åºè¡ææ ï¼æ¯å¦ç¡®è¯äººæ°ãç
æ»çãåºç§è½¦è®¢åæ°ãå¹³ååºè¡è·ç¦»çï¼æ¥æ´å¯çº½çº¦å¸åºç§è½¦è¡ä¸åç«æ
å½±åçååè¶å¿ï¼ä»¥æ¯æå³çã</p>
+
+<h3 id="section-2">ä¸å¡é®é¢</h3>
+
+<ul>
+ <li>å¤ææ èååæå个å½å®¶å°åºç«æ
严éç¨åº¦</li>
+ <li>纽约å¸å个è¡åºåºè¡ææ 对æ¯ï¼æ¯å¦è®¢åæ°æ°éãåºè¡éç¨ç</li>
+ <li>ç«æ
对äºåºç§è½¦è®¢åæ°éææ ææ¾å½±å</li>
+ <li>ç«æ
ä¹åçåºè¡ä¹ æ¯ååï¼æ´ååè¿ç¨åºè¡è¿æ¯è¿ç¨</li>
+ <li>ç«æ
严éç¨åº¦ä¸åºç§è½¦åºè¡æ¬¡æ°æ¯å¦å¼ºç¸å
³</li>
+</ul>
+
+<h3 id="section-3">æ°æ®é</h3>
+
+<h4 id="covid-19-">COVID-19 æ°æ®é</h4>
+
+<p>COVID-19 æ°æ®éå
æ¬ä¸å¼ äºå®è¡¨ <code class="highlighter-rouge">covid_19_activity</code> åä¸å¼ 维度表 <code class="highlighter-rouge">lookup_calendar</code>ã</p>
+
+<p>å
¶ä¸ï¼<code class="highlighter-rouge">covid_19_activity</code> è®°å½æ¯ä¸å¤©å
¨çèå´å
ä¸åå°åºçç¡®è¯åæ»äº¡æ°åï¼<code class="highlighter-rouge">lookup_calendar</code> 为æ¥æ维度表ï¼ä¿åäºæ¶é´çæ©å±ä¿¡æ¯ï¼æ¯å¦æ¯ä¸ä¸ªæ¥æ对åºçå¹´å§ãæå§çï¼<code class="highlighter-rouge">covid_19_activity</code> å <code class="highlighter-rouge">lookup_calendar</code> ä¹é´éè¿æ¥æè¿è¡å
³èã</p>
+
+<p>COVID-19 æ°æ®éç¸å
³ä¿¡æ¯å¦ä¸:</p>
+
+<table>
+ <tbody>
+ <tr>
+ <td>æ°æ®å¤§å°</td>
+ <td>235 MB</td>
+ </tr>
+ <tr>
+ <td>äºå®è¡¨æ°æ®è¡æ°</td>
+ <td>2,753,688</td>
+ </tr>
+ <tr>
+ <td>æ°æ®æ¥æ</td>
+ <td>2020-01-21~2022-03-07</td>
+ </tr>
+ <tr>
+ <td>æ°æ®éæä¾æ¹ä¸è½½å°å</td>
+ <td>https://data.world/covid-19-data-resource-hub/covid-19-case-counts/workspace/file?filename=COVID-19+Activity.csv</td>
+ </tr>
+ <tr>
+ <td>æ°æ®é S3 å°å</td>
+ <td>s3://public.kyligence.io/kylin/kylin_demo/data/covid19_data/</td>
+ </tr>
+ </tbody>
+</table>
+
+<h4 id="section-4">纽约å¸åºç§è½¦è®¢åæ°æ®é</h4>
+
+<p>纽约å¸åºç§è½¦è®¢åæ°æ®éå
æ¬ä¸å¼ äºå®è¡¨ <code class="highlighter-rouge">taxi_trip_records_view</code> åä¸¤å¼ ç»´åº¦è¡¨ <code class="highlighter-rouge">newyork_zone</code>ã<code class="highlighter-rouge">lookup_calendar</code>ã</p>
+
+<p>å
¶ä¸ï¼<code class="highlighter-rouge">taxi_trip_records_view</code> ä¸çä¸æ¡è®°å½å¯¹ä¸æ¬¡åºç§è½¦åºè¡ï¼è®°å½äºåºåå°ç¹ IDãå°è¾¾å°ç¹ IDãåºè¡æ¶é¿ã订åéé¢ãåºè¡è·ç¦»çï¼<code class="highlighter-rouge">newyork_zone</code> è®°å½äºå°ç¹ ID æ对åºçè¡æ¿åºçä¿¡æ¯ï¼<code class="highlighter-rouge">taxi_trip_records_view</code> åå«éè¿ <code class="highlighter-rouge">PULocationID</code> å <code class="highlighter-rouge">DOLocationID</code> 两个åä¸ <code class="highlighter-rouge">newyork_zone</code> 建ç«å
³èå
³ç³»ï¼ç»è®¡åºåè¡åºåå°è¾¾è¡åºä¿¡æ¯ï¼<code class="highlighter-rouge">lookup_calendar</code> ä¸ <code class="highlighter-roug
e">COVID-19</code> æ°æ®éä¸ç维度表为åä¸å¼ 表ï¼<code class="highlighter-rouge">taxi_trip_records_view</code> ä¸ <code class="highlighter-rouge">lookup_calendar</code> éè¿æ¥æè¿è¡å
³èã</p>
+
+<p>纽约å¸åºç§è½¦è®¢åæ°æ®éç¸å
³ä¿¡æ¯å¦ä¸ï¼</p>
+
+<table>
+ <tbody>
+ <tr>
+ <td>æ°æ®å¤§å°</td>
+ <td>19 G</td>
+ </tr>
+ <tr>
+ <td>äºå®è¡¨æ°æ®è¡æ°</td>
+ <td>226,849,274</td>
+ </tr>
+ <tr>
+ <td>æ°æ®æ¥æ</td>
+ <td>2018-01-01~2021-07-31</td>
+ </tr>
+ <tr>
+ <td>æ°æ®éæä¾æ¹ä¸è½½å°å</td>
+ <td>https://www1.nyc.gov/site/tlc/about/tlc-trip-record-data.page</td>
+ </tr>
+ <tr>
+ <td>æ°æ®é S3 å°å</td>
+ <td>s3://public.kyligence.io/kylin/kylin_demo/data/trip_data_2018-2021/</td>
+ </tr>
+ </tbody>
+</table>
+
+<h4 id="er-">ER å
³ç³»å¾</h4>
+
+<p>æ°å ç«æ
æ°æ®éå纽约å¸åºç§è½¦è®¢åæ°æ®éç ER å
³ç³»å¾å¦ä¸å¾æ示ï¼</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/1_table_ER.png" alt="" /></p>
+
+<h3 id="section-5">ææ 设计</h3>
+
+<p>é对éè¦åæçä¸å¡åºæ¯åä¸å¡é®é¢ï¼æ们设计äºä»¥ä¸ååææ åä¸å¡ææ ï¼</p>
+
+<h6 id="section-6">1.ååææ </h6>
+
+<p>ååææ æçæ¯å¨ Kylin Cube ä¸å建çåç§åº¦éï¼å®ä»¬é常æ¯å¨åä¸åä¸é¢è¿è¡èå计ç®ï¼ç¸å¯¹æ¯è¾ç®åã</p>
+
+<ul>
+ <li>Covid19 ç
ä¾æ° sum(covid_19_activity.people_positive_cases_count)</li>
+ <li>Covid19 ç
æ»æ° sum(covid_19_activity. people_death_count)</li>
+ <li>æ°å¢ Covid19 ç
ä¾æ° sum(covid_19_activity. people_positive_new_cases_count)</li>
+ <li>æ°å¢ Covid19 ç
æ»æ° sum(covid_19_activity. people_death_new_count)</li>
+ <li>åºç§è½¦åºè¡éç¨ sum(taxi_trip_records_view. trip_distance)</li>
+ <li>åºç§è½¦è®¢å交æé¢ sum(taxi_trip_records_view. total_amount)</li>
+ <li>åºç§è½¦åºè¡æ°é count()</li>
+ <li>åºç§è½¦åºè¡æ¶é¿ sum(taxi_trip_records_view.trip_time_hour)</li>
+</ul>
+
+<h6 id="section-7">2.ä¸å¡ææ </h6>
+
+<p>ä¸å¡ææ æ¯æåºäºååææ å®ä¹çåç§å¤åè¿ç®ï¼å
·æå
·ä½çä¸å¡å«ä¹ã</p>
+
+<ul>
+ <li>åååææ çæ累计MTDã年累计YTD</li>
+ <li>åååææ çæå¢éMOMãå¹´å¢éYOY</li>
+ <li>Covid19 ç
æ»çï¼æ»äº¡äººæ°/ç¡®è¯äººæ°</li>
+ <li>åºç§è½¦å¹³ååºè¡é度ï¼åºç§è½¦åºè¡éç¨/åºç§è½¦åºè¡æ¶é´</li>
+ <li>åºç§è½¦åºè¡å¹³åéç¨ï¼åºç§è½¦åºè¡éç¨/åºç§è½¦åºè¡æ°é</li>
+</ul>
+
+<h2 id="section-8">æä½æ¥éª¤æ¦è§</h2>
+
+<p>æ建åºäº Apache Kylin çäºä¸æ°æ®åæå¹³å°å¹¶è¿è¡æ°æ®åæç主è¦æä½æ¥éª¤å¦ä¸å¾ï¼</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/2_step_overview.jpg" alt="" /></p>
+
+<h2 id="section-9">é群æ¶æ</h2>
+
+<p>使ç¨äºä¸é¨ç½²å·¥å
·é¨ç½²åºç Kylin é群æ¶æå¦å¾æ示ï¼</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/3_kylin_cluster.jpg" alt="" /></p>
+
+<h2 id="kylin-on-cloud-">Kylin on Cloud é¨ç½²</h2>
+
+<h3 id="section-10">ç¯å¢è¦æ±</h3>
+
+<ul>
+ <li>éè¦æ¬å°æºå¨å·²å®è£
gitï¼ç¨äºä¸è½½é¨ç½²å·¥å
·ä»£ç ï¼</li>
+ <li>éè¦æ¬å°æºå¨å·²å®è£
Python 3.6.6 å以ä¸çæ¬ï¼ç¨äºè¿è¡é¨ç½²å·¥å
·ã</li>
+</ul>
+
+<h3 id="aws-">AWS æéæ£æ¥ä¸åå§å</h3>
+
+<p>ç»å½ AWS è´¦å·ï¼æ ¹æ® <a href="https://github.com/apache/kylin/blob/kylin4_on_cloud/readme/prerequisites.md">åå¤ææ¡£</a> æ¥æ£æ¥ç¨æ·æéãå建é¨ç½²å·¥å
·éè¦ç Access KeyãIAM RoleãKey Pair å S3 å·¥ä½ç®å½ãåç»ç AWS æä½é½ä¼ä»¥è¿ä¸ªå¸å·ç身份æ§è¡ã</p>
+
+<h3 id="section-11">é
ç½®é¨ç½²å·¥å
·</h3>
+
+<p>1.æ§è¡ä¸é¢çå½ä»¤è·å¾ Kylin on AWS é¨ç½²å·¥å
·ç代ç </p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>git clone -b kylin4_on_cloud --single-branch https://github.com/apache/kylin.git <span class="o">&&</span> <span class="nb">cd </span>kylin
+</code></pre>
+</div>
+
+<p>2.å¨æ¬å°æºå¨åå§å python èæç¯å¢</p>
+
+<p>æ£æ¥ python ç¯å¢ï¼éè¦ Python 3.6.6 以ä¸ï¼</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>python --version
+</code></pre>
+</div>
+
+<p>åå§å python èæç¯å¢ï¼å®è£
ä¾èµï¼</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>bin/init.sh
+<span class="nb">source </span>venv/bin/activate
+</code></pre>
+</div>
+
+<p>3.ä¿®æ¹é
ç½®æ件 <code class="highlighter-rouge">kylin_configs.yaml</code></p>
+
+<p>æå¼é¨ç½²å·¥å
·ä»£ç ä¸ç kylin_configs.yamlï¼å°æ件ä¸çé
置项æ¿æ¢ä¸ºå®é
å¼ï¼</p>
+
+<ul>
+ <li><code class="highlighter-rouge">AWS_REGION</code>: EC2 èç¹ä½ç½® Regionï¼é»è®¤ä¸º cn-northwest-1</li>
+ <li><code class="highlighter-rouge">${IAM_ROLE_NAME}</code>: æåå建ç IAM Role å称ï¼æ¯å¦ kylin_deploy_role</li>
+ <li><code class="highlighter-rouge">${S3_URI}</code>: ç¨äºé¨ç½² kylin ç S3 å·¥ä½ç®å½ï¼æ¯å¦ s3://kylindemo/kylin_demo_dir/</li>
+ <li><code class="highlighter-rouge">${KEY_PAIR}</code>: æåå建ç Key pairs ååï¼æ¯å¦ kylin_deploy_key</li>
+ <li><code class="highlighter-rouge">${Cidr Ip}</code>: å
è®¸è®¿é® EC2 å®ä¾ç IP å°åèå´ï¼æ¯å¦ 10.1.0.0/32ï¼é常设为æ¨çå¤ç½ IP å°åï¼ç¡®ä¿å建ç EC2 å®ä¾åªææ¨è½è®¿é®</li>
+</ul>
+
+<p>åºäºè¯»åå离é离æ建åæ¥è¯¢èµæºçèèï¼å¨ä»¥ä¸çæ¥éª¤ä¸ä¼å
å¯å¨ä¸ä¸ªæ建é群ç¨äºè¿æ¥ Glue 建表ãå è½½æ°æ®æºãæ交æ建任å¡è¿è¡é¢è®¡ç®ï¼ç¶åéæ¯æ建é群ï¼ä¿çå
æ°æ®ï¼å¯å¨å¸¦æ MDX for Kylin çæ¥è¯¢é群ï¼ç¨äºå建ä¸å¡ææ ãè¿æ¥ BI å·¥å
·æ§è¡æ¥è¯¢ï¼è¿è¡æ°æ®åæãKylin on AWS éç¾¤ä½¿ç¨ RDS åå¨å
æ°æ®ï¼ä½¿ç¨ S3 åå¨æ建åçæ°æ®ï¼å¹¶ä¸æ¯æä» AWS Glue ä¸å è½½æ°æ®æºï¼é¤äº EC2 èç¹ä¹å¤ä½¿ç¨çèµæºé
½æ¯æä¹
åçï¼ä¸ä¼éçèç¹çå é¤èæ¶å¤±ï¼æ以å¨æ²¡ææ¥è¯¢æè
æ建任å¡æ¶ï¼ç¨æ·å¯ä»¥éæ¶éæ¯æ建ææ¥è¯¢é群ï¼åªè¦ä¿çå
æ°æ®ãS3 å·¥ä½ç®å½å³å¯ã</p>
+
+<h3 id="kylin-">Kylin æ建é群</h3>
+
+<h4 id="kylin--1">å¯å¨ Kylin æ建é群</h4>
+
+<p>1.éè¿å¦ä¸å½ä»¤å¯å¨æ建é群ãæ ¹æ®ç½ç»æ
åµä¸åï¼é¨ç½²å¯å¨å¯è½éè¦ 15-30 åéã</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>python deploy.py --type deploy --mode job
+</code></pre>
+</div>
+
+<p>2.æ建é群é¨ç½²æååï¼å½ä»¤çªå£å¯ä»¥çå°å¦ä¸è¾åºï¼</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/4_deploy_cluster_successfully.png" alt="" /></p>
+
+<h4 id="aws--1">æ£æ¥ AWS æå¡</h4>
+
+<p>1.è¿å
¥ AWS æ§å¶å°ç CloudFormation çé¢ï¼å¯ä»¥çå° Kylin é¨ç½²å·¥å
·ä¸å
±èµ·äº 7 个 stackï¼</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/5_check_aws_stacks.png" alt="" /></p>
+
+<p>2.ç¨æ·å¯ä»¥éè¿ AWS æ§å¶å°æ¥ç EC2 èç¹ç详ç»ä¿¡æ¯ï¼ä¹å¯ä»¥å¨å½ä»¤è¡çé¢ä½¿ç¨å¦ä¸å½ä»¤ååºææ EC2 èç¹çååãç§æ IP åå
¬æ IPï¼</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>python deploy.py --type list
+</code></pre>
+</div>
+
+<p><img src="/images/blog/kylin4_on_cloud/6_list_cluster_node.png" alt="" /></p>
+
+<h4 id="spark-sql-">ä½éª spark-sql åçæ¥è¯¢é度</h4>
+
+<p>为äºç´è§çæåå°é¢è®¡ç®ç»æ¥è¯¢æ§è½å¸¦æ¥çæåï¼å¨æ建 cube ä¹åï¼æ们å
å¨ spark-sql ä¸ä½éªåççæ¥è¯¢é度ï¼</p>
+
+<p>1.é¦å
ï¼æ们éè¿ kylin èç¹çå
¬æ IP ç»å½å°è¯¥ kylin æå¨ç EC2 æºå¨ï¼å¹¶åæ¢å° root ç¨æ·ï¼æ§è¡ ~/.bash_profile 使æå设置çç¯å¢åéçæï¼</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>ssh -i <span class="s2">"</span><span class="k">${</span><span class="nv">KEY_PAIR</span><span class="k">}</span><span class="s2">"</span> ec2-user@<span class="k">${</span><span class="nv">kylin_node_public_ip</span><span class="k">}</span>
+sudo su
+<span class="nb">source</span> ~/.bash_profile
+</code></pre>
+</div>
+
+<p>2.ç¶åè¿å
¥ <code class="highlighter-rouge">$SPARK_HOME</code> 并修æ¹é
ç½®æ件 <code class="highlighter-rouge">conf/spark-defaults.conf</code>ï¼å° <code class="highlighter-rouge">spark_master_node_private_ip</code> ä¿®æ¹ä¸º spark master èç¹çç§æ IPï¼</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code><span class="nb">cd</span> <span class="nv">$SPARK_HOME</span>
+vim conf/spark-defaults.conf
+
+<span class="c"># å° spark_master_node_private_ip æ¿æ¢ä¸ºçå® spark master èç¹çç§æip</span>
+spark.master spark://spark_master_node_private_ip:7077
+</code></pre>
+</div>
+
+<p><code class="highlighter-rouge">spark-defaults.conf</code> ä¸å
³äº driver å executor çèµæºé
ç½®ä¸ kylin æ¥è¯¢é群çèµæºé
ç½®æ¯ä¸è´çã</p>
+
+<p>3.å¨ spark-sql ä¸å»ºè¡¨</p>
+
+<p>æµè¯æç¨æ°æ®éçæææ°æ®åæ¾å¨ä½äº <code class="highlighter-rouge">cn-north-1</code> å <code class="highlighter-rouge">us-east-1</code> å°åºç S3 bucket ä¸ï¼å¦æä½ ç S3 bucket ä½äº <code class="highlighter-rouge">cn-north-1</code> æè
<code class="highlighter-rouge">us-east-1</code>ï¼é£ä¹ä½ å¯ä»¥ç´æ¥æ§è¡å»ºè¡¨ sqlï¼å¦åéè¦æ§è¡ä»¥ä¸èæ¬å¤å¶æ°æ®å° <code class="highlighter-rouge">kylin_configs.yaml</code> ä¸è®¾ç½®ç S3 å·¥ä½ç®å½ä¸ï¼å¹¶ä¿®æ¹å»ºè¡¨ sqlï¼</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code><span class="c">## AWS CN ç¨æ·</span>
+aws s3 sync s3://public.kyligence.io/kylin/kylin_demo/data/ <span class="k">${</span><span class="nv">S3_DATA_DIR</span><span class="k">}</span> --region cn-north-1
+
+<span class="c">## AWS Global ç¨æ·</span>
+aws s3 sync s3://public.kyligence.io/kylin/kylin_demo/data/ <span class="k">${</span><span class="nv">S3_DATA_DIR</span><span class="k">}</span> --region us-east-1
+
+<span class="c"># ä¿®æ¹å»ºè¡¨ sql</span>
+sed -i <span class="s2">"s#s3://public.kyligence.io/kylin/kylin_demo/data/#</span><span class="k">${</span><span class="nv">S3_DATA_DIR</span><span class="k">}</span><span class="s2">#g"</span> /home/ec2-user/kylin_demo/create_kylin_demo_table.sql
+</code></pre>
+</div>
+
+<p>æ§è¡å»ºè¡¨ sqlï¼</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>bin/spark-sql -f /home/ec2-user/kylin_demo/create_kylin_demo_table.sql
+</code></pre>
+</div>
+
+<p>4.å¨ spark-sql ä¸æ§è¡æ¥è¯¢</p>
+
+<p>è¿å
¥ spark-sqlï¼</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>bin/spark-sql
+</code></pre>
+</div>
+
+<p>å¨ spark-sql ä¸æ§è¡æ¥è¯¢ï¼</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code><span class="n">use</span> <span class="n">kylin_demo</span><span class="p">;</span>
+<span class="k">select</span> <span class="n">TAXI_TRIP_RECORDS_VIEW</span><span class="p">.</span><span class="n">PICKUP_DATE</span><span class="p">,</span> <span class="n">NEWYORK_ZONE</span><span class="p">.</span><span class="n">BOROUGH</span><span class="p">,</span> <span class="k">count</span><span class="p">(</span><span class="o">*</span><span class="p">),</span> <span class="k">sum</span><span class="p">(</span><span class="n">TAXI_TRIP_RECORDS_VIEW</span><span class="p">.</span><span class="n">TRIP_TIME_HOUR</span><span class="p">),</span> <span class="k">sum</span><span class="p">(</span><span class="n">TAXI_TRIP_RECORDS_VIEW</span><span class="p">.</span><span class="n">TOTAL_AMOUNT</span><span class="p">)</span>
+<span class="k">from</span> <span class="n">TAXI_TRIP_RECORDS_VIEW</span>
+<span class="k">left</span> <span class="k">join</span> <span class="n">NEWYORK_ZONE</span>
+<span class="k">on</span> <span class="n">TAXI_TRIP_RECORDS_VIEW</span><span class="p">.</span><span class="n">PULOCATIONID</span> <span class="o">=</span> <span class="n">NEWYORK_ZONE</span><span class="p">.</span><span class="n">LOCATIONID</span>
+<span class="k">group</span> <span class="k">by</span> <span class="n">TAXI_TRIP_RECORDS_VIEW</span><span class="p">.</span><span class="n">PICKUP_DATE</span><span class="p">,</span> <span class="n">NEWYORK_ZONE</span><span class="p">.</span><span class="n">BOROUGH</span><span class="p">;</span>
+</code></pre>
+</div>
+
+<p>ç¶åå¯ä»¥çå°ï¼å¨èµæºä¸ kylin æ¥è¯¢é群é
ç½®ç¸åçæ
åµä¸ï¼ä½¿ç¨ spark-sql ç´æ¥æ¥è¯¢èæ¶è¶
è¿100sï¼</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/7_query_in_spark_sql.png" alt="" /></p>
+
+<p>5.æ¥è¯¢æ§è¡æååå¿
é¡»éåº spark-sql åè¿è¡ä¸é¢çæ¥éª¤ï¼é²æ¢å ç¨èµæºã</p>
+
+<h4 id="kylin--2">导å
¥ Kylin å
æ°æ®</h4>
+
+<p>1.è¿å
¥ <code class="highlighter-rouge">$KYLIN_HOME</code></p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code><span class="nb">cd</span> <span class="nv">$KYLIN_HOME</span>
+</code></pre>
+</div>
+
+<p>2.导å
¥å
æ°æ®</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>bin/metastore.sh restore /home/ec2-user/meta_backups/
+</code></pre>
+</div>
+
+<p>3.éè½½å
æ°æ®</p>
+
+<p>æ ¹æ® EC2 èç¹çå
¬æ IPï¼å¨æµè§å¨è¾å
¥ <code class="highlighter-rouge">http://${kylin_node_public_ip}:7070/kylin</code> è¿å
¥ kylin web 页é¢ï¼å¹¶ä½¿ç¨ ADMIN/KYLIN çé»è®¤ç¨æ·åå¯ç ç»å½ï¼</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/8_kylin_web_ui.png" alt="" /></p>
+
+<p>éè¿ System -> Configuration -> Reload Metadata éè½½ Kylin å
æ°æ®:</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/9_reload_kylin_metadata.png" alt="" /></p>
+
+<p>å¦æç¨æ·æ³è¦äºè§£å¦ä½æå¨å建 Kylin å
æ°æ®ä¸æå
å«ç Model å Cubeï¼å¯ä»¥åèï¼(Create model and cube in kylin)[https://cwiki.apache.org/confluence/display/KYLIN/Create+Model+and+Cube+in+Kylin]ã</p>
+
+<h4 id="section-12">æ§è¡æ建</h4>
+
+<p>æ交 cube æ建任å¡ï¼ç±äºå¨ model ä¸æªè®¾ç½®ååºåï¼æ以è¿éç´æ¥å¯¹ä¸¤ä¸ª cube è¿è¡å
¨éæ建ï¼</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/10_full_build_cube.png.png" alt="" /></p>
+
+<p><img src="/images/blog/kylin4_on_cloud/11_kylin_job_complete.png" alt="" /></p>
+
+<h4 id="section-13">éæ¯æ建é群</h4>
+
+<p>æ建å®æä¹åï¼æ§è¡é群éæ¯å½ä»¤éæ¯æ建é群ï¼é»è®¤æ
åµä¸ä¼ä¿ç RDS stackãmonitor stack å vpc stackï¼</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>python deploy.py --type destroy
+</code></pre>
+</div>
+
+<p>é群éæ¯æåï¼</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/12_destroy_job_cluster.png" alt="" /></p>
+
+<h4 id="aws--2">æ£æ¥ AWS èµæº</h4>
+
+<p>é群éæ¯æååï¼å¯ä»¥å° AWS æ§å¶å°ç <code class="highlighter-rouge">CloudFormation</code> æå¡ç¡®è®¤æ¯å¦åå¨èµæºæ®çï¼ç±äºé»è®¤ä¼ä¿çå
æ°æ® RDSãçæ§èç¹å VPC èç¹ï¼æ以é群éæ¯å CloudFormation 页é¢è¿ä¼åå¨ä»¥ä¸ä¸ä¸ª Stackï¼</p>
+
+<p><img src="/images/blog/kylin4_on_cloud/13_check_aws_stacks.png" alt="" /></p>
+
+<p>ä¸é¢å¯å¨æ¥è¯¢é群æ¶ä»ç¶ä¼ä½¿ç¨è¿ä¸ä¸ª Stack ä¸çèµæºï¼è¿æ ·æ们å¯ä»¥ä¿è¯æ¥è¯¢é群åæ建é群使ç¨åä¸å¥å
æ°æ®ã</p>
+
+<p>以ä¸é¨å为 <code class="highlighter-rouge">Kylin on Cloud ââ 两å°æ¶å¿«éæ建äºä¸æ°æ®åæå¹³å°</code> çä¸ç¯ï¼ä¸ç¯è¯·æ¥çï¼<a href="../kylin4-on-cloud-part2/">Kylin on Cloud ââ 两å°æ¶å¿«éæ建äºä¸æ°æ®åæå¹³å°(ä¸)</a></p>
+
+
+ </article>
+
+</div>
+
+
+
+
+
+ </article>
+ </div>
+ </div>
+ <!--
+* 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.
+-->
+
+<footer id="underfooter">
+ <div>
+ <div class="row">
+ <div class="col-md-12 widget">
+ <div class="widget-body">
+ <div class="footer-img">
+ <a href="http://www.apache.org">
+ <img id="asf-logo" height="78px" alt="Apache Software Foundation" src="/assets/images/apache_footer.png">
+ </a>
+ </div>
+ <p style="padding-top: 11px;">
+ The contents of this website are © 2015 Apache Software Foundation under the terms of the
+ <a href="http://www.apache.org/licenses/LICENSE-2.0"> Apache License v2 </a>.
+ </p>
+ <p style="margin-bottom: 11px;">
+ Apache Kylin and its logo are trademarks of the Apache Software Foundation.
+ </div>
+
+ </div>
+ </div>
+ </div>
+ <!-- /row of widgets -->
+
+ </div>
+ <div></div>
+
+</footer>
+
+ <script src="/assets/js/jquery-1.9.1.min.js"></script>
+ <script src="/assets/js/bootstrap.min.js"></script>
+ <script src="/assets/js/main.js"></script>
+ </body>
+</html>
+
+
+
+