Download as pdf
Download as pdf
You are on page 1of 7
osioarz024, 1209 How to Optimize Tableau Server as a PDF Production Engine Discover the loT App-Store and Connect your devices to the world of loT x RECORD EVOLUTION as i, How We Optimize Tableau Server As A PDF Production Engine Data Strategy & Analytics For over a decade, Tableau has been one of the big players in the realm of analytics and reporting platforms. The Tableau Desktop application helps BI developers yield well- groomed visualizations. Tableau Servet an enterprise-level platform to share reports and imed at che dynamic interaction of its users, eg We value your privacy presentation. At the same time, many sectors st; We we cookes to enhance your browsing experience, serve > reports (PDFs or CSV files). For example, tereormized ad or carton, and analyz our trai. By Deora ag conte a saves rly inspections. In what follows, we consider ai) cootéen. Conkle Poller 7 to optimize the production of 1000s of %G Customize a oy the Tableau Server. ntps:wwwrecord-evoltion delenbloghhow-we-optimize-tableau-server-as-a-pdproduction-engine! wr oaioaz0zs, 1208 How o OptnizeTtleau Severs POF Producten Frans ‘We present the experience we acquired from a client project we recently closed at the credit rating and risk management firm parcIT. ‘The project entailed data engineering and analytics in a Postgres data warchouse, reporting (a dedicated data visualization design in Tableau Server), and automation (application development with Node js and Docker, with a clean frontend written in Javascript, HTML, and CSS). In cooperation with our client, we optimized the production line, presented the data respecting their corporate design & banking guidelines, and secured the quality of the reports via automated tests. The target of the project was to produce 1000s of reports (e.g, credit portfolio, credie rating, model comparison) for one of the biggest bank groups in Germany: Volksbanken und Raiffeisenbanken, as well as various private banks. How About Scaling? ‘The scaling of existing reporting solutions relies on the resources of the Tableau Server. This is often quite flexible as Tableau Servers run not only on bare metal Windows machines but also in clusters as virtual machines. Additionally, a containerized Linux implementation is also possible to set up but trickier to accomplish compared to the Windows version. This suggests that an in-scale production of static reports would be easy via an upgrade of the machine. However, there are several lessons to learn here before you can conclude that your machine needs some boosting. First Steps to Optimization ‘There are several other ways to optimize the report performance (i.e. production time). If you are dealing with millions of rows and about 50-100 columns, you should separate the data sources per dashboard. This is how you improve the dynamic performance. It is a good idea to sontext once for all dashboards. ‘We value your privacy We use cookies to enhance your bring experince, serve |AS persorazed ads or content, and analyze our ate. 8y be extracted as a Tableau Hyper data system (qf Se eset A you connor cookies. Conk Poy ca sary for some use cases. However, if your data eau server employs to keep track of is + t0 be served. Beyond this, one can keep ntps:wwwrecord-evoltion delenbloghhow-we-optimize-tableau-server-as-a-pdproduction-engine! 2 cnoazoze, 1208 How o OptnizeTtleau Severs POF Producten Frans track of and remove the unused columns, and keep the data flow as clean as possible. After all these, how about static reports? The Issue with Tableau and PDFs The Tableau software was not built for the mass production of static reports such as PDFs. So be ready for pitfalls if you need to process millions of data rows presented on 10s of dashboards that are based on 100s of workbooks in order to produce 1000s of PDF reports. One can think that this would be a trivial task for a conventional Windows Server with 64 GB Ram and Intel 8 Core x 2GhZ CPU architecture. This hypothetical Windows Server machine is powerful enough as long as the reports are served dynamically to a limited number of users (order of 10s). However, when dealing with PDFs, the internal optimizations of Tableau work against you. Let’s first understand what we are dealing with under the hood. We velue your privacy \We use cookies to enhance your browsing experiance, serve personalized ads o° content, and analyze our trafic. 8y clicking ‘Accept Al, you consent to our use of cookies. Cookie Policy g framework: an overview ntps:wwwrecord-evoltion delenbloghhow-we-optimize-tableau-server-as-a-pdproduction-engine! osioarz024, 1209 How to Optimize Tableau Server as a PDF Production Engine The Status Quo There are mainly two ways to produce PDFs, PNGs, and CSVs from dynamic reports via filters e.g, reporting year (Y), company (C), and business case (B). Under the conditions given in the introduction, the production time will scale from 10s of seconds to a few minutes per report. This is not ideal, especially knowing that you may have to reproduce the whole batch a few times in case of errors. ine tool for Tableau Ser Itis com: 1 One way to produce a PDF is Tabemd, which installed on your local machine and it sends web requests to the Tableau Server to return a PDF report. The second way is the REST-API that runs on the ‘Tableau Server. It downloads the resulting PDF file to your local machine. Both can be automated by common tools such as Python or Node,js applications to produce multiple reports running through the mentioned filters: Y, C, and B. REST API vs Tabcmd There is one important difference between the two methods. That is the full import option ys. single dashboard import. This means that working with REST API, you need to download the pages one by one and merge them to produce the full report. In the case of ‘Tabemd, on the other hand, the reports will come as a whole. This includes additional pages to discard from your report later. Both methods can come in handy in the context of different cases. For example, many additional test dashboards may require page picking. ‘There is also one shared glitch of both methods structural to the server itself. That is to say, when dealing with PDFs, the internal optimizations of Tableau Server work against you. Tableau uses caching for the dynamic optimization of internal queries (which is not possible to ce the imports slower by a rate of about 0.5% We value your privacy pe usly, but the slow-down sums up to 500% for 1C personalized ads or content, and analyze our trafic Sy \We use cookies to enhance your browsing experiance, serve checking ‘hecep A, you consent to our use of cookies, Cookie Policy TI ime may be too slow to continue at some pe ties. And the backend application might ntps:wwwrecord-evoltion delenbloghhow-we-optimize-tableau-server-as-a-pdproduction-engine! osioarz024, 1209 How to Optimize Tableau Server as a PDF Production Engine drop the database client connection depending on the idle time options. This is problematic for the enterprise-level automation of the reporting. Figure 2. PDF production benchmarking Ac this point, we assume that workflow automation is managed by a backend that connects to a DBand a Tableau Server. The pool connection to both servers provides the necessary data, meta-data, and finally logs the production meta-data to a DB. This being said, we assume that the bottleneck is still the Tableau server PDF production. And under the given conditions above, it still will be. Otherwise, you need to fix the bugs of your application first, say DB queries or workflow management, T O m m co pr 1 We velue your privacy \We use cookies to enhance your browsing experiance, serve personalized ads o° content, and analyze our trafic. 8y clicking "Accept Al, you consent to our use of cookies. Cookie Policy much better than Tabemd in the case studies + of 2-3 times. This is not an order-of- veen 6 hours vs, 18 hours matters when we au Server was not designed for PDF mass or 10 secs per report is a very intricate task ntps:wwwrecord-evoltion delenbloghhow-we-optimize-tableau-server-as-a-pdproduction-engine! caouozs, 1208 Howe Opts Taleau Sena a POF Production Engine ‘This might require a real boost to your existing computational resources (presumably 2x to 4x). If your purpose is to get your PDF reports mass-produced, we can guarantee to improve the production mechanism for you. Disclaimer: We are missing a true per computational resource efficiency argument. REST APIs are really greedy. This means that while ‘Iabemd would use only a percentage of the CPU, REST API would almost always claim the full power allocated to computations. This means all CPU resources minus the background processes. Get in Touch for Projects ‘At Record Evolution, we have been consulting on data science and IT projects for many years, We help credit reporting companies enhance business insights using state-of-the-art visualization tools such as PowerBI, ‘Tableau, and Qlick, all of which can be customized and extended using native Extension APIs. Get in touch to get all the details on implementing Tableau reporting tools to get the most out of your data visualizations. About Record Evolution ‘We are a data science and IoT team based in 1, that helps companies of We value your privacy , , scale. That’s why we've We use cookies to enhance your bring experince, serve personalized ads o° content, and analyze our trafic. 8y reuse industrial loT clicking ‘Accept Al, you consent to our use of 2s fast development cycles cookies. Cookie Policy to benefit from the ind AI. ntps:wwwrecord-evoltion delenbloghhow-we-optimize-tableau-server-as-a-pdproduction-engine! oyoarz026, 12:09 How to Optimize Tableau Server as a PDF Production Engine Book a call now + Previous Post English Platform Advanced Analytics Device Management loT App si Pricing Company About us Become a Partner Career Press & Media Resources Contact Blog Security Statement Terms & Privacy ler We value your privacy Wo use cookies to enhance your browsing experience, serve personazed ads or content, nd analyze our trate. By clicking ‘Accopt A, you consent to our use of © cookies. Cokie Policy \no ntps:wwcecord-evoltion deenbloghhow-we-optimize-tableau-server-as-a-pdproduction-engine/ Next Post W

You might also like