Hi, Team Dev cc to @Arthur_Rallu @lyzeth.
After using Appsheet for a while, I found some obstacles when using it for business due to the issue of large data. I tested it on our company’s actual app and the results were surprising.
Before getting into my testing phase, my current app has 16 tables, all of which are stored in Google Sheets. One table has 82,000 rows of data. I know that spreadsheets in general, and Google Sheets in particular, have limitations, with Google Sheets having a limit of 10 million cells. Therefore, in a business environment, I would need to switch to a different platform such as MySQL or SQL Server to use it.
I input all 82,000 rows of data into a cloud-based MySQL platform and connected it to Appsheet. I compared the speed of loading data between when the data was stored in Google Sheets and when it was stored in Cloud SQL. Note that the settings were the same in both test cases, and my app did not use any virtual columns except for the automatically generated columns when connecting data from two tables. The results were as follows:
Sync speed: When checking the speed of loading data on Cloud MySQL and Google Sheets, the speed of loading data on Google Sheets was much faster than on MySQL. On average, it took between 19 and 26 seconds to load 82,000 rows of data on MySQL, while the speed of loading on Google Sheets was between 2.2 and 4.2 seconds per sync.
The speed of adding and deleting data is also an important factor. When testing both MySQL and Google Sheets with 82,000 rows of data, the speed of deleting and adding new data on both platforms was from 1.1 to 2.74 seconds per row of data, while Google Sheets returned the speed of deleting and adding new data from 1.2 to 2.06 seconds per row of data.
After testing with an app containing about 20 rows of data and stored on Google Sheets, the results were as follows: the loading speed ranged from 0.3 to 0.7 seconds, and the response time for adding and deleting data ranged from 0.7 to 1.1 seconds.
I found a clear difference in the results. I wonder what causes Appsheet to take 19 to 26 seconds to load data. I retested by using the security filter feature on the table to limit the amount of data that can be displayed (instead of displaying all 82,000 rows, I only allowed half of them to be displayed). At this point, the loading speed decreased to 7.5 seconds.
I can guess that during synchronization, AppSheet runs an algorithm to load all data into the browser’s cache memory before allowing the user to use it. This would be good if the app data is not too much. But if the app data in the business is too much, say over 100,000 rows, would this still be good? Is there any way to handle this asynchronously so that the app can load only the first 1000 rows, and then automatically load more if the user wants to view them? I’m afraid that using AppSheet for a business with a large amount of data, say for 2-3 years, would result in waiting times of 50-70 seconds each time synchronization occurs, which is unacceptable for a business application. Does AppSheet have any solution for this?



