主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

streamingDataCompiler

R2025b

将流处理函数打包成可部署的存档

自 R2022b 起

    此函数需要 Streaming Data Framework for MATLAB® Production Server™ 和 MATLAB Compiler SDK™。

    描述

    filePath = streamingDataCompiler(streamFcn,inStream,outStream) 创建一个 MATLAB Compiler SDK 工程文件,并打开 Production Server 存档编译器 (MATLAB Compiler SDK)。使用此 App 将流处理函数打包到 MATLAB Production Server 的可部署存档中。

    streamingDataCompiler 返回工程文件的完整路径。

    filePath = streamingDataCompiler(streamFcn,inStream,outStream,Name=Value) 设置用于打包函数的附加选项。

    例如,如果您指定 OutputType="Archive",则 streamingDataCompiler 函数将返回可部署的存档(CTF 文件)而不是工程文件。

    示例

    示例

    全部折叠

    假设您有一个在网络地址 kafka.host.com:9092 上运行的 Kafka® 服务器,该服务器有一个主题 RecamanSequence。

    还假设您有一个流处理分析函数 recamanSum 和一个函数 initRecamanSum 来初始化持久状态。

    创建一个连接到 KafkaStream 主题的 RecamanSequence 对象。

    ks = kafkaStream("kafka.host.com",9092,"RecamanSequence");

    创建另一个 KafkaStream 对象,将流处理分析函数的结果写入名为 RecamanSequenceResults 的不同主题。

    outks = kafkaStream("kafka.host.com",9092,"RecamanSequenceResults");

    将流处理分析函数 recamanSum 打包成可部署的存档。由于解析函数使用状态初始化函数 initRecamanSum,因此还指定 StateStore 属性作为输入参量。

    file = streamingDataCompiler(@recamanSum,ks,outKS, ...
        StateStore="KVStore",InitialState=@initRecamanSum)
    file = 
    
        "J:\recamanSum.prj"

    package 函数根据 eventStreamProcessor 对象生成 MATLAB 工程文件,返回该文件的路径,并使用 Production Server 存档编译器 (MATLAB Compiler SDK)打开该工程文件。Production Server 存档编译器任务包含以下值:

    • 流处理分析函数 recamanSum.m

    • 入口点函数,streamfcn.m

    • 可部署存档,RecamanSum.ctf

    有关使用 Production Server 存档编译器的更多信息,例如修改已部署函数列表或生成存档的名称,请参阅使用生产服务器存档编译器创建 MATLAB Production Server 存档 (MATLAB Compiler SDK) 。

    在 Production Server Compiler 中,点击 Package 生成可部署的存档。您可以将生成的存档部署到 MATLAB Production Server。有关部署到 MATLAB Production Server 的更多信息,请参阅将存档部署至 MATLAB Production Server。

    输入参数

    全部折叠

    流分析函数,指定为函数句柄、字符串或字符向量。

    数据类型: function_handle | string | char

    流处理分析函数从中读取事件的事件流,指定为流连接器对象,例如 KafkaStream 或 TestStream。

    流处理分析函数从中读取事件的事件流,指定为流连接器对象,例如 KafkaStream 或 TestStream。不支持 InMemoryStream 对象。

    名称-值参数

    全部展开

    将可选参量对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但对各个参量对组的顺序没有要求。

    示例: streamingDataCompiler(streamFcn,inStream,outStream,OutputFolder='J:\')

    编译配置选项

    全部展开

    生成的可部署存档的名称,指定为字符串或字符向量。

    数据类型: char | string

    由 streamingDataCompiler 函数创建的文件类型,指定为以下值之一。

    • Project - 创建 productionServerCompiler 工程文件并启动 Production Server 存档编译器。您可以使用 Production Server 存档编译器创建 CTF 文件。

    • Archive - 创建一个 CTF 文件。

    数据类型: char | string

    要包含在生成的存档中的附加文件,对于单个文件指定为字符向量或字符串标量,对于多个文件指定为字符串数组。

    示例: ExtraFiles=["data.mat","/schema/registry/schema.json"] 在生成的可部署存档中包含文件 data.mat 和 schema.json。

    数据类型: char | string

    生成文件的位置,指定为字符串或字符向量。

    示例: OutputFolder='J:\' 将生成的文件保存在 J:\ 中。

    数据类型: string | char

    标志自动在 MATLAB 中打开工程,指定为逻辑 true 或 false。此属性与 OutputType="Archive" 不兼容。

    数据类型: logical

    执行配置选项

    全部展开

    为流处理分析函数创建初始状态的函数,指定为函数句柄、字符串或字符向量。

    数据类型: function_handle | char | string

    持久存储连接名称,指定为字符串或字符向量。当使用 StateStore 或使用有状态流函数时,必须指定 InitialState。将部署存档的 MATLAB Production Server 实例必须知道该连接名称。有关使用数据缓存进行持久存储的更多信息,请参阅 数据缓存基础知识。

    数据类型: char | string

    标志用于使用具有相同键的事件来调用流处理函数,指定为逻辑 true 或 false。将此标志设置为 true 会将事件窗口拆分为具有同类键的子窗口,并每个子窗口调用一次流处理函数。

    数据类型: logical

    版本历史记录

    在 R2022b 中推出