Open and permissionless blockchains are distributed systems with thousands to tens of thousands of nodes, establishing novel platforms for decentralized applications. When realizing such an application, data might be stored and retrieved from one or more blockchains by distributed network nodes without relying on centralized coordination and trusted third parties. Data access could be provided through a query language such as SQL at the application level, establishing a unified view on application-level data that is verifiably stored. However, when accessing multiple blockchains through their node software and APIs, interoperability cannot be assumed today, resulting in challenges of inhomogeneous data access. In addition, different feature sets and trade-offs exist, e.g., regarding smart contract functionality, availability, distribution, scalability, and security. For increasing interoperability, the paper at hand suggests pursuing the development of a cross-chain query language at the application level. The language abstracts from implementation by providing a standardized syntax, an integrated data model, and a processing architecture for data queries. This research is an extended and updated paper demonstrating the language syntax, data model, and architecture with an evaluation of compatibility against the largest open and permissionless blockchains today.
翻译:开放无许可区块链是由数千至数万个节点组成的分布式系统,为去中心化应用构建了新型平台。在实现此类应用时,分布式网络节点无需依赖中心化协调与可信第三方,即可从一条或多条区块链中存储和检索数据。通过SQL等查询语言在应用层提供数据访问,可为可验证存储的应用层数据建立统一视图。然而,当通过节点软件和API访问多条区块链时,当前尚无法实现互操作性,导致异构数据访问难题。此外,不同区块链在智能合约功能、可用性、分布性、可扩展性及安全性等方面存在差异化特征集与权衡取舍。为提升互操作性,本文建议在应用层推进跨链查询语言开发。该语言通过提供标准化语法、集成数据模型及数据查询处理架构,对具体实现进行抽象化。本研究作为扩展更新版本,通过评估与当前最大开放无许可区块链的兼容性,系统阐述了该语言的语法、数据模型及架构。