Looker 块

Looker BlocksTM 是为常见分析模式和数据源预构建的数据模型。重复利用其他人已经完成的工作,而不是从头开始,然后根据你的具体规格自定义积木。从优化的 SQL 模式到完全构建的数据模型,Looker Blocks 可以作为基础,在 Looker 中快速灵活地进行数据建模。

可用块

有多种 Looker Blocks 可供选择。如需查看可用的屏蔽设置,请查看 Looker Marketplace屏蔽设置部分。

点击您感兴趣的块,查看其具体使用说明。

您可以使用 Looker Marketplace 快速安装某些 Looker Blocks。Looker 管理员必须先启用 Marketplace 功能,您才能通过 Looker Marketplace 部署区块。若要安装包含 local_dependency 参数的代码块,还需要启用本地项目导入 实验室功能。如需详细了解如何安装和自定义 Looker Blocks(可从 Looker Marketplace 获取),请参阅 Looker Marketplace 文档页面。

标准化和自定义

不同块的易用程度将有所不同,具体取决于数据库架构的标准化程度。大多数 Looker Blocks 都需要进行一些自定义才能适应您的数据架构,但数据块除外,数据块实现起来最简单,但无法自定义。

  • 数据块(包括公共数据集和完整 LookML 模型)只需从 GitHub 代码库复制 LookML 模型即可访问建模表。有关详细说明,请参阅本页中的使用数据块

  • Segment 和 Snowplow 等数据收集应用以相对标准化的格式跟踪事件。这使得创建能够进行数据清理、转换和分析的模板化设计模式成为可能,可供使用这些应用的任何客户使用。

  • 其他 Web 应用(如 Salesforce)可让您为内部用户添加自定义字段。当然,这会以不太标准化的格式创建数据。因此,我们可以将部分数据模型的模板化,以便启动并运行分析,但您需要自定义非标准化部分。

  • 最后是常规业务数据洞见版块。这些是与数据源无关的优化 SQL 或 LookML 设计模式。例如,许多公司会希望分析客户在一段时间内的生命周期价值。这些模式中内置了一些假设,但您可以根据自己的特定业务需求对其进行自定义。这些模式反映了 Looker 对执行特定类型的分析的最佳方式的观点。

如果您刚开始接触 Looker,您的 Looker 分析师可以帮助您充分利用这些模型。

向 LookML 添加块

  • 部分代码块在同一文件中展示探索和视图。这是为了便于查看,但一般而言,您需要将 LookML 的相应部分复制到数据模型中的相应位置。如需了解详情,请参阅了解模型和查看文件文档页面。
  • 在某些情况下,您可能需要在数据模型中创建新的 LookML 文件来存放样本。

使用数据块

数据块是一种特殊类型的 Looker 块,可提供数据集和数据模型。Looker Data Blocks 包括公共数据源,例如:

  • 受众特征数据:美国社区问卷调查针对州、县、邮政编码表区,甚至是人口普查区块组级别提供的常见受众特征指标。
  • 天气数据:从 1920 年到前一天的美国天气报告(按邮政编码级别)。此代码块每晚更新。

如需查看可用代码块的完整列表,请参阅 Looker Marketplace代码块部分。

访问不同数据库上的数据集

访问数据块数据集的过程因数据库架构而异。以下各部分包含有关如何访问这些数据库中的数据集的说明:

访问 Google BigQuery 上的数据集

如果您已有 Google BigQuery 账号,可以访问 Looker 的 BigQuery 托管的数据集。请直接跳到本页面上的向项目添加数据块部分。

如果您还没有 Google BigQuery 账号,可以设置免费试用,然后在 BigQuery 上访问 Looker 的公共数据集。

访问其他数据库上的数据集

您使用的是 Amazon Redshift、MySQL、PostgreSQL 还是 Oracle?

我们已在 Google Cloud 服务和 S3 中公开提供每个数据集的转换后的数据,以便您直接将其导入所选的数据库。

我们还在 GitHub 代码库中的每个数据集内提供了数据定义语言 (DDL)。您可能需要针对所选数据库中的数据类型修改 DDL 语句,但您应该大致了解每个表的列类型。

直接从以下某个位置下载数据:

访问 LookML 模型

将我们的某个 GitHub 代码库克隆到新的 GitHub 代码库(由 Looker 或您的公司托管),然后您可以在实例中扩展优化该代码库:

向项目添加数据块

除了本部分介绍的方法之外,您还可以使用 LookML 优化在项目中视图和探索的 LookML 的基础上进行构建。

如需向您的项目添加数据块,请执行以下操作:

  1. 向您的 Looker 实例添加新项目

  2. 复刻或复制前面提到的 GitHub 代码库,以访问预构建的 LookML。请务必创建新的 GitHub 代码库。

  3. 从代码库中移除其他数据库方言文件。Looker Blocks 通常包含 Google BigQuery、Amazon Redshift 和 Snowflake 的文件。例如,如果您要在 Google BigQuery 上设置数据块,则只需 Google BigQuery 视图文件、Google BigQuery 探索文件和 Google BigQuery 模型文件。

  4. 将模型文件中的连接名称替换为数据块数据所在的数据库连接。如果您使用的是 Google BigQuery 或 Snowflake,请使用您要扩展或优化的数据库连接。

    所有联接逻辑都存在于每个代码库的 .explore 文件中。设置项目清单后,您将在后续步骤中添加此文件。

  5. 在您将扩展或优化数据块的主 Looker 项目中,创建项目清单文件

  6. 将以下 LookML 添加到项目清单文件中,以引用主 Looker 项目中的数据块:

    project_name: "<your_project_name\>"

    local_dependency: {
      project: "<project_name_of_datablock\>"
    }

设置注意事项和选项

Google BigQuery:请务必使用正确的建模文件集。如果您使用的是 Google BigQuery,则可能需要引用文件名中包含 _bq_ 的所有文件。您可能需要根据您自己的数据库方言调整我们的 Google BigQuery 模型方言。

扩展程序:我们的所有项目都已设为允许使用“探索”文件中的扩展程序,因为模型扩展程序可能会导致多个连接出现问题。

联接派生表:您可能需要查看我们的原生派生表文档。您可以让 Looker 针对我们公开提供的数据集以不同聚合级别为您编写 SQL,并将其联接到您的模型中。

合并结果集:您还可以选择合并查询结果集,将数据集中的结果集与您的数据合并

受众特征数据集设置示例

  1. 从我们的 S3 或 Google Cloud Service 存储分区下载原始数据,或者连接到 Looker 数据库,以获取数据访问权限。

  2. 将 LookML 中的受众特征数据块模型作为单独的项目导入 Looker 实例。

  3. 使用 include 参数引入视图文件。

  4. 然后,您可以扩展优化视图文件,或者利用原生派生表,在探索所需的汇总级别获取数据。

    在我们的示例中,由于受众特征数据的汇总级别与我们的电子商务数据集不同(块组与邮政编码),因此我们使用原生派生表格来汇总最高至邮政编码级别的统计数据。这样可以消除混乱的多对多联接:

      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
        }
    
  5. 将视图文件联接到模型中:

      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
        }
      }
    
  6. 探索直观呈现数据。

使用可视化块

Looker 包含各种内置的可视化类型。但是,如果 Looker 的内置可视化类型未涵盖您的图表需求,您还可以添加自己的自定义可视化类型。您还可以开发自定义可视化图表,并将其提供给 Looker Marketplace 中的所有 Looker 用户。

可视化块是由 Looker 托管的预构建 JavaScript 可视化类型。您可以将可视化块添加到 Looker 实例中,这些块的运行方式与 Looker 的任何内置可视化类型类似:它们显示在可视化菜单栏中,并且包含深入分析、下载、嵌入和调度等核心功能。

如需详细了解可视化块,请在 Looker Marketplace 的插件部分中选择可视化类型,然后点击查看代码并前往可视化块的 READ.ME 文件。READ.ME 文件显示了可视化效果的示例,并提供了有关可视化块的更多信息。对于某些可视化图表,READ.ME 文件还会提供网址以及有关如何添加可视化图表块的说明。

如需向实例添加可视化图表类型,请参阅 READ.ME 文件(如果有)中的说明和可视化图表文档页面中的信息。