Apache Kylin集成superset
2018-03-12 17:33
302 查看
目前Kylin已经可以与superset进行集成,详细的说明可参考kylin官方文档: [ superset ]。
但是superset原生并不支持kylin,因此我们需要安装Kyligence公司提供的kylinpy工具。这是一个python的kylin客户端工具,可以通过输入命令获取相应的kylin信息。安装好这个工具之后,我们就可以通过superset连接kylin进行访问了。相应的安装步骤和使用,kylin在官方文档中已经说的非常清楚了,这里就不再一一赘述。这篇文档主要将非root权限下的kylinpy和superset安装以及相关配置。
由于所有的开发工作都是通过ssh连接至服务器完成,一般都是登录到个人账号或者某个公共账号进行操作。因此一般都没有root权限,每次安装软件都需要提交工单,申请root权限,非常麻烦。因此,这次集成Kylin与Superset都是在非root权限下操作的。下面是主要的安装步骤。
安装完成之后我们就可以在/home/nrpt/kylin/usr路径下看到安装好的python了。执行/home/nrpt/kylin/usr/bin/python可以验证是否安装成功:
安装好了python之后,为了后面安装软件的方便,我们将路径/home/nrpt/kylin/usr/bin加入环境变量PATH中。这样,我们下次就可以直接使用python命令进行操作,而不需要使用/home/nrpt/kylin/usr/bin/python。修改完PATH变量之后还需要使用source命令更新一下,我们可以通过以下命令验证是否修改成功:
除此之外,我们还需要安装setuptools和pip,这两个软件的安装过程基本类似,我们以setuptools为例:
pip的安装与上面基本一样,这里就不再赘述。由于我们在前面已经将自定义路径加入环境变量PATH中,因此,这里可以直接通过easy_install和pip命令使用我们自己安装的版本,而并非/usr/bin下面的easy_install和pip,可以通过which命令进行验证:
到这里,python相关的环境都已经安装完毕,我们在/home/nrpt路径下进行相应的python安装操作,使用的都是我们自己所安装的版本(位于/home/nrpt/kylin/usr/bin)。除了上面将../bin加入到环境变量PATH之外,我们还需要将/home/nrpt/kylin/usr/lib/python2.7/site-packages加入到环境变量PYTHONPATH中。这个是为了增加python模块的搜索路径。
但是我们现在需要在非root用户下安装到指定目录,就需要多一些操作,主要步骤如下所示:
其中,–ignore-installed选项表示忽略目前机器上已安装的相关软件,会将kylinpy所依赖的其他相关模块也重新安装到指定目录下。为了与python环境分开,我们将kylinpy安装到了/home/nrpt/kylin/usr/local路径下。安装完成后,我们同样将/home/nrpt/kylin/usr/local/bin添加到环境变量PATH中。因为我们安装到了新的路径,因此/home/nrpt/kylin/usr/local/lib/python2.7/site-packages路径也要加入到PYTHONPATH环境变量中。我们可以通过官方提供的命令来测试kylinpy是够安装成功了。如下所示:
kylin服务也部署在该服务器上,所以直接使用localhost即可。该命令输出了project下的所有cube名称。可以看到,得到了正确的结果。因此,kylinpy已经安装成功。
在安装过程中会下载其他的一些依赖模块,如果下载速度很慢,可以尝试使用以下安装命令:
本人在实际安装过程中发现,使用第二条命令安装,比第一条命令安装要快的多。安装完成后,会在/home/nrpt/kylin/usr/local/lib/python2.7/site-packages下面看到superset对应的目录。此时,superset已经成功安装。安装完成之后,我们就可以启动superset进行kylin的连接配置了。
注:在本次安装过程中,并没有安装virtualenv,可能是由于root用户下之前已经安装了virtualenv,如果需要的话,读者可自行安装virtualenv,安装方法跟superset一样,直接使用pip安装即可。
superset默认启动在8088端口,可以通过配置文件进行修改,这里就不再一一赘述。启动之后,我们就可以通过web页面访问superset进行相应的操作了。可以看到,目前我们已经能够通过页面对superset进行访问了:
通过第一步中创建的用户名和密码就可以登录进行操作了,目前,最新版本的superset已经支持中文了。至此,superset就已经安装完成,下面将继续介绍如何在superset中配置kylin,并进行访问。
然后,在url中进行配置,可以通过如下url来配置对kylin的访问:
其中,user是用来登录kylin的用户名,ip是kylin部署的服务器,project是kylin中的project名称。我们可以对url进行测试连接,如下图所示:
可以看到,我们已经连接成功,learn_kylin就是我们kylin中对应的project。保存之后,我们可以查询该数据库的详细信息,如下图所示:
配置完成之后,我们就可以在sql编辑器中使用测试sql进行相应的查询了,如下所示:
我们也可以在kylin中执行相同的sql来验证正确性:
我们可以看到,查询结果一样。下面是测试sql:
至此,kylin与superset的集成就已经完成。我们就可以通过superset对kylin中的数据进行分析了。
linux下python安装到指定目录
kylinpy官方git地址
kylin集成superset官方文档
更换pip源
为Python添加默认模块搜索路径
pip安装package到不同的路径
但是superset原生并不支持kylin,因此我们需要安装Kyligence公司提供的kylinpy工具。这是一个python的kylin客户端工具,可以通过输入命令获取相应的kylin信息。安装好这个工具之后,我们就可以通过superset连接kylin进行访问了。相应的安装步骤和使用,kylin在官方文档中已经说的非常清楚了,这里就不再一一赘述。这篇文档主要将非root权限下的kylinpy和superset安装以及相关配置。
由于所有的开发工作都是通过ssh连接至服务器完成,一般都是登录到个人账号或者某个公共账号进行操作。因此一般都没有root权限,每次安装软件都需要提交工单,申请root权限,非常麻烦。因此,这次集成Kylin与Superset都是在非root权限下操作的。下面是主要的安装步骤。
Python及相关软件安装
由于服务器上默认安装的是python2.7.3版本,已经比较旧了。因为我们在指定的路径中安装了2.7.9版本的,详细安装步骤如下所示://下载相应版本的python源码 wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz //解压源码 tar zxvf Python-2.7.9.tar.xz //编译与安装,--prefix选项可以执行安装目录,这三步都需要在源码目录下执行 ./configure --prefix=/home/nrpt/kylin/usr make make install
安装完成之后我们就可以在/home/nrpt/kylin/usr路径下看到安装好的python了。执行/home/nrpt/kylin/usr/bin/python可以验证是否安装成功:
安装好了python之后,为了后面安装软件的方便,我们将路径/home/nrpt/kylin/usr/bin加入环境变量PATH中。这样,我们下次就可以直接使用python命令进行操作,而不需要使用/home/nrpt/kylin/usr/bin/python。修改完PATH变量之后还需要使用source命令更新一下,我们可以通过以下命令验证是否修改成功:
除此之外,我们还需要安装setuptools和pip,这两个软件的安装过程基本类似,我们以setuptools为例:
//下载源码 wget https://pypi.python.org/packages/0a/40/a740a4890d9cc8f725f67da158ab250d3926b874e0f7cb85bdc836e3d069/setuptools-24.0.0.tar.gz#md5=75e7269ab0425efe590acbc834575f13 //解压源码 tar zxvf setuptools-24.0.0.tar.gz //编译与安装,需要在源码目录下执行 python setup.py build python setup.py install
pip的安装与上面基本一样,这里就不再赘述。由于我们在前面已经将自定义路径加入环境变量PATH中,因此,这里可以直接通过easy_install和pip命令使用我们自己安装的版本,而并非/usr/bin下面的easy_install和pip,可以通过which命令进行验证:
到这里,python相关的环境都已经安装完毕,我们在/home/nrpt路径下进行相应的python安装操作,使用的都是我们自己所安装的版本(位于/home/nrpt/kylin/usr/bin)。除了上面将../bin加入到环境变量PATH之外,我们还需要将/home/nrpt/kylin/usr/lib/python2.7/site-packages加入到环境变量PYTHONPATH中。这个是为了增加python模块的搜索路径。
kylinpy安装
为了在superset中连接kylin,我们首先需要安装kylinpy。在root权限下安装kylinpy非常简单,只需要通过下列命令即可:pip install --upgrade kylinpy
但是我们现在需要在非root用户下安装到指定目录,就需要多一些操作,主要步骤如下所示:
//从git上下载kylinpy源码 https://github.com/Kyligence/kylinpy.git //在kylinpy目录下执行该命令 pip install . --install-option="--prefix=/home/nrpt/kylin/usr/local" --ignore-installed --upgrade
其中,–ignore-installed选项表示忽略目前机器上已安装的相关软件,会将kylinpy所依赖的其他相关模块也重新安装到指定目录下。为了与python环境分开,我们将kylinpy安装到了/home/nrpt/kylin/usr/local路径下。安装完成后,我们同样将/home/nrpt/kylin/usr/local/bin添加到环境变量PATH中。因为我们安装到了新的路径,因此/home/nrpt/kylin/usr/local/lib/python2.7/site-packages路径也要加入到PYTHONPATH环境变量中。我们可以通过官方提供的命令来测试kylinpy是够安装成功了。如下所示:
kylin服务也部署在该服务器上,所以直接使用localhost即可。该命令输出了project下的所有cube名称。可以看到,得到了正确的结果。因此,kylinpy已经安装成功。
superset安装
安装完kylinpy之后,我们需要安装superset。安装superset的过程与安装kylinpy类似,可以通过如下命令直接安装:pip install superset --install-option="--prefix=/home/nrpt/kylin/usr/local" --ignore-installed --upgrade
在安装过程中会下载其他的一些依赖模块,如果下载速度很慢,可以尝试使用以下安装命令:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple superset --install-option="--prefix=/home/nrpt/kylin/usr" --ignore-installed
本人在实际安装过程中发现,使用第二条命令安装,比第一条命令安装要快的多。安装完成后,会在/home/nrpt/kylin/usr/local/lib/python2.7/site-packages下面看到superset对应的目录。此时,superset已经成功安装。安装完成之后,我们就可以启动superset进行kylin的连接配置了。
注:在本次安装过程中,并没有安装virtualenv,可能是由于root用户下之前已经安装了virtualenv,如果需要的话,读者可自行安装virtualenv,安装方法跟superset一样,直接使用pip安装即可。
superse初始化
关于superset的详细安装和配置信息可以参考:https://superset.incubator.apache.org/installation.html。我们在这里就只列举出一些重要的步骤。主要步骤如下所示:# Create an admin user (you will be prompted to set username, first and last name before setting a password) fabmanager create-admin --app superset # Initialize the database superset db upgrade # Load some data to play with superset load_examples # Create default roles and permissions superset init # Start the web server on port 8088, use -p to bind to another port superset runserver # To start a development web server, use the -d switch # superset runserver -d
superset默认启动在8088端口,可以通过配置文件进行修改,这里就不再一一赘述。启动之后,我们就可以通过web页面访问superset进行相应的操作了。可以看到,目前我们已经能够通过页面对superset进行访问了:
通过第一步中创建的用户名和密码就可以登录进行操作了,目前,最新版本的superset已经支持中文了。至此,superset就已经安装完成,下面将继续介绍如何在superset中配置kylin,并进行访问。
superset配置连接kylin
superset安装成功之后,我们就可以在superset中进行配置,来访问kylin。首先,新增数据库,如下所示:然后,在url中进行配置,可以通过如下url来配置对kylin的访问:
kylin://user:password@ip:7070/project
其中,user是用来登录kylin的用户名,ip是kylin部署的服务器,project是kylin中的project名称。我们可以对url进行测试连接,如下图所示:
可以看到,我们已经连接成功,learn_kylin就是我们kylin中对应的project。保存之后,我们可以查询该数据库的详细信息,如下图所示:
配置完成之后,我们就可以在sql编辑器中使用测试sql进行相应的查询了,如下所示:
我们也可以在kylin中执行相同的sql来验证正确性:
我们可以看到,查询结果一样。下面是测试sql:
select YEAR_BEG_DT, MONTH_BEG_DT, WEEK_BEG_DT, META_CATEG_NAME, CATEG_LVL2_NAME, CATEG_LVL3_NAME, OPS_REGION, NAME as BUYER_COUNTRY_NAME, sum(PRICE) as GMV, sum(ACCOUNT_BUYER_LEVEL) ACCOUNT_BUYER_LEVEL, count(*) as CNT from KYLIN_SALES join KYLIN_CAL_DT on CAL_DT=PART_DT join KYLIN_CATEGORY_GROUPINGS on SITE_ID=LSTG_SITE_ID and KYLIN_CATEGORY_GROUPINGS.LEAF_CATEG_ID=KYLIN_SALES.LEAF_CATEG_ID join KYLIN_ACCOUNT on ACCOUNT_ID=BUYER_ID join KYLIN_COUNTRY on ACCOUNT_COUNTRY=COUNTRY group by YEAR_BEG_DT, MONTH_BEG_DT, WEEK_BEG_DT, META_CATEG_NAME, CATEG_LVL2_NAME, CATEG_LVL3_NAME, OPS_REGION, NAME
至此,kylin与superset的集成就已经完成。我们就可以通过superset对kylin中的数据进行分析了。
参考文档
superset官方文档linux下python安装到指定目录
kylinpy官方git地址
kylin集成superset官方文档
更换pip源
为Python添加默认模块搜索路径
pip安装package到不同的路径
相关文章推荐
- 给大数据分析师的一双大礼:Apache Kylin和Superset
- kylin与superset集成实现数据可视化
- Superset 集成 Kylin
- superset 开源数据可视化工具(For Apache Kylin)使用说明
- kylin与superset集成实现数据可视化
- apache+php+mysql 常见集成环境安装包
- 介绍一些集成APACHE+MYSQL+PHP的软件
- Apache Kylin编 4000 译CDH5.12.X
- 开源数据可视化工具(For Apache Kylin)使用说明
- 分布式大数据多维分析(OLAP)引擎Apache Kylin安装配置及使用示例
- 【Shiro】Apache Shiro架构之集成web
- 【Scikit-Learn 中文文档】集成方法 - 监督学习 - 用户指南 | ApacheCN
- 大数据分析界的“神兽”Apache Kylin初解
- Apache Kylin 部署之不完全指南
- 全网最详细Apache Kylin1.5安装(单节点)和测试案例 ---> 现在看来 kylin 需要 安装到Hadoop Master 节点上
- cas+tomcat+shiro实现单点登录-4-Apache Shiro 集成Cas作为cas client端实现
- CentOS 6.2 Web系统集成之Apache安全加固
- Apache JMeter2.8的源码集成到Eclipse开发环境中
- 【转】使用Apache Kylin搭建企业级开源大数据分析平台
- Apache Kylin在美团数十亿数据OLAP场景下的实践