Documentation
¶
Index ¶
- Constants
- Variables
- func RegisterOrcaCoreServer(s grpc.ServiceRegistrar, srv OrcaCoreServer)
- func RegisterOrcaProcessorServer(s grpc.ServiceRegistrar, srv OrcaProcessorServer)
- type Algorithm
- func (*Algorithm) Descriptor() ([]byte, []int)deprecated
- func (x *Algorithm) GetDependencies() []*AlgorithmDependency
- func (x *Algorithm) GetDescription() string
- func (x *Algorithm) GetName() string
- func (x *Algorithm) GetResultType() ResultType
- func (x *Algorithm) GetVersion() string
- func (x *Algorithm) GetWindowType() *WindowType
- func (*Algorithm) ProtoMessage()
- func (x *Algorithm) ProtoReflect() protoreflect.Message
- func (x *Algorithm) Reset()
- func (x *Algorithm) String() string
- type AlgorithmDependency
- func (*AlgorithmDependency) Descriptor() ([]byte, []int)deprecated
- func (m *AlgorithmDependency) GetLookback() isAlgorithmDependency_Lookback
- func (x *AlgorithmDependency) GetLookbackNum() uint32
- func (x *AlgorithmDependency) GetLookbackTimeDelta() uint64
- func (x *AlgorithmDependency) GetName() string
- func (x *AlgorithmDependency) GetProcessorName() string
- func (x *AlgorithmDependency) GetProcessorRuntime() string
- func (x *AlgorithmDependency) GetVersion() string
- func (*AlgorithmDependency) ProtoMessage()
- func (x *AlgorithmDependency) ProtoReflect() protoreflect.Message
- func (x *AlgorithmDependency) Reset()
- func (x *AlgorithmDependency) String() string
- type AlgorithmDependencyResult
- func (*AlgorithmDependencyResult) Descriptor() ([]byte, []int)deprecated
- func (x *AlgorithmDependencyResult) GetAlgorithm() *Algorithm
- func (x *AlgorithmDependencyResult) GetResult() []*AlgorithmDependencyResultRow
- func (*AlgorithmDependencyResult) ProtoMessage()
- func (x *AlgorithmDependencyResult) ProtoReflect() protoreflect.Message
- func (x *AlgorithmDependencyResult) Reset()
- func (x *AlgorithmDependencyResult) String() string
- type AlgorithmDependencyResultRow
- func (*AlgorithmDependencyResultRow) Descriptor() ([]byte, []int)deprecated
- func (x *AlgorithmDependencyResultRow) GetResult() *Result
- func (x *AlgorithmDependencyResultRow) GetWindow() *Window
- func (*AlgorithmDependencyResultRow) ProtoMessage()
- func (x *AlgorithmDependencyResultRow) ProtoReflect() protoreflect.Message
- func (x *AlgorithmDependencyResultRow) Reset()
- func (x *AlgorithmDependencyResultRow) String() string
- type AlgorithmDependency_LookbackNum
- type AlgorithmDependency_LookbackTimeDelta
- type AlgorithmResult
- func (*AlgorithmResult) Descriptor() ([]byte, []int)deprecated
- func (x *AlgorithmResult) GetAlgorithm() *Algorithm
- func (x *AlgorithmResult) GetResult() *Result
- func (x *AlgorithmResult) GetWindow() *Window
- func (*AlgorithmResult) ProtoMessage()
- func (x *AlgorithmResult) ProtoReflect() protoreflect.Message
- func (x *AlgorithmResult) Reset()
- func (x *AlgorithmResult) String() string
- type ExecuteAlgorithm
- func (*ExecuteAlgorithm) Descriptor() ([]byte, []int)deprecated
- func (x *ExecuteAlgorithm) GetAlgorithm() *Algorithm
- func (x *ExecuteAlgorithm) GetDependencies() []*AlgorithmDependencyResult
- func (*ExecuteAlgorithm) ProtoMessage()
- func (x *ExecuteAlgorithm) ProtoReflect() protoreflect.Message
- func (x *ExecuteAlgorithm) Reset()
- func (x *ExecuteAlgorithm) String() string
- type ExecutionRequest
- func (*ExecutionRequest) Descriptor() ([]byte, []int)deprecated
- func (x *ExecutionRequest) GetAlgorithmExecutions() []*ExecuteAlgorithm
- func (x *ExecutionRequest) GetAlgorithmResults() []*AlgorithmResultdeprecated
- func (x *ExecutionRequest) GetAlgorithms() []*Algorithmdeprecated
- func (x *ExecutionRequest) GetExecId() string
- func (x *ExecutionRequest) GetWindow() *Window
- func (*ExecutionRequest) ProtoMessage()
- func (x *ExecutionRequest) ProtoReflect() protoreflect.Message
- func (x *ExecutionRequest) Reset()
- func (x *ExecutionRequest) String() string
- type ExecutionResult
- func (*ExecutionResult) Descriptor() ([]byte, []int)deprecated
- func (x *ExecutionResult) GetAlgorithmResult() *AlgorithmResult
- func (x *ExecutionResult) GetExecId() string
- func (*ExecutionResult) ProtoMessage()
- func (x *ExecutionResult) ProtoReflect() protoreflect.Message
- func (x *ExecutionResult) Reset()
- func (x *ExecutionResult) String() string
- type ExposeSettings
- type FloatArray
- type HealthCheckRequest
- func (*HealthCheckRequest) Descriptor() ([]byte, []int)deprecated
- func (x *HealthCheckRequest) GetTimestamp() int64
- func (*HealthCheckRequest) ProtoMessage()
- func (x *HealthCheckRequest) ProtoReflect() protoreflect.Message
- func (x *HealthCheckRequest) Reset()
- func (x *HealthCheckRequest) String() string
- type HealthCheckResponse
- func (*HealthCheckResponse) Descriptor() ([]byte, []int)deprecated
- func (x *HealthCheckResponse) GetMessage() string
- func (x *HealthCheckResponse) GetMetrics() *ProcessorMetrics
- func (x *HealthCheckResponse) GetStatus() HealthCheckResponse_Status
- func (*HealthCheckResponse) ProtoMessage()
- func (x *HealthCheckResponse) ProtoReflect() protoreflect.Message
- func (x *HealthCheckResponse) Reset()
- func (x *HealthCheckResponse) String() string
- type HealthCheckResponse_Status
- func (HealthCheckResponse_Status) Descriptor() protoreflect.EnumDescriptor
- func (x HealthCheckResponse_Status) Enum() *HealthCheckResponse_Status
- func (HealthCheckResponse_Status) EnumDescriptor() ([]byte, []int)deprecated
- func (x HealthCheckResponse_Status) Number() protoreflect.EnumNumber
- func (x HealthCheckResponse_Status) String() string
- func (HealthCheckResponse_Status) Type() protoreflect.EnumType
- type InternalState
- type MetadataField
- func (*MetadataField) Descriptor() ([]byte, []int)deprecated
- func (x *MetadataField) GetDescription() string
- func (x *MetadataField) GetName() string
- func (*MetadataField) ProtoMessage()
- func (x *MetadataField) ProtoReflect() protoreflect.Message
- func (x *MetadataField) Reset()
- func (x *MetadataField) String() string
- type OrcaCoreClient
- type OrcaCoreServer
- type OrcaProcessorClient
- type OrcaProcessorServer
- type OrcaProcessor_ExecuteDagPartClient
- type OrcaProcessor_ExecuteDagPartServer
- type ProcessorMetrics
- func (*ProcessorMetrics) Descriptor() ([]byte, []int)deprecated
- func (x *ProcessorMetrics) GetActiveTasks() int32
- func (x *ProcessorMetrics) GetCpuPercent() float32
- func (x *ProcessorMetrics) GetMemoryBytes() int64
- func (x *ProcessorMetrics) GetUptimeSeconds() int64
- func (*ProcessorMetrics) ProtoMessage()
- func (x *ProcessorMetrics) ProtoReflect() protoreflect.Message
- func (x *ProcessorMetrics) Reset()
- func (x *ProcessorMetrics) String() string
- type ProcessorRegistration
- func (*ProcessorRegistration) Descriptor() ([]byte, []int)deprecated
- func (x *ProcessorRegistration) GetConnectionStr() string
- func (x *ProcessorRegistration) GetName() string
- func (x *ProcessorRegistration) GetProjectName() string
- func (x *ProcessorRegistration) GetRuntime() string
- func (x *ProcessorRegistration) GetSupportedAlgorithms() []*Algorithm
- func (*ProcessorRegistration) ProtoMessage()
- func (x *ProcessorRegistration) ProtoReflect() protoreflect.Message
- func (x *ProcessorRegistration) Reset()
- func (x *ProcessorRegistration) String() string
- type Result
- func (*Result) Descriptor() ([]byte, []int)deprecated
- func (x *Result) GetFloatValues() *FloatArray
- func (m *Result) GetResultData() isResult_ResultData
- func (x *Result) GetSingleValue() float32
- func (x *Result) GetStatus() ResultStatus
- func (x *Result) GetStructValue() *structpb.Struct
- func (x *Result) GetTimestamp() int64
- func (*Result) ProtoMessage()
- func (x *Result) ProtoReflect() protoreflect.Message
- func (x *Result) Reset()
- func (x *Result) String() string
- type ResultStatus
- func (ResultStatus) Descriptor() protoreflect.EnumDescriptor
- func (x ResultStatus) Enum() *ResultStatus
- func (ResultStatus) EnumDescriptor() ([]byte, []int)deprecated
- func (x ResultStatus) Number() protoreflect.EnumNumber
- func (x ResultStatus) String() string
- func (ResultStatus) Type() protoreflect.EnumType
- type ResultType
- type Result_FloatValues
- type Result_SingleValue
- type Result_StructValue
- type Status
- type UnimplementedOrcaCoreServer
- func (UnimplementedOrcaCoreServer) EmitWindow(context.Context, *Window) (*WindowEmitStatus, error)
- func (UnimplementedOrcaCoreServer) Expose(context.Context, *ExposeSettings) (*InternalState, error)
- func (UnimplementedOrcaCoreServer) RegisterProcessor(context.Context, *ProcessorRegistration) (*Status, error)
- type UnimplementedOrcaProcessorServer
- type UnsafeOrcaCoreServer
- type UnsafeOrcaProcessorServer
- type Window
- func (*Window) Descriptor() ([]byte, []int)deprecated
- func (x *Window) GetMetadata() *structpb.Struct
- func (x *Window) GetOrigin() string
- func (x *Window) GetTimeFrom() *timestamppb.Timestamp
- func (x *Window) GetTimeTo() *timestamppb.Timestamp
- func (x *Window) GetWindowTypeName() string
- func (x *Window) GetWindowTypeVersion() string
- func (*Window) ProtoMessage()
- func (x *Window) ProtoReflect() protoreflect.Message
- func (x *Window) Reset()
- func (x *Window) String() string
- type WindowEmitStatus
- func (*WindowEmitStatus) Descriptor() ([]byte, []int)deprecated
- func (x *WindowEmitStatus) GetStatus() WindowEmitStatus_StatusEnum
- func (*WindowEmitStatus) ProtoMessage()
- func (x *WindowEmitStatus) ProtoReflect() protoreflect.Message
- func (x *WindowEmitStatus) Reset()
- func (x *WindowEmitStatus) String() string
- type WindowEmitStatus_StatusEnum
- func (WindowEmitStatus_StatusEnum) Descriptor() protoreflect.EnumDescriptor
- func (x WindowEmitStatus_StatusEnum) Enum() *WindowEmitStatus_StatusEnum
- func (WindowEmitStatus_StatusEnum) EnumDescriptor() ([]byte, []int)deprecated
- func (x WindowEmitStatus_StatusEnum) Number() protoreflect.EnumNumber
- func (x WindowEmitStatus_StatusEnum) String() string
- func (WindowEmitStatus_StatusEnum) Type() protoreflect.EnumType
- type WindowType
- func (*WindowType) Descriptor() ([]byte, []int)deprecated
- func (x *WindowType) GetDescription() string
- func (x *WindowType) GetMetadataFields() []*MetadataField
- func (x *WindowType) GetName() string
- func (x *WindowType) GetVersion() string
- func (*WindowType) ProtoMessage()
- func (x *WindowType) ProtoReflect() protoreflect.Message
- func (x *WindowType) Reset()
- func (x *WindowType) String() string
Constants ¶
const ( OrcaCore_RegisterProcessor_FullMethodName = "/OrcaCore/RegisterProcessor" OrcaCore_EmitWindow_FullMethodName = "/OrcaCore/EmitWindow" OrcaCore_Expose_FullMethodName = "/OrcaCore/Expose" )
const ( OrcaProcessor_ExecuteDagPart_FullMethodName = "/OrcaProcessor/ExecuteDagPart" OrcaProcessor_HealthCheck_FullMethodName = "/OrcaProcessor/HealthCheck" )
Variables ¶
var ( ResultType_name = map[int32]string{ 0: "NOT_SPECIFIED", 1: "STRUCT", 2: "VALUE", 3: "ARRAY", 4: "NONE", } ResultType_value = map[string]int32{ "NOT_SPECIFIED": 0, "STRUCT": 1, "VALUE": 2, "ARRAY": 3, "NONE": 4, } )
Enum value maps for ResultType.
var ( ResultStatus_name = map[int32]string{ 0: "RESULT_STATUS_HANDLED_FAILED", 1: "RESULT_STATUS_UNHANDLED_FAILED", 2: "RESULT_STATUS_SUCEEDED", } ResultStatus_value = map[string]int32{ "RESULT_STATUS_HANDLED_FAILED": 0, "RESULT_STATUS_UNHANDLED_FAILED": 1, "RESULT_STATUS_SUCEEDED": 2, } )
Enum value maps for ResultStatus.
var ( WindowEmitStatus_StatusEnum_name = map[int32]string{ 0: "TRIGGERING_FAILED", 1: "NO_TRIGGERED_ALGORITHMS", 2: "PROCESSING_TRIGGERED", } WindowEmitStatus_StatusEnum_value = map[string]int32{ "TRIGGERING_FAILED": 0, "NO_TRIGGERED_ALGORITHMS": 1, "PROCESSING_TRIGGERED": 2, } )
Enum value maps for WindowEmitStatus_StatusEnum.
var ( HealthCheckResponse_Status_name = map[int32]string{ 0: "STATUS_UNKNOWN", 1: "STATUS_SERVING", 2: "STATUS_TRANSITIONING", 3: "STATUS_NOT_SERVING", } HealthCheckResponse_Status_value = map[string]int32{ "STATUS_UNKNOWN": 0, "STATUS_SERVING": 1, "STATUS_TRANSITIONING": 2, "STATUS_NOT_SERVING": 3, } )
Enum value maps for HealthCheckResponse_Status.
var File_service_proto protoreflect.FileDescriptor
var OrcaCore_ServiceDesc = grpc.ServiceDesc{ ServiceName: "OrcaCore", HandlerType: (*OrcaCoreServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "RegisterProcessor", Handler: _OrcaCore_RegisterProcessor_Handler, }, { MethodName: "EmitWindow", Handler: _OrcaCore_EmitWindow_Handler, }, { MethodName: "Expose", Handler: _OrcaCore_Expose_Handler, }, }, Streams: []grpc.StreamDesc{}, Metadata: "service.proto", }
OrcaCore_ServiceDesc is the grpc.ServiceDesc for OrcaCore service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
var OrcaProcessor_ServiceDesc = grpc.ServiceDesc{ ServiceName: "OrcaProcessor", HandlerType: (*OrcaProcessorServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "HealthCheck", Handler: _OrcaProcessor_HealthCheck_Handler, }, }, Streams: []grpc.StreamDesc{ { StreamName: "ExecuteDagPart", Handler: _OrcaProcessor_ExecuteDagPart_Handler, ServerStreams: true, }, }, Metadata: "service.proto", }
OrcaProcessor_ServiceDesc is the grpc.ServiceDesc for OrcaProcessor service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
Functions ¶
func RegisterOrcaCoreServer ¶
func RegisterOrcaCoreServer(s grpc.ServiceRegistrar, srv OrcaCoreServer)
func RegisterOrcaProcessorServer ¶
func RegisterOrcaProcessorServer(s grpc.ServiceRegistrar, srv OrcaProcessorServer)
Types ¶
type Algorithm ¶
type Algorithm struct {
// Name of the algorithm - must be globally unique
// This identifies the algorithm across the system
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Version of the algorithm - must follow semantic versioning
// Allows for algorithm evolution while maintaining compatibility
Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
// Type of window that triggers this algorithm
// References a WindowType that will cause this algorithm to execute
WindowType *WindowType `protobuf:"bytes,3,opt,name=window_type,json=windowType,proto3" json:"window_type,omitempty"`
// Other algorithms that this algorithm depends on
// The algorithm won't execute until all dependencies have completed
// Dependencies must not form cycles - this is statically checked on processor registration
Dependencies []*AlgorithmDependency `protobuf:"bytes,4,rep,name=dependencies,proto3" json:"dependencies,omitempty"`
// The type of result that the algorithm produces. This is specified upfront
// rather than introspected, to allow for validation
ResultType ResultType `protobuf:"varint,5,opt,name=result_type,json=resultType,proto3,enum=ResultType" json:"result_type,omitempty"`
// A freeform description of the algorithm
Description string `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`
// contains filtered or unexported fields
}
Algorithm defines a processing unit that can be executed by processors. Algorithms form the nodes in the processing DAG and are triggered by specific window types.
func (*Algorithm) Descriptor
deprecated
func (*Algorithm) GetDependencies ¶
func (x *Algorithm) GetDependencies() []*AlgorithmDependency
func (*Algorithm) GetDescription ¶
func (*Algorithm) GetResultType ¶
func (x *Algorithm) GetResultType() ResultType
func (*Algorithm) GetVersion ¶
func (*Algorithm) GetWindowType ¶
func (x *Algorithm) GetWindowType() *WindowType
func (*Algorithm) ProtoMessage ¶
func (*Algorithm) ProtoMessage()
func (*Algorithm) ProtoReflect ¶
func (x *Algorithm) ProtoReflect() protoreflect.Message
type AlgorithmDependency ¶
type AlgorithmDependency struct {
// Name of the required algorithm
// Must reference an existing algorithm name in the system
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Version of the required algorithm
// Must follow semantic versioning (e.g., "1.0.0")
Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
// Name of the processor that the algorithm is associated with
ProcessorName string `protobuf:"bytes,3,opt,name=processor_name,json=processorName,proto3" json:"processor_name,omitempty"`
// Runtime of the processor that the algorithm is associated with
ProcessorRuntime string `protobuf:"bytes,4,opt,name=processor_runtime,json=processorRuntime,proto3" json:"processor_runtime,omitempty"`
// A lookback field that specifies whether this dependency
// depends on past results of this algorithm
//
// Types that are assignable to Lookback:
//
// *AlgorithmDependency_LookbackNum
// *AlgorithmDependency_LookbackTimeDelta
Lookback isAlgorithmDependency_Lookback `protobuf_oneof:"lookback"`
// contains filtered or unexported fields
}
AlgorithmDependency defines a requirement that one algorithm has on another's results. These dependencies form the edges in the processing DAG.
func (*AlgorithmDependency) Descriptor
deprecated
func (*AlgorithmDependency) Descriptor() ([]byte, []int)
Deprecated: Use AlgorithmDependency.ProtoReflect.Descriptor instead.
func (*AlgorithmDependency) GetLookback ¶
func (m *AlgorithmDependency) GetLookback() isAlgorithmDependency_Lookback
func (*AlgorithmDependency) GetLookbackNum ¶
func (x *AlgorithmDependency) GetLookbackNum() uint32
func (*AlgorithmDependency) GetLookbackTimeDelta ¶
func (x *AlgorithmDependency) GetLookbackTimeDelta() uint64
func (*AlgorithmDependency) GetName ¶
func (x *AlgorithmDependency) GetName() string
func (*AlgorithmDependency) GetProcessorName ¶
func (x *AlgorithmDependency) GetProcessorName() string
func (*AlgorithmDependency) GetProcessorRuntime ¶
func (x *AlgorithmDependency) GetProcessorRuntime() string
func (*AlgorithmDependency) GetVersion ¶
func (x *AlgorithmDependency) GetVersion() string
func (*AlgorithmDependency) ProtoMessage ¶
func (*AlgorithmDependency) ProtoMessage()
func (*AlgorithmDependency) ProtoReflect ¶
func (x *AlgorithmDependency) ProtoReflect() protoreflect.Message
func (*AlgorithmDependency) Reset ¶
func (x *AlgorithmDependency) Reset()
func (*AlgorithmDependency) String ¶
func (x *AlgorithmDependency) String() string
type AlgorithmDependencyResult ¶
type AlgorithmDependencyResult struct {
// The Algorithm
Algorithm *Algorithm `protobuf:"bytes,1,opt,name=algorithm,proto3" json:"algorithm,omitempty"`
// The result
Result []*AlgorithmDependencyResultRow `protobuf:"bytes,2,rep,name=result,proto3" json:"result,omitempty"`
// contains filtered or unexported fields
}
A sequence of results for an algorithm dependency
func (*AlgorithmDependencyResult) Descriptor
deprecated
func (*AlgorithmDependencyResult) Descriptor() ([]byte, []int)
Deprecated: Use AlgorithmDependencyResult.ProtoReflect.Descriptor instead.
func (*AlgorithmDependencyResult) GetAlgorithm ¶
func (x *AlgorithmDependencyResult) GetAlgorithm() *Algorithm
func (*AlgorithmDependencyResult) GetResult ¶
func (x *AlgorithmDependencyResult) GetResult() []*AlgorithmDependencyResultRow
func (*AlgorithmDependencyResult) ProtoMessage ¶
func (*AlgorithmDependencyResult) ProtoMessage()
func (*AlgorithmDependencyResult) ProtoReflect ¶
func (x *AlgorithmDependencyResult) ProtoReflect() protoreflect.Message
func (*AlgorithmDependencyResult) Reset ¶
func (x *AlgorithmDependencyResult) Reset()
func (*AlgorithmDependencyResult) String ¶
func (x *AlgorithmDependencyResult) String() string
type AlgorithmDependencyResultRow ¶
type AlgorithmDependencyResultRow struct {
// The result
Result *Result `protobuf:"bytes,1,opt,name=result,proto3" json:"result,omitempty"`
// The window that triggered the result
Window *Window `protobuf:"bytes,2,opt,name=window,proto3" json:"window,omitempty"`
// contains filtered or unexported fields
}
The result of a dependency
func (*AlgorithmDependencyResultRow) Descriptor
deprecated
func (*AlgorithmDependencyResultRow) Descriptor() ([]byte, []int)
Deprecated: Use AlgorithmDependencyResultRow.ProtoReflect.Descriptor instead.
func (*AlgorithmDependencyResultRow) GetResult ¶
func (x *AlgorithmDependencyResultRow) GetResult() *Result
func (*AlgorithmDependencyResultRow) GetWindow ¶
func (x *AlgorithmDependencyResultRow) GetWindow() *Window
func (*AlgorithmDependencyResultRow) ProtoMessage ¶
func (*AlgorithmDependencyResultRow) ProtoMessage()
func (*AlgorithmDependencyResultRow) ProtoReflect ¶
func (x *AlgorithmDependencyResultRow) ProtoReflect() protoreflect.Message
func (*AlgorithmDependencyResultRow) Reset ¶
func (x *AlgorithmDependencyResultRow) Reset()
func (*AlgorithmDependencyResultRow) String ¶
func (x *AlgorithmDependencyResultRow) String() string
type AlgorithmDependency_LookbackNum ¶
type AlgorithmDependency_LookbackNum struct {
// Number of past results to depend on (if at all)
LookbackNum uint32 `protobuf:"varint,5,opt,name=lookback_num,json=lookbackNum,proto3,oneof"`
}
type AlgorithmDependency_LookbackTimeDelta ¶
type AlgorithmDependency_LookbackTimeDelta struct {
// Timeframe of past results to depend on (in nanoseconds)
LookbackTimeDelta uint64 `protobuf:"varint,6,opt,name=lookback_time_delta,json=lookbackTimeDelta,proto3,oneof"`
}
type AlgorithmResult ¶
type AlgorithmResult struct {
Algorithm *Algorithm `protobuf:"bytes,1,opt,name=algorithm,proto3" json:"algorithm,omitempty"`
Result *Result `protobuf:"bytes,2,opt,name=result,proto3" json:"result,omitempty"`
Window *Window `protobuf:"bytes,3,opt,name=window,proto3" json:"window,omitempty"`
// contains filtered or unexported fields
}
AlgorithmWindowResult Packaged algorithm and result to a window
func (*AlgorithmResult) Descriptor
deprecated
func (*AlgorithmResult) Descriptor() ([]byte, []int)
Deprecated: Use AlgorithmResult.ProtoReflect.Descriptor instead.
func (*AlgorithmResult) GetAlgorithm ¶
func (x *AlgorithmResult) GetAlgorithm() *Algorithm
func (*AlgorithmResult) GetResult ¶
func (x *AlgorithmResult) GetResult() *Result
func (*AlgorithmResult) GetWindow ¶
func (x *AlgorithmResult) GetWindow() *Window
func (*AlgorithmResult) ProtoMessage ¶
func (*AlgorithmResult) ProtoMessage()
func (*AlgorithmResult) ProtoReflect ¶
func (x *AlgorithmResult) ProtoReflect() protoreflect.Message
func (*AlgorithmResult) Reset ¶
func (x *AlgorithmResult) Reset()
func (*AlgorithmResult) String ¶
func (x *AlgorithmResult) String() string
type ExecuteAlgorithm ¶
type ExecuteAlgorithm struct {
// The algorithm to execute
Algorithm *Algorithm `protobuf:"bytes,1,opt,name=algorithm,proto3" json:"algorithm,omitempty"`
// The results of a dependent algorithm
Dependencies []*AlgorithmDependencyResult `protobuf:"bytes,2,rep,name=dependencies,proto3" json:"dependencies,omitempty"`
// contains filtered or unexported fields
}
The algorithm execution packet
func (*ExecuteAlgorithm) Descriptor
deprecated
func (*ExecuteAlgorithm) Descriptor() ([]byte, []int)
Deprecated: Use ExecuteAlgorithm.ProtoReflect.Descriptor instead.
func (*ExecuteAlgorithm) GetAlgorithm ¶
func (x *ExecuteAlgorithm) GetAlgorithm() *Algorithm
func (*ExecuteAlgorithm) GetDependencies ¶
func (x *ExecuteAlgorithm) GetDependencies() []*AlgorithmDependencyResult
func (*ExecuteAlgorithm) ProtoMessage ¶
func (*ExecuteAlgorithm) ProtoMessage()
func (*ExecuteAlgorithm) ProtoReflect ¶
func (x *ExecuteAlgorithm) ProtoReflect() protoreflect.Message
func (*ExecuteAlgorithm) Reset ¶
func (x *ExecuteAlgorithm) Reset()
func (*ExecuteAlgorithm) String ¶
func (x *ExecuteAlgorithm) String() string
type ExecutionRequest ¶
type ExecutionRequest struct {
// The exec_id
ExecId string `protobuf:"bytes,1,opt,name=exec_id,json=execId,proto3" json:"exec_id,omitempty"`
// The window that triggered the algorithm
Window *Window `protobuf:"bytes,2,opt,name=window,proto3" json:"window,omitempty"`
// Results from dependant algorithms
//
// Deprecated: Marked as deprecated in service.proto.
AlgorithmResults []*AlgorithmResult `protobuf:"bytes,3,rep,name=algorithm_results,json=algorithmResults,proto3" json:"algorithm_results,omitempty"`
// The algorithms to execute
//
// Deprecated: Marked as deprecated in service.proto.
Algorithms []*Algorithm `protobuf:"bytes,4,rep,name=algorithms,proto3" json:"algorithms,omitempty"` // FIXME:
AlgorithmExecutions []*ExecuteAlgorithm `protobuf:"bytes,5,rep,name=algorithm_executions,json=algorithmExecutions,proto3" json:"algorithm_executions,omitempty"`
// contains filtered or unexported fields
}
ExecutionRequest provides a statement of processing as requested by Orca core.
func (*ExecutionRequest) Descriptor
deprecated
func (*ExecutionRequest) Descriptor() ([]byte, []int)
Deprecated: Use ExecutionRequest.ProtoReflect.Descriptor instead.
func (*ExecutionRequest) GetAlgorithmExecutions ¶
func (x *ExecutionRequest) GetAlgorithmExecutions() []*ExecuteAlgorithm
func (*ExecutionRequest) GetAlgorithmResults
deprecated
func (x *ExecutionRequest) GetAlgorithmResults() []*AlgorithmResult
Deprecated: Marked as deprecated in service.proto.
func (*ExecutionRequest) GetAlgorithms
deprecated
func (x *ExecutionRequest) GetAlgorithms() []*Algorithm
Deprecated: Marked as deprecated in service.proto.
func (*ExecutionRequest) GetExecId ¶
func (x *ExecutionRequest) GetExecId() string
func (*ExecutionRequest) GetWindow ¶
func (x *ExecutionRequest) GetWindow() *Window
func (*ExecutionRequest) ProtoMessage ¶
func (*ExecutionRequest) ProtoMessage()
func (*ExecutionRequest) ProtoReflect ¶
func (x *ExecutionRequest) ProtoReflect() protoreflect.Message
func (*ExecutionRequest) Reset ¶
func (x *ExecutionRequest) Reset()
func (*ExecutionRequest) String ¶
func (x *ExecutionRequest) String() string
type ExecutionResult ¶
type ExecutionResult struct {
// Exec ID
ExecId string `protobuf:"bytes,1,opt,name=exec_id,json=execId,proto3" json:"exec_id,omitempty"`
// The algorithn result
AlgorithmResult *AlgorithmResult `protobuf:"bytes,3,opt,name=algorithm_result,json=algorithmResult,proto3" json:"algorithm_result,omitempty"`
// contains filtered or unexported fields
}
func (*ExecutionResult) Descriptor
deprecated
func (*ExecutionResult) Descriptor() ([]byte, []int)
Deprecated: Use ExecutionResult.ProtoReflect.Descriptor instead.
func (*ExecutionResult) GetAlgorithmResult ¶
func (x *ExecutionResult) GetAlgorithmResult() *AlgorithmResult
func (*ExecutionResult) GetExecId ¶
func (x *ExecutionResult) GetExecId() string
func (*ExecutionResult) ProtoMessage ¶
func (*ExecutionResult) ProtoMessage()
func (*ExecutionResult) ProtoReflect ¶
func (x *ExecutionResult) ProtoReflect() protoreflect.Message
func (*ExecutionResult) Reset ¶
func (x *ExecutionResult) Reset()
func (*ExecutionResult) String ¶
func (x *ExecutionResult) String() string
type ExposeSettings ¶
type ExposeSettings struct {
ExcludeProject string `protobuf:"bytes,1,opt,name=exclude_project,json=excludeProject,proto3" json:"exclude_project,omitempty"`
// contains filtered or unexported fields
}
ExposeSettings provides optional settings to the `Expose` procedure
func (*ExposeSettings) Descriptor
deprecated
func (*ExposeSettings) Descriptor() ([]byte, []int)
Deprecated: Use ExposeSettings.ProtoReflect.Descriptor instead.
func (*ExposeSettings) GetExcludeProject ¶
func (x *ExposeSettings) GetExcludeProject() string
func (*ExposeSettings) ProtoMessage ¶
func (*ExposeSettings) ProtoMessage()
func (*ExposeSettings) ProtoReflect ¶
func (x *ExposeSettings) ProtoReflect() protoreflect.Message
func (*ExposeSettings) Reset ¶
func (x *ExposeSettings) Reset()
func (*ExposeSettings) String ¶
func (x *ExposeSettings) String() string
type FloatArray ¶
type FloatArray struct {
Values []float32 `protobuf:"fixed32,1,rep,packed,name=values,proto3" json:"values,omitempty"`
// contains filtered or unexported fields
}
Container for array of float values
func (*FloatArray) Descriptor
deprecated
func (*FloatArray) Descriptor() ([]byte, []int)
Deprecated: Use FloatArray.ProtoReflect.Descriptor instead.
func (*FloatArray) GetValues ¶
func (x *FloatArray) GetValues() []float32
func (*FloatArray) ProtoMessage ¶
func (*FloatArray) ProtoMessage()
func (*FloatArray) ProtoReflect ¶
func (x *FloatArray) ProtoReflect() protoreflect.Message
func (*FloatArray) Reset ¶
func (x *FloatArray) Reset()
func (*FloatArray) String ¶
func (x *FloatArray) String() string
type HealthCheckRequest ¶
type HealthCheckRequest struct {
// Timestamp of the request in unix epoch milliseconds
// Used to measure response latency
Timestamp int64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
// contains filtered or unexported fields
}
HealthCheckRequest is sent to processors to verify they are functioning
func (*HealthCheckRequest) Descriptor
deprecated
func (*HealthCheckRequest) Descriptor() ([]byte, []int)
Deprecated: Use HealthCheckRequest.ProtoReflect.Descriptor instead.
func (*HealthCheckRequest) GetTimestamp ¶
func (x *HealthCheckRequest) GetTimestamp() int64
func (*HealthCheckRequest) ProtoMessage ¶
func (*HealthCheckRequest) ProtoMessage()
func (*HealthCheckRequest) ProtoReflect ¶
func (x *HealthCheckRequest) ProtoReflect() protoreflect.Message
func (*HealthCheckRequest) Reset ¶
func (x *HealthCheckRequest) Reset()
func (*HealthCheckRequest) String ¶
func (x *HealthCheckRequest) String() string
type HealthCheckResponse ¶
type HealthCheckResponse struct {
// Current health status
Status HealthCheckResponse_Status `protobuf:"varint,1,opt,name=status,proto3,enum=HealthCheckResponse_Status" json:"status,omitempty"`
// Optional message providing more detail about the health status
Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
// System metrics about the processor
Metrics *ProcessorMetrics `protobuf:"bytes,3,opt,name=metrics,proto3" json:"metrics,omitempty"`
// contains filtered or unexported fields
}
HealthCheckResponse indicates the health status of a processor
func (*HealthCheckResponse) Descriptor
deprecated
func (*HealthCheckResponse) Descriptor() ([]byte, []int)
Deprecated: Use HealthCheckResponse.ProtoReflect.Descriptor instead.
func (*HealthCheckResponse) GetMessage ¶
func (x *HealthCheckResponse) GetMessage() string
func (*HealthCheckResponse) GetMetrics ¶
func (x *HealthCheckResponse) GetMetrics() *ProcessorMetrics
func (*HealthCheckResponse) GetStatus ¶
func (x *HealthCheckResponse) GetStatus() HealthCheckResponse_Status
func (*HealthCheckResponse) ProtoMessage ¶
func (*HealthCheckResponse) ProtoMessage()
func (*HealthCheckResponse) ProtoReflect ¶
func (x *HealthCheckResponse) ProtoReflect() protoreflect.Message
func (*HealthCheckResponse) Reset ¶
func (x *HealthCheckResponse) Reset()
func (*HealthCheckResponse) String ¶
func (x *HealthCheckResponse) String() string
type HealthCheckResponse_Status ¶
type HealthCheckResponse_Status int32
Overall health status of the processor
const ( // Unknown status - should never be used HealthCheckResponse_STATUS_UNKNOWN HealthCheckResponse_Status = 0 // Processor is healthy and ready to accept tasks HealthCheckResponse_STATUS_SERVING HealthCheckResponse_Status = 1 // Processor is starting up or shutting down HealthCheckResponse_STATUS_TRANSITIONING HealthCheckResponse_Status = 2 // Processor is not healthy and cannot accept tasks HealthCheckResponse_STATUS_NOT_SERVING HealthCheckResponse_Status = 3 )
func (HealthCheckResponse_Status) Descriptor ¶
func (HealthCheckResponse_Status) Descriptor() protoreflect.EnumDescriptor
func (HealthCheckResponse_Status) Enum ¶
func (x HealthCheckResponse_Status) Enum() *HealthCheckResponse_Status
func (HealthCheckResponse_Status) EnumDescriptor
deprecated
func (HealthCheckResponse_Status) EnumDescriptor() ([]byte, []int)
Deprecated: Use HealthCheckResponse_Status.Descriptor instead.
func (HealthCheckResponse_Status) Number ¶
func (x HealthCheckResponse_Status) Number() protoreflect.EnumNumber
func (HealthCheckResponse_Status) String ¶
func (x HealthCheckResponse_Status) String() string
func (HealthCheckResponse_Status) Type ¶
func (HealthCheckResponse_Status) Type() protoreflect.EnumType
type InternalState ¶
type InternalState struct {
// Global list of all registered processors and their metadata
Processors []*ProcessorRegistration `protobuf:"bytes,1,rep,name=processors,proto3" json:"processors,omitempty"`
// contains filtered or unexported fields
}
InternalState provides a complete snapshot of Orca's registry. This is used by clients to "clone" the remote state into local code stubs.
func (*InternalState) Descriptor
deprecated
func (*InternalState) Descriptor() ([]byte, []int)
Deprecated: Use InternalState.ProtoReflect.Descriptor instead.
func (*InternalState) GetProcessors ¶
func (x *InternalState) GetProcessors() []*ProcessorRegistration
func (*InternalState) ProtoMessage ¶
func (*InternalState) ProtoMessage()
func (*InternalState) ProtoReflect ¶
func (x *InternalState) ProtoReflect() protoreflect.Message
func (*InternalState) Reset ¶
func (x *InternalState) Reset()
func (*InternalState) String ¶
func (x *InternalState) String() string
type MetadataField ¶
type MetadataField struct {
// Name of the metadata field
// Examples: "AssetID"
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Description of the field
// Examples: "Unique ID of the asset"
Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
// contains filtered or unexported fields
}
MetadataField describes the metadata that can be carried along with windows
func (*MetadataField) Descriptor
deprecated
func (*MetadataField) Descriptor() ([]byte, []int)
Deprecated: Use MetadataField.ProtoReflect.Descriptor instead.
func (*MetadataField) GetDescription ¶
func (x *MetadataField) GetDescription() string
func (*MetadataField) GetName ¶
func (x *MetadataField) GetName() string
func (*MetadataField) ProtoMessage ¶
func (*MetadataField) ProtoMessage()
func (*MetadataField) ProtoReflect ¶
func (x *MetadataField) ProtoReflect() protoreflect.Message
func (*MetadataField) Reset ¶
func (x *MetadataField) Reset()
func (*MetadataField) String ¶
func (x *MetadataField) String() string
type OrcaCoreClient ¶
type OrcaCoreClient interface {
// Register a processor node and its supported algorithms
RegisterProcessor(ctx context.Context, in *ProcessorRegistration, opts ...grpc.CallOption) (*Status, error)
// Submit a window for processing
EmitWindow(ctx context.Context, in *Window, opts ...grpc.CallOption) (*WindowEmitStatus, error)
// Expose the internal Orca state
Expose(ctx context.Context, in *ExposeSettings, opts ...grpc.CallOption) (*InternalState, error)
}
OrcaCoreClient is the client API for OrcaCore service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
OrcaCore is the central orchestration service that: - Manages the lifecycle of processing windows - Coordinates algorithm execution across distributed processors - Tracks DAG dependencies and execution state - Routes results between dependent algorithms
func NewOrcaCoreClient ¶
func NewOrcaCoreClient(cc grpc.ClientConnInterface) OrcaCoreClient
type OrcaCoreServer ¶
type OrcaCoreServer interface {
// Register a processor node and its supported algorithms
RegisterProcessor(context.Context, *ProcessorRegistration) (*Status, error)
// Submit a window for processing
EmitWindow(context.Context, *Window) (*WindowEmitStatus, error)
// Expose the internal Orca state
Expose(context.Context, *ExposeSettings) (*InternalState, error)
// contains filtered or unexported methods
}
OrcaCoreServer is the server API for OrcaCore service. All implementations must embed UnimplementedOrcaCoreServer for forward compatibility.
OrcaCore is the central orchestration service that: - Manages the lifecycle of processing windows - Coordinates algorithm execution across distributed processors - Tracks DAG dependencies and execution state - Routes results between dependent algorithms
type OrcaProcessorClient ¶
type OrcaProcessorClient interface {
// Execute part of a DAG with streaming results
// Server streams back execution results as they become available
ExecuteDagPart(ctx context.Context, in *ExecutionRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[ExecutionResult], error)
// Check health/status of processor. i.e. a heartbeat
HealthCheck(ctx context.Context, in *HealthCheckRequest, opts ...grpc.CallOption) (*HealthCheckResponse, error)
}
OrcaProcessorClient is the client API for OrcaProcessor service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
OrcaProcessor defines the interface that each processing node must implement. Processors are language-agnostic services that: - Execute individual algorithms - Handle their own internal state - Report results back to the orchestrator Orca will schedule processors asynchronously as per the DAG
func NewOrcaProcessorClient ¶
func NewOrcaProcessorClient(cc grpc.ClientConnInterface) OrcaProcessorClient
type OrcaProcessorServer ¶
type OrcaProcessorServer interface {
// Execute part of a DAG with streaming results
// Server streams back execution results as they become available
ExecuteDagPart(*ExecutionRequest, grpc.ServerStreamingServer[ExecutionResult]) error
// Check health/status of processor. i.e. a heartbeat
HealthCheck(context.Context, *HealthCheckRequest) (*HealthCheckResponse, error)
// contains filtered or unexported methods
}
OrcaProcessorServer is the server API for OrcaProcessor service. All implementations must embed UnimplementedOrcaProcessorServer for forward compatibility.
OrcaProcessor defines the interface that each processing node must implement. Processors are language-agnostic services that: - Execute individual algorithms - Handle their own internal state - Report results back to the orchestrator Orca will schedule processors asynchronously as per the DAG
type OrcaProcessor_ExecuteDagPartClient ¶
type OrcaProcessor_ExecuteDagPartClient = grpc.ServerStreamingClient[ExecutionResult]
This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type OrcaProcessor_ExecuteDagPartServer ¶
type OrcaProcessor_ExecuteDagPartServer = grpc.ServerStreamingServer[ExecutionResult]
This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type ProcessorMetrics ¶
type ProcessorMetrics struct {
// Number of algorithms currently being executed
ActiveTasks int32 `protobuf:"varint,1,opt,name=active_tasks,json=activeTasks,proto3" json:"active_tasks,omitempty"`
// Memory usage in bytes
MemoryBytes int64 `protobuf:"varint,2,opt,name=memory_bytes,json=memoryBytes,proto3" json:"memory_bytes,omitempty"`
// CPU usage percentage (0-100)
CpuPercent float32 `protobuf:"fixed32,3,opt,name=cpu_percent,json=cpuPercent,proto3" json:"cpu_percent,omitempty"`
// Time since processor started in seconds
UptimeSeconds int64 `protobuf:"varint,4,opt,name=uptime_seconds,json=uptimeSeconds,proto3" json:"uptime_seconds,omitempty"`
// contains filtered or unexported fields
}
ProcessorMetrics provides runtime information about a processor
func (*ProcessorMetrics) Descriptor
deprecated
func (*ProcessorMetrics) Descriptor() ([]byte, []int)
Deprecated: Use ProcessorMetrics.ProtoReflect.Descriptor instead.
func (*ProcessorMetrics) GetActiveTasks ¶
func (x *ProcessorMetrics) GetActiveTasks() int32
func (*ProcessorMetrics) GetCpuPercent ¶
func (x *ProcessorMetrics) GetCpuPercent() float32
func (*ProcessorMetrics) GetMemoryBytes ¶
func (x *ProcessorMetrics) GetMemoryBytes() int64
func (*ProcessorMetrics) GetUptimeSeconds ¶
func (x *ProcessorMetrics) GetUptimeSeconds() int64
func (*ProcessorMetrics) ProtoMessage ¶
func (*ProcessorMetrics) ProtoMessage()
func (*ProcessorMetrics) ProtoReflect ¶
func (x *ProcessorMetrics) ProtoReflect() protoreflect.Message
func (*ProcessorMetrics) Reset ¶
func (x *ProcessorMetrics) Reset()
func (*ProcessorMetrics) String ¶
func (x *ProcessorMetrics) String() string
type ProcessorRegistration ¶
type ProcessorRegistration struct {
// Unique name of the runtime
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Language/runtime of the processor
// Examples: "python3.9", "go1.19", "Rust4.1"
Runtime string `protobuf:"bytes,2,opt,name=runtime,proto3" json:"runtime,omitempty"`
// The connection string of the processor
// e.g. grpc://localhost:5433
ConnectionStr string `protobuf:"bytes,3,opt,name=connection_str,json=connectionStr,proto3" json:"connection_str,omitempty"`
// Algorithms this processor can execute
// The processor must implement all listed algorithms
SupportedAlgorithms []*Algorithm `protobuf:"bytes,4,rep,name=supported_algorithms,json=supportedAlgorithms,proto3" json:"supported_algorithms,omitempty"`
// A name that can be attached to a group of processors. Describes the project in which
// they are defined (typically a single git repository)
ProjectName string `protobuf:"bytes,5,opt,name=project_name,json=projectName,proto3" json:"project_name,omitempty"`
// contains filtered or unexported fields
}
ProcessorRegistration is sent by processors when they start up to announce their capabilities to the orchestrator. This establishes a long-lived connection for receiving tasks.
func (*ProcessorRegistration) Descriptor
deprecated
func (*ProcessorRegistration) Descriptor() ([]byte, []int)
Deprecated: Use ProcessorRegistration.ProtoReflect.Descriptor instead.
func (*ProcessorRegistration) GetConnectionStr ¶
func (x *ProcessorRegistration) GetConnectionStr() string
func (*ProcessorRegistration) GetName ¶
func (x *ProcessorRegistration) GetName() string
func (*ProcessorRegistration) GetProjectName ¶
func (x *ProcessorRegistration) GetProjectName() string
func (*ProcessorRegistration) GetRuntime ¶
func (x *ProcessorRegistration) GetRuntime() string
func (*ProcessorRegistration) GetSupportedAlgorithms ¶
func (x *ProcessorRegistration) GetSupportedAlgorithms() []*Algorithm
func (*ProcessorRegistration) ProtoMessage ¶
func (*ProcessorRegistration) ProtoMessage()
func (*ProcessorRegistration) ProtoReflect ¶
func (x *ProcessorRegistration) ProtoReflect() protoreflect.Message
func (*ProcessorRegistration) Reset ¶
func (x *ProcessorRegistration) Reset()
func (*ProcessorRegistration) String ¶
func (x *ProcessorRegistration) String() string
type Result ¶
type Result struct {
// Status of the result execution
Status ResultStatus `protobuf:"varint,1,opt,name=status,proto3,enum=ResultStatus" json:"status,omitempty"`
// The actual result data - can be either an array of floats or a structured object
//
// Types that are assignable to ResultData:
//
// *Result_SingleValue
// *Result_FloatValues
// *Result_StructValue
ResultData isResult_ResultData `protobuf_oneof:"result_data"`
// Timestamp when the result was produced
Timestamp int64 `protobuf:"varint,5,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
// contains filtered or unexported fields
}
Result of an algorithm execution
func (*Result) Descriptor
deprecated
func (*Result) GetFloatValues ¶
func (x *Result) GetFloatValues() *FloatArray
func (*Result) GetResultData ¶
func (m *Result) GetResultData() isResult_ResultData
func (*Result) GetSingleValue ¶
func (*Result) GetStatus ¶
func (x *Result) GetStatus() ResultStatus
func (*Result) GetStructValue ¶
func (*Result) GetTimestamp ¶
func (*Result) ProtoMessage ¶
func (*Result) ProtoMessage()
func (*Result) ProtoReflect ¶
func (x *Result) ProtoReflect() protoreflect.Message
type ResultStatus ¶
type ResultStatus int32
ResultStatus indicates the outcome of algorithm execution
const ( // Algorithm failed but the error was handled gracefully // The system may retry or skip depending on configuration ResultStatus_RESULT_STATUS_HANDLED_FAILED ResultStatus = 0 // Algorithm failed with an unexpected error // Requires investigation and may halt dependent processing ResultStatus_RESULT_STATUS_UNHANDLED_FAILED ResultStatus = 1 // Algorithm completed successfully // Results are valid and can be used by dependent algorithms ResultStatus_RESULT_STATUS_SUCEEDED ResultStatus = 2 )
func (ResultStatus) Descriptor ¶
func (ResultStatus) Descriptor() protoreflect.EnumDescriptor
func (ResultStatus) Enum ¶
func (x ResultStatus) Enum() *ResultStatus
func (ResultStatus) EnumDescriptor
deprecated
func (ResultStatus) EnumDescriptor() ([]byte, []int)
Deprecated: Use ResultStatus.Descriptor instead.
func (ResultStatus) Number ¶
func (x ResultStatus) Number() protoreflect.EnumNumber
func (ResultStatus) String ¶
func (x ResultStatus) String() string
func (ResultStatus) Type ¶
func (ResultStatus) Type() protoreflect.EnumType
type ResultType ¶
type ResultType int32
const ( // placeholder sentinel to make explicit that nothing was provided ResultType_NOT_SPECIFIED ResultType = 0 // the algorithm produces a struct result ResultType_STRUCT ResultType = 1 // the algorithm produces a single value ResultType_VALUE ResultType = 2 // the algorithm produces an array of values ResultType_ARRAY ResultType = 3 // the algorithm does not produce a result ResultType_NONE ResultType = 4 )
func (ResultType) Descriptor ¶
func (ResultType) Descriptor() protoreflect.EnumDescriptor
func (ResultType) Enum ¶
func (x ResultType) Enum() *ResultType
func (ResultType) EnumDescriptor
deprecated
func (ResultType) EnumDescriptor() ([]byte, []int)
Deprecated: Use ResultType.Descriptor instead.
func (ResultType) Number ¶
func (x ResultType) Number() protoreflect.EnumNumber
func (ResultType) String ¶
func (x ResultType) String() string
func (ResultType) Type ¶
func (ResultType) Type() protoreflect.EnumType
type Result_FloatValues ¶
type Result_FloatValues struct {
// For numeric array results
FloatValues *FloatArray `protobuf:"bytes,3,opt,name=float_values,json=floatValues,proto3,oneof"`
}
type Result_SingleValue ¶
type Result_SingleValue struct {
// for single number results
SingleValue float32 `protobuf:"fixed32,2,opt,name=single_value,json=singleValue,proto3,oneof"`
}
type Result_StructValue ¶
type Result_StructValue struct {
// For structured data results (JSON-like)
// Must follow a map<string, value> schema where value corresponds to https://protobuf.dev/reference/protobuf/google.protobuf/#value
StructValue *structpb.Struct `protobuf:"bytes,4,opt,name=struct_value,json=structValue,proto3,oneof"`
}
type Status ¶
type Status struct {
Received bool `protobuf:"varint,1,opt,name=received,proto3" json:"received,omitempty"`
Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
// contains filtered or unexported fields
}
func (*Status) Descriptor
deprecated
func (*Status) GetMessage ¶
func (*Status) GetReceived ¶
func (*Status) ProtoMessage ¶
func (*Status) ProtoMessage()
func (*Status) ProtoReflect ¶
func (x *Status) ProtoReflect() protoreflect.Message
type UnimplementedOrcaCoreServer ¶
type UnimplementedOrcaCoreServer struct{}
UnimplementedOrcaCoreServer must be embedded to have forward compatible implementations.
NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.
func (UnimplementedOrcaCoreServer) EmitWindow ¶
func (UnimplementedOrcaCoreServer) EmitWindow(context.Context, *Window) (*WindowEmitStatus, error)
func (UnimplementedOrcaCoreServer) Expose ¶
func (UnimplementedOrcaCoreServer) Expose(context.Context, *ExposeSettings) (*InternalState, error)
func (UnimplementedOrcaCoreServer) RegisterProcessor ¶
func (UnimplementedOrcaCoreServer) RegisterProcessor(context.Context, *ProcessorRegistration) (*Status, error)
type UnimplementedOrcaProcessorServer ¶
type UnimplementedOrcaProcessorServer struct{}
UnimplementedOrcaProcessorServer must be embedded to have forward compatible implementations.
NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.
func (UnimplementedOrcaProcessorServer) ExecuteDagPart ¶
func (UnimplementedOrcaProcessorServer) ExecuteDagPart(*ExecutionRequest, grpc.ServerStreamingServer[ExecutionResult]) error
func (UnimplementedOrcaProcessorServer) HealthCheck ¶
func (UnimplementedOrcaProcessorServer) HealthCheck(context.Context, *HealthCheckRequest) (*HealthCheckResponse, error)
type UnsafeOrcaCoreServer ¶
type UnsafeOrcaCoreServer interface {
// contains filtered or unexported methods
}
UnsafeOrcaCoreServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to OrcaCoreServer will result in compilation errors.
type UnsafeOrcaProcessorServer ¶
type UnsafeOrcaProcessorServer interface {
// contains filtered or unexported methods
}
UnsafeOrcaProcessorServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to OrcaProcessorServer will result in compilation errors.
type Window ¶
type Window struct {
// Time that the window starts - nanoseconds since epoch
// Required: Must be > Unix epoch (1970-01-01T00:00:00Z)
TimeFrom *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=time_from,json=timeFrom,proto3" json:"time_from,omitempty"`
// Time that the window ends - nanoseconds since epoch
// Required: Must be > time_from (validated at message level)
TimeTo *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=time_to,json=timeTo,proto3" json:"time_to,omitempty"`
// The canonical name of the window that uniquely identifies it
WindowTypeName string `protobuf:"bytes,3,opt,name=window_type_name,json=windowTypeName,proto3" json:"window_type_name,omitempty"`
// The version of the window type
WindowTypeVersion string `protobuf:"bytes,4,opt,name=window_type_version,json=windowTypeVersion,proto3" json:"window_type_version,omitempty"`
// A unique identifier that defines where the window came from
Origin string `protobuf:"bytes,5,opt,name=origin,proto3" json:"origin,omitempty"`
// Additional metadata to attach to this window
// The schema of this metadata is determined by the combination of
// window_type_name and window_type_version. Each window type version
// defines its own required and optional metadata fields, as defined
// at the time of registration.
Metadata *structpb.Struct `protobuf:"bytes,6,opt,name=metadata,proto3" json:"metadata,omitempty"`
// contains filtered or unexported fields
}
Window represents a time-bounded processing context that triggers algorithm execution. Windows are the primary input that start DAG processing flows.
func (*Window) Descriptor
deprecated
func (*Window) GetMetadata ¶
func (*Window) GetTimeFrom ¶
func (x *Window) GetTimeFrom() *timestamppb.Timestamp
func (*Window) GetTimeTo ¶
func (x *Window) GetTimeTo() *timestamppb.Timestamp
func (*Window) GetWindowTypeName ¶
func (*Window) GetWindowTypeVersion ¶
func (*Window) ProtoMessage ¶
func (*Window) ProtoMessage()
func (*Window) ProtoReflect ¶
func (x *Window) ProtoReflect() protoreflect.Message
type WindowEmitStatus ¶
type WindowEmitStatus struct {
Status WindowEmitStatus_StatusEnum `protobuf:"varint,1,opt,name=status,proto3,enum=WindowEmitStatus_StatusEnum" json:"status,omitempty"`
// contains filtered or unexported fields
}
WindowEmitStatus status message returned after emitting a window
func (*WindowEmitStatus) Descriptor
deprecated
func (*WindowEmitStatus) Descriptor() ([]byte, []int)
Deprecated: Use WindowEmitStatus.ProtoReflect.Descriptor instead.
func (*WindowEmitStatus) GetStatus ¶
func (x *WindowEmitStatus) GetStatus() WindowEmitStatus_StatusEnum
func (*WindowEmitStatus) ProtoMessage ¶
func (*WindowEmitStatus) ProtoMessage()
func (*WindowEmitStatus) ProtoReflect ¶
func (x *WindowEmitStatus) ProtoReflect() protoreflect.Message
func (*WindowEmitStatus) Reset ¶
func (x *WindowEmitStatus) Reset()
func (*WindowEmitStatus) String ¶
func (x *WindowEmitStatus) String() string
type WindowEmitStatus_StatusEnum ¶
type WindowEmitStatus_StatusEnum int32
A status enum that captures scenarios regarding a window being emmited
const ( // When triggering has failed WindowEmitStatus_TRIGGERING_FAILED WindowEmitStatus_StatusEnum = 0 // When no algorithms could be found that are triggered by this window WindowEmitStatus_NO_TRIGGERED_ALGORITHMS WindowEmitStatus_StatusEnum = 1 // When processing has successfully been triggered WindowEmitStatus_PROCESSING_TRIGGERED WindowEmitStatus_StatusEnum = 2 )
func (WindowEmitStatus_StatusEnum) Descriptor ¶
func (WindowEmitStatus_StatusEnum) Descriptor() protoreflect.EnumDescriptor
func (WindowEmitStatus_StatusEnum) Enum ¶
func (x WindowEmitStatus_StatusEnum) Enum() *WindowEmitStatus_StatusEnum
func (WindowEmitStatus_StatusEnum) EnumDescriptor
deprecated
func (WindowEmitStatus_StatusEnum) EnumDescriptor() ([]byte, []int)
Deprecated: Use WindowEmitStatus_StatusEnum.Descriptor instead.
func (WindowEmitStatus_StatusEnum) Number ¶
func (x WindowEmitStatus_StatusEnum) Number() protoreflect.EnumNumber
func (WindowEmitStatus_StatusEnum) String ¶
func (x WindowEmitStatus_StatusEnum) String() string
func (WindowEmitStatus_StatusEnum) Type ¶
func (WindowEmitStatus_StatusEnum) Type() protoreflect.EnumType
type WindowType ¶
type WindowType struct {
// Name of the window type - must be globally unique
// Examples: "daily", "hourly", "market_close", "event_triggered"
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Version of the algorithm. Follows basic semver and allows window
// types to be changed over time, with traceability
Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
// Description of the window
// E.g. "Emitted every day, at noon"
Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
// Metadata fields that are carried along with this window type
MetadataFields []*MetadataField `protobuf:"bytes,4,rep,name=metadataFields,proto3" json:"metadataFields,omitempty"`
// contains filtered or unexported fields
}
WindowType defines a category of window that can trigger algorithms. Algorithms subscribe to window types to indicate when they should be executed.
func (*WindowType) Descriptor
deprecated
func (*WindowType) Descriptor() ([]byte, []int)
Deprecated: Use WindowType.ProtoReflect.Descriptor instead.
func (*WindowType) GetDescription ¶
func (x *WindowType) GetDescription() string
func (*WindowType) GetMetadataFields ¶
func (x *WindowType) GetMetadataFields() []*MetadataField
func (*WindowType) GetName ¶
func (x *WindowType) GetName() string
func (*WindowType) GetVersion ¶
func (x *WindowType) GetVersion() string
func (*WindowType) ProtoMessage ¶
func (*WindowType) ProtoMessage()
func (*WindowType) ProtoReflect ¶
func (x *WindowType) ProtoReflect() protoreflect.Message
func (*WindowType) Reset ¶
func (x *WindowType) Reset()
func (*WindowType) String ¶
func (x *WindowType) String() string