页面树结构
转至元数据结尾
转至元数据起始

正在查看旧版本。 查看 当前版本.

与当前比较 查看页面历史

« 前一个 版本 41 下一个 »

Smartbi MPP 高速缓存库,列式数据库管理系统,用于抽取数据。

SmartbiMPP支持 21.x及以上版本,低于该版本则需自行更新。更新方法可参考文档MPP更新

安装包请联系Smartbi官方支持获取。

安装指南

1、系统环境要求

组件要求

操作系统

只支持 64位的Linux系统

建议:

  • CentOS 6或以上
  • RedHat 6或以上

CPU

建议8核或以上

内存

建议32G以上

硬盘

建议固态硬盘或高速硬盘

空间大小2048G

2、安装介质装备

SmartbiMPP 介质

  • CentOS6.X/Redhat6.x

介质名称

clickhouse-common-static-21.6.6.51-2.x86_64.rpm

clickhouse-server-21.6.6.51-2.noarch.rpm

clickhouse-client-21.6.6.51-2.noarch.rpm

  • CentOS7.X/Redhat7.x

介质名称

clickhouse-common-static-21.6.6.51-2.x86_64.rpm

clickhouse-server-21.6.6.51-2.noarch.rpm

clickhouse-client-21.6.6.51-2.noarch.rpm
libicu-50.2-3.el7.x86_64.rpm

安装权限要求:
安装时用root用户运行或使用具有sudo权限的用户执行,推荐使用root用户安装。

3、设置系统环境

3.1 取消打开文件数限制

在/etc/security/limits.conf 文件的末尾加入以下内容(注意: * 不能省略):

* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072

在/etc/sysctl.conf中,添加以下内容:

fs.inotify.max_user_watches=524288 
fs.inotify.max_user_instances=8192 

  保存后,执行以下命令让设置生效

sudo sysctl -p /etc/sysctl.conf


3.2 取消SELINUX

#临时关闭selinux
setenforce 0
#永久关闭Selinux,需要重启服务器生效
sed -i 's/=enforcing/=disabled/g'  /etc/selinux/config

3.3 关闭防火墙

1)CentOS 6.X/Redhat 6.X
service iptables stop
service ip6tables stop
chkconfig iptables off
chkconfig ip6tables off
2)CentOS 7.X/Redhat 7.X
systemctl stop firewalld 
systemctl disable firewalld 
systemctl status firewalld 

3.4开启防火墙

如果需要开启防火墙,则需要开放smartbi-mpp服务使用到的端口:

服务名

开放端口

smartbi-mpp

9000,8123

开启端口:9000、8123

firewall-cmd --permanent --add-port=9000/tcp
firewall-cmd --permanent --add-port=8123/tcp

配置完以后重新加载firewalld,使配置生效

firewall-cmd --reload

查看防火墙的配置信息

firewall-cmd --list-all

温馨提示

建议关闭服务器虚拟内存,避免查询期间使用虚拟内存导致查询变慢和查询异常。

swapoff -a    #临时关闭

4、安装SmartbiMPP

4.1 安装SmartbiMPP

安装过程中请根据实际提示信息安装依赖包。

若提示缺少相关依赖,则需先安装依赖包

例如:rpm -ivh libicu-50.2-3.el7.x86_64.rpm

rpm -ivh clickhouse-common-static-21.6.6.51-2.x86_64.rpm

rpm -ivh clickhouse-server-21.6.6.51-2.noarch.rpm

rpm -ivh clickhouse-client_21.6.6.51_all.rpm

rpm -ivh clickhouse-common-static_21.6.6.51.rpm
rpm -ivh clickhouse-server_21.6.6.51_all.rpm

注意:安装server时会出现输入密码提示:Enter password for default user:   
# 你需要输入你的数据库密码,密码信息将会保存在/etc/clickhouse-server/users.d/default-password.xml文件中,后期修改密码可在此文件修改。

rpm -ivh clickhouse-client-21.6.6.51-2.noarch.rpm

4.2 SmartbiMPP的配置文件

SmartbiMPP配置文件:/etc/clickhouse-server/config.xml

SmartbiMPP用户配置文件:/etc/clickhouse-server/users.xml

4.3 日志文件存放路径

修改的配置文件/etc/clickhouse-server/config.xml,可以配置mpp的日志存放路径。

如修改日志目录,启动时可能提示权限不足,可以为指定的日志目录授权

#chown -R clickhouse.clickhouse <新的日志目录> 

4.4 修改默认端口

8123是JDBC驱动的连接端口。

9000是clickhouse-client的连接端口。

一般不建议修改端口配置。

4.5 修改数据目录

数据存储目录用来存储SMARTBIMPP的数据文件,可以设置其他目录用于存储SMARTBIMPP的数据文件,如果指定其他目录,服务启动时可能会提示目录权限不足,需要为指定的目录添加权限:

chown -R clickhouse.clickhouse <新数据目录>     

根据实际情况(找一个磁盘空间比较大的存储路径),修改的配置文件/etc/clickhouse-server/config.xml,修改之后的内容如下:

4.6 开启远程访问权限

修改的配置文件/etc/clickhouse-server/config.xml,放开注释即可。IPV4地址和IPV6地址只能配置一个,否则会出现端口冲突的报错。

如果需要配置监听ipv4地址,则配置问<listen_host>0.0.0.0</listen_host>

如果需要配置监听ipv6地址,则配置问<listen_host>::</listen_host>

温馨提示

ipv4地址和ipv6地址只能配置一个。

不是所有环境都支持ipv6地址,建议优先选择配置监听ipv4地址。

4.7 修改SMARTBIMPP内存设置

修改配置文件/etc/clickhouse-server/users.xml,单位是Byte,默认值是10G。根据实际情况配置内存值:

4.8 设置用户密码

修改配置文件/etc/clickhouse-server/users.xml,修改之后的内容如下:

方法一:设置明文密码。

方法二:设置加密密码(sha256sum加密)。

1)执行下面命令生成密码:

echo -n "manager" | sha256sum | tr -d '-'

2)设置密码:

注意事项

设置用户密码的两种方式,只能选择其中一种,不能同时配置两个方式的密码选项。

4.9 启动SMARTBIMPP

systemctl start clickhouse-server

使用指南

1、运维操作

#停止服务
systemctl stop clickhouse-server
#查看服务状态
systemctl status clickhouse-server
#设置开机自启
systemctl enable clickhouse-server

2、上手教程

2.1 命令行登录

# 用clickhouse-client连接本机clickhouse-server服务器
clickhouse-client

# 用本机clickhouse-client连接远程clickhouse-server服务器
clickhouse-client --host 192.168.3.54 --port 9000 --database default --user default --password manager

2.2  建表语句

ENGINE:是表的引擎类型,最常用的MergeTree。还有一个Log引擎也是比较常用。MergeTree要求有一个日期字段,还有主键。Log没有这个限制。

CREATE TABLE code_province(
    state_province        String,
    province_name         String,
    create_date           date
) ENGINE =
MergeTree(create_date, (state_province), 8192);

------------------------------------------------------------------------
CREATE TABLE code_province(
    state_province        String,
    province_name         String,
    create_date           date
) ENGINE = Log;
 

create_date:是表的日期字段,一个表必须要有一个日期字段。

State_province:是表的主键,主键可以有多个字段,每个字段用逗号分隔。

8192:是索引粒度,用默认值8192即可。

2.3 数据加载

-----------导入CSV文件---------------


clickhouse-client --query "INSERT INTO default.code_province FORMAT CSV" < code_province.csv

3、数据备份

1、停止服务 service clickhouse-server stop
2、备份SMARTBIMPP的整个数据目录即可。数据目录可在/etc/clickhouse-server/config.xml文件中查看。

4、常见问题

关于日志:

SmartbiMPP默认日志存放路径:/var/log/clickhouse-server/ 目录包含:

clickhouse-server.log :  SmartbiMPP运行日志

clickhouse-server.err.log:SmartbiMPP错误日志

遇到SmartbiMPP启动失败的时候,一般都可以根据日志来分析问题。

如果修改了日志路径,请根据实际配置路径查找错误日志。

注意事项

如果需要获取SmartbiMPP日志,请使用root用户或者具有sudo权限的用户操作

① 系统不支持ipv6:

日志报错情况如下图所示。手工修改/etc/clickhouse-server/config.xml的监听地址,屏蔽::和::1的IPV6监听配置。


② 启动失败:

如下图所示,如果使用service clickhouse-server start启动SmartbiMPP,提示UNKNOWN。此时SmartbiMPP启动失败。但是查看/var/log/clickhouse-server/clickhouse-server.err.log又没有日志输出。

原因:/var/log/clickhouse-server/目录的日志文件不是clickhouse用户权限,所以启动SmartbiMPP时,没权限写日志导致启动失败。

处理方法:给日志目录赋予clickhouse的权限

# sudo chown -R clickhouse:clickhouse /var/log/clickhouse-server
# sudo service clickhouse-server start


③ MPP运行过程中被终止进程:

MPP进程运行过程中奔溃,MPP错误日志没有任何输出

处理方法:查看/var/log/messages日志,发现MPP挂掉的原因,如下图:

MPP在运行过程中使用内存超出服务器最大内存,导致系统将MPP进程Kill掉。

查看MPP的users.xml配置文件,调整内存最大限制(具体参考服务器内存):

<max_memory_usage>28000000000</max_memory_usage>   #示例限制最大内存28G

MPP在运行过程中可能突破内存的限制,因为在单次查询的用量统计中,CH是以分区为最小单位进行统计(不是数据行的粒度),这意味着单次查询的实际内存使用量有可能超过阀值。

通过添加max_memory_usage_for_user参数,限制单个用户在运行查询限制使用的最大内存量。

<max_memory_usage_for_user>26000000000</max_memory_usage_for_user>

重启MPP服务,观察服务是否会被系统kill。

5、调试方法

有时可能会出现SmartbiMPP启动失败,但是又没有日志的情况,可以使用如下命令启动SmartbiMPP,在前端获取启动日志分析问题。

使用指定配置文件启动SmartbiMPP
# sudo -u clickhouse clickhouse-server --config-file=/etc/clickhouse-server/config.xml


  • 无标签