【ArchSummit架构师峰会】精华内容上线75%,AI大模型中台从理念到实践的探索!>>> 了解详情
写点什么

利用 LookML 项目导入功能简化代码可复用性

  • 2020-06-17
  • 本文字数:419 字

    阅读完需:约 1 分钟

利用 LookML 项目导入功能简化代码可复用性

编写 SQL 时,分析师要经常回顾以前编写的查询,以便在适当情况下复用已经创建的代码。遗憾的是,这一存在缺陷的过程会导致复制和粘贴小的查询片段,并重新组合它们以形成新的查询。重新组合 SQL 片段并调试生成的 SQL 语句可能既耗费时间又消耗资源,易出错且扩展性差。

利用 LookML 进行 DRY 数据建模

LookML 提供一种新的高效工具,使建模更快捷、更可复用。进行数据分析时,LookML 会防止您编写重复代码。借助 LookML,只需编写一次代码段,即可将其作为更易于管理的通用、可复用查询组件。在计算机科学中,这一概念被称为 DRY(Don’t Repeat Yourself,避免重复代码),它有助于显著节省时间。据报告,使用 Looker 的分析团队能够平均节省 70% 的时间,部分原因在于采用 LookML 工具以 DRY 原则建模带来的效率提升。



图 1:通过 LookML 将 SQL 片段转换为可复用的代码


一旦编写完模型,Looker 将读取模型并在一个非编码者可访问的可视化点击式界面中呈现模型。当用户构建其查询时,Looker 在后台自动执行生成优化后 SQL 代码的复杂工作。Looker 能够使其生成的 SQL 适应 50 多种特定的数据库语言,以得到语义正确且效率最高的 SQL 查询。


在项目间共享代码

以项目形式组织的 LookML 模型是 LookML 的最高组织级容器。


例如,请考虑一下一个构建项目以描述和计算净收入的财务部门的情况。营销部门可能还要利用这一指标来确定营销活动的盈利能力。为了制定更好的决策,这两个部门协作和共享指标以实现跨整个企业一致的衡量至关重要。


幸运的是,LookML 利用众所周知的机制实现了团队间模型共享 —— 这一机制改编自编程语言的世界。该解决方案称为包管理 —— 几乎所有成熟的编程语言都具有的一个功能。


包被定义为可由另一个程序复用的代码单元(或软件)。包管理器是一个允许查找、安装、配置、更新和删除包的系统。利用包管理器,开发人员不必以人工方式执行这些任务,从而省却了工作并提高了代码一致性。


LookML 的项目导入功能将包管理原理引入您的分析模型。 项目导入允许模型开发人员无需复制和粘贴即可复用来自另一个项目的代码,从而改进模型编码的 DRY 方法并节省 LookML 开发人员的宝贵时间。

企业项目导入:“轴辐”式架构

在大型企业,Looker 部署会增长到核心数据团队不再能够管理每个部门的数据需求并且必须进行某种程度的授权的地步。拆分项目以便每个部门管理其自己的模型变得非常有利,但事实证明,要保持模型的一致性并非易事。


通过允许团队将集中的、高度治理的业务逻辑下推至每个部门的项目,项目导入解决了这一问题。这种“轴辐”(hub and spokes) 式架构在维持一个高效的 DRY 模型的同时,提供了扩展性和一致性。


在“轴辐”式架构中,一个中心数据团队管理核心项目(轴心),而每个部门管理自己的项目(辐条)。轴心包含通用业务逻辑,而辐条包含域特定逻辑。轴心逻辑通过项目导入功能导入到辐条。


借助“轴辐”式架构和项目导入,可以做到两全其美。“轴辐”架构允许每个部门利用分布式、可扩展的建模所有权按照自己的节奏运转,而项目导入可确保每个部门都“讲”相同的、源自领域专家的共享逻辑语言。

LookML Blocks® 的项目导入功能

Looker Blocks® 提供了项目导入的一大优势 —— 基于公共数据集和用例可复用的 LookML 代码单元。例如,Salesforce Block 能够被快速改编为可理解的维度和度量 —— Salesforce 模式中一些众所周知的棘手事情。分析原始 Salesforce 数据或者使用其 API 非常复杂,这使这类块具有巨大价值。


项目导入使开发人员只需引用 Block 源代码的 URL,然后立即在其项目中使用该代码。由于无需对 Block 的内容进行硬编码,开发人员可以很容易地选择更新 Block 的安装,随着 Block 变得更好,开发人员的模型也会变得更好。

了解更多信息

是否要了解更多信息并且开始进行项目导入?查看我们的文档、在社区参与对话以及订阅我们的博客,以了解重点介绍新版本功能的未来更新。

关于 Looker

Looker 是一个统一的数据平台,能够在决策时为员工提供行之有效的业务洞察。Looker 将数据整合到用户的日常工作流,使企业能够从丰富的数据获得更大价值。2000 多家行业领先的创新企业(例如,Sony、Amazon、The Economist、IBM、Etsy、Lyft 和 Kickstarter)信赖 Looker 为其数据驱动文化提供动力。Looker 公司于 2020 年 2 月正式加入 Google Cloud。要了解更多信息,请通过以下方式与我们联系:LinkedIn、Twitter、Facebook 和 YouTube 或者访问 looker.com。


2020-06-17 17:561233

评论

发布
暂无评论
发现更多内容

通过Thread Pool Executor类解析线程池执行任务的核心流程

华为云开发者联盟

后端 开发 企业号九月金秋榜

想要优化K8S集群管理?Cluster API帮你忙 | K8S Internals系列第5期

BoCloud博云

云原生 容器云 K8s 多集群管理

Python 中的 super 函数怎么学,怎么解?

梦想橡皮擦

Python 9月月更

中秋发祝福?一套程序让你成为【相亲相爱一家人】群里最靓的仔

梦想橡皮擦

Python 9月月更

苏州市大数据集团成立!博云成为首批数商代表

BoCloud博云

云计算 数字化 云平台

如何解决 Angular custom library module 在 ng build 时无法被识别的错误

Jerry Wang

typescript 前端开发 angular web开发 9月月更

Seal 软件供应链防火墙 v0.2 发布,提供依赖项全局洞察

SEAL安全

DevSecOps 开源安全 软件供应链 软件供应链安全 软件供应链防火墙

5 行 Python 爬虫代码,就能采集每日资讯@_@

梦想橡皮擦

9月月更

Dubbo 泛化调用在vivo统一配置系统的应用

vivo互联网技术

dubbo 中间件 配置管理

【文本检测与识别-白皮书】第二章:文本检测与识别技术发展历程

合合技术团队

人工智能 文字识别 OCR

因为K8s,阿鹏遇到了人生中第一次职业危机....

嘉为蓝鲸

#运维

你看过字符画吗?用 Python 自己实现一个吧

梦想橡皮擦

9月月更

都 2022 年了,你真的会用 Python 的 pip 吗?

梦想橡皮擦

9月月更

Python 几行代码实现一键抠图,收费应用 BYEBYE

梦想橡皮擦

9月月更

跨模态学习能力再升级,EasyNLP电商文图检索效果刷新SOTA

阿里云大数据AI技术

深度学习 PyTorch 图文检索 企业号九月金秋榜

4步成功将三方库——speexdsp移植到OpenHarmony

OpenHarmony开发者

OpenHarmony

北京Java培训收费标准是什么

小谷哥

Ventana Research|是时候把指标中台纳入企业数据架构了!

Kyligence

数据架构 数据管理 指标中台

YYEVA动效播放器--动态元素完美呈现新方案

百度Geek说

移动端 企业号九月金秋榜 动画特效 AE插件

惊艳!阿里内部JDK源码剖析知识手册,由浅入深堪称完美

了不起的程序猿

Java 编程 程序员 jdk源码 JAVA开发

新来个阿里 P7,仅花 2 小时,撸出一个多线程永动任务,看完直接跪了,真牛逼!

程序知音

阿里P8手写Spring Cloud Alibaba实战学习手册,架构师养成必备

Geek_0c76c3

Java 数据库 开源 程序员 架构

这篇文章教会我用 Python 读取 PDF 文件【收藏即会】

梦想橡皮擦

9月月更

现代化车企——零束科技DevOps研发数字化体系建设实践

嘉为蓝鲸

#DevOps #研发 #汽车 #科技

什么是架构,什么是架构师?

源字节1号

软件开发 软件架构

三三复制公排互助系统开发技术详情

开发微hkkf5566

用区块链思维让可信数据流动起来

旺链科技

区块链 产业区块链 供应链金融 企业号九月金秋榜

BGP劫持原理及如何防御

郑州埃文科技

网络安全 BGP 安全防御

前端培训学习哪种方式比较靠谱

小谷哥

大数据培训和大学相关专业哪个更好

小谷哥

ShareSDK HarmonyOS集成指南

MobTech袤博科技

sdk HarmonyOS

利用 LookML 项目导入功能简化代码可复用性_容器_Google Cloud_InfoQ精选文章