我希望有人能帮我回答几个关于Tableau的问题。我不熟悉该平台,但我有一个客户正在寻找一个报告/分析/数据可视化平台,他们可以用于许多内部应用程序(针对他们的员工)和外部(面向客户的互联网登录)应用。
驱动程序是他们的每个内部团队都使用了许多不同的技术,如SSRS,Crystal,自定义ASP.NET控件(Kendo / Telerik等),但现在他们有机会选择一个可以提供服务的通用平台面向企业和客户的解决方案的大部分/全部未来报告和数据可视化需求。
他们正在寻找一个平台,提供从简单网格到基本过滤器/排序/组的所有内容,一直到丰富的图表和带有切片和数据切割的临时报告。
他们并不总是在这些应用程序中创建仪表板,因为它们面向客户,但他们可能希望拥有内部(Intranet)应用程序的仪表板。他们肯定希望能够构建真正的内部BI仪表板,以报告来自所有客户的所有这些在线应用程序的数据,并向他们提供他们的SaaS /面向客户的Web应用程序。
我们主要担心的一个问题是数据的安全性,因为其中一些面向客户的Web应用程序是多租户的,因此我们需要确保数据始终按客户端租户ID进行过滤。此外,我们还有一个非常自定义的安全模型,具有数据驱动的角色,可能会阻止显示某些类型的数据(例如SSN,Salary等)的权限等。
Tableau是否适合此模型,是否可以满足大多数/所有这些要求,还是更适合内部数据?
答案 0 :(得分:2)
应该可以通过设置一个反向代理来完成您的多租户Web应用程序。关于如何使用带/不带SSL的Tableau将Apache设置为反向代理有一个document。
我熟悉如何将Apache配置为反向代理,因此以下是Apache Web server有关如何设置反向代理规则的详细信息。
可能有一些前端以IIS / Nginx结尾的文档,所以你应该自己做一些谷歌搜索。
您需要通过将外部防火墙的访问权限限制为只读页面来强化您的Web服务器配置,并且内部用户可以访问所有页面。由于您提到允许外部用户访问只读页面,因此我假设当用户选择使用过滤器时,来自外部请求的所有请求将只是GET请求和一些PUT / POST请求。所以你可以block external users from any request except GET。对于允许应用过滤器和分组的页面,应该例外。
在您的mutitenant应用程序中,请确保您通过暴露给外部世界的apache服务器URL引用了tableau URL。如果使用未在apache中配置的任何URL,则用户将收到拒绝访问的错误。您需要创建一个只允许外部用户访问tableau页面的角色。要解决多重问题,您需要设置一个cookie或其他东西来识别租户以及类似的东西来识别用户。要过滤SSN和更多信息,您可以使用过滤内容的mod_proxy_html。您还可以使用mod_security module of Apache来阻止SSN和信用卡号码。
参考文献:
答案 1 :(得分:1)
对你的大多数问题都是肯定的 - 只需要一点点印刷。
首先要记住,Tableau主要是关于数据的可视化,因此它非常适合发布只读交互式数据视图。如果您希望允许最终用户编辑数据,您必须通过其他方式执行此操作。幸运的是,Tableau JavaScript API允许您使用自定义Javascript代码与Tableau密切交互。因此,如果您的需求主要是关于可视化,但希望能够触发一些自定义代码来修改某些应用程序中的数据,那么您应该没问题。但Tableau并非专为创建自定义CRUD应用程序而设计。
Tableau服务器的优点在于,许多人可以学习使用它并发布自己的可视化 - 即使他们不知道如何编程。这并不意味着他们将第一次赢得可视化设计奖,或者他们不应该了解数据库如果需要具有良好性能的方式。但它确实意味着最了解数据的人可以学习设计和发布他们自己的可视化,而无需在积压队列上等待三个月,这样一个IT人员就可以改变按钮的颜色或添加字段。获得良好的系统,数据库和可视化人员以帮助培训,组织数据,设置治理和安全规则,优化等仍然是件好事,但业务用户可以学会掌握如何控制他们的信息呈现方式。这是一件好事。
安全问题有几个可移动的部分,通常Tableau的答案通常取决于您尝试完成的内容。 Tableau服务器确实支持使用站点的多租户。有相当灵活的权限和组策略系统。它可以使用SAML进行身份验证,并具有多个功能,可以提供对特定于用户/租户的访问权限。它适用于几乎所有数据库,在某些情况下,您可以将安全实施推送到数据库服务器 - 例如SQL Server。有一个受信任的票证功能,您可以将一些授权决策推迟到另一个服务器,例如Web门户服务器。 Tableau可视化嵌入其他网页时非常有用。
大多数安全用例都可以支持开箱即用,但是有一些复杂的自定义访问控制情况,目前在Tableau服务器中实现起来很棘手。您没有列出正常泳道以外的声音,但了解您的安全模型是否过于复杂的唯一方法是深入细节。希望他们将为想要扩展它的用户发布自定义访问控制API。
答案 2 :(得分:0)
由于Tableau public也基于Tableau,因此我假设您可以使用自己的Tableau基础架构公开仪表板。
答案 3 :(得分:0)
在高级别,您确定可以使用Tableau构建面向客户的仪表板。您可以快速构建和部署这些内容,正如其他人所提到的,您可以使用Javascript API对其进行构建,您可以自定义大部分内容。但它不能为用户交互提供完全的灵活性,如果您使用其他技术,则可以使用。其他选项包括手动编码框架,然后使用图表应用程序。 对于简单的仪表板,如果您已经购买了核心许可证,Tableau将是显而易见的选择。但是,在查看业界正在发生的事情时,Tableau将无法满足所有需求。 如果使用Tableau 1.构建图表/表格/可视化是一种超级简单,高效的方式。 2.您可以向客户公开低粒度数据,因为Tableau的支持性列式数据库引擎,您可能会通过仪表板暴露数百万条记录。 3.您可以使用Tableau的安全性和访问控制机制。 4.正如其他用户所提到的,您可以使用可信赖的票务机制轻松地与其他应用程序(门户等)集成。
Tableau方法面临的挑战。 1.如果你有迟到的交易(在互联网世界中,几天之后将点击标记为欺诈行为,这种情况很常见),迟到的交易,你必须完全刷新摘录,这意味着如果你显示13个月的价值数据,你必须一直刷新所有。现在使用bigData,业务总是需要所有数据,这意味着您最终会在一天内提取数百万条记录。 2.用户交互的灵活性很小,如菜单,下拉等。您必须使用Tableau提供的内容。 3.如果您在同一仪表板页面上有多个图表,则下载基础数据的方式不那么用户友好。 4.在仪表板页面上布置可视化的许多其他挑战,因为没有简单的方法来控制带有像素控制,白色空间等的画布。
在分析用例之后,您应该非常小心,在投资之前,Tableau是否是正确的产品。
Tableau的主要功能来自其用于数据可视化/探索的桌面工具,而不是来自预先构建的仪表板。 祝你好运。