Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
publications
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
9
Issues
9
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
PSVG
publications
Commits
637dfd45
Commit
637dfd45
authored
Aug 04, 2020
by
Teresa Carbajo-Garcia
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update publications.bib
parent
d4bc7492
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
21 deletions
+24
-21
publications.bib
publications.bib
+24
-21
No files found.
publications.bib
View file @
637dfd45
...
...
@@ -1752,27 +1752,30 @@ year = {2020},
type
=
{phdthesis}
,
project
=
{concurrency}
,
phdthesis
=
{Y}
,
abstract
=
{The cloud has become popular for its low cost, high availability and
high fault-tolerance-queue or de-queue, for example Amazon Web Service (AWS) and
Google Cloud Platform (GCP. Those cloud infrastructures provide fixed interface,
to hide the complex internal implementation that consists of hundreds of thousands
of machines globally that work together as a whole system, known as a distributed
system. Clients of those systems only need to work with the abstract interfaces.
Transactions are the de facto interfaces in modern distributed databases.
Because of the CAP theorem, a distributed system must sacrifice strong consistency
to achieve high availability and high fault-tolerance. Engineers and researchers
have proposed many reference implementations in specific setting for various weak
consistency models. However, there have been little work on formalising the interfaces.
We introduce an interleaving operational semantics for describing such interfaces,
with the focus on the client-observable behaviour of atomic transactions on
distributed key-value stores. Our semantics builds on abstract states comprising
centralised, global key-value stores and partial client views. We provide
operational definitions of consistency models for our key-value stores which
are shown to be equivalent to the well-known declarative definitions of consistency
models for execution graphs. We explore two immediate applications of our semantics:
specific protocols of databases for a specific consistency can be verified in
our centralised semantics; programs can be directly shown to have invariant
properties such as robustness results against a weak consistency model.}
,
abstract
=
{Cloud computing has become popular for its low cost. A storage sub-system is a key component
in many cloud computing infrastructures, and many systems have used so-called“NoSQL”
databases, where data is often organised in a key-value structure, for example Dynamo DB,
a distributed key-value store from Amazon Web Service (AWS). This is driven by the need
to store unstructured data, such as pictures, videos, or documents. Similar to traditional
relational databases, transactions are the de facto interfaces in cloud storages. Many distributed
cloud storages often provide high availability and fault-tolerance, but adopt weak
consistency, where individual server is allowed to operate without synchronisation in certain
situation. Engineers and researchers have proposed various weak consistency models via reference
implementations in their specific setting. However, there has been little work on formal,
implementation-independent definitions of consistency models. We introduce an interleaving
operational semantics, with the focus on the client-observable behaviour of atomic transactions
on distributed key-value stores. Our semantics builds on abstract states comprising centralised,
global key-value stores, representing the overall states of distributed systems and multiple, mutually
independent, partial client views, representing client-observable states. In each step, a
client with its view commits a transaction to the abstract key-value store, and this step must
satisfy certain conditions of the chosen consistency model, called an execution test, which is a
novel operational definition of this consistency model. We provide definitions of various well known
consistency models such as snapshot isolation and causal consistency and show that our
definitions are equivalent to the well-known declarative definitions of consistency models. We
then explore two immediate applications of our semantics: specific implementation protocols
can be verified in our operational semantics via trace refinement; client programs can be shown
to satisfies invariant properties. These two applications show that our operational semantics
captures the interfaces between client programs and implementation protocols.}
,
}
@InProceedings
{
Xiong2020Data
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment