限制
以下限制适用于 Atlas Stream Processing:
所有流处理实例的
state.stateSize
总和不能超过同一 SPI 层中工作程序可用的 RAM 的 80%。例如,SP30
层(每个工作线程具有 8 GB RAM )流处理器的最大容量为 6.4 GB。如果您的任何流处理器的state.stateSize
接近同一 SPI 层中工作线程可用 RAM 的 80%,请向上升级到下一个 SPI 层。当超过 80 % RAM 阈值时,所有流处理器都会失败,并显示
stream processing instance out of memory
错误。您可以使用sp.processor.stats()
命令查看每个流处理器的state.stateSize
值。请参阅 查看流处理器的统计信息以了解更多信息。流处理实例只能使用同一项目中的集群作为源或汇。
Atlas Stream Processing 管道定义不能超过16 MB。
只有具有
Project Owner
或Atlas admin
角色的用户才能使用 Atlas Stream Processing。Atlas Stream Processing 目前仅支持以下连接类型:
连接类型使用Source 或 Sink
Atlas 数据库
Source 或 Sink
连接示例
仅源
对于使用Atlas Stream Processing 的ApacheKafka 作为ApacheKafka $source ,如果 充当正在运行的处理器的 $source 的主题添加一个分区,Atlas Stream Processing 会继续运行而不读取该分区。当您在故障后从检查点恢复处理器或在停止处理器后重新启动处理器后,如果处理器检测到新分区,则处理器会发生故障。 您必须重新创建从具有新添加分区的主题中读取数据的处理器。
Atlas Stream Processing 目前仅支持 JSON 格式的数据。 它目前不支持 Avro 或 协议 Buffers 等替代序列化。
对于 Apache Kafka 连接,Atlas Stream Processing 目前仅支持以下安全协议:
PLAINTEXT
SASL_PLAINTEXT
SASL_SSL
Atlas Stream Processing 目前不支持自定义 SSL 证书。
对于
SASL
,Atlas Stream Processing 支持以下机制:PLAIN
SCRAM-SHA-256
SCRAM-SHA-512
Atlas Stream Processing 不支持 $function JavaScript UDF。
Atlas Stream Processing 支持 Atlas 中可用的聚合管道阶段的子集,允许您对流媒体数据执行许多与静态数据相同的操作。有关支持的聚合管道阶段的完整列表,请参阅 Stream Aggregation 文档。