KPD closed beta Sign inRequest access

Working on the canvas

The canvas is where a pipeline is drawn: add assets, connect them, and arrange them so the design reads well.

The window

The orders-cdc pipeline in the Retail Orders Platform sample.
The orders-cdc pipeline in the Retail Orders Platform sample.
A pipeline’s assets in the explorer, sorted into sections (here Connect is open).
A pipeline’s assets in the explorer, sorted into sections (here Connect is open).

Adding assets

An empty pipeline shows a Start your pipeline card with the quickest ways in: Start from a system (draws an External system and selects it, so you can name the database, application or file store the data lives in), Add a source (quick add showing external systems and sources), Search all assets, DPCF layers (draws the Ingestion, Process and Surface boxes), and Add a note to jot down the brief. The card goes as soon as the first asset or note is added; over the DPCF layer boxes it shrinks to a slim bar so the boxes stay visible.

A new, empty pipeline.
A new, empty pipeline.

Connecting

Drag from an output port (right or bottom edge of an asset) to an input port (left or top). KPD only accepts connections that make sense: a port that can't take the connection refuses it and a message says why. Drag the end of an existing connection to another port to re-wire it.

Connection styles tell you what flows: data flow solid with an arrow, join inputs into the bottom of a Flink statement, error routes dashed red into dead letter topics, and dashed lines for sharing (Tableflow, Stream Share) and links to external systems. Edge labels, such as on error or a join key, are set on the connection's properties.

TipTo tidy a busy diagram, click a connection and drag its square handle to move its lane. Double-click the handle to return it to automatic routing.

Selecting, moving and zooming

ToDo this
SelectClick an asset; drag a box on empty canvas; Ctrl/⌘+A selects all.
PanScroll, or hold Space and drag, or use the Pan tool (H).
ZoomCtrl/⌘ + scroll, pinch, the zoom box in the toolbar, or Shift+1 to fit the pipeline.
SnapThe Snap to grid toolbar switch keeps assets aligned on a 16 px grid.
DeleteDelete or Backspace; undo with Ctrl/⌘+Z.

Partition counts

To keep designs uncluttered, a topic on the canvas just says Topic. Tick View → Show partition counts to add each topic's partitions (Topic · 6 part.), on the canvas and in exported pictures. KPD remembers the choice. The count is always on the topic's Partitions & durability tab, and in the design document and Terraform, whichever way this is set. Some older screenshots in this guide show the counts.

Animated data flow

Dots travel along the connections that carry records: blue on data flow, red on error routes. They help when walking someone through a design. Toggle them with the pulse button on the toolbar or View → Animate data flow. They never appear in exported pictures, and they are off when your system asks for reduced motion. On a big pipeline they slow things down noticeably, so turn them off there (see How big can a design get?).

Dark mode

The sun / moon button on the toolbar switches between the light and dark themes; View → Theme… also offers Match system, which follows your computer's setting, and any seasonal looks the KPD team has turned on (see Themes and dark mode). The choice is remembered in this browser.

The Retail Orders sample in the dark theme.
The Retail Orders sample in the dark theme.
NoteExports are always light: pictures, the design document’s diagrams and the technical export look the same whichever theme you work in, so they suit documents and slides.

Linking to other pipelines (pipeline boxes)

When one pipeline feeds another, drag the other pipeline from the explorer onto this pipeline's canvas. It is drawn as a single pipeline box showing only where that pipeline starts and ends:

The customer-data-products pipeline as a box, with a Flink statement reading one of its data products.
The customer-data-products pipeline as a box, with a Flink statement reading one of its data products.

The connections are real: validation, read-access advice and the design document treat the box's port as the topic it stands for. Terraform never creates that topic a second time: it points to the pipeline that defines it, or looks it up as an existing topic.

NoteThe box remembers the start and end topics it was drawn with. If the other pipeline changes them, the Problems tab offers Update box; a connection to a topic that has gone is reported as an error.

Workshop mode

For designing in front of a client, press W (or Workshop on the toolbar, or View → Workshop mode). The menus, toolbar, explorer, palettes, tabs and status bar disappear, leaving the canvas and the properties panel, with a small bar floating over the top of the canvas.

Workshop mode works on storyboards too, where the bar offers Follow the story instead of Follow the data.

Follow the data

Follow the data on the workshop bar walks a single record through the pipeline, one asset at a time, so the design explains itself to the room. The camera moves to each hop, the rest of the canvas fades, and a caption — generated from the design, the same wording as the detailed design document — says what happens there: "incl-bookingdb-cdc captures changes from InclinedBooking DB and writes…", "customer_raw_to_cdm transforms the data…", "crm-welcome-journey consumes it and delivers to the Marketing CRM."

TipBefore a workshop, open the project and press W, then full screen. Dark mode can be easier on a projector; try both in the room.

Auto-place

Pipelines created outside the canvas (for example by a script) may have assets without positions. Pipeline → Auto-place unpositioned nodes lays them out in flow order.

Saving

Pipelines are saved with Ctrl/⌘+S (or Ctrl/⌘+Shift+S for all open pipelines); a dot on the tab shows unsaved changes. Project-wide definitions such as clusters, service accounts, tags and rules are saved to the project file immediately when you change them.

Auto save. Tick File → Auto save (every 5 minutes) and KPD saves every open pipeline with unsaved changes every five minutes, counting from when you switch it on. It saves quietly: no toast, and no "Save with errors?" question, because a design in progress may be saved with errors. Pipelines opened read-only are never auto-saved. The status bar shows Auto save on and when it last saved. Your browser remembers the choice, so it stays on next time; untick it to go back to saving only when you ask. Undo still works after an auto save.