{"title":"基于动态和自验证冲突分析的事务并行执行","authors":"J. P. Silva, E. Alchieri, F. Dotti","doi":"10.5753/sbrc.2023.460","DOIUrl":null,"url":null,"abstract":"As soluções para blockchains geralmente executam transações sequencialmente pelos mineradores, permitindo que validadores reproduzam esta execução para validar o seu resultado. Porém, tal abordagem é incapaz de explorar os recursos multi-core modernos de forma eficiente, limitando assim o desempenho e aumentando a latência das aplicações. Soluções existentes que permitem execução paralela de uma parte das transações geralmente fazem uso de análise estática (antes da execução) ou utilizam um grafo acíclico dirigido (DAG) para lidar com conflitos/dependências entre transações. Neste contexto, propomos uma nova solução para permitir execuções paralelas em uma blockchain utilizando análise dinâmica de conflitos através da utilização de um DAG onde os conflitos de uma transação podem ser auto-verificados pelos validadores. A fim de avaliar os benefícios da nossa proposta sobre a execução sequencial tradicional, criamos quatro aplicações de contratos inteligentes que simulam a execução de uma blockchain real. Experimentos mostram que nossa proposta atinge uma aceleração que supera em até 5× a execução sequencial.","PeriodicalId":254689,"journal":{"name":"Anais do XLI Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos (SBRC 2023)","volume":"4 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-05-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Execução Paralela de Transações Baseada em Análise Dinâmica e Auto-Verificável de Conflitos\",\"authors\":\"J. P. Silva, E. Alchieri, F. Dotti\",\"doi\":\"10.5753/sbrc.2023.460\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"As soluções para blockchains geralmente executam transações sequencialmente pelos mineradores, permitindo que validadores reproduzam esta execução para validar o seu resultado. Porém, tal abordagem é incapaz de explorar os recursos multi-core modernos de forma eficiente, limitando assim o desempenho e aumentando a latência das aplicações. Soluções existentes que permitem execução paralela de uma parte das transações geralmente fazem uso de análise estática (antes da execução) ou utilizam um grafo acíclico dirigido (DAG) para lidar com conflitos/dependências entre transações. Neste contexto, propomos uma nova solução para permitir execuções paralelas em uma blockchain utilizando análise dinâmica de conflitos através da utilização de um DAG onde os conflitos de uma transação podem ser auto-verificados pelos validadores. A fim de avaliar os benefícios da nossa proposta sobre a execução sequencial tradicional, criamos quatro aplicações de contratos inteligentes que simulam a execução de uma blockchain real. Experimentos mostram que nossa proposta atinge uma aceleração que supera em até 5× a execução sequencial.\",\"PeriodicalId\":254689,\"journal\":{\"name\":\"Anais do XLI Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos (SBRC 2023)\",\"volume\":\"4 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2023-05-22\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Anais do XLI Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos (SBRC 2023)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.5753/sbrc.2023.460\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Anais do XLI Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos (SBRC 2023)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.5753/sbrc.2023.460","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Execução Paralela de Transações Baseada em Análise Dinâmica e Auto-Verificável de Conflitos
As soluções para blockchains geralmente executam transações sequencialmente pelos mineradores, permitindo que validadores reproduzam esta execução para validar o seu resultado. Porém, tal abordagem é incapaz de explorar os recursos multi-core modernos de forma eficiente, limitando assim o desempenho e aumentando a latência das aplicações. Soluções existentes que permitem execução paralela de uma parte das transações geralmente fazem uso de análise estática (antes da execução) ou utilizam um grafo acíclico dirigido (DAG) para lidar com conflitos/dependências entre transações. Neste contexto, propomos uma nova solução para permitir execuções paralelas em uma blockchain utilizando análise dinâmica de conflitos através da utilização de um DAG onde os conflitos de uma transação podem ser auto-verificados pelos validadores. A fim de avaliar os benefícios da nossa proposta sobre a execução sequencial tradicional, criamos quatro aplicações de contratos inteligentes que simulam a execução de uma blockchain real. Experimentos mostram que nossa proposta atinge uma aceleração que supera em até 5× a execução sequencial.