1}$.

#### Causal Consistency (CC).

Causal consistency (CC) holds when transactions observe consistent snapshots of the system, and the client application processes are monotonic. CC is a weak consistency model and it does not allow solving consensus. It is in fact the strongest model that is available under partition [@syn:rep:1738]. Historically, CC refers to the consistency of single operations on a shared memory [@syn:mat:1025]. Causally consistent transactions (Causal HAT) is a consistency model that extends CC to transactional data stores [@db:syn:1751].

#### Snapshot Isolation (SI).

SI is a widely-used consistency model [@syn:bd:1759]. This model is strong, but allows more interleavings of concurrent read transactions than SER. Furthermore, SI is causal (i.e., SI $\subseteq$ CC), whereas SER is not.

Under SI, a transaction observes a *snapshot* of the state of the data store at some point prior in time. Strong snapshot isolation (SSI) requires this snapshot to contain all the preceding transactions in real time [@Daudjee:2006]. Two transactions may commit under SI as long as they do not write the same item concurrent. SI avoids the anomalies listed in, but exhibits the *write-skew* anomaly, illustrated in history $h_4$ below.

In this history, an application using data items $x$ and $y$ wishes to maintain the invariant $x \geq y$. The invariant holds initially, and each of the two transactions ${\color{blue}{T_1}}$ and ${\color{red}{T_2}}$ guarantees the invariant individually. As illustrated in history $h_4$, running them concurrently under SI may violate the invariant.

An application is *robust* against a consistency model $M$ when, it produces serialisable histories [@Cerone:2016], despite running atop a data store providing $M$, It is known [@syn:1687] that an application is robust against SI when every invariant is materialised by a data item.

#### Parallel [/]{} Non-Monotonic Snapshot Isolation (PSI[/]{}NMSI).

Parallel and non-monotonic snapshot isolation are scalable variations of SI. These models retain two core properties of SI, namely

each transaction observes a consistent snapshot, and

no
1}$. 

 # # # # Causal Consistency (CC). 

 Causal consistency (CC) holds when transactions observe consistent snapshot of the arrangement, and the client application summons are flat. CC is a weak consistency model and it does not give up solving consensus. It is in fact the strongest exemplar that is available under partition [ @syn: rep:1738 ]. Historically, CC refer to the consistency of single operations on a partake memory [ @syn: mat:1025 ]. Causally consistent transactions (Causal HAT) is a consistency model that extends CC to transactional data shop [ @db: syn:1751 ]. 

 # # # # Snapshot Isolation (SI). 

 SI is a widely - used consistency model [ @syn: bd:1759 ]. This mannequin is strong, but allows more interleavings of concurrent read transactions than SER. Furthermore, SI is causal (i.e., SI $ \subseteq$ CC), whereas SER is not. 

 Under SI, a transaction detect a * snapshot * of the state of the data store at some point prior in time. potent snapshot isolation (SSI) requires this snapshot to contain all the preceding transactions in real meter [ @Daudjee:2006 ]. Two transactions may commit under SI as long as they do not write the same item concurrent. SI avoids the anomalies listed in, but exhibits the * write - skew * anomaly, exemplify in history $ h_4 $ below. 

 In this history, an application use datum items $ x$ and $ y$ wishes to maintain the invariant $ x \geq y$. The invariant holds initially, and each of the two transactions $ { \color{blue}{T_1}}$ and $ { \color{red}{T_2}}$ guarantees the changeless individually. As illustrated in history $ h_4 $, running them concurrently under SI may violate the invariant. 

 An application is * robust * against a consistency model $ M$ when, it produces serialisable histories [ @Cerone:2016 ], despite running atop a data store provide $ M$, It is known [ @syn:1687 ] that an lotion is full-bodied against SI when every changeless is materialised by a data item. 

 # # # # Parallel [ / ] { } Non - Monotonic Snapshot Isolation (PSI[/]{}NMSI). 

 Parallel and non - monotonic snapshot isolation are scalable variations of SI. These models retain two core properties of SI, namely 

 each transaction note a coherent snapshot, and 

 no
1}$.

#### Caksal Consistency (CC).

Causau consistency (CE) holds when fransactkons observe consistent snapdhits od the system, and the cuient apppication proresses are monotonic. CC lf a scak cmisistency model and it doas not allow smlxiug consensus. It is in fact the strondest mocep that is avaijablt ugder iavtition [@syn:rep:1738]. Historically, CC rsfers tm the consistrncy of single operations ln a shared memory [@syn:lat:1025]. Causalli cogwistent tranractions (Causal HAT) is a consistency model that extenas CC to transaxtuonwn data storxs [@db:sjn:1751].

#### Snapshot Isolation (SI).

SI ix a widely-used coisisrency model [@syn:bd:1759]. Thiv model is strong, fut allowv jore interleavingw if cotcursent eeaa tdaisadtions then SER. Furtgermore, SI us causal (i.e., SI $\subxeeva$ CC), whereas SER if got.

Under SI, a transaction observes a *sndpsgot* of the state of the data store at some plint priow in time. Strong snapshot isolation (SSI) requires dhis avapwhjg tl contain all the preceding transactions in rqzl tpme [@Daudjee:2006]. Two tvansactions may cokmlt onder SI as lovg as cgeg do not write the same ijem cobcurrent. FI afoids the anomalies listed un, but exhibpts rhe *write-skew* anomcly, illustraced in histpry $h_4$ below.

In this histury, zn applicatlon using aata items $x$ and $y$ eivhes to maintain the invaryant $x \gew y$. Che invafianj holds initially, and cdch of the two trajsactnons ${\wolor{blue}{T_1}}$ and ${\color{red}{T_2}}$ guarantees the iitariant indivodgalny. As iljustrsted in histowy $h_4$, running tkem concbrrentuy under SP may vionate the indariant.

An appnlcation is *rmbust* agwinsr a xonsistdvcy model $M$ whrn, it probbces seriqlisable histories [@Cetohe:2016], despite runnnug atop a data stpre prjvpdiig $M$, Yd is known [@sfn:1687] tfat sn apolication iw robist against SI when averg invariant is matrrlalised bi a data ytem.

#### Parallel [/]{} Non-Monotonic Snakshot Msolatmon (PSO[/]{}NMFI).

Parallel and non-monotonic snzpshot isllabion are scalwble variations pf SI. These models retain two core propxrties of SI, namely

each transaction observgs s consistenv snapfhot, and

nm
1}$. #### Causal Consistency (CC). Causal consistency when observe consistent of the system, are CC is a consistency model and does not allow solving consensus. It in fact the strongest model that is available under partition [@syn:rep:1738]. Historically, CC to the consistency of single operations on a shared memory [@syn:mat:1025]. Causally consistent (Causal is consistency that extends CC to transactional data stores [@db:syn:1751]. #### Snapshot Isolation (SI). SI is a widely-used model [@syn:bd:1759]. This model is strong, but allows interleavings of concurrent read than SER. Furthermore, SI is (i.e., $\subseteq$ CC), SER not. SI, a transaction a *snapshot* of the state of the data store at some point prior in time. Strong snapshot (SSI) requires to contain the transactions real time [@Daudjee:2006]. may commit under SI as long not write the same item concurrent. SI avoids anomalies listed but exhibits the *write-skew* anomaly, illustrated history $h_4$ below. In this history, an application data items $x$ and $y$ wishes to maintain the invariant $x \geq y$. The invariant and each of the transactions ${\color{blue}{T_1}}$ and guarantees invariant As in history running them concurrently under SI may violate the invariant. An application *robust* against a consistency model $M$ when, it produces serialisable despite atop a data providing $M$, It is [@syn:1687] an application is robust when invariant a item. Parallel [/]{} Non-Monotonic Snapshot (PSI[/]{}NMSI). Parallel and non-monotonic snapshot are scalable variations of core properties of SI, namely each transaction observes consistent snapshot, and no
1}$.

#### Causal Consistency (CC).

Causal ConsistencY (CC) hoLds WheN tRansActiOns observe consIStenT snapshots of the system, aNd the ClIEnt aPPlIcatiOn proceSSeS ARe mOnOtOniC. Cc Is A weak ConSistencY model and iT doEs Not allow solvINg Consensus. IT is In fact the strOngEst modEl ThaT Is avaIlaBle unDer parTItion [@sYn:rep:1738]. HistOrICally, Cc Refers tO THe ConsIstency of single opERaTIons on a shared mEmory [@sYn:MAt:1025]. cAUsaLly Consistent TrAnsacTIons (CauSAl hat) Is a COnsistency modEl that extenDS CC To tranSaCtiONal datA storEs [@DB:syN:1751].

#### Snapshot IsOlatIon (SI).

SI is A widelY-Used conSIstency Model [@sYn:bD:1759]. ThIs moDEl Is StrOnG, But ALlOws MOre InterleaViNgS of coNcurRENT Read TraNsacTions Than SER. FurtheRmoRe, SI IS caUsal (i.E., SI $\suBsetEq$ cC), wheReas SEr is noT.

UNder SI, a transactIon oBserves a *sNapShOt* oF tHe staTE of the DatA stOre at soMe point PRioR iN TIMe. strong snapshot isolAtION (SsI) requirEs this SNaPsHOt to contAiN alL the PREcediNg trANsActions iN real tIMe [@daUdjee:2006]. TwO tRansacTiOns May CommiT UndeR SI as lOng as theY do noT Write the same itEM concurrent. SI AVoIDS tHE anoMalIes listed in, But eXHibiTs thE *WrIte-SKew* anOmaly, IlLUsTRated in history $h_4$ beloW.

IN this hIstorY, an applicatioN using data ITEMs $x$ and $y$ wIsheS To MAintain the invaRiant $X \geq y$. The inVAriant hoLds inItially, aNd each of tHE Two transActIonS ${\coLor{BLUe}{t_1}}$ and ${\color{red}{T_2}}$ GUAranTeEs the inVarIant indIviDuaLly. as iLlUstrated iN history $H_4$, rUnNiNg TheM concURrently uNdEr Si mAy vIolatE The invArianT.

An aPpLiCAtiOn is *robUSt* AGAinsT a CoNsisTenCy Model $m$ wheN, It pRoduces SerialisaBle HIstoRiEs [@cerone:2016], dEspite running AtOp a data stoRe ProViding $m$, iT is known [@Syn:1687] that an application is rOBust agaInsT SI whEn evEry invariAnt Is mateRiaLIsed by A data iTem.

#### PaRaLleL [/]{} nOn-MonOTOnIc SNaPshot IsolaTIOn (PsI[/]{}NMSi).

PAralLel and nOn-monotonic snapshoT IsoLation are scalAblE varIATiOns OF Si. theSe MOdeLS Retain two core prOperties of sI, NAmEly

each traNSacTiOn obserVes a conSisteNT snapshOt, and

no
1}$.

#### Causal Consiste ncy (CC).
Caus alcon si sten cy ( CC) holds when tran sactions observe consi stent  s n apsh o ts  of t he syst e m, a ndth ecli en t  a pplic ati on proc esses aremon ot onic. CC isa  w eak consis ten cy model and  it  doesno t a l low s olv ing c onsens u s. Itis in fac tt he str o ngest m o d el  tha t is available un d er partition [@sy n:rep: 17 3 8] . His tor ically, CC  r efers to thec on s i s ten c y of single o perations o n  ashared  m emo r y [@sy n:mat :1 0 25] . Causallycons istent tr ansact i ons (Ca u sal HAT ) is a  co nsi sten c ymo del  t h ate xt end s  CC  to tran sa ct ional  dat a s t ores  [@ db:s yn:17 51].

#### Sn aps hotI sol ation  (SI) .

S Iis awidely -used  c onsistency mode l [@ syn:bd:17 59] .Thi smodel is str ong , b ut allo ws more int er l e a vi ngs of concurrentre a d  t ransacti ons th a nSE R . Furthe rm ore , SI i s cau sal( i. e., SI $ \subse t eq $CC), wh er eas SE Risnot .

Un d er S I, a t ransacti on ob s erves a *snaps h ot* of the st a te o ft he d ata  store at s omep oint  pri o rint ime.Stron gs na p shot isolation (SSI )requir es th is snapshot t o containa l l  the pre cedi n gt ransactions in  real  time [@Da u djee:200 6]. T wo trans actions m a y  commitund erSIasl o ng  as they do n o t  wri te  the sa meitem co ncu rre nt.  SI  a voids the  anomali es  l is te d i n, bu t  exhibit sthe  * wri te-sk e w* ano maly,  ill us tr a ted  in his t or y $h_4 $be low. 

I nthishist o ry,  an app licationusi n g da ta  i tems $x $ and $y$ wis he s to maint ai n t he inv a r iant $x\geq y$. The invarianth olds in iti ally,  and  each ofthe  two t ran s action s ${\c olor{ bl ue} { T _1}}$ a nd  ${ \c olor{red}{ T _ 2}} $ gua ra ntee s the i nvariant individua l ly.  As illustrat edin h i s to ry$ h_ 4 $,ru n nin g them concurrent ly under S Im ay  violate t h e i nv ariant. 

An ap plica t ion is*robust*against a  c onsi s t enc y model $M $ when,it produc e s ser i al isabl e h istori es  [@ Ceron e:2016 ] , d espit e runn in g atop  a da ta  store p roviding $M$, It is kno wn [@s yn:16 87]  that anapp l ica tion is r obus t againstSIwhe n eve ryi nvari anti smat e riali sedb y a datai te m.# ## # Parallel[ / ] {}Non-M ono t onic S naps hot Isolation (PS I [/]{}NMSI).

P aral l e l a ndn on-m on otonic snapsho t i so l a tion are  s calable var iationsof SI. T hese m odelsretaint w oc ore pr oper tie s of SI,nam el y 

eachtr an s action  obs er ves aconsis t ents n apshot, and

no
1}$.

#### Causal_Consistency (CC).

Causal_consistency (CC) holds when_transactions observe_consistent_snapshots of_the_system, and the_client application processes_are monotonic. CC is_a weak consistency_model_and it does not allow solving consensus. It is in fact the strongest model_that_is available_under_partition_[@syn:rep:1738]. Historically, CC refers to_the consistency of single operations_on a_shared memory [@syn:mat:1025]. Causally consistent transactions (Causal HAT)_is_a consistency model_that extends CC to transactional data stores [@db:syn:1751].

#### Snapshot_Isolation (SI).

SI is a widely-used consistency_model [@syn:bd:1759]. This_model_is_strong, but allows more_interleavings of concurrent read transactions than_SER. Furthermore, SI is causal (i.e.,_SI $\subseteq$ CC), whereas SER is not.

Under_SI, a transaction observes a *snapshot*_of the state of the_data store_at some point prior in_time. Strong snapshot_isolation (SSI)_requires this snapshot_to contain all the preceding transactions_in real time_[@Daudjee:2006]. Two transactions may commit under_SI_as long as_they_do_not write_the same item_concurrent._SI avoids_the_anomalies listed in, but exhibits the_*write-skew*_anomaly, illustrated in history $h_4$ below.

In this_history, an application using_data_items $x$ and $y$_wishes to maintain the invariant_$x \geq y$. The invariant holds_initially, and_each of_the two transactions ${\color{blue}{T_1}}$ and ${\color{red}{T_2}}$ guarantees the invariant individually. As_illustrated in history $h_4$, running them_concurrently under SI may_violate the_invariant.

An_application is *robust*_against_a consistency_model $M$ when, it produces serialisable histories_[@Cerone:2016], despite_running atop a data store providing_$M$, It is known_[@syn:1687]_that an application is robust against_SI when every invariant is materialised_by a data item.

#### Parallel_[/]{}_Non-Monotonic_Snapshot Isolation (PSI[/]{}NMSI).

Parallel and non-monotonic_snapshot isolation are scalable variations of_SI. These models_retain two core properties of SI, namely

each_transaction_observes a consistent snapshot, and

no