I am currently working on customer with a large data warehouse implementation and trying to figure out how Tableau will fit into their requirements. One of the business requirements was to identify those customers who didn't make any purchase in the last three months but did so in previous period: "customers who left us". I tried to create a set, who made purchases in the last three month so that I could apply this set into the the worksheet of those customers who made purchases in the previous months to simulate "not in" sql operator. My selection narrows down the number of customers who made purchases recently to something around 50K, but from this point on, when I want to put these into a set, Tableau is trying to extract whole customer table, probably to apply the filter in memory. But the customer table has 20+M rows, and Tableau desktop is failing with out of memory error while trying to get this data.
I would appreciate any help or suggestions for the questions below:
1. I am on the right track for the scenario above ? i.e. create a set and then apply it to another worksheet to simulate "not in". Any other alternative methods or approaches?
2. Is there any way, to tell Tableau to apply the set creation criteria in the data source? without bringing whole table.
3. From time to time, I am facing with discussions talking about 100+M rows extractions, but in my case one field select is causing Tableau to consume whole memory. I also tried to create extracts with 20M rows, but failed to do so. What is the method of extracting large data sets in Tableau desktop without causing memory problems?
Unfortunately I cannot send the large data set since it contains sensitive customer information. I created a similar report with demo data, but, due to data size, the strategy worked perfectly there. So, it seems I need to find a way to bypass the sizing problem.
thanks a lot in advance for any suggestions.