AntJob/AntJob.Data/Model.xml

248 lines
20 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="utf-8"?>
<EntityModel xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:schemaLocation="https://newlifex.com https://newlifex.com/Model202407.xsd" Document="https://newlifex.com/xcode/model" xmlns="https://newlifex.com/Model202407.xsd">
<Option>
<!--类名模板。其中{name}替换为Table.Name如{name}Model/I{name}Dto等-->
<ClassNameTemplate />
<!--显示名模板。其中{displayName}替换为Table.DisplayName-->
<DisplayNameTemplate />
<!--基类。可能包含基类和接口,其中{name}替换为Table.Name-->
<BaseClass>Entity</BaseClass>
<!--命名空间-->
<Namespace>AntJob.Data.Entity</Namespace>
<!--输出目录-->
<Output>Entity</Output>
<!--是否使用中文文件名。默认false-->
<ChineseFileName>False</ChineseFileName>
<!--用于生成Copy函数的参数类型。例如{name}或I{name}-->
<ModelNameForCopy />
<!--带有索引器。实现IModel接口-->
<HasIModel>False</HasIModel>
<!--可为null上下文。生成String?等-->
<Nullable>False</Nullable>
<!--数据库连接名-->
<ConnName>Ant</ConnName>
<!--模型类模版。设置后生成模型类,用于接口数据传输,例如{name}Model-->
<ModelClass />
<!--模型类输出目录。默认当前目录的Models子目录-->
<ModelsOutput>.\Models\</ModelsOutput>
<!--模型接口模版。设置后生成模型接口用于约束模型类和实体类例如I{name}-->
<ModelInterface />
<!--模型接口输出目录。默认当前目录的Interfaces子目录-->
<InterfacesOutput>.\Interfaces\</InterfacesOutput>
<!--用户实体转为模型类的模型类。例如{name}或{name}DTO-->
<ModelNameForToModel />
<!--命名格式。Default/Upper/Lower/Underline-->
<NameFormat>Default</NameFormat>
<!--魔方区域显示名-->
<DisplayName />
<!--魔方控制器输出目录-->
<CubeOutput />
</Option>
<Tables>
<Table Name="App" Description="应用系统。管理数据计算作业的应用模块,计算作业隶属于某个应用">
<Columns>
<Column Name="ID" DataType="Int32" Identity="True" PrimaryKey="True" Description="编号" />
<Column Name="Name" DataType="String" Master="True" Nullable="False" Description="名称。应用英文名" />
<Column Name="DisplayName" DataType="String" Description="显示名。应用中文名" />
<Column Name="Secret" DataType="String" Description="密钥。一般不设置,应用默认接入" />
<Column Name="Category" DataType="String" Description="类别" />
<Column Name="Version" DataType="String" Description="版本" />
<Column Name="CompileTime" DataType="DateTime" Description="编译时间" />
<Column Name="Enable" DataType="Boolean" Description="启用" />
<Column Name="JobCount" DataType="Int32" Description="作业数。该应用下作业个数" />
<Column Name="MessageCount" DataType="Int32" Description="消息数。该应用下消息条数" />
<Column Name="ManagerId" DataType="Int32" Map="XCode.Membership.User@ID@Name" Description="管理人。负责该应用的管理员" />
<Column Name="Manager" DataType="String" Description="管理者" />
<Column Name="CreateUserID" DataType="Int32" Description="创建人" Category="扩展" />
<Column Name="CreateUser" DataType="String" Description="创建者" Category="扩展" />
<Column Name="CreateTime" DataType="DateTime" Description="创建时间" Category="扩展" />
<Column Name="CreateIP" DataType="String" Description="创建地址" Category="扩展" />
<Column Name="UpdateUserID" DataType="Int32" Description="更新人" Category="扩展" />
<Column Name="UpdateUser" DataType="String" Description="更新者" Category="扩展" />
<Column Name="UpdateTime" DataType="DateTime" Description="更新时间" Category="扩展" />
<Column Name="UpdateIP" DataType="String" Description="更新地址" Category="扩展" />
<Column Name="Remark" DataType="String" Length="500" Description="备注" Category="扩展" />
</Columns>
<Indexes>
<Index Columns="Name" Unique="True" />
</Indexes>
</Table>
<Table Name="AppOnline" Description="应用在线。各个数据计算应用多实例在线">
<Columns>
<Column Name="ID" DataType="Int32" Identity="True" PrimaryKey="True" Description="编号" />
<Column Name="AppID" DataType="Int32" Map="App@Id@$" Description="应用" />
<Column Name="Instance" DataType="String" Description="实例。IP加端口" />
<Column Name="Client" DataType="String" Description="客户端。IP加进程" />
<Column Name="Name" DataType="String" Master="True" Description="名称。机器名称" />
<Column Name="ProcessId" DataType="Int32" Description="进程。进程Id" />
<Column Name="Version" DataType="String" Description="版本。客户端" />
<Column Name="CompileTime" DataType="DateTime" Description="编译时间" />
<Column Name="Server" DataType="String" Description="服务端。客户端登录到哪个服务端IP加端口" />
<Column Name="Enable" DataType="Boolean" Description="启用。是否允许申请任务" />
<Column Name="Tasks" DataType="Int32" Description="任务数" />
<Column Name="Total" DataType="Int64" Description="总数" />
<Column Name="Success" DataType="Int64" Description="成功" />
<Column Name="Error" DataType="Int64" Description="错误" />
<Column Name="Cost" DataType="Int64" ItemType="TimeSpan" Description="耗时。执行任务总耗时,秒" />
<Column Name="Speed" DataType="Int64" Description="速度。每秒处理数" />
<Column Name="LastKey" DataType="String" Description="最后键" />
<Column Name="TraceId" DataType="String" Length="200" Description="追踪。链路追踪用于APM性能追踪定位还原该事件的调用链" Category="扩展" />
<Column Name="CreateTime" DataType="DateTime" Description="创建时间" Category="扩展" />
<Column Name="CreateIP" DataType="String" Description="创建地址" Category="扩展" />
<Column Name="UpdateTime" DataType="DateTime" Description="更新时间" Category="扩展" />
<Column Name="UpdateIP" DataType="String" Description="更新地址" Category="扩展" />
</Columns>
<Indexes>
<Index Columns="Instance" Unique="True" />
<Index Columns="Client" />
<Index Columns="AppID" />
</Indexes>
</Table>
<Table Name="AppHistory" Description="应用历史。数据计算应用的操作历史">
<Columns>
<Column Name="Id" DataType="Int64" PrimaryKey="True" DataScale="time" Description="编号" />
<Column Name="AppID" DataType="Int32" Map="App@ID@$" Description="应用" />
<Column Name="Name" DataType="String" Master="True" Description="名称" />
<Column Name="Action" DataType="String" Description="操作" />
<Column Name="Success" DataType="Boolean" Description="成功" />
<Column Name="Version" DataType="String" Description="版本" />
<Column Name="CompileTime" DataType="DateTime" Description="编译时间" />
<Column Name="Server" DataType="String" Description="服务端。客户端登录到哪个服务端IP加端口" />
<Column Name="TraceId" DataType="String" Length="200" Description="追踪。链路追踪用于APM性能追踪定位还原该事件的调用链" Category="扩展" />
<Column Name="CreateTime" DataType="DateTime" Description="创建时间" Category="扩展" />
<Column Name="CreateIP" DataType="String" Description="创建地址" Category="扩展" />
<Column Name="Remark" DataType="String" Length="2000" Description="内容" Category="扩展" />
</Columns>
<Indexes>
<Index Columns="AppID,Action" />
</Indexes>
</Table>
<Table Name="Job" Description="作业。数据计算逻辑的主要单元,每个作业即是一个业务逻辑">
<Columns>
<Column Name="ID" DataType="Int32" Identity="True" PrimaryKey="True" Description="编号" />
<Column Name="AppID" DataType="Int32" Map="App@ID@$" Description="应用" />
<Column Name="Name" DataType="String" Master="True" Length="100" Description="名称" />
<Column Name="ClassName" DataType="String" Length="100" Description="类名。支持该作业的处理器实现" />
<Column Name="DisplayName" DataType="String" Description="显示名" />
<Column Name="Enable" DataType="Boolean" Description="启用" />
<Column Name="Mode" DataType="Int32" Description="调度模式。定时调度只要达到时间片开头就可以跑,数据调度要求达到时间片末尾才可以跑" Type="JobModes" />
<Column Name="Cron" DataType="String" Description="执行频次。定时调度的Cron表达式" />
<Column Name="HistoryCron" DataType="String" Description="回刷数据。定时调度回刷数据时使用的Cron表达式一般分钟或小时级作业回刷历史数据时可能每天只需要跑一次" />
<Column Name="Topic" DataType="String" Description="主题。消息调度时消费的主题" />
<Column Name="MessageCount" DataType="Int32" Description="消息数" />
<Column Name="DataTime" DataType="DateTime" Description="数据时间。下一次处理数据的时间,默认从当前时间开始" />
<Column Name="End" DataType="DateTime" Description="结束。到该时间停止调度作业,默认不设置时永不停止" />
<Column Name="Step" DataType="Int32" ItemType="TimeSpan" Description="步进。切分任务的时间区间,秒" />
<Column Name="BatchSize" DataType="Int32" Description="批大小。数据调度每次抽取数据的分页大小,或消息调度每次处理的消息数,定时调度不适用" />
<Column Name="Offset" DataType="Int32" ItemType="TimeSpan" Description="偏移。距离AntServer当前时间的秒数避免因服务器之间的时间误差而错过部分数据秒" />
<Column Name="MaxTask" DataType="Int32" Description="并行度。一共允许多少个任务并行处理,多执行端时平均分配,确保该作业整体并行度" Category="控制参数" />
<Column Name="MaxError" DataType="Int32" Description="最大错误。连续错误达到最大错误数时停止" Category="控制参数" />
<Column Name="MaxRetry" DataType="Int32" Description="最大重试。默认10次超过该次数后将不再重试" Category="控制参数" />
<Column Name="MaxTime" DataType="Int32" ItemType="TimeSpan" Description="最大执行时间。默认600秒超过该时间则认为执行器故障将会把该任务分配给其它执行器" Category="控制参数" />
<Column Name="MaxRetain" DataType="Int32" Description="保留。任务项保留天数超过天数的任务项将被删除默认30天" Category="控制参数" />
<Column Name="MaxIdle" DataType="Int32" ItemType="TimeSpan" Description="最大空闲时间。默认3600秒超过该时间不更新则认为应用程序故障系统触发告警" Category="控制参数" />
<Column Name="ErrorDelay" DataType="Int32" ItemType="TimeSpan" Description="错误延迟。默认60秒出错延迟后重新发放" Category="控制参数" />
<Column Name="Deadline" DataType="DateTime" Description="最后期限。超过该时间后,任务将不再执行" Category="控制参数" />
<Column Name="Total" DataType="Int64" Description="总数。任务处理的总数据例如数据调度抽取得到的总行数定时调度默认1" Category="统计" />
<Column Name="Success" DataType="Int64" Description="成功。成功处理的数据取自于Handler.Execute返回值或者ProcessItem返回true的个数" Category="统计" />
<Column Name="Error" DataType="Int32" Description="错误" Category="统计" />
<Column Name="Times" DataType="Int32" Description="次数" Category="统计" />
<Column Name="Speed" DataType="Int32" Description="速度" Category="统计" />
<Column Name="LastStatus" DataType="Int32" Description="最后状态。最后一次状态" Category="统计" Type="JobStatus" />
<Column Name="LastTime" DataType="DateTime" Description="最后时间。最后一次时间" Category="统计" />
<Column Name="Data" DataType="String" Length="-1" Description="附加数据。执行作业任务时附带的数据可以是Json配置也可以是Sql模板或C#模板" />
<Column Name="CreateUserID" DataType="Int32" Description="创建人" Category="扩展" />
<Column Name="CreateUser" DataType="String" Description="创建者" Category="扩展" />
<Column Name="CreateTime" DataType="DateTime" Description="创建时间" Category="扩展" />
<Column Name="CreateIP" DataType="String" Description="创建地址" Category="扩展" />
<Column Name="UpdateUserID" DataType="Int32" Description="更新人" Category="扩展" />
<Column Name="UpdateUser" DataType="String" Description="更新者" Category="扩展" />
<Column Name="UpdateTime" DataType="DateTime" Description="更新时间" Category="扩展" />
<Column Name="UpdateIP" DataType="String" Description="更新地址" Category="扩展" />
<Column Name="Remark" DataType="String" Length="2000" Description="备注" Category="扩展" />
</Columns>
<Indexes>
<Index Columns="AppID,Name" Unique="True" />
</Indexes>
</Table>
<Table Name="JobTask" Description="作业任务。计算作业在执行过程中生成的任务实例,具有该次执行所需参数">
<Columns>
<Column Name="ID" DataType="Int32" Identity="True" PrimaryKey="True" Description="编号" />
<Column Name="AppID" DataType="Int32" Map="App@ID@$" Description="应用" />
<Column Name="JobID" DataType="Int32" Map="Job@ID@$" Description="作业" />
<Column Name="Client" DataType="String" Description="客户端。IP加进程" />
<Column Name="DataTime" DataType="DateTime" Master="True" DataScale="time" Description="数据时间。大于等于,定时调度到达该时间点后触发(可能有偏移量),消息调度不适用" />
<Column Name="End" DataType="DateTime" Description="结束。小于不等于,数据调度到达该时间点后触发(可能有偏移量),消息调度不适用" />
<Column Name="BatchSize" DataType="Int32" Description="批大小。数据调度每次抽取数据的分页大小,或消息调度每次处理的消息数,定时调度不适用" />
<Column Name="Total" DataType="Int32" Description="总数。任务处理的总数据例如数据调度抽取得到的总行数定时调度默认1" />
<Column Name="Success" DataType="Int32" Description="成功。成功处理的数据取自于Handler.Execute返回值或者ProcessItem返回true的个数" />
<Column Name="Error" DataType="Int32" Description="错误" />
<Column Name="Times" DataType="Int32" Description="次数" />
<Column Name="Speed" DataType="Int32" Description="速度。每秒处理数,执行端计算" />
<Column Name="Cost" DataType="Int32" ItemType="TimeSpan" Description="耗时。秒,执行端计算的执行时间" />
<Column Name="FullCost" DataType="Int32" ItemType="TimeSpan" Description="全部耗时。秒,从任务发放到执行完成的时间" />
<Column Name="Status" DataType="Int32" Description="状态" Type="JobStatus" />
<Column Name="MsgCount" DataType="Int32" Description="消息。消费消息数" />
<Column Name="Server" DataType="String" Description="服务器" />
<Column Name="ProcessID" DataType="Int32" Description="进程" />
<Column Name="Key" DataType="String" Description="最后键。Handler内记录作为样本的数据" />
<Column Name="Data" DataType="String" Length="-1" Description="数据。可以是Json数据比如StatID" />
<Column Name="TraceId" DataType="String" Length="200" Description="追踪。链路追踪用于APM性能追踪定位还原该事件的调用链" Category="扩展" />
<Column Name="CreateIP" DataType="String" Description="创建地址" Category="扩展" />
<Column Name="CreateTime" DataType="DateTime" Description="创建时间" Category="扩展" />
<Column Name="UpdateIP" DataType="String" Description="更新地址" Category="扩展" />
<Column Name="UpdateTime" DataType="DateTime" Description="更新时间" Category="扩展" />
<Column Name="Remark" DataType="String" Length="-1" Description="备注" Category="扩展" />
</Columns>
<Indexes>
<Index Columns="JobID,DataTime" />
<Index Columns="JobID,CreateTime" />
<Index Columns="JobID,UpdateTime" />
<Index Columns="AppID,Client,Status" />
</Indexes>
</Table>
<Table Name="JobError" Description="作业错误。计算作业在执行过程中所发生的错误">
<Columns>
<Column Name="ID" DataType="Int32" Identity="True" PrimaryKey="True" Description="编号" />
<Column Name="AppID" DataType="Int32" Map="App@ID@$" Description="应用" />
<Column Name="JobID" DataType="Int32" Map="Job@ID@$" Description="作业" />
<Column Name="TaskID" DataType="Int32" Map="JobTask@ID@$" Description="作业项" />
<Column Name="Client" DataType="String" Description="客户端。IP加进程" />
<Column Name="DataTime" DataType="DateTime" Description="数据时间。大于等于" />
<Column Name="End" DataType="DateTime" Description="结束。小于,不等于" />
<Column Name="Data" DataType="String" Length="2000" Description="数据" />
<Column Name="Server" DataType="String" Description="服务器" />
<Column Name="ProcessID" DataType="Int32" Description="进程" />
<Column Name="TraceId" DataType="String" Length="200" Description="追踪。链路追踪用于APM性能追踪定位还原该事件的调用链" Category="扩展" />
<Column Name="CreateIP" DataType="String" Description="创建地址" Category="扩展" />
<Column Name="CreateTime" DataType="DateTime" Description="创建时间" Category="扩展" />
<Column Name="UpdateIP" DataType="String" Description="更新地址" Category="扩展" />
<Column Name="UpdateTime" DataType="DateTime" Description="更新时间" Category="扩展" />
<Column Name="Remark" DataType="String" Length="-1" Description="备注" Category="扩展" />
</Columns>
<Indexes>
<Index Columns="AppID,ID" />
<Index Columns="JobID,ID" />
</Indexes>
</Table>
<Table Name="AppMessage" Description="应用消息。消息调度,某些作业负责生产消息,供其它作业进行消费处理">
<Columns>
<Column Name="Id" DataType="Int64" PrimaryKey="True" DataScale="time" Description="编号" />
<Column Name="AppID" DataType="Int32" Map="App@ID@$" Description="应用" />
<Column Name="JobID" DataType="Int32" Map="Job@ID@$" Description="作业。生产消息的作业" />
<Column Name="Topic" DataType="String" Description="主题。区分作业下多种消息" />
<Column Name="Data" DataType="String" Length="2000" Description="数据。可以是Json数据比如StatID" />
<Column Name="DelayTime" DataType="DateTime" Description="延迟时间。延迟到该时间执行" />
<Column Name="TraceId" DataType="String" Length="200" Description="追踪。链路追踪用于APM性能追踪定位还原该事件的调用链" Category="扩展" />
<Column Name="CreateIP" DataType="String" Description="创建地址" Category="扩展" />
<Column Name="CreateTime" DataType="DateTime" Description="创建时间" Category="扩展" />
<Column Name="UpdateIP" DataType="String" Description="更新地址" Category="扩展" />
<Column Name="UpdateTime" DataType="DateTime" Description="更新时间" Category="扩展" />
</Columns>
<Indexes>
<Index Columns="AppID,Topic,UpdateTime" />
<Index Columns="AppID,Topic,DelayTime" />
</Indexes>
</Table>
</Tables>
</EntityModel>