Looker 块

Looker Blocks™ 是适用于常见分析模式和数据源的预构建数据模型。重复使用他人已完成的工作,而不是从头开始,然后根据您的确切规范自定义这些块。从经过优化的 SQL 模式到完全内置的数据模型,Looker Blocks 可用作在 Looker 中快速灵活地进行数据建模的起点。

可用的区块

有许多 Looker 块可供选择。如需查看可用的块,请查看 Looker Marketplace部分。

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

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

标准化和自定义

不同块的使用难易程度因数据库架构的标准化程度而异。大多数 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 账号,可以设置免费试用版,然后在 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 块通常包含 Google BigQuery、Amazon Redshift 和 Snowflake 的文件。例如,如果您要在 Google BigQuery 上设置数据块,则只需 Google BigQuery 视图文件、Google BigQuery Explore 文件和 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 服务存储分区下载原始数据,或者连接到 Looker 数据库。

  2. Demographic Data Block 模型从 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 文件中的说明(如果有)以及可视化图表文档页面上的信息。