Problem: Invoking a function using SeriesSplitter does not improve execution time.
Before trying workaround, verify that the data is skewed and that the function that uses SeriesSplitter does not exploit full parallelism. If the data is not skewed and the function exploits full parallelism, SeriesSplitter cannot improve its execution time.
- Invoke SeriesSplitter and the subsequent function in separate SQL calls (as in the first choice in SeriesSplitter Example 2 : Using SeriesSplitter with Interpolator), rather than using SeriesSplitter in the ON clause of the subsequent function (as in the second choice in the same example).
- Adjust these arguments as follows:
Argument Value DuplicateRowsCount As low as possible. SplitCount A smaller multiple (for example, 1) of the number of vworkers in the cluster. RowsPerSplit As high as possible (you want the resulting number of splits to be a smaller multiple of the number of vworkers in the cluster). Accumulate Specify as few columns as possible. DuplicateColumn Omit this argument. PartialSplitID 'true' ReturnStatsTable 'true'