Looker BlocksTM 是为常见分析模式和数据源预先构建的数据模型。重复利用他人已经完成的工作(而不是从头开始),然后根据确切规范自定义数据块。从经过优化的 SQL 模式到完全内置的数据模型,您可将 Looker 块为基础,在 Looker 中进行快速而灵活的数据建模。
可用块
你可以从多个 Looker Blocks 选项中进行选择。若要了解当前可用的屏蔽设置,请前往 Looker Marketplace 中的屏蔽设置部分。
我们开发了 Looker Blocks,目的是让数据分析更轻松、更高效。它们按“原样”提供,这意味着今后将不再提供更新。Looker 无法声明或保证这些数据将准确无误、准确无误或不会出错。要详细了解我们如何收集他们的数据以及如何解读这些数据,请参阅已记录的数据源网站。
点击感兴趣的屏蔽条即可查看具体使用说明。
您可以使用 Looker Marketplace 快速轻松地安装部分 Looker Blocks。在通过 Looker Marketplace 部署屏蔽设置之前,Looker 管理员必须已启用 Marketplace 功能。安装包含 local_dependency
参数的代码块还需要启用本地项目导入 Labs 功能。如需详细了解如何安装和自定义 Looker Blocks,请参阅 Looker Marketplace 文档页面(可从 Looker Marketplace 获取)。
标准化和自定义
若要基于包含
local_dependency
参数的现有代码块进行构建,Looker 管理员必须启用本地项目导入 实验室功能。
使用不同代码块的难易程度取决于数据库架构标准化程度。除了数据块之外,大多数 Looker 块都需要进行一些自定义来适合您的数据架构。虽然数据块是最容易实现,但不可自定义。
数据块(包括公共数据集和完整的 LookML 模型)只需要从 GitHub 代码库中复制 LookML 模型,才能访问建模表。如需查看详细说明,请参阅本页面中的使用数据块。
细分应用(如 Segment 和 Snowplow)以相对标准化的格式跟踪事件。这样一来,您就可以创建模板化设计模式(能够进行数据清理、转换和分析),供任何使用此类应用的客户使用。
其他 Web 应用(如 Salesforce)可让您为内部用户添加自定义字段。当然,这会以不太标准化的格式创建数据。因此,我们可以设置一些数据模型模板,以启动并运行数据分析,但您需要对非标准化部分进行自定义。
最后,我们屏蔽了可用于获取一般业务数据洞见的屏蔽设置。这些均是优化的 SQL 或 LookML 设计模式,与数据源无关。例如,许多公司想要分析客户在一段时间内的生命周期价值。这些模式有一些假设,但它们可以根据您的具体业务需求进行自定义。这些模式反映了 Looker 进行某些类型的分析的最佳方式。
如果您刚开始接触 Looker,您的 Looker 分析师可帮助您充分利用这些模型。
向 LookML 添加块
- 有些屏蔽设置会同时显示探索和视图的同一文件。这样便于查看,但一般而言,您需要将 LookML 的相应部分复制到数据模型中的相应位置。如需了解详情,请参阅了解模型和查看文件文档页面。
在某些情况下,您可能需要在数据模型中创建新的 LookML 文件来存放示例。
使用数据块
数据块是特殊类型的 Looker 块,可提供数据集和数据模型。Looker 数据块包括公共数据源,例如:
- 受众特征数据:来自美国社区问卷调查的常见受众特征指标(来自州、县、邮政编码制表区域,甚至是人口普查群组级别)。
- 天气数据:美国,1920 年至前一天的邮政编码级天气预报。此屏蔽设置每晚更新一次。
如需查看当前可用屏蔽的完整列表,请参阅 Looker Marketplace 中的屏蔽部分。
访问不同数据库上的数据集
访问数据块的数据集的过程因数据库架构而异。以下部分介绍了如何访问这些数据库中的数据集:
访问 Google BigQuery 上的数据集
如果您已有 Google BigQuery 帐号,则可以访问 Looker 的 BigQuery 托管的数据集。请跳至本页面的向项目添加数据块部分。
如果您还没有 Google BigQuery 帐号,可以先设置一个免费试用,然后访问 Looker 在 BigQuery 上的公开数据集。
Google BigQuery 不支持跨区域共享项目。如需从美国境外直接访问 Google BigQuery 中的数据块,您可以执行以下操作:
- 从 Google Cloud 服务或 Amazon S3 导入 Looker 的公开数据。
- 创建位于美国区域的新 Google BigQuery 连接。
访问其他数据库的数据集
您是否在使用 Amazon Redshift?MySQL?PostgreSQL?Oracle 呢?
我们已在 Google Cloud 服务和 S3 中公开了其中每个数据集的转换后的数据,以便您直接将这些数据导入到您选择的数据库中。
我们还为 GitHub 代码库中的每个数据集提供了数据定义语言 (DDL)。DDL 语句可能需要针对所选数据库中的数据类型进行修改,但应该能够提供每个表中列类型的思路。
直接从以下某个位置下载数据:
- Google Cloud 服务:
_gs://looker-datablocks/_
- S3:
_s3://looker-datablocks/_
- S3 存储分区网页链接:http://looker-datablocks.s3-website-us-east-1.amazonaws.com/
访问 LookML 模型
将其中一个 GitHub 代码库克隆到一个新的 GitHub 代码库(由 Looker 或贵公司托管),然后您可以在实例中扩展或优化:
- 受众特征数据(美国社区问卷调查)- https://github.com/llooker/datablocks-acs
- 天气 (GSOD) - https://github.com/llooker/datablocks-gsod
向项目添加数据块
除了本部分介绍的方法之外,您还可以使用 LookML 优化来基于项目中的视图和探索进行 LookML。
您必须在包含
local_dependency
参数的数据块的基础上进行构建,然后 Looker 管理员才能启用本地项目导入 实验室功能。
如需向您的项目中添加数据块,请执行以下操作:
向 Looker 实例添加新项目。
创建分支或复制上述 GitHub 代码库以访问预构建的 LookML。请务必创建新的 GitHub 代码库。
从代码库中移除其他数据库方言文件。Looker Blocks 通常包含 Google BigQuery、Amazon Redshift 和 Snowflake 的文件。例如,如果您在 Google BigQuery 上设置数据块,只需要 Google BigQuery 视图文件、Google BigQuery 探索文件和 Google BigQuery 模型文件即可。
将模型文件中的连接名称替换为用于连接数据块的数据的数据库连接。如果使用 Google BigQuery 或 Snowflake,请使用要扩展或优化的数据库连接。
所有联接逻辑都存在于各个代码库的
.explore
文件中。设置项目清单后,您将在后续步骤中添加此文件。在要扩展或优化数据块的 Looker 主项目中,创建一个项目清单文件。
将以下 LookML 添加到项目清单文件中,以引用 Looker 主项目中的数据块:
project_name: "<your_project_name\>"
local_dependency: {
project: "<project_name_of_datablock\>"
}
设置注意事项和选项
Google BigQuery:请务必使用一组正确的建模文件。如果您使用的是 Google BigQuery,则可能需要引用文件名中带有 _bq_
的所有文件。您可能必须根据自己的数据库方言调整 Google BigQuery 的方言。
Google BigQuery 不支持跨区域共享项目。如需从美国境外直接访问 Google BigQuery 中的数据块,您可以执行以下操作:
- 从 Google Cloud 服务或 Amazon S3 导入 Looker 的公开数据。
- 创建位于美国区域的新 Google BigQuery 连接。
扩展程序:因为模型扩展程序可能会导致多个连接出现问题,因此我们的所有项目都设置为允许来自探索文件的扩展程序。
联接派生表:您可能需要参阅我们的原生派生表文档。您可以让 Looker 在我们的公开数据集内以不同的汇总级别编写 SQL 并将其加入您的模型中。
合并结果集:您还可以选择合并查询结果集,将我们的数据集结果集与您的数据合并。
受众特征数据集的设置示例
通过从我们的 S3 或 Google Cloud Service 存储分区下载原始数据,或者连接到 Looker 数据库来获取数据。
将 受众特征数据块模型从 LookML 作为单独的项目导入 Looker 实例中。
使用
include
参数导入视图文件。然后,扩展或优化视图文件,或使用原生派生表,在汇总级别获取探索所需的数据。
在我们的示例中,由于受众特征数据与我们的电子商务数据集(屏蔽组与邮政编码)处于不同的汇总级别,因此我们使用原生派生表来汇总最高邮政编码一级的统计信息。消除了混乱的多对多联接:
include: "/american_community_survey/bq.explore" view: zipcode_income_facts { derived_table: { persist_for: "10000 hours" explore_source: fast_facts { column: ZCTA5 { field: tract_zcta_map.ZCTA5 } column: income_household { field: bg_facts.avg_income_house } column: total_population { field: bg_facts.total_population } } } dimension: ZCTA5 {} dimension: income_household { hidden: yes }
将视图文件联接到模型中:
include: "acs*.view" explore: order_items { join: users { sql_on: ${users.id} = ${order_items.user_id} ;; type: left_outer relationship: many_to_one } join: zipcode_income_facts { sql_on: ${users.zip} = ${zipcode_income_facts.ZCTA5} ;; type: left_outer relationship: many_to_one } }
使用可视化屏蔽设置
Looker 包含各种原生可视化类型。但是,如果您有 Looker 的原生可视化类型未涵盖的图表需求,还可以添加自己的自定义可视化类型。您还可以开发自定义可视化图表,并面向 Looker Marketplace 中的所有 Looker 用户提供。
Viz 块是由 Looker 托管的预构建 JavaScript 可视化类型。您可以向 Looker 实例添加 Viz 块,它们的行为类似于 Looker 的任何原生可视化类型:它们显示在可视化菜单栏中,并且包含钻研、下载、嵌入和时间安排等核心功能。
如需详细了解可视化图表块,请在 Looker Marketplace 的插件部分选择可视化图表类型,然后点击查看代码,然后转到可视化图表块的 READ.ME
文件。READ.ME
文件会显示可视化图表示例,并提供有关可视化代码块的更多信息。对于某些可视化图表,READ.ME
文件还会提供用于添加可视化块的网址和说明。
如需向实例添加可视化类型,请参阅 READ.ME
文件(如果有)中的说明以及可视化文档页面中的信息。