Repositório contendo os arquivos relacionados ao trabalho prático 2 da disciplina Banco de Dados
ci128-bancodedados's Introduction
ci128-bancodedados's People
ci128-bancodedados's Issues
Mecanismo de criação da log
Rotina de free para as estruturas
Armazenamento de Input / Log
Structs para armazenar as inputs e métodos para criar a LOG das transações recebidas
Flag para imprimir as logs (opcional)
Tipos abstratos de dado para representar o Grafo
Saída - escalonamentos e propriedades
A saída deve ser feita pela saída padrão (stdout). O arquivo será composto por uma sequência de linhas. Uma linha para cada escalonamento. Cada linha tem 4 campos separados por espaço (um único espaço entre cada par de campos). O primeiro campo é o identificador do escalonamento. O segundo campo é a lista de transações. E o terceiro apresenta o resultado do algoritmo da garantia da seriabilidade, onde SS e NS significam respectivamente serial (SS) ou não serial (NS). O quarto campo é o resultado do algoritmo de teste de equivalência de visão, onde SV e NV significam respectivamente equivalente (SV) ou não equivalente (NV) .
Corrigir o uso do makefile
Deixá-lo no diretório mais externo do repositório enquanto mexe com os sub-diretórios.
Modificação em vértices para considerar os commits
Ler entrada
A entrada deve ser feita pela entrada padrão (stdin). O arquivo é formado por uma sequência de linhas, onde cada linha representa uma transação chegando. Cada linha tem 4 campos: o primeiro é o tempo de chegada, o segundo é o identificador da transação, o terceiro é a operação (R=read, W=write, C=commit) e o quarto o atributo que será lido/escrito. Estas linhas estão ordenadas pelo primeiro campo (tempos menores no início indicando a linha do tempo).
algoritmo 1
Algoritmo de teste de seriabilidade quanto ao conflito:
Crie um nó para cada T do escalonamento S
Aresta Ti -> Tj para cada r(x) em Tj depois de w(x) em Ti
Aresta Ti -> Tj para cada w(x) em Tj depois de r(x) em Ti
Aresta Ti -> Tj para cada w(x) em Tj depois de w(x) em Ti
S é serial se não existe ciclo no grafo
Algoritmo 2
Algoritmo de visão equivalente
Dois agendamentos S e S' são ditos visão equivalentes, se atenderem as seguintes condições:
O mesmo conjunto de transações e operações participam em S e S'
Para cada r(x) de Ti, se o valor de x lido for escrito por w(x) de Tj, o mesmo deve permanecer para r(x) de Ti em S'
Se o operador w(y) em Tk é a ultima escrita de y em S, então w(y) em Tk deve ser a última escrita em S'
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.