A comunica Inner Multi Adaptive Destroy RDF Join Actor.

Hierarchy

  • ActorRdfJoin
    • ActorRdfJoinInnerMultiAdaptiveDestroy

Constructors

Properties

beforeActors: Actor<
    IActionRdfJoin,
    IMediatorTypeJoinCoefficients,
    IQueryOperationResultBindings,
    IActorRdfJoinTestSideData,
>[]

Actor that must be registered in the bus before this actor.

bus: Bus<
    Actor<
        IActionRdfJoin,
        IMediatorTypeJoinCoefficients,
        IQueryOperationResultBindings,
        IActorRdfJoinTestSideData,
    >,
    IActionRdfJoin,
    IMediatorTypeJoinCoefficients,
    IQueryOperationResultBindings,
    IActorRdfJoinTestSideData,
>

The bus this actor subscribes to.

canHandleUndefs: boolean

If this actor can handle undefs overlapping variable bindings.

includeInLogs: boolean

If this actor will be logged in the debugger and physical query plan logger

isLeaf: boolean

If this join operator will not invoke any other join or query operations below, and can therefore be considered a leaf of the join plan.

limitEntries: number

Can be used by subclasses to indicate the max or min number of streams that can be joined. 0 for infinity. By default, this indicates the max number, but can be inverted by setting limitEntriesMin to true.

limitEntriesMin: boolean

If true, the limitEntries field is a lower limit, otherwise, it is an upper limit.

logicalType: LogicalJoinType
mediatorJoin: MediatorRdfJoin
mediatorJoinSelectivity: MediatorRdfJoinSelectivity
name: string

The name for this actor.

{<rdf:subject>}
physicalName: string
requiresVariableOverlap?: boolean

If this join operator must only be used for join entries with (at least partially) common variables.

timeout: number

Methods

  • Helper function to create a new metadata object for the join result. For required metadata entries that are not provided, sane defaults are calculated.

    Parameters

    • entries: IJoinEntry[]

      Join entries.

    • metadatas: MetadataBindings[]

      Metadata of the join entries.

    • context: IActionContext

      The action context.

    • OptionalpartialMetadata: Partial<MetadataBindings>

      Partial metadata entries.

    • Optionaloptional: boolean

      If metadata for an optional operation must be calculated.

    Returns Promise<MetadataBindings>

  • Construct a metadata validation state for the given metadata entries.

    Parameters

    • metadatas: MetadataBindings[]

      An array of checked metadata.

    Returns MetadataValidationState

  • Parameters

    • context: IActionContext
    • Optionaldata: () => any

    Returns any

  • Calculate the join coefficients.

    Parameters

    • _action: IActionRdfJoin
    • sideData: IActorRdfJoinTestSideData

      The test side data.

    Returns Promise<TestResult<IMediatorTypeJoinCoefficients, IActorRdfJoinTestSideData>>

    The join coefficient estimates.

  • Parameters

    • context: IActionContext
    • message: string
    • Optionaldata: () => any

    Returns void

  • Parameters

    • context: IActionContext
    • message: string
    • Optionaldata: () => any

    Returns void

  • Parameters

    • context: IActionContext
    • message: string
    • Optionaldata: () => any

    Returns void

  • Parameters

    • context: IActionContext
    • message: string
    • Optionaldata: () => any

    Returns void

  • Parameters

    • context: IActionContext
    • message: string
    • Optionaldata: () => any

    Returns void

  • Parameters

    • context: IActionContext
    • message: string
    • Optionaldata: () => any

    Returns void

  • Returns default input for 0 or 1 entries. Calls the getOutput function otherwise

    Parameters

    • action: IActionRdfJoin
    • sideData: IActorRdfJoinTestSideData

      Side data from the test method

    Returns Promise<IQueryOperationResultBindings>

    A bindings result.

  • Run the given action on this actor AND invokes the Bus#onRun method.

    Parameters

    • action: IActionRdfJoin

      The action to run.

    • sideData: IActorRdfJoinTestSideData

    Returns Promise<IQueryOperationResultBindings>

    A promise that resolves to the run result.

  • Default test function for join actors. Checks whether all iterators have metadata. If yes: call the abstract getIterations method, if not: return Infinity.

    Parameters

    • action: IActionRdfJoin

      The input action containing the relevant iterators

    Returns Promise<TestResult<IMediatorTypeJoinCoefficients, IActorRdfJoinTestSideData>>

    The join coefficients.

  • Get the estimated number of items from the given metadata.

    Parameters

    • metadata: MetadataBindings

      A metadata object.

    Returns QueryResultCardinality

    The estimated number of items, or Infinity if cardinality is falsy.

  • Get the logger from the given context.

    Parameters

    • context: IActionContext

      An optional context.

    Returns undefined | Logger

    The logger or undefined.

  • Obtain the join entries witt metadata from all given join entries.

    Parameters

    • entries: IJoinEntry[]

      Join entries.

    Returns Promise<IJoinEntryWithMetadata[]>

  • Obtain the metadata from all given join entries.

    Parameters

    • entries: IJoinEntry[]

      Join entries.

    Returns Promise<MetadataBindings[]>

  • Calculate the time to initiate a request for the given metadata entries.

    Parameters

    • metadatas: MetadataBindings[]

      An array of checked metadata.

    Returns number[]

  • Calculate the time to receive a single item for the given metadata entries.

    Parameters

    • metadatas: MetadataBindings[]

      An array of checked metadata.

    Returns number[]

  • Returns the result of joining bindings, or null if no join is possible.

    Parameters

    • ...bindings: Bindings[]

    Returns null | Bindings

  • Returns the variables that will occur in the joined bindings.

    Parameters

    • dataFactory: ComunicaDataFactory

      The data factory.

    • metadatas: MetadataBindings[]

      An array of metadata objects for the entries.

    • Optionaloptional: boolean

      If an optional join is being performed.

    Returns MetadataVariable[]

    An array of joined variables.

  • Returns an array containing all the variable names that occur in all bindings streams.

    Parameters

    • metadatas: MetadataBindings[]

      An array of optional metadata objects for the entries.

    Returns MetadataVariable[]

    An array of variables.

  • Order the given join entries using the join-entries-sort bus.

    Parameters

    • mediatorJoinEntriesSort: MediatorRdfJoinEntriesSort

      A mediator for sorting join entries.

    • entries: IJoinEntryWithMetadata[]

      An array of join entries.

    • context: IActionContext

      The action context.

    Returns Promise<TestResult<IJoinEntryWithMetadata[]>>

    The sorted join entries.