How can I improve the performance for "read table" during the sync ?

Hello all! 

I would like to know if it is possible to improve the performance for these 2 following kinds of columns, taking account my 2 examples:

1) virtual column 
2) REF_ROWS

For the case 1 here an example -> I have a virtual column in which I concatenate 2 other columns (2 text columns) -> 4 seconds for this operation is too much.. 

DroidTeo_2-1676998121246.png

 

For the case 2, I have a table with a lot of REF_ROWS, to be precise 24 columns of type "List REF_ROWS".
Why for some tables (with more, a lot more, elements than the others) the necessary time is less compared to last 2 tables ?

DroidTeo_1-1676997631150.png

And, I don't understand... This kind of situation are not "deterministic" 

Sometimes, it is better for some tables, sometime worst etc.. 

0 3 130
3 REPLIES 3

Is the virtual column concatenating values on the same table, or from other tables? If it's the latter, from some other table(s), I imagine that the time to read of all rows in those other tables is rolled up in the 4-second sum for that VC's calculation time. Concatenation certainly is not an expensive expression. Neither is ~600 records a lot.

As for the ref_rows, these VCs don't really have a calculation time, it's just listed as the time to read the records from the related tables. It's just confusing reporting. Don't worry about those.

24 ref_rows columns is definitely a lot though. That means you have (at least) 24 tables in your app? Just from that fact, I'd imagine there's a high chance that you're doing something...funny... that's not quite "proper", or efficient.

@Marc_Dillon thanks for you answer!

Regarding the first point, the VC is concatenating 2 columns from the same table.. 
Then, I agree with you, because of that, for me at least, it is strange that there is no way (on @Google side) to improve this.. 🙂

Why with 24 tables should I do something that is not proper of efficient??

Anyway, no, I don't have 24 tables.. 
But the objects of this particular table can be linked twice (or in few cases 3 times) to some others tables..
Maybe, for some of these I can replace the ref type column with enum_list with base type ref.
in this way the ref_rows columns are not created.. Right ?
What do you think?

Not much more I can say without knowing more about your app.

Yes, enum-ref is how you get rid of the ref_rows VCs.

Top Labels in this Space