Davinci安装

  • 参考博客: https://www.jianshu.com/p/e10586beb29f

Davinci 源代码github地址:https://github.com/edp963/davinci

二次开发完全可以参考Davinci 的使用手册的文档说明介绍比较详细,这里只说几个注意点。

安装

1 环境准备

  • JDK 1.8(或更高版本)
  • MySql5.5(或更高版本)
  • Mail Server
  • phantomjs 或 chrome(需同时安装chromedriver,清注意版本)

  • Redis(可选)

2 配置部署

参考博客: https://edp963.github.io/davinci/docs/zh/1.1-deployment

2.1 初始化目录

将下载好的 Davinci 包(Release 包,不是 Source 包)解压到某个系统目录,如:~/app/davinci

mkdir -p /opt/apps/software/davinci
mkdir -p /opt/apps/software/phantomjs
mkdir -p /opt/apps/software/jars
cd /opt/apps/software/davinci
先创建 mkdir davinci-0.3.0 进入后解压
cd davinci-0.3.0
unzip davinci-assembly_3.0.1-0.3.1-SNAPSHOT-dist-beta.9.zip
cd /opt/apps
ln -s software/davinci/davinci-0.3.0 davinci
ln -s software/phantomjs/phantomjs-2.1.1 phantomjs

解压后目录结构如下图所示:

2.2 配置环境变量

将上述解压后的目录配置到环境变量 DAVINCI3_HOME

# ------------------------< Davinci>------------------------
export DAVINCI3_HOME=/opt/apps/davinci
export PATH=$PATH:$DAVINCI3_HOME/bin

2.3 初始化数据库

修改 bin 目录下 initdb.sh 中要的数据库信息为要初始化的数据库,如 davinci

# mysql -P 3306 -h IP地址 -u 用户名 -p密码 davinci(数据库) < $DAVINCI3_HOME/bin/davinci.sql
mysql -P 3306 -h localhost -u bigdata -pbigdata davinci < ./davinci.sql

运行脚本初始化数据库(注:由于 Davinci 系统数据库中包含存储过程,请务必在创建数据库时赋予执行权限)

sh bin/initdb.sh

2.4 初始化配置

Davinci 的配置主要包括:server、datasource、mail、phantomjs、cache 等配置

进入config目录,将application.yml.example重命名为application.yml 后开始配置

cd config
cp application.yml.example application.yml

注意:由于 Davinci 使用 ymal 作为应用配置文件格式,请务必确保每个配置项键后的冒号和值之间至少有一个空格

2.4.1 server 配置

### 注意: "context-path: /" 这个斜杠后面不能添加访问路径,不然web界面不显示内容
server:protocol: httpaddress: 0.0.0.0port: 19001servlet:context-path: /# Userd for mail and download services, can be empty, careful configuration# By default, 'server.address' and 'server.port' is used as the string value.
### 代理地址, 即:Web界面访问的地址(这是在idea中测试,设置本机地址,在服务中不是时设置服务器的IP地址即可), 如: 127.0.0.1:19001access:address: 127.0.0.1port: 19001
  • server 配置如上示例所示,server.access.address和server.access.port表示真实访问地址和端口,默认不开启,其值默认为server.address和server.port。

如你在虚拟主机上部署 Davinci,启动端口为8080,该主机真实访问IP地址为192.168.1.1,你将虚拟主机的8080端口映射到80端口,则需打开 access 配置项,否则将不能正常使用 Davinci 的部分功能,如激活账号、下载、分享等。

2.4.2 datasource 配置

这里的 datasource 配置指 Davinci 系统的数据源,配置如下:

### 配置MySQL的 url, username, password 信息datasource:url: jdbc:mysql://hadoop001:3306/davinci?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=trueusername: bigdatapassword: bigdatadriver-class-name: com.mysql.jdbc.Driverinitial-size: 2min-idle: 1max-wait: 60000max-active: 10

将上一步初始化的数据库地址配置到url中,url 中的参数不要做任何修改,然后修改正确的数据库访问用户和密码即username和password。

initial-size、min-idle、max-wait、max-active是连接池参数,具体属性请参考DruidDataSource配置属性列表

2.4.3 mail 配置

注:0.3 版本用户采用注册激活的方式维护,所以 mail 配置是此版本必不可少的,且 mail 配置出错率较高,请务必注意

### Davinci 使用注册–邮件激活添加用户, 所以 mail 配置是必不可少的, 且 mail 配置出错率较高,请务必注意
### mail配置(这个最重要, 因为Davinci0.3 主要注册账号才能使用, 而注册账号只能是使用Email邮箱, 这里呢我们可以配置自己公司的公共邮箱,如果是一些大厂的邮箱,可以根据以下图片ip进行配置邮箱地址)
### 个人邮箱配置
#  mail:
#    # 邮箱host, 如果是公司内部邮箱的话, 可以找网管部门询问公司邮箱IP及段口
#    host: smtp.163.com
#    port: 465
#    # 公共邮箱地址(username、password)
#    username: xxxxxxxxxxxxx@163.com
#    # fromAddress 为可选项, 默认为 username 的值, 其存在的意义在于部分邮箱服务可能在认证时 username 和 addresss 不同,这时需要配置 fromAddress 作为邮件真实发送地址,username 为连接邮箱服务认证使用
#    fromAddress: xxxxxxxxxxxxx@163.com
#    password: ****************************
#    # 邮箱发件人名称
#    nickname: Davinci### 公司邮箱配置mail:# 邮箱host, 如果是公司内部邮箱的话, 可以找网管部门询问公司邮箱IP及段口host: smtp.exmail.qq.comport: 465# 公共邮箱地址(username、password)username: jira@joyshebao.com# fromAddress 为可选项, 默认为 username 的值, 其存在的意义在于部分邮箱服务可能在认证时 username 和 addresss 不同,这时需要配置 fromAddress 作为邮件真实发送地址,username 为连接邮箱服务认证使用fromAddress: jira@joyshebao.compassword: **********************# 邮箱发件人名称nickname: Davinciproperties:smtp:starttls:enable: truerequired: trueauth: truemail:smtp:ssl:### 这里必须设置true,不然登录界面为空enable: true

mail 配置:

2.4.4 phantomjs 配置:

phantomjs 是用来定时发送报表截图的,只需要配置安装好的 phantomjs 可执行文件地址即可

### default_browser 为默认截图浏览器, 其值为PHANTOMJS或CHROME. 如果选择PHANTOMJS, 则只需配置 phantomjs_path; 否则只需配置 chromedriver_path
### 注意:phantomjs_path 需配置 PhantomJs 浏览器的可执行文件绝对地址, 而 chromedriver_path 需配置 Chromedriver (非Chrome)可执行文件绝对地址
screenshot:default_browser: PHANTOMJS                    # PHANTOMJS or CHROMEtimeout_second: 600phantomjs_path: /opt/apps/phantomjs/bin/phantomjs#chromedriver_path: $your_chromedriver_path$#remote_webdriver_url: $your_remote_webdriver_url$

2.4.5 cache 配置(可选)

cache 这里用 redis 作为缓存服务,配置如下:

### Redis缓存redis:isEnable: falsehost: 10.143.131.119port: 6379#  cluster:#       nodes:password:database: 0timeout: 1000jedis:pool:max-active: 8max-wait: 1max-idle: 8min-idle: 0

如果要开启 cache 服务,请将isEnable设为true,并要设置相关配置(单机方式请打开host和port,集群方式请打开cluster配置项,二者只能选择一种)。

2.4.6 其他配置

日志配置文件为config/logback.xml,如当前的日志配置不能满足你的要求,可自定义配置日志模式。

2.4.7 启动/停止

$DAVINCI3_HOME/bin/start-server.sh
$DAVINCI3_HOME/bin/stop-server.sh
$DAVINCI3_HOME/bin/restart-server.sh
访问地址: http://localhost:port
username: name@davinci.com
password: 123456

三、数据源配置

Davinci0.3 理论上支持所有有 JDBC 的数据源,我们默认支持的数据源有:

数据源名称

驱动类

mysql

com.mysql.jdbc.Driver

oracle

oracle.jdbc.driver.OracleDriver

sqlserver

com.microsoft.sqlserver.jdbc.SQLServerDriver

h2

org.h2.Driver

phoenix

org.apache.phoenix.jdbc.PhoenixDriver

mongodb

mongodb.jdbc.MongoDriver

elasticSearch – presto

com.facebook.presto.jdbc.PrestoDriver

moonbox

moonbox.jdbc.MbDriver

cassandra

com.github.adejanovski.cassandra.jdbc.CassandraDriver

clickhouse

ru.yandex.clickhouse.ClickHouseDriver

kylin

org.apache.kylin.jdbc.Driver

vertica

com.vertica.jdbc.Driver

hana

com.sap.db.jdbc.Driver

impala

com.cloudera.impala.jdbc41.Driver

值得注意的是,Davinci 内部只提供了 MySql 的驱动包,也就是说,如果你要使用其他数据源,还需将对应驱动jar 包手动拷贝到lib目录并重新启动 Davinci 服务;Davinci 连接 ElasticSearch 目前使用 NLPchina提供的elasticsearch-sql,系统内部默认 ElasticSearch 版本为5.3.2,对应的 elasticsearch-sql 版本是5.3.2.0。

同理,如果你的 ElasticSearch 不是5.3.2,首先需要你手动下载 NLPchina 提供的对应版本的 jar,然后替换掉目前lib下的 jar,包括elasticsearch-xxx.jar、transport-xxx.jar、x-pack-api-xxx.jar、 x-pack-transport-xxx.jar、elasticsearch-sql-XXX.jar(xxx表示你的 ElasticSearch 版本号,XXX表示NLPchina 对应 elasticsearch-sql 版本号)。

另外值得注意的是,如果你的数据源不在以上列表中,也可以通过自定义配置注入数据源,否则没必要开启,除非你知道在做什么:

1)打开自定义数据源配置文件

mv datasource_driver.yml.example datasource_driver.yml

2)如下配置你的数据源,这里以 postgresql 为例

postgresql:name: postgresqldesc: postgresqldriver: org.postgresql.Driverkeyword_prefix:keyword_suffix:alias_prefix: \"alias_suffix: \"

注意

  • keyword_prefix和keyword_suffix表示关键字前缀和后缀,假设使用 mysql 数据库,并将desc关键字作为字段使用,那么你的查询语句应该是:select desc from table 这里的 ‘`’ 就是前后缀,它们必须成对被配置,可以都为空。
  • alias_prefix和alias_suffix表示别名前后缀,仍以 mysql 为例,假设你的 sql 语句如下:select column as '列' from table 。这里为 ‘column’ 起了别名为‘列’,那么‘’’将作为前后缀配置,前后缀必须成对被配置,可以都为空。
  • 对于以上别名配置,你可以使用''将字符包起来,也可以使用转移符\,二者只能出现一种。

3)手动将相应的驱动 jar 包拷贝到lib目录下。

4)重启 Davinci 服务。

操作:

  • 配置mysql数据源

  • 连接 Hive

修改 $DAVINCI3_HOME/config/datasource_driver.yml.example文件名为 $DAVINCI3_HOME/config/datasource_driver.yml 使其生效,并在文件里配置 Hive 相关信息,如下:

在 datasource_driver.yml 中新增数据源配置,使用 version 字段标记数据源对应版本。version 字段为空时,默认读取 lib 目录下的驱动文件。这里以 hive 为例

  • vim $DAVINCI3_HOME/config/datasource_driver.yml

### 注意这里的开头需要隔2个空格,按照yaml的文件格式书写 hive1.1.0: name: hive2 desc: hive version: 1.1.0 driver: org.apache.hive.jdbc.HiveDriver keyword_prefix: \` keyword_suffix: \` alias_prefix: \` alias_suffix: \`

在 $DAVINCI3_HOME/lib/ext 下创建相应数据库及其版本目录(如无 ext 目录,可自行创建) 如:$DAVINCI3_HOME/lib/ext/hive2/1.1.0

  1. 将对应数据源的驱动包放入步骤2 创建的目录
cd $DAVINCI3_HOME/lib/ext/hive2/1.1.0
# HiveServer2Auth.jar 这个身份认证的jar是自定义的,没有对hive做权限,就不需要
cp /opt/apps/software/jars/HiveServer2Auth.jar ./
cp /opt/apps/software/jars/commons-logging-1.2.jar ./
cp /opt/apps/software/jars/hadoop-common-2.6.0.jar ./
cp /opt/apps/software/jars/hive-common-1.1.0.jar ./
cp /opt/apps/software/jars/hive-cli-1.1.0.jar ./
cp /opt/apps/software/jars/hive-jdbc-1.1.0.jar ./
cp /opt/apps/software/jars/hive-metastore-1.1.0.jar ./
cp /opt/apps/software/jars/hive-service-1.1.0.jar ./
cp /opt/apps/software/jars/libthrift-0.9.3.jar ./
cp /opt/apps/software/jars/log4j-1.2.16.jar ./
cp /opt/apps/software/jars/slf4j-api-1.7.5.jar ./
cp /opt/apps/software/jars/slf4j-log4j12-1.7.5.jar ./
cp /opt/apps/software/jars/slf4j-simple-1.7.5.jar ./
cp /opt/apps/software/jars/velocity-engine-core-2.0.jar ./

  1. 重启服务器
  2. 在 source 新增或修改时选择数据源,详情参考 数据源 - 新增数据源
  • 连接 Impala(建议用Impala查询Hive, 速度快)

在 $DAVINCI3_HOME/lib 下放置 Impala相关jar

注意: 添加Impala的jar按照连接hive的形式添加所有jar, 再额外添加 ImpalaJDBC.jar

ln -s /opt/apps/software/jars/ImpalaJDBC41-2.5.42.jar ImpalaJDBC41-2.5.42.jar
ln -s /opt/apps/software/jars/hadoop-common-2.6.0.jar hadoop-common-2.6.0.jar
ln -s /opt/apps/software/jars/hive-cli-1.1.0.jar hive-cli-1.1.0.jar
ln -s /opt/apps/software/jars/hive-jdbc-1.1.0.jar hive-jdbc-1.1.0.jar
ln -s /opt/apps/software/jars/hive-metastore-1.1.0.jar hive-metastore-1.1.0.jar
ln -s /opt/apps/software/jars/hive-service-1.1.0.jar hive-service-1.1.0.jar
ln -s /opt/apps/software/jars/libthrift-0.9.3.jar libthrift-0.9.3.jar
ln -s /opt/apps/software/jars/slf4j-log4j12-1.7.5.jar slf4j-log4j12-1.7.5.jar
ln -s /opt/apps/software/jars/slf4j-log4j12-1.7.5.jar slf4j-log4j12-1.7.5.jar
ln -s /opt/apps/software/jars/slf4j-simple-1.7.5.jar slf4j-simple-1.7.5.jar
ln -s /opt/apps/software/jars/velocity-engine-core-2.0.jar velocity-engine-core-2.0.jar
  • 连接 Kylin

在 $DAVINCI3_HOME/lib 下放置 Kylin 相关jar

ln -s /opt/apps/software/jars/kylin-jdbc-2.6.6.jar kylin-jdbc-2.6.6.jar

Davinci安装部署相关推荐

  1. davinci-0.3.0安装部署

    davinci-0.3.0-beta.5 release安装部署 下载地址: https://github.com/edp963/davinci/releases/download/v0.3.0-be ...

  2. 2021年大数据Flink(三):​​​​​​​Flink安装部署 Local本地模式

    目录 Flink安装部署 Local本地模式 原理 操作 测试 Flink安装部署 Flink支持多种安装模式 - Local-本地单机模式,学习测试时使用 - Standalone-独立集群模式,F ...

  3. Mycat 读写分离 数据库分库分表 中间件 安装部署,及简单使用

    MyCat是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服 ...

  4. 【SVN】1. SVN 安装部署

    一. SVN概述 1. SVN 简介   Subversion 版本控制系统 简称 SVN.   SVN 是一个跨平台开放源代码的集中式版本控制系统,可以实现文件及目录的保存及版本回溯.   SVN ...

  5. Docker概述和安装部署

    概述 Docker产生的背景 一款产品从开发到上线,从操作系统,到运行环境,再到应用配置.作为开发+运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后 ...

  6. DSVS7050签名服务器的网站,吉大正元数字签名服务器-安装部署手册(COM版 VCTK_S接口)2.1.1.doc...

    吉大正元数字签名服务器-安装部署手册(COM版 VCTK_S接口)2.1.1 数字签名服务器v2.1.1 安装部署手册 (VSTK接口 COM版) V2.1.1 长 春 吉 大 正 元 信 息 技 术 ...

  7. Airflow安装部署

    Airflow安装部署 新闻信息是通过爬虫获取,使用scrapy框架进行爬虫任务:使用airflow工作流监控平台对爬虫任务进行管理.监控(可使用CeleryExecutor分布式,也可使用Local ...

  8. logicaldoc 6.5 结合postgresql 9.x安装部署—基于windows平台

    2019独角兽企业重金招聘Python工程师标准>>> 湘中朱生   2012年9月于深圳 说明:原创内容,请勿转载! <1> 从官网下载部署包 官方网站提供源码包和集成 ...

  9. Centos6.0 64位MySQL 5.5.20 CMake 安装部署

    Centos6.0 64位下 MySQL 5.5.20 CMake 安装部署 一.下载所需软件 linux用 wget 下载需要的软件,保存到目录 /usr/local/src 下 wget ftp: ...

最新文章

  1. 关于宝塔下的项目中的php不能访问的问题
  2. 猴子用意念玩游戏,马斯克脑机接口公司新进展
  3. 聊聊ASP.NET Core默认提供的这个跨平台的服务器——KestrelServer
  4. 获取socket对应的接收缓冲区中的可读数据量
  5. 解决JupyterLab/JupyterNotebook安装pycherts后依旧报错报错 ModuleNotFoundError: No module named ‘pyecharts‘
  6. testflight怎么做版本更新_《动物森友会》万圣节版本更新后,别忘了做这五件事情...
  7. 得到页面中的所有链接函数
  8. python 网格搜索_Python机器学习笔记:Grid SearchCV(网格搜索)
  9. 测试用例(功能用例)——资产申购、统计报表
  10. 郝兵c语言_郝斌C语言教程全套视频180集下载地址
  11. 创意的个人简历tab网站模板
  12. “24岁,一门手艺,年入百万”:真正厉害的人,都做到了这4件事
  13. 用c语言绘制小猫图案,【科研猫·R】R语言从入门到精通:Day8
  14. 使用L-Edit画环形光栅
  15. 如何让计算机恢复显示电量,win10系统右下角电池图标不见了看不到剩余电量的还原步骤...
  16. excel保存快捷键_Excel新手必备的5大技巧,看看你会几个?(附26个超实用快捷键)
  17. Python 游戏开发: 外星人入侵
  18. win7 关闭计算机休眠,技术编辑教您win7下怎么关闭休眠
  19. 加群android代码那个是,QQ加群组件-iPhone、Android、网页上加入QQ群
  20. Currency Exchange (SPFA)

热门文章

  1. 查询数据的时候 提示事务(进程 ID **)与另一个进程被死锁在 锁 资源上,并且已被选作死锁牺牲品。
  2. GameFi 发展势头值得期待,下一步它将如何“绽放”?
  3. linux创建虚拟磁盘的方法
  4. K8s中pv和pvc的使用
  5. ESLint配置信息完整版
  6. 【ASP.NET】——ADO.NET
  7. 终结 Android 性能流言
  8. 责任链设计模式Demo
  9. 《机器学习的随机矩阵方法》
  10. linux 在端口 1521 连接失败,[转]不能打开到主机的连接, 在端口 1521: 连接失败...