Gå til indhold

Pull or Push

Dette indhold er ikke tilgængeligt i dit sprog endnu.

Module 1 in the chapter The Doors In, chapter 4 of the Data 360 Architect course. Each module stands on its own. Next: Connectors Hold the Credentials

The question this module answers: How do you choose the door for a source: does Data 360 pull it, or do you push it?

There are a lot of ways to get data into Data 360. Before you look at any of them, ask one question about the source: where does the data already live? The answer usually picks the door for you.

Data 360 can set up connectors and reach out on a schedule to get your data. You don’t send anything; it comes and collects. It can pull from:

  • Your Salesforce orgs, one or many, through the Salesforce CRM connector. That’s chapter 5.
  • B2C Commerce and Marketing Cloud, through their own connectors.
  • Cloud storage: Amazon S3, Microsoft Azure Blob Storage and Google Cloud Storage. Put a file there, and Data 360 picks it up on the stream’s schedule.

With pull, Data 360 owns the schedule. The connection, with its credentials, is set up once (module 2). And there’s no code of yours in the middle that someone has to keep running. The pilots file in chapter 1 came in this way: a file in S3, pulled by Data 360.

If the data isn’t in one of those places, you have two choices. Put it somewhere Data 360 can pull from, usually cloud storage. Or switch to a push, where your systems send the data in:

  • SFTP: push CSV files to a secure file transfer server, and a stream picks them up.
  • The Ingestion API, bulk: large files in a job, for big batches (module 4).
  • The Ingestion API, streaming: small JSON payloads, sent as things happen (module 4).
  • The web and mobile SDKs: your websites and apps send behavior as people use them (chapter 13).

Push gives you control of the timing. Flights are pushed: in my own project, a flight departs and the event goes to the Ingestion API’s streaming endpoint. In this course you’ll push a month of real flights from SkyData the bulk way (module 4), and replay them as a stream in chapter 13. In my own tests, streamed data arrived about every three minutes, and Salesforce documents the same: streamed data “is processed asynchronously approximately every 3 minutes.” That’s a different world from a file pulled once an hour.

The cost of push is that it’s yours. Your code builds the payload, your code handles the errors, your code retries. Somebody has to own it after the project ends.

When I first recorded my walk through these doors, I hadn’t found a way to bring Snowflake data in except by exporting it through one of the other doors. That has changed. Salesforce now lists inbound zero copy: Data 360 queries data where it lives, in platforms such as Snowflake and Google BigQuery, without copying it in. That’s a third answer to “pull or push”: sometimes, neither. Chapter 15 is all about it.

Salesforce’s patterns, as a decision table

Section titled “Salesforce’s patterns, as a decision table”

Salesforce’s architects describe the inbound doors as patterns, each with the problem it solves. Here they are, with where this course teaches each one:

Salesforce’s inbound patternPull or pushWhere it’s taught
Bulk data ingestion from cloud storagePullChapter 4, module 3
Bulk data ingestion from Salesforce cloudsPullChapter 5
Near real-time CRM synchronization via streamingPullChapters 5 and 13
Event-driven ingestion via the Ingestion API, streamingPushChapter 4, module 4
Real-time web and mobile behavior ingestionPushChapter 13
Event stream ingestion from Kinesis and MSKPull, from your event platformChapter 13
Inbound zero copyNeither: queried in placeChapter 15

From Salesforce Architects, Data 360 Integration Patterns.

Which door: where does the data live? A ladder of questions from top to bottom; every yes goes right to an answer, every no goes down to the next question. - **The start,** highlighted: a new source. Where does the data live today? - **Is it in a Salesforce org, B2C Commerce, Marketing Cloud or cloud storage?** Yes: Data 360 pulls, through a connector, on a schedule. - **Can it land in cloud storage?** Yes: drop the file, and Data 360 pulls it from Amazon S3, Azure Blob, Google Cloud Storage or SFTP. - **Does it need to arrive as it happens?** Yes: push it as it happens, with Ingestion API streaming or the web and mobile SDKs. - **Can it stay where it is, and be queried there?** Yes: don't move it; zero copy queries it in place. - **Otherwise,** push it in bulk with Ingestion API bulk jobs, and someone owns that code. {"author": "Steve Simpson", "blueprint": "1.0.0", "builder": "standard 1.59.0", "built": "2026-11-09", "id": "DGM-D360-DR-01", "rights": "\u00a9 2026 Twinshark LLC. All rights reserved.", "template": "flow/decision 0.1.0", "theme": "stevetecharc 1.4.0"} A new source where does the data live today? Is it in a Salesforce org, B2C Commerce, Marketing Cloud or cloud storage? Data 360 pulls a connector, on a schedule Can it land in cloud storage? Drop the file; Data 360 pulls Amazon S3, Azure Blob, Google Cloud Storage or SFTP Does it need to arrive as it happens? Push it as it happens Ingestion API streaming, or the web and mobile SDKs Can it stay where it is, and be queried there? Don't move it: zero copy queried in place (chapter 15) Push it in bulk Ingestion API bulk jobs, and someone owns the code yes no yes no yes no yes no HOW TO READ IT a step the step that matters most a question an answer yes goes right to an answer; no goes down to the next question © 2026 Twinshark LLC · stevetecharc.com
Click to enlarge

Put together, it’s a short list of questions, asked in order:

  1. Where does the data live today? If it’s somewhere Data 360 can pull from, pull.
  2. If not, can it land in cloud storage? A file dropped in S3 on a schedule is often the simplest door of all.
  3. Does it need to arrive as it happens? Then push it, with streaming, and plan who owns that code.
  4. Does it need to come in at all? If it lives in a lakehouse and you only need to query it, look at zero copy first.

In 2024 I filmed this same walk through the doors, source by source, with a help link for each. The note under the video says what’s still right and what’s changed since, including the door I hadn’t found then: zero copy.

STA 5.23 · Data Cloud Diaries: Overview of Methods for Loading and Ingesting Data into Data Cloud · 10:27 · published 2024-01-23 · plays from YouTube when you click it · Watch on YouTube · More videos: Data 360 (Data Cloud) Videos
  • The door for each source, and the reason, written down beside it in the dictionary from chapter 3.
  • Who owns the code for every push, after the project is over.
  • Which sources need to arrive as they happen, and which can wait for the next pull. Streaming is billed by the row in both credit models, at many times the cost of batch (module 4 has the numbers), so “as they happen” needs a business reason.

All checked 2026-11-14.