A Tableau Server Admin Toolkit

Hello again,

Here’s another post for you Tableau Server admins. Now Tableau Server runs on Windows. One day I’m sure those fine Tableau devs will release a Linux Server(!). In fact they’d better hurry up or Tamas Foldi is likely to beat them to it!

But Windows it is so we have to deal with it. This is a short post which provides some links to useful utilities that every Tableau Server admin should have in her or his arsenal.

Disclaimer – I’m no Windows Server Admin. If you are, or if you know of great alternatives to these tools then feel free to offer your professional solutions in the comments.

 

Baretail

baretail_thumb_1

Baretail

One of the most annoying things with Windows is the absence of a native ‘tail‘ command unlike UNIX. So if you want to see what Tableau Server is up to when you’re working on it then use something like Baretail to view the log files as they get updated.

The basic version of Baretail is free. It’s easy to use and does the job. It’s also a single executable file so no need to install. I use it a lot.

Screen Shot 2016-02-16 at 12.16.15

Who knew config changes caused worker re-installs?

I’d recommend tailing tabadmin.log every time you log onto your server, regardless of whether there’s an issue or not. You’ll learn a ton about the regular behaviour of the application. See this example screenshot here. I didn’t know that every time you hit OK on the “Configure Tableau Server” GUI then the Primary server goes off and uninstalls the tabsvc service on each worker and then re-installs it. Interesting to know that, and picked up by tailing tabadmin.log with Baretail.

 

Process Explorer

procec

Process Explorer

Chances are you’re all familiar with Windows Task Manager which is the native utility used for viewing process activity on your server. Trouble is, it’s pretty basic and hasn’t evolved too much since it first came out.

 

 

procexp1So instead I use Process Explorer. Has a lot more functionality and is very easy to use. In this screenshot you can see how the tabspawn.exe process has started a number of other processes, whereas the webserver (httpd.exe) runs independently and not under the control of tabspawn.

 

Xperf

xperf

Xperf

Xperf is a handy tool for logging all sorts of detailed operating system metrics. We’ve used it to analyse behaviour of Tableau Server processes in terms of CPU utilisation, memory use, disk and other process behaviour.

Not a tool that you can leave running on your system though as it generates shed loads of output and will burn your disk space pretty quickly. So use sparingly.

 

Fiddler

monitoring-http-traffic-with-fiddler2

Fiddler

Fiddler is a cool application and really useful. It’s primary use is to capture information from programs that use http. I’ve used it to spot issues with the webserver on the Tableau Server or to analyse some of the protocol information for various web sessions on the server.

For example, there was an issue with SSLv3 as per this article. Tableau support ensured us that Server would use the TLS protocol instead, but we had no way of knowing for sure. We used Fiddler to analyse the http traffic and confirm the protocol that was being used. Nice.

 

Wireshark

I like Wireshark. But then again I like anything with shark in the name. I’m a serious shark fan.

wireshark-24

Wireshark

Simply put, if you want to see what’s going on with the network on your Tableau Server then fire up Wireshark. It’ll tell you a lot of info including highly detailed network packet information. It also has pretty nifty colour coding for different packet types which makes usage easy for non-network folks like me.

 

 

Perfmon

42940-ms_perfmonWindows Performance Monitor is another handy tool. It collects a whole load of system metrics such as memory use, CPU etc and creates handy data sets that can be easily visualised (with Tableau of course!). In fact perfmon data is one of the first places we look when diagnosing root cause of issues.

 

JMonitor

I’ve never used this tool, but it comes recommended by a Server admin pal of mine. Glen from Interworks knows as much about everyone’s least favourite OS as anyone I’ve ever met. He’s also a Tableau Server expert so that’s a good enough recommendation for me.

So there you go. A handful of utilities that hopefully you won’t have to use too often. Of course the best way to not have to use these is to avoid issues in the first place. You can help yourself with good Tableau Server monitoring and by ensuring you take backups.

Cheers, Paul

Posted in Tableau as an IT service, Top Tips | Tagged , , , , , , , , , , , , , , | Leave a comment

A Nod to Diversity

Hello all.

COAUxlAWsAAKkefNothing about Server in this post. This one’s all about people. My people and your people – the Tableau Community. And one of the greatest aspects of this community is the sheer diversity. There are people of all ages, all backgrounds, across the whole globe. People from science and tech, others from healthcare, some from charitable orgs, others from big multinationals. It’s great, and makes for a rich and vibrant community.

 

Women in Data

IMG_3195

It’s the #dcdatawomen

But one of the most compelling groups (for me anyway) is that of Women in Data – aka Data Plus Women, which has been championed passionately by many (but in particular Emily Kund) in the Tableau community, and also has support from other areas such as the folks at Datatech Analytics and Precision Sourcing in Sydney.

There are all sorts of initiatives, all focused on celebrating the achievements of women in a traditionally male-dominated field.

From local meet-ups, to Womens Empowerment Visualisations this community is growing and growing. And it’s now getting some real traction with high-quality events like the #dcdatawomen club.

 

Screen Shot 2016-02-18 at 17.20.03

Women in Data Sydney #WIDSyd

And just this week it was great to see our friends from Down Under getting in on the act with the Women in Data Sydney meetup (#WIDSyd). This has been expertly championed by the folks at Precision Sourcing as well as Fiona Gordon of Optus & Eva Murray.

 

 

 

 

There’s also a much wider focus on Women in IT in general, as demonstrated by the recent Information Age Magazine Women in IT awards in London.

 

Women in the Tableau Community

There are ton of women doing great stuff in the Tableau community. To name just a few – Kelly Martin, Anya A’Hearn, Jewel Loree, Emily Kund, Donna Coles, Jen Vaughan, Sarah Nell, Fiona Gordon, Emma Hicks, Jen Underwood, Cole Nussbaumer, Jen Stirrup, Emma Whyte, Tiffany Spaulding, Brit Cava, Bridget Cogley, Eva Murray, Lauren Rodgers, Michelle Wallace, Brittany Fong & Alex Duke.

I’m bound to have missed some, but these are people doing great things every day that make my life richer and more fun. So thanks to you all.

 

Here come the girls – and guys..

One thing to remember, these events are not just for women. If you’ve got a Y chromosome then you can also attend. It’s all about celebrating female achievement, not a closed club for women.

So if you get a chance to attend one of these events then do so. For example the Data + Women Meetup at Tableau Conference 2015 had plenty of male representation and support.

 

So there you are. A small nod to diversity, and one of the many things that makes the Tableau community so rich.

Cheers, Paul

Posted in Opinion | Tagged , , , , , , | 2 Comments

How to Build a Tableau Support Team

Hi

So you want more about how to build that awesome enterprise Tableau service? No? Oh. Well tough – I’m gonna crack some more knowledge eggs on yo ass. That’s what the kids say these days isn’t it?

This time, it’s a big one. How to build a team to support that Tableau environment. As with most of my posts there are many ways it can be done but I’m going to describe what I’ve got in place. And it’s working pretty well even if I say so myself. Ner ner…

This post is going to concentrate on people-related aspects of your support team, rather than technologies. There may be another post on the way about that depending on whether anyone bothers to read this one other than Mrs Ninja.

Before I kick off, I am aware that most of these IT service posts don’t have the sexy factor of all those other cool blogs about Level of Detail (LOD) calcs, viz design or those games that people keep creating in Tableau. BUT – if you want to get Tableau to take off in a massive Enterprise then these are the things you’ll need to consider. Get one of them badly wrong and your dream could become a nightmare. So I don’t care if you don’t think it’s glamorous.

 

Some assumptions

I’m gonna assume that you’ve already been through the aggro of fighting for precious headcount and that you have what you have. Hopefully that will be a good few people, more likely it will be n – 1 where n = the bare minimum needed… You’re just gonna have to accept that – you’ll never get enough bodies. If you work somewhere that gives you tons of people – give me a call…. (just kidding boss).

 

Where you gonna put them?

A few options here. We’ve located the whole Level 3 (see later for L1 / L2 / L3 roles) team in London. The main reason for that is that I’m here, so is my manager and the infrastructure is also in London. That gives us better oversight as we get this thing off the ground.

You may wish to consider splitting your team across regions if that is the company strategy. This can give advantages that you have close to 24 hour L3 coverage. It’s great if you get an towards the end of UK time, and are able to then hand off to your USA team, who then run with it and resolve while you’re enjoying forty winks.

In the future the demands of your service may determine where you locate additional people. Much of this may be down to your company strategy, where there may be a preference for lower-cost locations as opposed to paying the big bucks to people to come to London or New York etc.

But you should also be mindful of where your service usage is growing. Using our Custom Admin Views (post on it’s way about them) we can see exactly what regions our Server is being hit from and where our Desktop users are located. If you see adoption in a particular region going through the roof then maybe you should consider recruiting in that locale? We got a tremendous response from our Singapore user base  when we went live. They LOVE a bit of Tableau. But when they are online, we are asleep so they get delayed response to queries. I should probably put someone out there to give them better service.

It’s not all gravy though. Managing remote teams is difficult and takes a lot of organisation.

I’m sure you get the drift. You may not have much choice in location, but then again you might…

 

Support Levels

Typically large organisations will have a standard Information Technology Infrastructure Library (ITIL) model of support roles and responsibilities. To summarise.

  • Level 1 Support – Detects and registers incidents. Can apply basic remediation but more likely to escalate to Level 2. Level 1 also performs incident triage and communication to affected user base.
  • Level 2 Support – More skilled technicians with access to your production environment. Can often solve incidents and manage appropriate user communication. L2 also assist us with Tableau Server upgrades and failover tests etc.
  • Level 3 Support – That’s my immediate team. We have break-glass (non-standing) production access to assist if L2 can’t solve the problem.

More info on these roles and responsibilities here.

It’s really important to get this working well. An efficiently functioning L2 will come to be your team’s wingman, taking the pressure off your engineers. We’re lucky to have a good L1 & L2 setup, so only approx 10-20% of incidents ever filter all the way down to my L3 team to fix. L2 can usually deal with most.

Your L1 & L2 teams will tend to operate exactly by the book, so make sure they have appropriate process and documentation to allow them to succeed. They’ll also probably be supporting more applications than your precious Tableau Server so bear that in mind. Yes some people actually work on other applications not just Tableau – the fools.

 

What’s Your Service Model?

This is a topic that can make or break your service. As far as I’m concerned the only option for a big organisation, where you’ll never have enough people is to go Self-Service.

That means – my team doesn’t create visualisations for anyone. Users don’t submit tickets to us for us to create their vizzes. Why?

  • Context – Users know their data best. They know how it hangs together.
  • Volume – My team wouldn’t be able to handle the sheer volume of requests coming in and that would lead to a slow service.
  • Agility – So many tools at big organisations are mired in red tape, delays and bureaucracy. Not my Tableau service. We’ve cut through all of that crap to give users a tool that they can use as they wish, get results and get into production fast. What’s the point of giving someone an agile tool and then making life hard for them to get results?
  • UX –  I love it when a user thinks they are not technical enough to use Tableau. I tell them to go and try it and come back in a day if they are still stuck. I find they come back in a couple of weeks instead, having had a blast. If we just did the work for them, then they wouldn’t get that magical UX that we all love, and they’d think Tableau was just another tool. So I want them to do it themselves, and get that brilliant realisation that they’re using a fantastic application.

So we make sure users know this is a self-service model, and a true Data Visualisation Centre of Excellence. Check this post for how I constructed our CoE. I’ll be doing another post later on how this service model hangs together.

In summary, because we don’t create vizzes or datasources for users, we have time to concentrate on the extra value items that differentiate us from other IT services.

 

Your Team’s Roles

So what type of Tableau work will your team need to cover? We kinda bucket our tasks into the following groups

  • Engineering – Building, customising and integrating our beautiful Tableau Server with other systems. Upgrades, tuning & generally being nice to it.
  • Training – Delivering our World Famous training syllabus, Dr Sessions and all the other goodies detailed in this post.
  • Consultancy – Helping users with visual analytics, issues, performance, or anything else they want.

So you’ll have to decide if you want each person in your team to be able to cover the whole spectrum of tasks, or do you want to have specialists? I’m lucky enough to have a cracking team, where my girls and guys can swap between any of these buckets with relative ease. It’s still cool to dedicate one person to user work and the other to engineering for a time though, but be aware there may be an impact when one is on holiday.

We have chosen to keep the training programme operated by one person though, as this has allowed us to build up a more consistent programme that can be tweaked and refined.

So because we empower users to create their own content, we can dive head first into all this juicy work. It’s interesting for us, and users love it.

 

Adding The Gloss

Some other activities my team perform as part of our service. I class these as the glossy items as I don’t see any other IT services doing them. And the reaction we get from our users is phenomenal.

  • Makeovers – We pick a viz, download it, make it loads better, send it back to the user with some notes on what we did and what they can do to better understand why we did it. Always a winner. Who doesn’t like their work being made better for free? Needs sensitive communication though as we don’t want these to be seen as a criticism of someone’s work.
  • Competitions – We’ve got a weekly challenge competition going on and we periodically do other larger viz-offs. We get Tableau involved in the firmwide Hackathon events and offer swag or dedicated time from the team as prizes. We also encourage users to get involved with things like IronViz.
  • Interviews – Our series “Agile BI talks to…” is proving popular. Basically an internal version of the “2 minutes with…” interviews that we do on this blog. Users love a chance to sell themselves so we have a queue of people wanting to take part.
  • Champions – This is an internal version of the Tableau Zen Master programme. It is great for building engagement, encouraging competition and driving up standards across your user base. We currently have 2 Champions but I know there are several users who are desperate to be recognised as a Champion. This is a 2-way initiative, Champions sell and evangelise our service and in return we give them extra insight into the product, vendor etc.
  • Proactivity – Using our Custom Admin Views (wait for post on those please) – we can tell when users are having a bad experience with Tableau – usually down to slow performing visualisations. So rather than have them complain, or suffer in silence, we can reach out and say “We think you might have a problem, let’s fix it”. This usually blows them away. I’ve had comments back like “This is the first time I’ve EVER had an IT team come to me and tell me I may not be getting the most out of their tool – I usually have to complain first – it’s incredible!”.
  • Tableau Touchpoints – Again, using our Custom Admin Views – we can tell who is engaged with our service. And we can tell what rank they are, and where they work. So I spend a lot of time reaching out to these people (the more senior the better), and making sure they are fully aware of the services we offer. I’ve packaged it into a standard experience called Tableau Touchpoints. Told you I was into branding…
  • Polls – Simple. Think of a question, put it to a fun vote. We have one on the run at the moment called “What is your favourite chart type?”. Gets people talking and interacting. Sometimes it gets heated. But it always gets people clicking on your community page.

 

You’re Certifiable Quint!

quint

Quint was certifiable, just not in Tableau

Try and get your team certified. You want to be seen as the experts then you need to wear the badge. While certification certainly isn’t a substitute for on-the-job experience, it does give that air of confidence to your users. It’s also fun to do.

Senior management will also like to demonstrate to the business that your Tableau service is manned by highly skilled, vendor certified technicians. So more of a branding exercise but still very much worth doing…

For more info on Tableau Certification check this out.

 

Monitor Your User Base

One of the things that tends to happen with Tableau is that *some* of your users will totally fall for the tool. Just like I did and many of you out there. These are people you should be aware of as they are heading down that path to wanting to make Tableau their whole career.

Keep an eye on users that are spending lots of time with the tool, have seriously engaged with your mission or that have been demonstrating great expertise. They could be potentially interested in moving to work for your team. I get asked regularly by my user base if there are any jobs going in my team. That’s obviously cos I’m an amazing boss and we have it totally going on – who can blame them. It’s got nothing to do with Tableau…

But seriously, rather than going out to market and risking getting the wrong person in, the answer to your resource issues could be right under your nose.

 

Freedom of Expression

1000509261001_1231344818001_Bio-Biography-Jackson-Pollock-LF-FIX

Let your team express themselves (with data, not paint)

I think it’s really important to allow your staff to express themselves. Data visualisation is a creative art, and allowing your team a free mind is critical to their creativity, enjoyment and success.

I make sure my team know that I’m all for them blogging internally & externally, interacting on social media, building contacts and going out to our user base proactively to help. If they see a viz on our server that they think they can improve then they just go for it. If they want to dive more into a particular user’s requirements then just do it. Wanna write a blog – do it already!

This applies to contractors & consultant staff also. I want consultants to leave having developed into more able technicians from having worked with my service – I don’t regard them as hired gun resources to squeeze work from, they are valued contributors to our mission.  I find that consultancies really appreciate this approach and it has led to us building some great relationships with consultancies and individuals alike.

I’ve heard you even have to give your team days off. They’re called “holidays”. Yeah I know, it’s a legal thing apparently. Won’t catch on.

 

Freshen it Up

I actually operate a model where I swap out consultants every 6-8 months regardless of how well they are doing with us. I do this because it is useful to get a fresh perspective on our environment, with each new person bringing something different to the table. I also do this for the benefit of the consultant themselves. No-one wants to be stuck in a single role for 18 months, so I like consultants that work for me to work hard, learn lots, then take those skills away to their new roles. Again this is really appreciated by the management at consultancies as part of our strategic partnerships.

 

The Human League

human-league

We’re only human…

You know what users hate? They hate it when they have to submit a ticket or email to some faceless system, that gets picked up and processed by someone they’ve never met, in some region thousands of miles away. It feels, well, inhuman.

Not in my team. We’re all about being as human as possible. My team all have their individual profile pages on our community site. They have blogs. They have photos and backstories of their career and interests. They advertise their social media presence. They are contactable and approachable. People know who they are, what they look like and what makes them tick. When you deal with my team you are getting a proper service, from real people that you know care.

We get much better user engagement like this and as a result my team has gotten to know some users really well.

 

Change & Incident Management

Ah everyone’s favourite subject. So Tableau is great right, but it’s still only a piece of software. And as such you’re gonna get issues. So you need to handle them correctly.

Firstly, make sure you’re utilising Level 2 support for your changes and handling your incidents. This will take so much heat off your Level 3 team. L2 should be able to do all of your paperwork, manage the communications to your users, and even perform the majority of standard changes like upgrades and config changes.

We always make sure we over-communicate on changes and incidents. We involve power users and get them really ingrained into what we are doing and why we are doing it. Your power users will love to know why something broke, what Tableau are doing about it and when that fix will be implemented because they want to really understand the application. Often they come up with good suggestions as to what you can do to help prevent a recurrence. So get them involved.

I’m not going to go into too much detail on this, there’s a ton of ITIL related reading you can do. The message is – you can get a lot of positives from handling a negative situation well. Show empathy to your users for the impact they have experienced, show you care, don’t hide anything and be totally transparent.

 

A Big Thank-You!

To give great support you have to have great people. People that are skilled, passionate and dedicated. People that care about the service they provide and your mission. If you don’t have great people then don’t mess about – get someone else. You’ll be the one judged by users and management, so there’s no room for sentiment.

I’m lucky. I’ve had really great people. So a big thanks to Jake, Carl, Andy, Emma, Jonathan & Dave for helping to build and run our service!

OK that’s it for this one. There may well be an update to this post as it’s such a huge subject that I’m sure I’ve missed some things.

Now if you’ll excuse me my team seems to have gone to the pub… Err guys? GUYS???

Posted in Tableau as an IT service | Tagged , , , , , , , , , , , , , , , , | 6 Comments

How To Train Your Tableau Users

Hello there,

More tips coming to help you build that dream Tableau Server setup in your global Enterprise…. This time we focus on training.

Training is a critical subject. It won’t take long before someone asks you about your strategy or what you offer so you’ll need to ensure you have a professional sounding answer. Here’s what I offer my users. Hopefully some of this will be useful.

Screen Shot 2016-01-06 at 16.46.07

Training gets pride of place on our community site

General Considerations

Before I get into the specific offerings there are a few things you need to consider.

 

Branding is Critical!

So before I describe what we offer, you’ll notice that we have snappy names for each of these offerings. It’s not just “Tableau Training”. Much of Tableau’s success is down to stellar marketing and branding – take “Tableau Dr.” for example.

So make sure you think about what you are offering, how it will be perceived and how you can maximise adoption. A memorable and consistent name is key here. Each offering also has a nice-looking one pager in our Sharepoint slide library and an appropriate user-facing page / description on our community site so that we can give people all the info at a moments notice. The more effort you put into branding the better things will be.

You’ll also find that any of these offerings are easily transferable to teams / services that may be related to your area so there are a ton of collaboration opportunities here.

 

Consider the Timezones

If you’re like me then you’ll have users all over the globe. That means timezone aggro. You’ll generally need to double up most of your offerings. We are based in London so we have an early session for Asia/Pacific and an afternoon session for Europe/Africa/USA. Users will really appreciate this extra effort.

 

Don’t Worry About Attendance

It’s important not to get fixated on how many people are attending your sessions. Sometimes we get 3 people, sometimes we get dozens. Don’t worry about it. Training 3 people is better than none. And often the smaller sessions have better engagement.

 

Manage the Schedule, Don’t Let it Manage You!

You’re gonna get a LOT of requests for training. Make sure you control the schedule. Don’t be scared to tell users when the next scheduled session is and that they can join it. Don’t be scheduling things on demand of users or you’ll lose control completely. If training is regular and consistent then users will settle into a pattern and you’ll be able to manage your team’s time much more efficiently.

 

Track your Results

Training gets a lot of focus with senior management. You (or your manager) will get asked plenty about how many people you’re training and from what business area / region they are.

As we are all data people it’s much better to SHOW the execs the data rather than tell them you’re just “doing loads of training”. We have several Tableau vizzes that track the attendance at each of our training offerings. We then blend that with staff / hierarchy data to allow detailed reporting on all of the modules. That makes a much better impression.

For example just checking our viz now I can see that my team has done 545 Tableau Dr. Sessions this year, covering 277 different individuals. That’s almost 550 man hours of training on Dr. Sessions alone. Right there, evidenced and visualised. That makes a much bigger impression with the folks at the top.

unnamed

Tracking our training…

Don’t Get Lazy!

All this training can be a real time-burner. I’m sure some of you are thinking why don’t you just record the sessions and chuck the video online. And we get asked that. But never under-estimate the value of Instructor-Led sessions over videos. Our sessions are interactive, dynamic, enjoyable and make the users feel valued. They can be funny, and go in different directions according to the particular vibe in play. So don’t cave in to laziness, make sure the sessions happen and that they have that human touch.

So those are the general things to be aware of. I’ll now describe the specific options we have for training at my organisation.

 

Specific Training Offerings

Tableau Self-Learning Pipeline

I love self learning. Getting stuck into a manual, book or video. Or just firing up Tableau and seeing where it takes me. And you’ll get a lot of users that are the same. It’s always great to allow the self-learners to flourish, and it has the added benefit of not using your team resources.

You’ll get asked these questions hundreds of times, so make sure that you have all the relevant materials easily accessible on your community page.

  • What is Tableau?
  • How do I get Tableau?
  • How much does Tableau cost?
  • How can I get started with Tableau?

Our 101 page is top of the Community site in a super easy-to-find location. We refer our users to

This is generally more than enough for your average self-learner to get stuck into.

 

Create a Training Hierarchy

Users operate at different levels of ability and interest. So it is important that your training caters for that. It also looks great if you can demonstrate an end to end understanding of training. In addition to the self-learning pipeline, we offer the following.

 

Tableau Desktop Training Syllabus

This is my main training programme for Tableau Desktop users. It consists of 7 modules, each conducted once a month, with a session in the morning to hit APAC users and one in the afternoon to cover EMEA/USA users.

  • Module 1 – Introduction to Tableau
  • Module 2 – Data Visualisation
  • Module 3 – Table Calculations
  • Module 4 – Blending & Joining
  • Module 5 – Creating Effective Dashboards
  • Module 6 – Performance & Troubleshooting
  • Module 7 – Using Tableau at THIS ORGANISATION
Screen Shot 2016-01-06 at 16.41.58

Our training syllabus

Content is self-explanatory from the headings, but module 7 may seem odd. This is actually a pretty important consideration in large organisations where no two Tableau deployments will be the same. There will be organisation-specific nuances or considerations in many aspects of using Tableau and our place is no different. Much of this focuses on purchasing / onboarding, getting started, and change / incident management procedures, often a source of confusion for users.

Tableau Dr. Sessions

images

The Doc is in!

Ok so you all know these. The famous one-on-one consultancy time that Tableau offer at conferences. That’s all this really is, but we find that our users love the dedicated time to discuss whatever Tableau related topics they want. Many often come back for repeated sessions and some are almost data hypochondriacs!

The Dr. Sessions have been a real success. People at high-pressure organisations like Investment Banks, especially senior folk, really understand and appreciate the importance of that dedicated, individual, focused consultancy time. Time is the most precious commodity in such an organisation and you’ll find that you get some serious kudos for these.

When you’re at conference and see people gagging for Tableau Dr. Sessions, imagine what that would be like at your own organisation. Super-cool aint it?

 

Tableau In Focus

This offering is really cool. These are monthly Webinar sessions, again one for APAC timezone and one for EMEA/USA timezone. They are conducted by experts from Tableau, tailored to UBS requirements.

Subjects have included

  • Five Ways to Improve Dashboard Performance
  • Data Blending & Joining
  • Table Calculations
  • Deep Dive into LOD Expressions
  • Advanced Mapping
Screen Shot 2016-01-06 at 16.43.15

Tableau In Focus

Again, the fact Tableau are prepared to conduct these for us not only gives us valuable extra learning offerings but makes my users feel even more special than I know they are! We get great feedback, with users thrilled that we have such a good relationship with Tableau. That all gives them confidence in our service, and that is critical.

 

Tableau Executive Track

OK so this is an interesting one. We get a lot of senior folk asking for Tableau training. That’s very encouraging, obviously, but your average MD isn’t gonna sit through an hour Webex on LOD calcs.

So – what we do is our “Tableau Executive Track”. That’s a 1hr session, ideally in person with my laptop where we plan to cover the following.

  • Overview of the Tableau Service
  • Introduction to the Tableau Server
  • Showcase of current use across the business
  • Demo of custom admin views & introspection
  • How to build basic views in Desktop

In reality we often don’t get 30 seconds into this agenda before it is taken somewhere else, at the subject’s discretion. That’s cool – it’s what senior folk do and you need to be prepared for it. But it’s also important to come armed with an agenda to show you have a plan. Don’t just rock up and say “whadda you wanna know?” – you’ll get eaten alive.

Screen Shot 2016-01-06 at 16.43.24

Tableau Sr. Management Training

This is a really popular training offering, with many seniors having attended or planning to attend. It shows we are putting a great deal of thought into our training and that we are flexible enough to adapt to the variety of users we have.

 

Content Specific Training

Sometimes we get asked, “I’ve been sent this dashboard but I have no idea how to use it”. Well that’s NOT something we assist with. Our service is totally self-serve and it’s the responsibility of the dashboard author to

  • Ensure they have followed best practice
  • Include clear instructions for dashboard use or a link to a page that has such information
  • Ensure that their audience is briefed and aware of the dashboard usage

This is NOT down to us. We spend a lot of time policing content to make sure that authors are mindful of this as a dashboard that is hard to understand can adversely affect perception of the tool / service as a whole.

 

Wrap Up

So that’s what we offer. Aint it a lot? And boy is it important to the success of your service. Training can make or break a service and between you, me and the whole Internet – a lack of training can be used as an excuse for not engaging, or not performing. It’s rare but it happens.

Training your users should be enjoyable. If you find that it is becoming a pain then take a step back, consult some of your power users and modify your offerings.

In the time I was proof-reading this post the excellent Carl Allchin, who implemented much of our training when on site with us, posted some of his own thoughts on the Information Lab blog. Check them out. Also a big thanks to Andy Pick who has delivered dozens of sessions for our users.

As always I’m happy to jump on a call and discuss any of this. Now if you’ll excuse me I have a training session to deliver…

Cheers, Paul

Posted in Tableau as an IT service | Tagged , , , , , , , , , , , , , , , , , , , | 7 Comments

How to PROPERLY Back Up Your Tableau Server

Hello there,

Whadda ya mean you didn't take a backup?

Whadda ya mean you didn’t take a backup?

Time for another post about Tableau Server and how to get the best out of it in a large-scale, enterprise deployment situation.

Today we are focusing on how to PROPERLY back up your Tableau Server installation.

Like many aspects of enterprise services, this is a simple concept, but one that if you get wrong, can spell disaster. It always amazes me how many people / organisations don’t do this properly or even at all.

You know how annoyed you get when your mum tells you she isn’t backing up all her family photos – well that’s what I get like when I see IT systems neglecting backups.

Note this post refers to a standalone Tableau installation with a manual failover to DR. We don’t yet have a clustered environment. I’ll update the post with considerations when we implement that.

 

What’s a backup?

Seems a simple question, and there are a number of different types of backups that you can take, each useful in different situations. Here’s what I’ve got in place:

 

 

Full System Backup

This is a complete dump of the server filesystems to disk (or tape – there’s still plenty of tape backup infra out there). Most likely it will be one of the big vendor products that look like the mothership from Close Encounters of the Third Kind.

Your full system backup should be set up by your server team when you get your machine. However, the principle of “trust no-one” applies here as always and it’s up to you to check the following:

  • Have the backups been set up at all?
  • Are they backing up all the filesystems? – Many times I’ve seen that only operating system partition backups have been set up, and I’ve had to request the application partitions be included.
  • Have the backups been succeeding? – Get your backup team to send you a report every month of backup completion. They don’t always succeed and you probably won’t be told that there has been a failure.
  • If you need to perform a restore, do you know the process and how long does it take?

If you get the okay on that then you’re good. But only as an insurance policy. Full system backups can take a long time to restore, and may only be weekly so you could end up losing data even if these are in place. It’s up to you to ensure you’re covered rather than rely on other teams doing things correctly.

 

 

Nightly Tableau Backup

There’s no excuse for not having this in place. It’s easy to set up and it is a case of when rather than if it saves your ass.

The tabadmin backup command gets Tableau Server to dump all content & configuration to a single .tsbak file. You don’t have to stop the server to do this and it doesn’t seem to impact performance too much while it is running so this should be the first backup you configure.

A simple script like this will do the job.

@echo OFF
set Binpath="D:\Program Files\Tableau\Tableau Server\9.0\bin"
set Backuppath="D:\Program Files\Tableau\Backups\nightly"
echo %date% %time%: *** Housekeeping started ***

tabadmin backup %Backuppath%\ts_backup_ -d
timeout 5

tabadmin cleanup

move "D:\Program Files\Tableau\Backups\nightly\*" \\\tableau_shr\backups\nightly\
echo %date% %time%: *** Housekeeping completed ***

The tabadmin backup command does the actual work here, dumping everything to a file. Always a good idea to run tabadmin cleanup afterwards to remove logs etc.

We run this script at a quiet time for the server (not that there is one in my global environment). We use the Windows Scheduler on the server but I’d recommend using a decent scheduler like Autosys or whatever your enterprise standard is as WTS is pretty poor.

IMPORTANT: You may have noticed the move command at the end there. That takes our newly created backup file and moves it OFF THE SERVER to a share drive accessible by my backup server. Why? Well what happens if you lose the server and your backup file is on it? You may as well have no backup. So move it somewhere else.

Update – this tip actually saved my ass this week when we lost our entire VM cluster (er.. hardware team – *cough* – what’s going on??) . We were able to failover to the backup server successfully. Going forward we will be soon implementing Tableau’s High Availability capability.

Do make sure you rotate your backup files with a script that deletes the old files or your share drive will fill up. I keep 4 days worth, just in case the current file is somehow corrupted – rare but can happen.

 

 

Weekly Restart

You may know I’m not a fan of running enterprise apps on Windows. I prefer Linux for a number of reasons that I’m not going to go into here. I know many users want Tableau Server on Linux, and the amazing Tamas Foldi has only gone and written it himself – so one day we may see it.

Anyway, with Windows apps I always build in a weekly application restart. In our case every Saturday morning. That involves a server reboot (to clean out any OS related temp stuff), application restart and a tabadmin cleanup. The tabadmin cleanup with the server stopped has the added bonus of clearing out the temp files (doesn’t happen when the server is running). These files can get pretty big so worth clearing out.

 

 

Virtual Machine Snapshots

If you’re running on a VM then you may be able to utilise the VM snapshot facility. Contact your VM admins for details. I’ve not needed to implement this but I know some that do. VM snapshots are super handy.

Do be aware that Tableau don’t seem to support this though..

Screen Shot 2015-11-11 at 19.11.48

 

 

Config File Backup

Sometimes it’s handy to just back up your Tableau Server config. I’ve got a script that grabs all the .yml and template files in my Server directory, zips them up and moves them off the server. Pretty useful to refer back to old config settings if you need to. Make sure you include workgroup.yml.

If you’re being really good then you’ll be checking your config files into a revision control repo like SVN.

 

Site Specific Backups

Tableau Server allows you to backup per site. This doesn’t give me much extra but I know in orgs that have lots of sites, or a site per team / business unit it can be very handy.

One thing that isn’t great about exporting a site is that the site is locked and inaccessible as the export is taking place. See Toby Erkson’s blog for more info on exporting a site.

 

 

Backup File Size & Duration

As your environment grows you’ll need to be mindful of the size of your backup file. Mine is around 16GB and takes well over an hour to write. Takes about 25 mins to restore. You’ll need to understand those numbers as your system matures.

unnamed

Backup files can get pretty big

Another variable that can affect backup time is the specification of your primary server. If your primary is low spec then you’re gonna get a longer time to write a backup. I don’t have any stats on that but I know it is true. Contact Jeff Mills of Tableau if you want more info on Weak Primaries & backup times.

 

 

Backup Your Logs

Less important this, but handy to do on a weekly basis is to zip up your logs. We have a much better solution for logfile management using Splunk – you’ll see a blog about that in the future.

 

 

The Most Important Bit – TEST YOUR BACKUPS

OK so you’re backing up like a man / woman possessed? Fine. You’re only as good as your last restore. So TEST your backups periodically. Files get corrupted and you don’t want to be discovering that your only backup is broken when you need it.

OK that’s it. Backups can save your life – don’t ignore them. Paranoia is king in IT!

Cheers, Paul

Posted in Tableau as an IT service | Tagged , , , , , , , , , , , , , , , , , , | 15 Comments

10 Thoughts from Tableau Conference 2015

Howdy y’all,

What a setting..

What a setting..

Yeah it’s 2am and I’m wide awake. Coming down from a great week at Tableau Conference 2015 in Las Vegas. So I thought I’d knock up a post about how the week was for me.

 

 

Thought #1 – “WTF?!”

Er...

Er…

Turning up for registration on the Sunday, the last thing I expected to see was an 8 foot high poster of my ugly mug grinning out at me. I saw some younger children at the event and they would surely have nightmares at such an image. Then there’s the question of my image rights… Tableau we need to talk about that…

Although it did allow people to get their #picwiththepauls

Francois gets his #picwiththepauls

Francois gets his #picwiththepauls

 

Thought #2 – “Wow it’s so great to meet you at last / again”

TC is all about the people. It was great to meet people that I’ve been interacting with all year. Some of these were existing relationships, and others were meeting for the first time. Too many to name but I was really pleased to finally meet George Gorczynski, Steve Fenn, Mat Hughes, Jen Vaughan, Fiona Gordon, Jon Boeckenstedt, Ken Black ( & Jett) & Mike Moore.

It’s great when I meet someone that deals with Server rather than all you Desktop jockeys. See us Server folk have a secret handshake and knowing look in our eyes. We know what really matters in Tableau!

It was also great to see the new Zen Masters. Especially the British contingent – my pals Chris Love & Rob Radburn. Awesome stuff.

 

Thought #3 – “The devs smashed it”

I was delighted at the product enhancements announced this year. Functionality that is really going to make a difference to the ~4000 users I support.

It will be interesting to see which features really capture the imagination of my user base, but I can anticipate cross DB joining, union &  global filters being very popular, as well as the user home page on server.

We're not worthy..

We’re not worthy..

But I kinda gave my position away as to what made my day in terms of new functionality – yes that pic does show me bowing down in homage to Version Control. In front of 11000 people. Hey I’m not embarrassed, it took all of my self-control to prevent myself from storming the stage and giving the guy a hug.

 

Thought #4 – “Isn’t technology great”

My conference experience was massively enhanced by a couple of tech items.

Firstly the hugely useful Tableau Conference app. I love the way the organisers monitor the number of favourites a session gets in order to determine of the room allocation is suitable for thee demand.

Secondly, WhatsApp. Despite having a crappy name, this app was great for keeping in touch with colleagues and friends. My pals at The Information Lab are always super-concerned with the social aspect of events and set up a WhatsApp group to allow us to sync. Before we knew it there were 50 members and it became the prime method of determining what bar everyone was in or what session people were at. Great stuff.

 

Thought #5 – “Las Vegas – oh dear me”

download

Fabulous? Erm…

I’ve been to Las Vegas once before. Just for a couple of days passing through. I recall not being too impressed back then, and this visit just confirmed my earlier thoughts. While I’m undoubtedly amazed at the imagination and brilliance of the designers that constructed some of the buildings, I’m still left with a feeling of disgust and depression at the underlying tone of seediness and corruption. It offends pretty much everything that I stand for.

I hope some of you managed to take a virtual shower by getting out to the Grand Canyon or surrounding areas like Bryce Canyon which are stunning. That’s Las Vegas for me. You can keep your Casinos.

 

Thought #6 – “Why can’t we just have one big global time zone?”

Jet lag sucks. I propose we have one mega time zone (GMT of course) and stick to that. The rest of the world would have to work in perpetual darkness but you’d soon get used to it. Change your goddam date format while you’re at it.

 

Thought #7 – “That’s the best session I’ve ever seen at a Tableau Conference”

I hope some of you went to the talk by Jeffrey Shaffer & Andy Kriebel entitled “Dear Data Two“. Read the abstract if you want to know what it was about but suffice to say I found this talk incredibly engaging. It covered a huge variety of data viz examples, all done with fun and humour. It was also technical enough as the vizzes were also constructed in Tableau. I loved it. Original, brilliant and emotional at times, this was everything a TC session should be. And told by two natural presenters on stage.

Another stand-out session was “The New Tableau Web Data Connector: APIs, JSON & Javascript for Dummies” by Craig Bloodworth. This was a perfectly pitched run-through of the WDC and gave me real confidence that I could go and build one myself.

 

Thought #8 – “Nice one @cheeky_chappie”

Safety first at Paul's talk

Safety first at Paul’s talk

I tend to hang around a lot with Paul Chapman. No I don’t know why either, but it happens. And it was great to see him absolutely smash it with his presentation “A Single Shade of Orange“. He’s a #futurezenmaster for sure.

He has been ably coached by an expert road crew (myself & Tom Barber) so we take some (most) of the credit for his success.

 

Thought #9 – “I wish I was on that stage”

I’ve spoken at the last 3 Tableau Conferences (2 in London & also Seattle). My application was rejected this year to rightly give someone else a chance. That’s cool.

But I was super-jealous of those that did get the opportunity. Speaking at a Tableau event isn’t like other events (of which I do a few). At TC you’re presenting in front of friends, and people that share your mission. They want you to do well. No-one is watching you and judging, or hoping you don’t do well. They all want to learn from you and want you to rock.

It’s a mega buzz to be up on stage and I’d recommend anyone to do it, even if you feel you’re not a natural presenter.

 

Thought #10 – “This whole thing isn’t the norm”

Code. That’s all Tableau is. Computer code. So why has it changed my entire working life in less than 3 years? I think I know the answer. You see in order to achieve this perfect storm an organization needs to nail each of the 3 pillars

  • Application – the tool has to rock. It needs to be easy to use and needs to be able to make your job easier, not harder.
  • Company – The company needs to be solid. Progressive, innovative and approachable
  • Community – You need a great set of users, with a true sense of collaboration and friendship.

In my career I’ve seen many tools, companies and communities. Most organisations nail 1 out of the 3, occasionally you’ll get a really good one that hits 2/3 – but in 15 years of IT, Tableau is the only one I’ve seen that nails each of these pillars and then some.

It sounds almost cheesy to say it but this isn’t the norm. If you’re a 20-something graduate in your first job using Tableau and you think that all tools and organisations are like this then you’d better wake right up now. This is NOT the normal experience. I’m just grateful I found it at all, mid-way through my career. If you’re lucky enough to have discovered Tableau in your youth then WELL DONE! Enjoy it! You’ve hit the jackpot!

So those are my thoughts on another stellar event. See you in Texas everyone!

Paul

Posted in Events, Opinion | Tagged , , , , , , , , | 6 Comments

How to manage Tableau upgrades in an Enterprise environment

Hi,

Been a while since my last post. Been exceptionally busy at work due to widespread adoption of Tableau at my organisation. Usage has doubled in the last 3 months and we now have thousands of users to keep happy. That takes some doing, hence the blog hiatus.

Anyway, time to continue the series on Tableau as an IT Service, with a subject that I’m asked about a lot – just how do you manage your Tableau upgrades in an Enterprise environment?

This is actually a pretty big subject, especially in an Enterprise setup. There’s no perfect way to do it but hopefully some of these tips will be useful.

 

Section 1 – Pre-Upgrade Considerations

To upgrade or not? That is the question

Obviously you’ll need to make some sort of decision as to whether or not you actually need to upgrade. Each time you upgrade a production system you risk impacting stability, introducing bugs or human error. It also needs testing, planning and eats resources and time. So if there’s no good reason to upgrade, then don’t.

Tableau release new versions at a pretty impressive cadence, generally once a month for ‘maintenance’ releases. So for each newly advertised release, take note of the following in order to make your decision.

  • Compelling functionality –  New features are entering the product all the time. Determine what may be useful to your user base.
  • Key bug fixes – Each new version will squash a few bugs. If there’s one that is affecting your users then it may be prudent to upgrade and quieten the noise. Remember that your upgrade may introduce new issues. Take note of the known issues section in the release notes.

Both of these are fully documented in the Release Notes. Review them carefully each time Tableau announce a new version. There are occasions where bug fixes are not announced in the release notes but your account manager will make you aware of those.

Also be aware that new versions might also introduce new bugs / issues. We have had situations where we have been stable, decided to upgrade and then spent the next few months battling newly introduced issues to the point that we probably should have stayed on the older version.

Be aware of compatibility issues

I hear a lot of complaints about compatibility issues between Server and Desktop. So it’s important to be aware of the behaviour between versions. Get this wrong and you may be in a position where users have overwritten content originally created in an older version and don’t have a back up to roll back to. If you are crossing major versions (8 -> 9) for example, then you’ll certainly need to upgrade the Server and Desktops at the same time.

Top tip – it is possible to hack the xml of a workbook to change the version and rescue the situation, provided no edits have been made to the content. The ever-so-talented Jen Vaughan (@butterflystoryexplains all here.

For more details see this article.

Don’t upgrade to version zero

Most risk averse IT managers (like me) will resist the temptation to jump right into that new shiny Vx.0 release the day it comes out. Version zero releases of any software are notorious for bugs and issues, that’s just the nature of software development. So at my org we always let at least one maintenance release slide by and instead go to the Vx.0.1 or Vx.0.2 release.

It can be hard to resist temptation, especially when your users are clamouring for that shiny new version but if there are major bugs in that zero release, then best let someone else find out about them rather than you.

Caveat: This doesn’t always work of course. We waited for 9.0.2 and that ended up being one of the buggier releases. Oh the irony.

 

Understand the new version resource demands

This is important. You may be rocking away on your existing version, confident that your hardware can satisfy the software. But then you upgrade, and all of a sudden that new version eats up double the RAM or batters your CPU. You didn’t see that coming.

For version 9 Tableau released an updated scalability document. Annoyingly it was released quite a while after V9 went live. I was expecting a comfortable read but noticed phrases like the following, which were pretty alarming.

Screen Shot 2015-09-04 at 23.03.31

Screen Shot 2015-09-04 at 23.05.20

Whaaaat?! That led to some discussions with Tableau tech folks (thanks Meredith!) and some fevered testing and all turned out to be ok. But those figures took us by surprise for sure. Don’t be in a position where you upgrade and then suddenly hit a capacity issue that your older version didn’t have.

 

Test it!

Let’s say you upgrade. And it goes wrong. One of the first questions you’ll get asked is “Did you test this?”. You really don’t want to be answering “no” to that question.

You should have at least one non-production environment that you can run tests on. Due to the complex nature of Tableau it is impossible to test every aspect of functionality but you should at least be able to cover a good number of scenarios. You may also not be able to simulate your production load on your test environment but it will be better than nothing. You may find the load testing utility tabjolt handy here. Check Russell Christopher’s guide to tabjolt.

I have the following environments to play with. This gives me a lot of options.

  • Production – Main user facing environment
  • BCP – Disaster recovery environment in case production fails
  • UAT – A mirror of production. Same spec
  • Engineering – Lower spec, used to test the latest version available from the vendor
  • Beta – Even lower spec, used for testing beta versions
  • Alpha – for testing the alpha versions

Ensure that the tests you conduct are consistent, repeatable and that the outcomes are recorded. We use a tool called Quality Centre and the tests are performed by my level 2 support folks. This gives consistency and frees time for my main analysts.

Verify your licence details

Double check your licence maintenance end date for both Server and Desktop. If you’re out of maintenance then you won’t be able to use the application after you upgrade. I’ve seen licence issues way too many times with many applications after an upgrade. You won’t want to be trying to contact your account manager on a weekend to sort out a licence issue.

Opinion – IMHO I would much prefer it if applications didn’t crap out due to licence expiration. In 99% of cases there’s some paperwork misunderstanding that is easily sorted by your account manager. By all means let the application hit you with some warnings and also alert the vendor, but it shouldn’t mean a loss of service.

 

Your upgrade process & strategy

I’m not going to go into it here as it’s a full on subject in itself but make sure you follow your organisation’s Change Management procedure to the letter. Failure to follow change processes is generally a dismissible offence in most Enterprises.

Make sure you advertise your strategy for upgrades and maintenance to your users. You’ll get asked, so ensure this is specified in your Service Document. You may even have standard maintenance windows (e.g. on a weekend) where you can reserve the right to take down the system. Again, make sure that is documented and your users are aware.

 

Section 2 – The Upgrade

Create a package

Most enterprises will use some form of package deployment tool / team to perform the actual deployment of new software. That’s pretty handy. I have over 500 installations of desktop to support and we need to ensure they all get upgraded at the same time. So I can create a software bundle, send to the packaging team and they will then schedule and deploy.

This gives you the chance to include those little extras in your package to give your users the best experience. Here’s what’s in our Tableau Desktop package.

  • The installer exe file
  • A sample “Getting Started” workbook with tips, best practices & help.
  • Preferences.tps file containing customised colour pallettes
  • Most used drivers (Oracle, MySQL etc)

I would love to be able to customise the “Discover” pane to point to some of my internal resources but it doesn’t seem to be possible. Boo.

We also supply custom instructions for the packaging team, such as running the installer with a flag / registry update to disable the auto-update feature that has been implemented in the upcoming 9.1 release. A really baaaaad idea for Enterprise deployments.

One thing to be aware of with packaging is that it can take a long time. From request to deployment, the typical time at my org is an insane 7 weeks! By which time another version is out. We are hoping to speed that up a bit obviously.

Communicate to the max

You can’t over communicate any potential disruption to your service. Make sure a broadcast message goes to your users via whatever system your firm uses. And it doesn’t hurt to follow-up with your power users / senior stakeholders with a personal reminder that work is planned.

Take a backup

Whadda ya mean you didn't take a backup?

Whadda ya mean you didn’t take a backup?

Tableau is one of the easiest applications to upgrade that I’ve worked with. A simple uninstall / reinstall does the trick. But don’t take that for granted – make sure you take a manual backup prior to your upgrade. If you’re not doing this as a matter of principle then you’ll be getting a visit from the boys. And they won’t have had their dinner.

Handily, the uninstall process takes a backup anyway but don’t rely on that, take your own.

You should also back up all your .yml configuration files and ensure you know what each setting is. Tableau should preserve these settings during the upgrade but just in case it doesn’t then it’s handy to have a copy to refer back to.

Server specific considerations

When you uninstall Tableau Server it backs up the content and the settings in the main yml configuration files. That’s cool, but do remember that if you’ve changed any of the other config files then they will be overwritten and you’ll have to make the changes again. For example we change the webserver timeout settings in the file “\Tableau\Tableau Server\data\tabsvc\config\httpd\httpd.conf.templ” – that gets blown away by an uninstall.

There may also be other settings in the Postgres db that you may have modified using tabadmin. Not all are retained from what I can see. Note I’m still researching this so not 100% sure of the behaviour.

Finally make sure you understand any changes to the Tableau Postgres DB schema in the new versions. It has generally remained pretty consistent but if any tables or fields are renamed then that may well break your Custom Admin Views.

Section 3 – Post upgrade

Test it! Again!

Not all issues come to light immediately. Perform testing, keep vigilant and liaise with your users closely in the next few days to understand if the application is behaving as it should be.

Ask for help!

Tableau Upgrade Assistance

Tableau Upgrade Assistance

If all this sounds a bit daunting and you’d like to get assistance then Tableau offer an “upgrade assistance” programme which might be worth looking at. Talk to your account manager for more information.

There are also other guides around. Have a look at this one from our good friends at Interworks.

That’s it for this post. As I said it’s a big subject so do post comments if you feel I’ve missed anything.

Happy upgrading! Cheers, Paul

Posted in Tableau as an IT service | Tagged , , , , , , , , , , , , , , , , , | 3 Comments