【Apache Doris】周FAQ集锦:第 7 期
- SQL问题
- 数据操作问题
- 运维常见问题
- 其它问题
- 关于社区
欢迎查阅本周的 Apache Doris 社区 FAQ 栏目!
在这个栏目中,每周将筛选社区反馈的热门问题和话题,重点回答并进行深入探讨。旨在为广大用户和开发者分享有关 Apache Doris 的常见问题。
通过这个每周 FAQ 栏目,希望帮助社区小伙伴更好地了解和应用 Apache Doris,促进经验交流和技术共享。
SQL问题
❓Q1 2.1.0和2.1.1版本查询报错:[E-3113]string column length
💡A1 调大 parallel_pipeline_task_num 会话参数解决;例如:32c 256G的配置,set parallel_pipeline_task_num = 16 或设置为32可解决。
具体可以查阅Doris论坛帖子:
https://ask.selectdb.com/questions/D1wp/2-1-0-he-2-1-1-bao-e-3113-string-column-length
❓Q2 jdbc catalog查询报错:Can not connect to jdbc due to error: wait millis 5000, active 10, maxActive 10, creating 0, Catalog
💡A2 jdbc catalog 连接超限导致,默认是10,需要修改连接池的最大连接数或重建catalog加上这个参数:
alter catalog <catalog_name> set properties ('connection_pool_max_size' = '100')
具体可以查阅Doris论坛帖子:
https://ask.selectdb.com/questions/D1Sg/doris-ban-ben-2-1-0-zai-jin-xing-shu-ju-dao-ru-de-shi-hou-be-bao-cuo-caused-by-getconnectiontimeoutexception-wait-millis-5000-active-10-maxactive-10-c
数据操作问题
❓Q3 字符类型定义为varchar还是string?
💡A3 如下:
1. key列没法用string,非key列如果65533长度能够满足,可以定义为varchar(65533),大于这个范围可以用string
2. varchar(65533)的65533只是定为字符长度上限,实际占用的以数据存储多少为主
❓Q4 2.1 版本的create job能否放多条sql语句?
💡A4 当前不能;但依赖关系后续大概率会做,即任务编排dag。
2.1 create job内容可以查阅:
https://doris.apache.org/zh-CN/docs/sql-manual/sql-reference/Data-Definition-Statements/Create/CREATE-JOB
❓Q5 2.1 版本的异步视图是否支持秒级更新?
💡A5 当前最细颗粒度是分钟级;后续会研究同步多表物化视图来解决实时性比较高的场景。
2.1异步物化视图内容可以查阅:
https://doris.apache.org/zh-CN/docs/query-acceleration/async-materialized-view/
❓Q6 2.1 版本的arrow flight端口和 fe对arrow flight端口是否需要一样?
💡A6 可用端口即可,可以不一样。
2.1 arrow flight sql protocol内容可以查阅:
https://github.com/apache/doris/issues/25514
❓Q7 1.2升级至2.0后,表结构里面无法区分是decimalv1还是v3了?
💡A7 新版本对于新创建的表没有v1和v3这一区分了,统一为decimal v3;对于存量的表,还是旧的decimal类型,如果修改,需要手动修改列类型。
运维常见问题
❓Q8 为什么information_schema的库表不能删改?
💡A8 information_schema的库表没有物理实体,都是虚拟表,所以无法进行删改。
❓Q9 服务器有主ip和vip(nginx+keepalived),vip做负载均衡:
可否将: priority_networks = 10.0.0.0/24
改成: priority_networks = 10.0.0.128/25
并且vip设为10.0.0.10来确保keeplived和doris均正常启动?
改完后10.10.0.127以下的访问doris集群是否会有异常?
💡A9 结合initAddrUseIp的逻辑分析:
fe 进行 initAddrUseIp 时会从符合该规则范围的 ip 地址中选择一个作为本地地址,如果没有任何 ip 地址符合规则,fe 进程将停止并报错退出;
所以,如果 vip 设为 10.0.0.10,并且新的 priority_networks 配置为 10.0.0.128/25,只要服务器的主 ip 或其它 ip 在 10.0.0.128/25 范围内,doris 和 keepalived 应该能够正常启动;
否则,将无法启动,并且需要重新调整 IP 地址配置。
其它问题
❓Q10 doris 默认为3副本, 如果有5个BE节点,那么设置副本数为5,对于查询性能是否能有显著的提升?
💡A10 副本数主要为了保证数据安全性,一般3副本就能满足单节点故障;5副本的集群,对于故障的容忍率也会更高些,读写可以容忍2副本故障,但是资源相对会占用更多些。副本数,主要是保障数据的可用性和可靠性,对于性能方面并不是副本越多,查询越快。
关于社区
Apache Doris 是一个基于 MPP 架构的高性能、实时的分析型数据库,以极速易用的特点被人们所熟知,仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的点查询场景,也能支持高吞吐的复杂分析场景。
如果您对 Apache Doris 感兴趣,可以通过以下入口访问官方网站、社区论坛、GitHub和dev邮件组:
💡官方文档
💡社区论坛
💡GitHub
💡dev邮件组:dev@doris.apache.org
非常欢迎您在社区论坛中与其他用户分享您的使用经验和技巧,或者向dev邮件组提交反馈和意见。
相信,您的参与将帮助Apache Doris变得更加完善。