Skip to content

Python DBAPI Driver and Sqlalchemy Dialect for Apache Kylin, the "Extreme OLAP Engine for Big Data"

Notifications You must be signed in to change notification settings

bigdataf/pykylin4superset

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Superset 与 Kylin 集成

Superset 官方支持清单里没有 Kylin。但是由于 Superset 是通过 SQLAlchemy 访问数据源的,所以原则上只要实现一套 Kylin 的 SQLAlchemy 方言(dialect)+ DBAPI 实现,即可以对其做集成。

前提

已部署 Superset

已部署 Kylin

安装 PyKylin

Python 的官方库中没有找到 Kylin 的 SQLAlchemy + DBAPI 实现,但是在 GitHub 上有一个 pykylin 项目。

由于 Kylin 在设计上与 Superset 有一些冲突,使用这个 pykylin 会有一些兼容性的问题。我在这个版本的基础上做了一些调整,使其可以兼容 Superset:

pykylin4supersethttps://github.com/YorkeCao/pykylin4superset

点此下载其压缩文件,解压后进入其根目录,执行:

pip install -r ./requirements.txt
python setup.py install

注意!如果 Superset 安装在 virtualenv 虚拟机中,注意要在其虚拟环境中执行上述命令。

安装完成后,重新启动 Superset。

配置 Superset

现在可以配置 Kylin 数据源了。

进入添加 Database 的页面。

  1. 在 Database 条目中任意起一个名字,如:Kylin
  2. 在 SQLAlchemy URI 中输入连接串,如:kylin://admin:KYLIN@localhost:7070/kylin/api?project=yourProjectName
  3. 单击 Test Connection 测试链接
  4. 测试成功后,点击 Save 保存

这样 Kylin 的数据源就创建好了。

测试

可以创建 Table,然后创建 Slice 进行测试。

驱动升级

升级 pykylin4superset,先用 pip 卸载之,然后重新安装即可。注意要在 Superset 所在的虚拟机中执行

# . ./venv/bin/activate
(venv)# pip uninstall pykylin
(venv)# wget https://codeload.github.com/YorkeCao/pykylin4superset/zip/master -O pykylin4superset‐master.zip
(venv)# unzip pykylin4superset‐master.zip
(venv)# cd pykylin4superset‐master/
(venv)# python setup.py install

重装后重启 Superset 即可。

pykylin4superset 才到坑后不定时更新,建议保持最新版。

About

Python DBAPI Driver and Sqlalchemy Dialect for Apache Kylin, the "Extreme OLAP Engine for Big Data"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%