A city permits bureau streams inspection updates into OCI Streaming and must transform each partition’s messages with an Oracle Function before writing results to Object Storage, preserving order. Which documented path wires the stream through the function?
Select an answer to reveal the explanation.
Short Explanation
Think of Connector Hub as the plumber between the stream and the Function. It can take Streaming as the source, invoke a Function synchronously to transform messages, and write to a supported target while keeping partition order. Streaming does not natively “call Functions” as its default path without that wiring.
Full Explanation
For the permits bureau, the documented way to read inspection updates from OCI Streaming, transform each batch with Oracle Functions, and land results in Object Storage—while respecting partition order—is Connector Hub. Configure the stream as the source, attach a Function as a synchronous transform task, and choose a supported target for the transformed payload. Connector Hub owns polling, batching, retries, and delivery semantics so the Function focuses on transformation logic rather than consumer-group boilerplate. Streaming alone is not a Function invoker: it stores ordered records for Kafka-compatible clients, but it does not natively register a Function as a consumer group and push each message into serverless compute without an intermediary. An Events rule that pretends every stream append is an Object Storage create-object emission mixes two different planes—Events matches OCI resource-state CloudEvents, not arbitrary Kafka appends on your application stream. Relaying each message into OCI Queue and polling with a Function abandons Streaming’s partition-ordered transform path and substitutes a work-inbox pattern that does not preserve the stream’s ordered, multi-consumer bus semantics. Exam caveat: Connector Hub Function tasks are synchronous transforms with size and timeout limits; oversized or long-running work may need chunking or an asynchronous hand-off after the connector writes an intermediate object. Operational check: after enabling the connector, verify IAM (dynamic group or resource principal) lets the connector invoke the Function and write the target, then confirm metrics show successful Function invocations per partition with no sustained lag on the stream offsets.