Gooogle Sheet vs Google Cloud SQL - Performance

Ali_Sabir
Participant III

To test the sync time, I tested just one table with exact same data in Google Sheet vs Google Cloud SQL - both about 60K rows with no relationships and no virtual columns and formulas - plain static data. I was hoping that SQL will be much faster. It turns out that it reads from SQL much faster but data conversion takes much longer - which leads to SQL being slower than Google Sheet. I have the exact same data type in both tests - not sure why it is converting SQL data and not Sheet data.

SQL is taking about 20 seconds when Sheet is about 6 seconds. In case of SQL data, 16 secs is spent just on data conversion. Any ideas/suggestions to avoid this data conversion when I am accepting the default column types that Appsheet generates?

Please see attached screenshot.

Solved Solved
0 6 890
1 ACCEPTED SOLUTION

Hi Ali, definitely something fishy going on there. Do you mind sending a support ticket with the details of this app โ€” it will give us a chance to investigate it deeper. Thanks

View solution in original post

6 REPLIES 6

Hi Ali, definitely something fishy going on there. Do you mind sending a support ticket with the details of this app โ€” it will give us a chance to investigate it deeper. Thanks

Please mention we discussed this in the community so the ticket gets routed to me :]

I have created support ticket. Thank you Praveen.

Ali_Sabir
Participant III

Hi Praveen, I created a ticket a few days ago. While awaiting response from dev team, I did some troubleshoot myself - I suspect that if you have a date as datetime or timestamp in MySQL but Column type is Date in Appsheet, it takes a long time to covert it. I am not 100% sure but I have other large tables with no issues but this one has some dates which makes me wonder it has to do with date conversions. Sounds like a bug to me as AppSheet is able to convert DateTime/Timestamp from Google Sheet without any performance hit but from SQL it seems to be causing performance issues.

I also feel this problem in my application which has hundreds of thousands of lines. It even has many virtual columns and relationships to other tables. Many users complain about the slow synchronization process even to the point of not being able to open the application. And until now has not found the best way to handle this case


@mumtazits wrote:

Many users complain about the slow synchronization process even to the point of not being able to open the application. And until now has not found the best way to handle this case


The first thing to look at is reducing the number of rows delivered to each user.  Remove old records no longer needed in the app by either archiving them or straight out deleting them.  Next, look at Security Filters as a way to minimize the number of rows delivered to each users device.

But most probably, these issues are likely due to slow running expressions or calculations or overuse of Virtual Columns.  The best way to help improve these performance issue is to use the Performance Analyzer in the Monitor section of the app.  It will show you the top 10 WORST Virtual Columns.  Find the most offending ones and look for another way to implement them that will help reduce the hit on Sync time.  There usually is a way but it's not easy sometimes.

If this effort is beyond your technical ability, then I encourage you to find professional help in improving your apps performance.

I hope this helps

 

Top Labels in this Space