Hi all,
I’m sure there is an easy solution for the issue I have encountered. However, if anyone is able to help out it is much appreciated.
I am using an Airtable and Local Stored Data Source (SDS) to run my app.
Upon initial loading of the app, all cloud data is downloaded into the SDS. When the User 1 creates a new data record it is uploaded into the cloud and into their own SDS, ensuring the app runs fast instead of keep pulling from the cloud.
When User 2 uses the app they will also download from the cloud so their SDS is populated with all the records.
Now User 1 re-opens the app. They must download the latest records from the cloud that User 2 has just uploaded.
How can the app just download the latest records from the cloud & not the entire database??
If anyone could provide a rough block example that would be epic, but thank you if any help
I’m curious if a download of the entire Firebase database would take that long? I’m not sure how you would compare the local data with that cloud data. Probably by comparing JSON for each but that’s going to be a pain.
Are you using a local data source because you need to display values in a Data Viewer List (DVL) or Grid (DVG)? Otherwise, you could just download the full Firebase database when needed and not use a local data source at all.
Hi @tatiang
I am using Airtable for main data storage and firebase for initial authentication. The cloud database from Airtable has 108 cells to download right now, but as users grow so will the number of cells.
It takes 20-30 seconds to download these all (on fast wifi) hence the need for keeping it local.
Yes the downloaded data is being held in a local database, and then multiple app storage source databases are used to populate both DVL and DVG throughout the app being used.
I did think maybe could have a variable for the last row ID created and then any new rows created could check if row ID is greater than the variable and only download these. Or same idea but with a timestamp.