随着云计算和用于数据集成、存储和管理的新型数据基础设施的兴起,数据仓库的性质和用途都发生了巨大的转变。即使一些企业酝酿使用数据湖来存储一切,数据湖仍然在为常规分析提供更快的访问和更一致的结构方面提供了很大的价值。
此外,用于流分析、数据准备和主数据管理的新工具可以帮助企业采用更好的数据仓库策略。这里有六种策略,可以帮助企业充分使用新的云数据仓库。
1. 识别过程中的瓶颈
数据分析咨询公司Bartlett System的首席执行官和创始人Adam Nathan,他参与实施BI系统已经超过15年了。虽然在这期间,他发现了渐进式的进展,但他表示,“云服务的进步可能会从根本上改变BI专业人员挖掘数据仓库的方式,从而使BI受益。”
Nathan指出,“获取数据、清理数据、准备数据,并将其与不同的数据源进行集成,一直是IT团队中数据工程师遇到的难题。”使这一挑战变得更加严重的是,数据的所有者,那些真正了解信息语义价值的人,与数据本身是隔绝的。
他认为,“那些几乎没有时间帮忙,而且只了解数据的人,恰恰无法快速得到我需要的东西。”
2. 赋予数据工程师权力
团队现在可以在SQL中进行更多的数据准备活动,包括大数据和半结构化数据。根据Nathan的说法,随着SQL技能变得无处不在,数据工程已经变得大众化了。
由于这些工具变得更容易使用,并且需要更少的分散技能,因此不太需要熟悉多种语言和技术的集中式专家。Nathan认为,“这导致了数据工程师的崛起,反映了应用开发、分析和其他领域的类似趋势。”
数据共享也越来越容易。例如,Snowflake用户可以将数据集以离散的、精心策划的集合,公开给数据消费者,包括:合作伙伴、客户、供应商和其他人。
Nathan解释说,“如果我是一名在人力资源方面拥有良好SQL技能的分析师,我就可以在不需要外部支持的情况下管理和分享我的团队的数据。”
这一点很重要,因为它消除了IT在数据准备过程中的瓶颈。IT团队有更多的时间专注于准备原始数据。
3. 建立分布式管理
接下来,团队需要简化正确的数据进入数据仓库的方式。随着IT部门的退出,团队可以开始考虑将其数据作为企业中每个小组的个人、策划、掌握和认证数据集的集合。
想要人力资源数据的人可以去找人力资源部门共享的数据集。人力资源部门的专家了解如何收集数据,为什么要收集数据,保持这些数据的更新,管理工作,并可以为其他部门的用户提供适当的背景,希望使用这些数据进行不同的分析。Nathan认为:“实际上,每个部门都在提供数据价值。”
其他人可以请求访问权限,但无法更改。这种框架还可以更容易地集成来自给定部门的数据,或者与企业内可用的其他数据集,甚至外部数据集集成。
策划管理策略将数据质量监督从一个中央部门转移到单独的团队,可以提供更大的监督效果。因此,我们可以相信,最好的人力资源数据来自于人力资源共享站点。“这是一个很小的问题,也更易于管理。”Nathan说道。
4. 制定数据合同
分布式管理也带来了一个全新的挑战,即数据集需要保持一致,并以极其谨慎和安全的方式进行更改。“如果对数据的治理实施得不好,就会成为一种自由竞争,这可能是最大的风险。”Nathan说。
数据管理团队需要与每个部门合作,帮助制定数据合同,为他们提供的数据建立服务级别协议。合同有助于确定每个人对可靠性和及时性的期望。Nathan表示,“这可能会使IT部门感到痛苦,因为治理问题和角色的减少。”
5. 考虑不同的观点
Capgemini公司全球洞察力和数据副总裁Avneet Dugal说,“数据仓库有一个令人质疑的名字,那就是它是大型的、难以操作的数据存储库,因此不适合实时分析和决策。”
她看到的挑战是,团队正在试图将所有数据移入数据仓库。将大量的数据转移到另一个平台,并重建经验上可信的数据是一项复杂的工作。例如,企业可以通过根据业务重点(供应链、财务或营销)来组织数据,使其更容易查看和使用。
Dugal还发现将“增量”更新构建为核心处理能力的一部分是有帮助的,这使得数据变化更容易出现在各种分析用例中,并减少了对所有数据的更改,以包括最后一天的更新需求。
6. 简化数据工作流程
ScienceSoft的数据分析部门负责人Alex Bekker表示,“考虑战略和战术层面的管理之间的差距也很重要。”其中一个方面是建立一个精心设计的数据治理框架,以确保数据仓库摄入高质量的数据,这些数据被安全地处理和存储,并且只能根据用户角色来访问。
选择具有大量集成功能的数据仓库软件也是很有帮助的,比如预建的数据源连接器和开放式API,以确保数据仓库的可扩展性。这有助于添加新的数据源以解决不断变化的业务需求。
另一个方面是围绕集成、质量、安全和备份,实现数据仓库维护和管理活动的自动化。这降低了数据仓库的运营成本,并确保高性能和可用性。
Fivetran公司首席分析技术产品经理Veronica Zhai也建议,将关键业务逻辑集中到一个地方。例如,关键的业务逻辑,如 “什么是净收入?”应该在代码中定义一次,放在一个有版本控制的地方,所有分析师和业务用户都可以重复使用这段代码。这也节省了时间,并确保报告的一致性。