作为新兴的细分技术,大数据技术正在加速驱动企业的数据资产转化为真实的财富价值。Tableau作为敏捷BI的代表,已经被越来越多的企业采纳用来搭建企业的自助式分析平台,这其中包括80%以上的财富500强企业。

正如Tableau所倡导的——“让提问题的人自己找答案”,很多企业的Tableau敏捷BI部署,是由业务系统中的受益者倡导和推动的,因此在部署阶段表现参差不齐。在此,我们结合公司在学习、开发及为客户做技术指导过程中的经验,概括了如何优雅地使用Tableau Server,帮助更多的人在企业部署和高效使用Tableau server平台。

「不著二边,不住中间,二边中间,处处无碍,如此之行,即是中道
不住著于有见,不住著于空见,空有二边齐含,即是正观。」

1、使用数据提取,提高访问性能

Tableau性能表现的首要条件是数据源的表现和数据访问性能,尤其是面临动辄百万的底层明细数据时。Tableau Server还不能作为大型数据仓库服务器使用,需要与第三方的数据仓库结合,才能更好地处理复杂的数据源。

针对非实时生产数据,企业中大部分数据无需实时更新;对于组织中较大的非实时更新数据源,Tableau建议通过非工作时间进行数据提取刷新,从而为工作时间内负担过重的数据源创建数据提取,加速可视化制作的过程。

比如,在凌晨2点时数据仓库从业务系统数据库中抽取昨日数据(增量更新),设置Tableau server refresh extract计划在凌晨3点执行数据提取(完全更新或增量更新),并按照订阅计划在早上8点时将相关报表以电子邮件通知的方式,推送到订阅人邮箱。这种自助化的部署可以充分利用企业的计算资产,实现数据与访问的有机结合。

为了更好地实现这个目的,我们就需要部署后设置SMTP从而支持“服务器事件通知”(建议2),大企业还可以通过分布式架构提供软硬件支持(建议5)。

refresh_extracts1

2、善于使用「服务器事件通知」,驱动业务需求

自助式分析不仅仅需要主动查询,更重要的是通过推送、订阅和分享、评论,把数据与业务紧密结合在一起,这就需要越来越多的被动查询或启发查询的技术。为此,Tableau不断地开发新技术,增强企业客户的数据体验,将数据访问和使用习惯培养为客户的企业文化。

很多客户忽视了Server默认的通知功能,仅需简单设置,即可贴心服务。在服务器上配置SMTP和邮件通知后,服务器管理员、站点管理员或项目主管可以为其他用户创建报表订阅,用户无需登录server,就可以接收到电子邮件的数据报表,实现自助化分析与业务的紧密结合。

而如果管理员在站点“允许用户订阅工作簿和视图”,用户甚至自己订阅工作簿和视图,比如营销主管设定每天上午八点收到前一天的营销报表,运营经理每周一上午八点收到上周的销售报表推送,就可以优雅开始当日工作,如此把Tableau驱动技术与每天的工作紧密结合在一起。

更重要的是,Tableau Server为所有站点默认支持数据驱动型通知。报表用户可以为自己设定重要业务阀值,达到阀值后server会自动向关键人员发送电子邮件通知。比如故障率超过1.5%时,相关的设备相关人员会接收到电子邮件通知,从而提醒及时关注数据变化。管理员则可以在后台清晰地查看所有的通知计划(数据阀值、通知计划和收件人列表)。

serve 数据驱动型通知

最近拼多多因为系统bug被用户领取了200亿的优惠券,想想如果有Tableau Server的警戒推送,会不会好一点?

3、灵活使用站点和项目管理内容

面对不断增长的组织和日益膨胀的数据,每个企业都需要搭建一套具有伸缩性的数据架构,应对未来的企业增长。Tableau Server在部署之处,就为未来提供了硬件纵向扩展和横向扩展的弹性。在内容方面,Tableau优雅的使用首先来自于优雅的内容架构设计,在部署之初,我们需要灵活的使用站点、项目和项目嵌套,确保数据内容和用户都是安全而高效的。

每个站点的内容(项目、工作簿和数据源)与其他站点上的内容完全隔离。每个完全隔离的分公司,建议使用单独的站点隔离;各个站点配置不同的用户,并为每个站点配置一名站点管理员(前期站点管理员可以由数据发布者兼任)。

在站点下面,增加不同的项目和嵌套项目,作为每个部门的内容框架。如果站点中的项目相互之间隔离,则为每个项目设置项目级别的权限设置。每个项目设置项目主管,在项目复杂度比较低时,可以不设项目主管,权限管理由站点管理员负责。

屏幕快照 2019-01-21 上午8.27.18.png

在此不得不提一点对发布者用户不够优雅的事情,为了增强数据安全,建议在项目级别设置锁定权限,确保项目中的工作簿和视图都会继承模版中的默认权限,从而防止发布者以“所有者”的身份修改发布内容的权限,导致数据的扩散。

4、合理部署用户权限

在企业中实现高效的受控自助分析,关键在于架构设计和用户权限设计的合理性。Tableau设计的用户权限由许可证类型、站点角色和内容权限三者共同决定。最高的“权限可能”来自于站点角色,实际的权限能力来自于内容的赋权。

tableau server permission update

Server的权限评估规则充分考虑了安全性的需求,管理员和项目主管要充分的了解才能安全有效地部署权限分配,这有助于实现企业的安全管控,即便承担一些过度限制的代价也值得。

Tableau server permission new 0209

针对权限管理的最佳建议是:通过项目管理内容、通过群组管理用户,项目权限制定到群组;成熟项目权限锁定到项目。 这样组合可以保证后期的扩展性和灵活性,不会造成“工作簿+用户”设置权限带来的复杂和失控状态。

webwxgetmsgimg.png

5、使用嵌套项目管理开发进度

项目嵌套有两个使用方法,一种是把部门的项目按照工作分为不同的主题,比如人力资源、财务、运营等;还有一种按照开发进度的方法,随着开发进度的前进,把报表从测试环境逐步转移到公开订阅的环境。可以形象地用图像表示如下。

previewme.png

在项目开发的过程中,我们需要大量的事件去调整数据,从最开始的演示报表,到可以相互沟通的beta版本,最后到可供外部订阅的仪表盘,我们可以在项目中嵌入子项目,结合项目级别的权限访问,在灵活访问的过程中兼顾数据安全性。

6、使用分布式架构,充分利用你的软硬件资产

对于大部分中小型企业而言,单节点的Server架构可以满足企业内的访问需求,但是当当用户访问量和数据容量增加,特别是频繁的数据提取任务,我们就需要纵向地扩展计算机硬件,必要时横向地增加Server节点。

鉴于Tableau的Server账号是五个起售,我们建议有条件的企业至少部署三个Server节点,并通过合理分配进程搭建高可用性架构环境。一方面把性能消耗高的创建和刷新数据提取任务,与用户查询视图在物理上分到不同的节点,避免二者的性能冲突,另一方面可以提高系统的稳定性,防止数据丢失和减少宕机时长。

「在安装文件存储的节点上安装的数据引擎实例用于查询视图请求的数据。在安装后台程序的节点上安装的数据引擎实例用于创建和刷新数据提取。在进行性能调整时,这是一个重要的考虑因素。」

屏幕快照 2019-01-20 下午10.00.59.png

成熟和健全的Server环境中,主动查询和被动访问会被同等重视。优雅地使用Tableau Server的标准在于,当你工作的时候,它在为您服务;当您下班的时候,它在为您服务,并在您即将需要它的时候贴心提醒。

希望越来越多的企业充分地利用自己的Tableau资产和硬件资产,并优雅地享受技术进步带来的数据便捷性。

Tableau,帮助大家从问题中寻找洞见——From question to insight.

附:

Tableau Server白皮书

如有问题,欢迎留言。

Jan 20, 2019
Jan 21, 2019 Update
Jan 27, 2019 Revise
Jan 28, 2019 update user permission
Feb 12, 2019 Revise