# Space and Time 视角

By [Untitled](https://paragraph.com/@0x8679391750e157dc6605e092148a916ee7d34a1a) · 2024-01-11

---

**Space and Time 视角**
=====================

这是 Space and Time Views 的内容。Space and Time 是一个数据仓库，它为开发人员提供了一种更好的方式来管理和利用复杂数据集，并支持更快速的查询结果。以下是关于 Space and Time Views 的介绍：

### **Space and Time Views 是什么以及我们为什么建立它**

对于许多数据驱动型应用程序来说，导航复杂数据集和执行多方面查询是一个常见的挑战。开发人员可能会发现自己一遍又一遍地编写和运行相同的复杂多表查询。随着数据的增长和演变，这可能既耗时又容易出错。为了支持更好的开发人员工作流程，我们很高兴地宣布，在 Space and Time 中引入了对视图的支持。

在其核心，视图类似于一个查询的保存快捷方式，您可以在未来的 SQL 语句中引用它。Space and Time 已经允许您在 Studio 界面上保存和命名您的查询，但是通过对视图的支持，您可以在新的 SQL 语句中引用您保存的查询，并轻松地使用它来为您的智能合约组合更复杂的逻辑，而且成本效益高。此外，这个升级将为您的应用程序、仪表板、BI 工具等提供更快的查询结果加载速度。

### **它是如何工作的**

视图是一种虚拟表；它是存储在数据库中的一个命名 SQL 查询。典型的用途包括：

*   以消费者更自然、简单等方式组织数据。
    
*   限制数据访问/可见性（例如，限制表列）。
    
*   为已更改架构的表提供向后兼容的接口。 当您查询标准视图时，数据库会在基本表上运行底层 SQL 查询并返回结果。它本质上是一种保存和重复使用复杂查询的方法，但它不存储结果数据，因此每次查询视图时都需要重新执行底层查询。
    

Space and Time 支持标准视图，并且还支持两种特殊类型的视图：物化视图和参数化视图。

### **物化视图**

物化视图是一种在执行之前结果已被实现的视图。换句话说，在某些用户配置的脉冲下（无论是成功提交到引用表还是仅仅是经过的时间间隔），物化视图中存储的数据会被刷新。从用户的角度来看，操作物化视图非常简单：它们与视图的查询方式相同，只需要额外的配置来进行刷新。

### **参数化视图**

参数化视图是视图的一种扩展，它添加了参数。参数是用户在执行视图时必须提供一些值的变量。因此，参数化视图可以实现常见查询的模板化，进一步增强了与数据库交互时的生产力。

它的功能：

Space and Time 对标准、物化和参数化视图的支持为分析提供了丰富的新用例：

复杂的分析操作：如果您正在处理涉及多个繁重计算的复杂数据分析，比如时间序列分析、多维分析或其他复杂操作，视图可以通过存储预先计算的结果显著加快这些操作的速度，使您能够更有效地生成见解。 更快速的仪表板：假设您的应用程序包含一个显示最近用户活动、关键绩效指标和其他定期更新信息的仪表板。您可以使用物化视图存储这些查询的结果，而不是每隔几秒运行资源密集型的查询来刷新仪表板。这样可以减轻数据库的负载，并使仪表板更新更快速。 个性化用户体验：参数化视图非常适合需要根据个人用户配置文件或操作检索特定信息的情况。如果您想为应用程序中的每个用户显示个性化的活动动态，可以使用参数化视图创建一个带有用户 ID 占位符的查询模板，这样您就不必为每个用户编写独特的查询。这不仅简化了您的代码，还提高了您的应用程序的性能。比如，您想要创建一个根据时间范围进行 NFT 购买的图表。您可以使用一些简单的参数（如时间范围、交易哈希、智能合约地址或用户地址信息）轻松进行历史分析，而不仅仅提供区块链的当前状态。

---

*Originally published on [Untitled](https://paragraph.com/@0x8679391750e157dc6605e092148a916ee7d34a1a/space-and-time)*
