Uploaded image for project: 'Documentation'
  1. Documentation
  2. DOCS-16377

Please explicitly state that Data Ingest removes data from client apps

    • Type: Icon: Task Task
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Realm
    • Labels:
      None
    • 1

      IHAC stating that from their read of the docs here (https://www.mongodb.com/docs/atlas/app-services/sync/configure/sync-settings/#data-ingest) that they can't delete objects that are synced with Data Ingest, so they're going to run out of storage room.

      I thought I’d respond with the place in the documentation that says Data Ingest automatically cleans things up... and I didn’t see anything to explicitly reassure this customer.

      I discussed on #ask-device-sync (https://mongodb.slack.com/archives/C01253HKD9A/p1694468790020099) and found that objects written to a data ingest collection are never actually committed to Realm. Instead, a transaction log is created with the content of the data, and that is what gets uni-directionally synced to Atlas. Technically, it is not correct to say that the Realm SDK “cleans up” or “deletes” the data, because it never gets written in the first place. However, the team pointed out that we tend not to discuss the transaction logs because they were an implementation detail, not something that developers needed to know externally.

      My suggested update below doesn’t mention transaction logs. (You may wish to make similar updates in parts of the Realm SDKs that discuss Data Ingest implementations. My only ask is to have it in at least one place explicitly.)

      Data Ingest collections are only for writing data. You cannot use Flexible Sync queries against these collections. Instead, use Connect to MongoDB Data Sources.

      Once written, this data is not available for any CRUD operations in the device application. Atlas Device Sync completely manages the lifecycle of this data, ensuring that it is safely maintained on the device until Data Ingest synchronization is complete, and then safely removed from the device.

      After you have enabled Data Ingest, you implement it in the client app via the client SDKs. Currently, the following Realm SDKs support Data Ingest:

            Assignee:
            dachary.carey@mongodb.com Dachary Carey
            Reporter:
            mark.brown@mongodb.com Mark Brown
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:
              33 weeks, 3 days ago