Exasol 基于docker搭建并运行
简介
maven配置
pom 配置语法如下
docker 搭建exasol
查找镜像
在dockerHub中可以搜索到该镜像,此外通过 docker search exasol 也可以搜索到该镜像。接着使用 docker pull exasol/docker-db 命令拉取镜像
https://registry.hub.docker.com/r/exasol/docker-db
创建容器
启动命令如下
-d --detach 表示容器在后台运行,如果是 -it 则会占用当前命令行执行
--name 设置容器的名字
-p <主机端口>:<容器端口> 将主机端口映射到容器中
--privileged 让容器内的 root 拥有真正的root权限。否则容器内的 root 就只是外部的一个普通用户权限
--memory 设置容器使用的大内存上限。默认单位为byte,可以使用K、G、M等带单位的字符串
-- memory-reservation 启用弹性的内存共享,当宿主机资源充足时,允许容器尽量多地使用内存,当检测到内存竞争或者低内存时,强制将容器的内存降低到memory-reservation所指定的内存大小。按照官方说法,不设置此选项时,有可能出现某些容器长时间占用大量内存,导致性能上的损失
--memory-swap 等于内存和swap分区大小的总和,设置为-1时,表示swap分区的大小是无限的。默认单位为byte,可以使用K、G、M等带单位的字符串。如果–memory-swap的设置值小于–memory的值,则使用默认值,为–memory-swap值的两倍
exasol的默认帐号密码
如果修改保存后就直接重启容器,会发现启动失败。使用 docker logs exasoldb 查看日志,显示 ERROR::EXAConfig: Integrity check failed
从 exasol 的 Github 中发现了这条 ISSUE,上面说是由于 EXAConf 中配置了该文件的 checksum,因此当配置被修改后校验错误,导致失败。
因此,每次修改 EXAConf 的配置,必须将 checksum 的值该为 COMMIT,该值指示设备在读取时自动该为正确的 checksum
常用命令
csinfo
查看磁盘类型及基本信息
插入1千万行数据查看磁盘内存占用量
大表1千万条(20列)&小表1千条(7列)的增删改查,聚合汇总连接的效率
原文链接:https://blog.csdn.net/chy555chy/article/details/112993838
相关文章