课题基金 / 基金详情

Compiling Distributed System Models into Implementations

Compiling Distributed System Models into Implementations
将分布式系统模型编译为实现
批准号:
RGPIN-2020-05203
负责人:
Beschastnikh, Ivan
金额:
$2.55万
依托单位国家:
加拿大
项目类别:
Discovery Grants Program - Individual
财政年份:
2020
资助国家:
加拿大
项目状态:
已结题
起止时间:
2020-01-01 至 2021-12-31

项目摘要

项目成果

Beschastnikh, Ivan的其他基金

相似基金

相关文献

中文摘要
翻译
云计算给计算带来了革命性的变化。大大小小的企业都在为其基础设施利用海量数据中心的灵活性和容量。然而,在云中运行的系统在工程上是出了名的复杂,因为这些系统的设计是通过跨多台机器执行来进行扩展的。例如,假设在不同的主机上有两个事件,即使每个事件都有时间戳,其中一个事件是否相互依赖也不明显。基于云的系统中的漏洞可能是微妙的和灾难性的。例如,2017年,亚马逊S3存储系统的一个漏洞给依赖亚马逊AWS云服务的公司造成了1.5亿美元的损失。这类事件越来越常见。 如今,构建基于云的系统的工程师依赖于测试来获得保证。不幸的是,通过测试获得合理的分布式行为覆盖是一个既定的挑战,而编写测试是乏味的、容易出错的,并且从根本上是不完整的。实现分布式系统正确性的最先进技术在实践中很少使用,因为它们不适用于实际的大型系统,或者因为它们需要大量的工作和专业知识。 人们对分布式系统的建模语言越来越感兴趣,这些语言可以被详尽地检查,或者被证明满足某些性质。然而,如今,开发人员必须手动将其系统的正式模型转换为实现。此过程需要密集的工作,并且可能会在实现中引入错误。这就是为什么开发人员很少对他们的系统建模,而是选择先构建后调试的原因之一。 在提议的研究计划中,我将设计和实现一些技术,将用高级建模语言编写的分布式系统的形式化模型编译成可运行的实现。 作为我研究的一部分,我将创建一个工具链,它将颠覆用于基于云的系统的主要软件工程过程:开发人员将能够首先创建他们可以验证的正式模型,然后将这些模型编译成代码。通过免费获得一个可运行和等价的实现,开发人员将更有动力创建和策划他们的系统的正式模型。这项研究的长期目标是激励开发人员在设计/实现工作中更早地使用正式方法,以减少进入生产系统的错误数量。 这项研究将产生关于分布式系统建模和分布式逻辑编译的新的科学知识。作为这项研究的一部分,我的团队还将致力于将这些新知识集成到健壮的开源工具中。然后,行业从业者可以使用这些工具来更快地开发可靠且可维护的分布式系统。
英文摘要
Cloud computing has revolutionized computing. Enterprises, large and small, are taking advantage of the flexibility and capacity of massive data centers for their infrastructure. However, systems that run in the cloud are notoriously complex to engineer because these systems are designed to scale by executing across many machines. For example, given two events at different hosts, it is not obvious whether one of the events is causally dependent on the other, even if each event has a timestamp. Bugs in cloud-based systems can be subtle and catastrophic. For example, in 2017 a bug in Amazon's S3 storage system caused $150 million of dollars in damage for the companies that rely on Amazon AWS cloud services. Such incidents are increasingly common. Engineers who build cloud-based systems today rely on testing to gain assurance. Unfortunately, attaining reasonable distributed behavior coverage with testing is an established challenge while writing tests is tedious, error-prone, and fundamentally incomplete. State-of-the-art techniques for achieving distributed system correctness are rarely used in practice because they do not work on actual large-scale systems or because they require substantial effort and expertise. There is a growing interest in modeling languages for distributed systems, which can be checked exhaustively or proved to satisfy certain properties. However, today, the developer must manually translate a formal model of their system into an implementation. This process requires intensive effort and may introduce bugs into the implementation. This is one reason why developers rarely model their systems, electing instead to build first and debug later. In the proposed research program I will design and implement techniques to compile formal models of distributed systems, written in a high-level modeling language, into runnable implementations. As part of my research I will create a toolchain that will flip the dominant software engineering process used for cloud-based systems: developers will be able to first create formal models that they can verify, and then later compile these models into code. By deriving a runnable and equivalent implementation for free, developers will be more incentivized to create and curate formal models of their systems. The long-term goal of this research is to incentivize developers to use formal methods earlier in the design/implementation effort to decrease the number of bugs that make it into production systems. This research will generate new scientific knowledge about the modeling of distributed systems and compilation of distributed logic. As part of this research my team will also work to integrate this new knowledge into robust open source tools. These tools can then be used by industry practitioners to develop reliable and maintainable distributed systems more rapidly.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Compiling Distributed System Models into Implementations
  • 批准号:
    RGPIN-2020-05203
  • 项目类别:
    Discovery Grants Program - Individual
  • 资助金额:
    $2.55万
  • 财政年份:
    2022
  • 负责人:
    Beschastnikh, Ivan
  • 依托单位:
Compiling Distributed System Models into Implementations
  • 批准号:
    RGPIN-2020-05203
  • 项目类别:
    Discovery Grants Program - Individual
  • 资助金额:
    $2.55万
  • 财政年份:
    2021
  • 负责人:
    Beschastnikh, Ivan
  • 依托单位:
Improving the Construction of Correct Distributed Systems
  • 批准号:
    RGPIN-2019-05090
  • 项目类别:
    Discovery Grants Program - Individual
  • 资助金额:
    $1.68万
  • 财政年份:
    2019
  • 负责人:
    Beschastnikh, Ivan
  • 依托单位:
Model inference and testing of distributed systems
  • 批准号:
    RGPIN-2014-04870
  • 项目类别:
    Discovery Grants Program - Individual
  • 资助金额:
    $1.68万
  • 财政年份:
    2018
  • 负责人:
    Beschastnikh, Ivan
  • 依托单位:
国内基金
海外基金
Graphon mean field games with partial observation and application to failure detection in distributed systems
  • 批准号:
  • 项目类别:
    省市级项目
  • 资助金额:
    --
  • 批准年份:
    2025
  • 负责人:
    MATHIEULOUROCHLAURIERE
  • 依托单位: