前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Druid 加载 Kafka 流数据的性能配置参数 TuningConfig

Druid 加载 Kafka 流数据的性能配置参数 TuningConfig

原创
作者头像
HoneyMoose
修改2021-08-12 10:42:57
9430
修改2021-08-12 10:42:57
举报
文章被收录于专栏:CWIKIUS

tuningConfig 的配置是可选的,如果你不在这里对这个参数进行配置的话,Druid 将会使用默认的配置来替代。

5-Best-Practices-for-Proactive-Database-V2
5-Best-Practices-for-Proactive-Database-V2

字段(Field)

类型(Type)

描述(Description)

是否必须(Required)

type

String

索引任务类型, 总是 kafka。

Y

maxRowsInMemory

Integer

在持久化之前在内存中聚合的最大行数。该数值为聚合之后的行数,所以它不等于原始输入事件的行数,而是事件被聚合后的行数。 通常用来管理所需的 JVM 堆内存。 使用 maxRowsInMemory * (2 + maxPendingPersists) 来当做索引任务的最大堆内存。通常用户不需要设置这个值,但是也需要根据数据的特点来决定,如果行的字节数较短,用户可能不想在内存中存储一百万行,应该设置这个值。

N(默认=1000000)

maxBytesInMemory

Long

在持久化之前在内存中聚合的最大字节数。这是基于对内存使用量的粗略估计,而不是实际使用量。通常这是在内部计算的,用户不需要设置它。 索引任务的最大内存使用量是 maxRowsInMemory * (2 + maxPendingPersists)

N(默认=最大JVM内存的 1/6)

maxRowsPerSegment

Integer

聚合到一个段中的行数,该数值为聚合后的数值。 当 maxRowsPerSegment 或者 maxTotalRows 有一个值命中的时候,则触发 handoff(数据存盘后传到深度存储), 该动作也会按照每 intermediateHandoffPeriod 时间间隔发生一次。

N(默认=5000000)

maxTotalRows

Long

所有段的聚合后的行数,该值为聚合后的行数。当 maxRowsPerSegment 或者 maxTotalRows 有一个值命中的时候,则触发handoff(数据落盘后传到深度存储), 该动作也会按照每 intermediateHandoffPeriod 时间间隔发生一次。

N(默认=unlimited)

intermediatePersistPeriod

ISO8601 Period

确定触发持续化存储的周期

N(默认= PT10M)

maxPendingPersists

Integer

正在等待但启动的持久化过程的最大数量。 如果新的持久化任务超过了此限制,则在当前运行的持久化完成之前,摄取将被阻止。索引任务的最大内存使用量是 maxRowsInMemory * (2 + maxPendingPersists)

否(默认为0,意味着一个持久化可以与摄取同时运行,而没有一个可以进入队列)

indexSpec

Object

调整数据被如何索引。详情可以见 IndexSpec 页面中的内容

N

indexSpecForIntermediatePersists

定义要在索引时用于中间持久化临时段的段存储格式选项。这可用于禁用中间段上的维度/度量压缩,以减少最终合并所需的内存。但是,在中间段上禁用压缩可能会增加页缓存的使用,而在它们被合并到发布的最终段之前使用它们,有关可能的值。详情可以见 IndexSpec 页面中的内容。

N(默认= 与 indexSpec 相同)

reportParseExceptions

Boolean

已经丢弃(DEPRECATED)。如果为true,则在解析期间遇到的异常即停止摄取;如果为false,则将跳过不可解析的行和字段。将 reportParseExceptions 设置为 true 将覆盖maxParseExceptions 和 maxSavedParseExceptions 的现有配置,将maxParseExceptions 设置为 0 并将 maxSavedParseExceptions 限制为不超过1。

N(默认=false)

handoffConditionTimeout

Long

段切换(持久化)可以等待的毫秒数(超时时间)。 该值要被设置为大于0的数,设置为0意味着将会一直等待不超时。

N(默认=0)

resetOffsetAutomatically

Boolean

控制当Druid需要读取Kafka中不可用的消息时的行为,比如当发生了 OffsetOutOfRangeException 异常时。 如果为false,则异常将抛出,这将导致任务失败并停止接收。如果发生这种情况,则需要手动干预来纠正这种情况;可能使用 重置 Supervisor API 。此模式对于生产非常有用,因为它将使您意识到摄取的问题。如果为true,Druid将根据 useEarliestOffset 属性的值(true 为 earliest ,false 为 latest )自动重置为Kafka中可用的较早或最新偏移量。请注意,这可能导致数据在您不知情的情况下被丢弃 (如果useEarliestOffset 为 false )或 重复 (如果 useEarliestOffset 为 true )。消息将被记录下来,以标识已发生重置,但摄取将继续。这种模式对于非生产环境非常有用,因为它将使Druid尝试自动从问题中恢复,即使这些问题会导致数据被安静删除或重复。该特性与Kafka的 auto.offset.reset 消费者属性很相似

N(默认=false)

workerThreads

Integer

supervisor 用于为工作任务处理 请求/相应(requests/responses)异步操作的线程数。

N(默认=min(10, taskCount))

chatThreads

Integer

与索引任务的会话线程数。

N(默认=10, taskCount * replicas))

chatRetries

Integer

在任务没有响应之前,将重试对索引任务的HTTP请求的次数

N(默认=8)

httpTimeout

ISO8601 Period

索引任务的 HTTP 响应超时的时间。

N(默认=PT10S)

shutdownTimeout

ISO8601 Period

supervisor 尝试无故障的停掉一个任务的超时时间。

N(默认=PT80S)

offsetFetchPeriod

ISO8601 Period

supervisor 查询 Kafka 和索引任务以获取当前偏移和计算滞后的频率。

N(默认=PT30S,min == PT5S)

segmentWriteOutMediumFactory

Object

创建段时要使用的段写入介质。更多信息见下文。

N (默认不指定,使用来源于 druid.peon.defaultSegmentWriteOutMediumFactory.type 的值)

intermediateHandoffPeriod

ISO8601 Period

段发生切换的频率。当 maxRowsPerSegment 或者 maxTotalRows 有一个值命中的时候,则触发handoff(数据存盘后传到深度存储), 该动作也会按照每 intermediateHandoffPeriod 时间间隔发生一次。

N(默认=P2147483647D)

logParseExceptions

Boolean

如果为 true,则在发生解析异常时记录错误消息,其中包含有关发生错误的行的信息。

N(默认=false)

maxParseExceptions

Integer

任务停止接收之前可发生的最大分析异常数。如果设置了 reportParseExceptions ,则该值会被重写。

N(默认=unlimited)

maxSavedParseExceptions

Integer

当出现解析异常时,Druid可以跟踪最新的解析异常。"maxSavedParseExceptions"决定将保存多少个异常实例。这些保存的异常将在 任务完成报告 中的任务完成后可用。如果设置了reportParseExceptions ,则该值会被重写。

N(默认=0)

https://www.ossez.com/t/druid-kafka-tuningconfig/13672

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档