Domain-Driven Design – Which DDD pattern for context mapping is data replication with eventual consistency between BCs?

The DDD literature describes 8-9 context map patterns (patterns for BC interaction):

  • Anticorruption layer
  • Shared kernel
  • Separate ways
  • partnership
  • Customer-supplier
  • conformist
  • Open Host Service + Published Language
  • BBoM

Suppose BC A requires some data owned by BC B. We create a replica of this data in BC A. We create a synchronization mechanism (ETL) to send data changes in the master (BC B) to the replica (BC A).

Which of the listed patterns will be used in this data replication setting over BCs with any consistency?

Consistency – Which way blocks? / Which way is closed?

First of all, I would like to say that I set up castles to make a living. While I do a lot of locksmithing, I do not call myself a locksmith because I work exclusively on locks for buildings. That means I do not crack safes or open cars. I own a company that specializes in the sale and installation of door fittings for residential and commercial real estate.

I just came across this question, because I really wondered the same thing with all my expertise. I know the thread is quite old, but I feel like I can contribute to posterity. So, here is my attitude:

There are basically two types of locks on doors: cylinder and mortise lock. Mortise locks consist of a rectangular box that fits into a, well … mortise lock that cuts a joiner into a door. Due to its design, the key is inserted in one side and the latch is attached to the other side. They can not be undone and can only be installed in one direction. There are four types: left, right, left and right reverse.

To understand the types, it is easiest to first understand the cylinder locks. While mortise locks are still manufactured and used, they have fallen out of favor over the years. This is mainly due to the fact that an experienced joiner or a special machine (which no longer manufactures) is required for the installation. A cylinder lock that you probably have at home can easily be installed with a drill and the right bits. Essentially, they just fit in a hole.

Cylinder locks can be reversed as they fit in a round hole instead of a rectangular mortise lock. So unless you have a bent lever or latch, they are all the same. The only time they are "handed over" is when they have an exposed piece that should be shown in a certain way. Even then, they only come in left and right hands. The "bevel" refers to the angle cut on the striker so that the door closes without you first having to turn the knob. Even if a cylinder lock is handed over, you can turn the bevel to the door frame and the closing plate when it is closed. Thus there is no backward slope.

If you are still with me, there are four types of mortise locks, as the key can only be inserted on one side and the bevel of the firing pin can not be turned. There are four types of doors. The hinges can be on the left or right, and the door can open into or out of a room.

For mortise locks, the key has always been inserted vertically and turned away from the frame for locking in the direction of the frame and for unlocking. Likewise, the thumb lock works on the inside. Therefore, it makes sense to install a cylinder lock in the same way as locks have been working this way for at least a century.

However, there are some nuances in cylinder locks that prevent this from becoming a universal rule. The actual locking mechanism of a cylinder lock consists of a flat piece of metal that connects the inside and outside of the lock and passes through the latch that holds the door closed. This is called a "tailpiece".

When the right key is inserted into the lock, you can turn the tailpiece 90 degrees to the left or right from the outside. The tailpiece can be freely rotated by the bolt without a key. If you only hold the locking mechanism, you would see that the tailpiece is a total of 180 freely rotatable. That's why there is this question at all. You can install almost any cylinder lock in the unlocked position with the thumb latch in the vertical OR horizontal position.

So, here's what I know for sure. Some manufacturers design their locks to work in one way or another. As far as I know, this is due to the fact that the lock is stronger when turning to the stop. If you think about it and remember that the tailpiece rotates 180 degrees, the pins of the lock are cocked when it is turned to the left or right, but not when it is in the middle (vertical position).

I know this is confusing, but some locks are designed to be live in either the locked or unlocked position. This depends on the manufacturer and model. I will say that if the direction is important, it is always noted in the instructions. So check them first and follow them.

To make things even more obscure, some manufacturers make locks where the bolt sits at a 45-degree angle. All cylinder locks only need to rotate 90 degrees to operate. Therefore, these special locks tend to lock when locked to the frame and when unlocking. However, they never rest in a vertical or horizontal position. Schlage makes many models in this style.

Recently I also saw cylinder locks with labels on the front panels. Some have an arrow or mark for the locked position. Others have actually locked the words locked and unlocked in the record. To complicate matters, I have seen these labeled faceplates with the locked position vertically, horizontally, and in between.

TLDR: All locks are different. Follow the manufacturer's instructions. If the direction is not specified, install the lock so that it is unlocked when the thumb latch is vertical and locked when it is horizontal. The latch or key locks when it is turned to the frame (strike plate) and unlocks when it is turned away. Whether it is clockwise or counterclockwise depends on whether it is a left or a right door.

lo.logic – What is the consistency of this theory of elastic hierarchies?

Working in the Morse-Kelley set theory:

A hierarchy is defined as a class that is the union of sets uniquely indexed by atomic numbers, called stages, so that each stage is the power set of the immediately preceding indexed stage, or if there is no immediately preceding indexed stage, then it is the union of all previously indicated levels. The set of all atomic numbers indexing their levels is called the index set of the hierarchy, and the order relation on the set by which the levels of the hierarchy are ordered is called the ordering order of the hierarchy.

To let $ mathcal H $ be the minimum hierarchy in terms of order $ <$ is the membership relationship to ordinal numbers, i. $ mathcal H $ is the union of all levels $ mathcal H_i $ Where $ i $ is an atomic number that is well ordered afterwards $ <$, Where $ mathcal H_ emptyset = emptyset $ and $ mathcal H_ {i + 1} = mathcal P ( mathcal H_i) $ and $ mathcal H_j = bigcup ( { mathcal H_i | i <j }) $ when $ j $ is a limit, and $ mathcal H $ is a subclass of a class that meets the above conditions.

Now the set of all step indices of $ mathcal H $, designated by $ I ^ mathcal H $ is the index set of $ mathcal H $,

Now for every order $ mathcal R $ on $ I ^ mathcal H $is there a hierarchy? $ mathcal H ^ { mathcal R} $ their levels are indicated by the quantity $ I ^ mathcal H $ but well arranged by relationship $ mathcal R $so here $ mathcal H ^ { mathcal R} $ would be the union of all levels $ mathcal H ^ { mathcal R} _i $ so that $ mathcal H ^ mathcal R_ {min ^ R} = emptyset, $ and $ mathcal H ^ mathcal R_ {i + ^ { mathcal R} 1} = mathcal P ( mathcal H ^ mathcal R _i) $ and $ mathcal H ^ mathcal R _j = bigcup ( { mathcal H ^ mathcal R_i | i mathcal R j }) $ when $ j $ is a $ mathcal R $-Border.

Example is left $ mathcal R $ be that $ <^ * $ the order is good $ I ^ mathcal H $ defined as:

$ alpha <^* beta equiv_{df} alpha> emptyset land ( beta> alpha lor beta = emptyset) $

Now according to the above principle $ mathcal H ^ {<^ *} _ emptyset $ must exist! And this would clearly be an inaccessible level of hierarchy $ mathcal H ^ {<^ *} $,

To further extend this method, we define the unary predicate "stretchy"on hierarchies and the binary relationship Hierarchical birth between hierarchies as:

Define: A hierarchy is stretchy if and only if each well order in its index set has a hierarchy with the same index set ordered by that order of wells.

$ stretchable ( mathcal K) equiv_ {df} forall mathcal R ( mathcal R wr wr I ^ mathcal K to exists mathcal X ( mathcal X = mathcal K ^ mathcal R)) $

Where $ “ wr wr "$ stands for "well orders".

Define: For any two hierarchies $ mathcal K, mathcal L $

$ mathcal L looparrowleft mathcal K equiv_ {df} I ^ { mathcal L} subseteq mathcal K $

Where $ “ looparrowleft "$ mean "born out"

In English: A hierarchy is born from a different hierarchy if and only if the index set of the former is a subclass of the later ones.

Stretching at birth: $ forall mathcal K, mathcal L ( mathcal L looparrowleft mathcal K stretchable ( mathcal K) to stretchable ( mathcal L)) $

Elongation through accessibility: $$ forall X in V ( forall Y in X (stretchable (Y)) to forall text {ordinal} D subseteq bigcup (X) exists mathcal K (stretchy ( mathcal K ) land D = I ^ mathcal K)) $$

What is the consistency of this theory?

[Vn5socks.net] Car Update 24/7 – Good Socks 8h40 PM

LIFE ~ 13.231.110.249:1081 | 0.085 | Norwalk | CT | 06850 | United States | Checked for vn5socks.net
LIFE ~ 158.69.243.148:9999 | 0.353 | Lake Forest | CA. | 92630 | United States | Checked for vn5socks.net
LIFE ~ 42.112.20.116:7200 | 0,003 | Hanoi | 44 | Unknown | Vietnam | Checked for vn5socks.net
LIFE ~ 18.182.177.151:9050 | 0.087 | Cambridge | MA | 02139 | United States | Checked for vn5socks.net
LIFE ~ 124.65.145.126:7302 | 0.219 | Peking | 22 | Unknown | China | Checked for vn5socks.net
LIFE ~ 167.71.146.116:9050 | 0,289 | new York | NY | 10020 | United States | Checked for vn5socks.net
LIFE ~ 72.217.158.195:54810 | 0,318 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 72.221.164.35:60670 | 0.293 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 220.79.34.109:2018 | 0.14 | Seoul | 11 | Unknown | Korea, Republic of | Checked for vn5socks.net
LIFE ~ 24.249.199.14:57335 | 0,322 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 178.62.193.217:3130 | 0,255 | Unknown | Unknown | Unknown | Russian Federation | Checked for vn5socks.net
LIFE ~ 169.239.221.90:50802 | 0.557 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net
LIFE ~ 79.104.222.121:9050 | 0.4 | Krasnoyarsk | 39 | Unknown | Russian Federation | Checked for vn5socks.net
LIFE ~ 206.248.184.127:9050 | 0.313 | concord | ON | Unknown | Canada | Checked for vn5socks.net
LIFE ~ 5.189.224.84:10000 | 0.292 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net
LIFE ~ 35.221.75.198:1081 | 0.083 | Ann Arbor | MI | 48104 | United States | Checked for vn5socks.net
LIFE ~ 50.62.35.16:44249 | 0,262 | Scottsdale | AZ | 85260 | United States | Checked for vn5socks.net
LIFE ~ 70.168.93.218:17026 | 0,318 | Santa Barbara | CA. | Unknown | United States | Checked for vn5socks.net

Feuerhimmel
Reviewed by Feuerhimmel on
,
[Vn5socks.net] Auto Update 24/7 – Good Socks 8h40 PM
LIVE ~ 13.231.110.249:1081 | 0.085 | Norwalk | CT | 06850 | United States | Checked at vn5socks.net
LIVE ~ 158.69.243.148:9999 | 0.353 | Lake Forest | CA | 92630 | United States | Checked at vn5socks.net
LIVE ~ 42.112.20.116:7200 | 0.003 | Hanoi | 44 | Unknown | Vietnam | Checked at vn5socks.net
LIVE ~ 18.182.177.151:9050 | 0.087 | Cambridge | MA | 02139 | United States | Checked at vn5socks.net
LIVE ~ 124.65.145.126:7302 | 0.219 | Beijing | 22 | Unknown |

Rating: 5

[Vn5socks.net] Car Update 24/7 – Good Socks 11h50

LIFE ~ 50.62.35.16:44249 | 0,251 | Scottsdale | AZ | 85260 | United States | Checked for vn5socks.net
LIFE ~ 35.221.75.198:1081 | 0.085 | Ann Arbor | MI | 48104 | United States | Checked for vn5socks.net
LIFE ~ 42.112.20.116:7200 | 0.02 | Hanoi | 44 | Unknown | Vietnam | Checked for vn5socks.net
LIFE ~ 13.231.110.249:1081 | 0.083 | Norwalk | CT | 06850 | United States | Checked for vn5socks.net
LIFE ~ 82.165.137.115:7061 | 0.28 | Unknown | Unknown | Unknown | Germany | Checked for vn5socks.net
LIFE ~ 169.239.221.90:50802 | 0.504 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net
LIFE ~ 178.62.193.217:3130 | 0,273 | Unknown | Unknown | Unknown | Russian Federation | Checked for vn5socks.net
LIFE ~ 79.104.222.121:9050 | 0.393 | Krasnoyarsk | 39 | Unknown | Russian Federation | Checked for vn5socks.net
LIFE ~ 158.69.243.148:9999 | 0.349 | Lake Forest | CA. | 92630 | United States | Checked for vn5socks.net
LIFE ~ 206.248.184.127:9050 | 0.301 | concord | ON | Unknown | Canada | Checked for vn5socks.net
LIFE ~ 72.217.158.195:54810 | 0.301 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 183.102.171.77:8888 | 0.365 | Incheon | 12 | Unknown | Korea, Republic of | Checked for vn5socks.net
LIFE ~ 184.176.166.8:17864 | 0.333 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 167.71.146.116:9050 | 0,262 | new York | NY | 10020 | United States | Checked for vn5socks.net
LIFE ~ 45.77.49.73:31102 | 0,151 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net
LIFE ~ 5.189.224.84:10000 | 0,305 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net
LIFE ~ 70.168.93.201:17009 | 0.32 | Santa Barbara | CA. | Unknown | United States | Checked for vn5socks.net
LIFE ~ 132.148.159.44:12397 | 0.421 | Minneapolis | MN | 55488 | United States | Checked for vn5socks.net

Feuerhimmel
Reviewed by Feuerhimmel on
,
[Vn5socks.net] Auto Update 24/7 – Good Socks 11h50
LIVE ~ 50.62.35.16:44249 | 0,251 | Scottsdale | AZ | 85260 | United States | Checked at vn5socks.net
LIVE ~ 35.221.75.198:1081 | 0.085 | Ann Arbor | MI | 48104 | United States | Checked at vn5socks.net
LIVE ~ 42.112.20.116:7200 | 0.02 | Hanoi | 44 | Unknown | Vietnam | Checked at vn5socks.net
LIVE ~ 13.231.110.249:1081 | 0.083 | Norwalk | CT | 06850 | United States | Checked at vn5socks.net
LIVE ~ 82.165.137.115:7061 | 0.28 | Unknown | Unknown | Unknown |

Rating: 5

,

[Vn5socks.net] Car Update 24/7 – Good Socks 11h40

LIFE ~ 18.182.177.151:9050 | 0.08 | Cambridge | MA | 02139 | United States | Checked for vn5socks.net
LIFE ~ 50.62.35.16:44249 | 0.263 | Scottsdale | AZ | 85260 | United States | Checked for vn5socks.net
LIFE ~ 24.249.199.14:57335 | 0,325 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 82.165.137.115:7061 | 0.294 | Unknown | Unknown | Unknown | Germany | Checked for vn5socks.net
LIFE ~ 184.176.166.8:17864 | 0.32 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 50.62.35.16:10979 | 0.26 | Scottsdale | AZ | 85260 | United States | Checked for vn5socks.net
LIFE ~ 178.62.193.217:3130 | 0.268 | Unknown | Unknown | Unknown | Russian Federation | Checked for vn5socks.net
LIFE ~ 79.104.222.121:9050 | 0.403 | Krasnoyarsk | 39 | Unknown | Russian Federation | Checked for vn5socks.net
LIFE ~ 166.62.118.146:41300 | 0,314 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net
LIFE ~ 167.71.146.116:9050 | 0.265 | new York | NY | 10020 | United States | Checked for vn5socks.net
LIFE ~ 5.189.224.84:10000 | 0.292 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net
LIFE ~ 169.239.221.90:50802 | 0.501 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net
LIFE ~ 72.221.164.35:60670 | 0.297 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 45.77.49.73:31102 | 0.153 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net
LIFE ~ 124.65.145.126:7302 | 0.214 | Peking | 22 | Unknown | China | Checked for vn5socks.net
LIFE ~ 62.210.79.66:27284 | 0.272 | Unknown | Unknown | Unknown | France | Checked for vn5socks.net
LIFE ~ 220.79.34.109:2018 | 0.143 | Seoul | 11 | Unknown | Korea, Republic of | Checked for vn5socks.net
LIFE ~ 206.248.184.127:9050 | 0.323 | concord | ON | Unknown | Canada | Checked for vn5socks.net

Feuerhimmel
Reviewed by Feuerhimmel on
,
[Vn5socks.net] Auto Update 24/7 – Good Socks 11h40
LIVE ~ 18.182.177.151:9050 | 0.08 | Cambridge | MA | 02139 | United States | Checked at vn5socks.net
LIVE ~ 50.62.35.16:44249 | 0,263 | Scottsdale | AZ | 85260 | United States | Checked at vn5socks.net
LIVE ~ 24.249.199.14:57335 | 0.325 | Unknown | Unknown | Unknown | United States | Checked at vn5socks.net
LIVE ~ 82.165.137.115:7061 | 0,294 | Unknown | Unknown | Unknown | Germany | Checked at vn5socks.net
LIVE ~ 184.176.166.8:17864 | 0.32 | Unknown | Unknown |

Rating: 5

,

[Vn5socks.net] Car Update 24/7 – Good Socks 8h30

LIFE ~ 139.180.174.63:31844 | 0.191 | New Kensington | PA | 15069 | United States | Checked for vn5socks.net
LIFE ~ 18.182.177.151:9050 | 0,129 | Cambridge | MA | 02139 | United States | Checked for vn5socks.net
LIFE ~ 167.71.146.116:9050 | 0.29 | new York | NY | 10020 | United States | Checked for vn5socks.net
LIFE ~ 124.65.145.126:7302 | 0.25 | Peking | 22 | Unknown | China | Checked for vn5socks.net
LIFE ~ 5.45.81.173:14785 | 0.321 | Unknown | Unknown | Unknown | Russian Federation | Checked for vn5socks.net
LIFE ~ 70.168.93.218:17026 | 0.312 | Santa Barbara | CA. | Unknown | United States | Checked for vn5socks.net
LIFE ~ 220.79.34.109:2018 | 0.114 | Seoul | 11 | Unknown | Korea, Republic of | Checked for vn5socks.net
LIFE ~ 206.248.184.127:9050 | 0.3 | concord | ON | Unknown | Canada | Checked for vn5socks.net
LIFE ~ 80.240.26.21:1082 | 0.263 | Unknown | Unknown | Unknown | Greece | Checked for vn5socks.net
LIFE ~ 184.176.166.8:17864 | 0.327 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 72.221.164.35:60670 | 0.303 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 199.247.20.58:32124 | 0,284 | yellow knife | NT | x1a2n3 | Canada | Checked for vn5socks.net
LIFE ~ 5.189.224.84:10000 | 0.29 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net
LIFE ~ 98.181.99.197:10368 | 0.323 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 159.65.180.9:9050 | 0.26 | Dallas | TX | 75231 | United States | Checked for vn5socks.net
LIFE ~ 72.217.158.195:54810 | 0,295 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 132.148.141.147:53768 | 0.426 | Minneapolis | MN | 55488 | United States | Checked for vn5socks.net
LIFE ~ 169.239.221.90:50802 | 0.48 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net

Feuerhimmel
Reviewed by Feuerhimmel on
,
[Vn5socks.net] Auto Update 24/7 – Good Socks 8h30
LIVE ~ 139.180.174.63:31844 | 0.191 | New Kensington | PA | 15069 | United States | Checked at vn5socks.net
LIVE ~ 18.182.177.151:9050 | 0.129 | Cambridge | MA | 02139 | United States | Checked at vn5socks.net
LIVE ~ 167.71.146.116:9050 | 0.29 | New York | NY | 10020 | United States | Checked at vn5socks.net
LIVE ~ 124.65.145.126:7302 | 0.25 | Beijing | 22 | Unknown | China | Checked at vn5socks.net
LIVE ~ 5.45.81.173:14785 | 0.321 | Unknown | Unknown | Unknown

Rating: 5

[Vn5socks.net] Car Update 24/7 – Good Socks 10h25 PM

LIFE ~ 209.250.237.154:30085 | 0,267 | Secaucus | NJ | 07094 | United States | Checked for vn5socks.net
LIFE ~ 24.249.199.14:57335 | 0.31 | Unknown | Unknown | Unknown | United States | Checked for vn5socks.net
LIFE ~ 199.247.20.58:32124 | 0.292 | yellow knife | NT | x1a2n3 | Canada | Checked for vn5socks.net
LIFE ~ 124.65.145.126:7302 | 0.286 | Peking | 22 | Unknown | China | Checked for vn5socks.net
LIFE ~ 80.240.24.119:32884 | 0,329 | Unknown | Unknown | Unknown | Greece | Checked for vn5socks.net
LIFE ~ 159.65.180.9:9050 | 0.272 | Dallas | TX | 75231 | United States | Checked for vn5socks.net
LIFE ~ 193.112.28.177:21071 | 0,254 | Unknown | Unknown | Unknown | Great Britain | Checked for vn5socks.net
LIFE ~ 193.112.181.84:21071 | 0.32 | Unknown | Unknown | Unknown | Great Britain | Checked for vn5socks.net
LIFE ~ 45.248.84.55:9150 | 0.048 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net
LIFE ~ 35.221.75.198:1081 | 0.11 | Ann Arbor | MI | 48104 | United States | Checked for vn5socks.net
LIFE ~ 193.112.253.165:21071 | 0,258 | Unknown | Unknown | Unknown | Great Britain | Checked for vn5socks.net
LIFE ~ 62.210.79.66:40897 | 0,248 | Unknown | Unknown | Unknown | France | Checked for vn5socks.net
LIFE ~ 80.240.17.4:33483 | 0,262 | Unknown | Unknown | Unknown | Greece | Checked for vn5socks.net
LIFE ~ 206.248.184.127:9050 | 0.307 | concord | ON | Unknown | Canada | Checked for vn5socks.net
LIFE ~ 80.240.26.168:32646 | 0,279 | Unknown | Unknown | Unknown | Greece | Checked for vn5socks.net
LIFE ~ 95.179.226.207:31845 | 0,273 | Unknown | Unknown | Unknown | Greece | Checked for vn5socks.net
LIFE ~ 82.165.137.115:7061 | 0.283 | Unknown | Unknown | Unknown | Germany | Checked for vn5socks.net
LIFE ~ 169.239.221.90:50802 | 0.516 | Unknown | Unknown | Unknown | Unknown | Checked for vn5socks.net

Feuerhimmel
Reviewed by Feuerhimmel on
,
[Vn5socks.net] Auto Update 24/7 – Good Socks 10h25 PM
LIVE ~ 209.250.237.154:30085 | 0,267 | Secaucus | NJ | 07094 | United States | Checked at vn5socks.net
LIVE ~ 24.249.199.14:57335 | 0.31 | Unknown | Unknown | Unknown | United States | Checked at vn5socks.net
LIVE ~ 199.247.20.58:32124 | 0,292 | Yellow knife | NT | x1a2n3 | Canada | Checked at vn5socks.net
LIVE ~ 124.65.145.126:7302 | 0,286 | Beijing | 22 | Unknown | China | Checked at vn5socks.net
LIVE ~ 80.240.24.119:32884 | 0.329 | Unknown | Unknown | Unknown

Rating: 5

Distributed Systems – Eventual consistency versus Replication Delay

I am a little confused about these two concepts.

I understand that the consistency property specifies which values ​​can be read, depending on what was previously written. For example, if we consider a simple abstract read / write service. It enjoys the stronger form of consistency a.k.ak. linearizability: you always read the last ones. In a weaker form of consistency, you can read any old values.

In terms of implementation, I imagine a leader / replica architecture where writes are executed on the leader and transferred to the replica. And read on every replica. Because of the replication delayWe only get a weaker form of consistency.

NoSql DB is known to enjoy no Linearisierbarkeit, but only a weaker consistency form such possible consistency, I think this is a simple consequence of the replication delay we get from the leader / replica architecture commonly used in these systems.

Here I am confused. Commonly known is:

  • SQL β‡’ strict consistency
  • NoSQL β‡’ possible consistency

However, the SQL database can also be set up in a leader / replica for better read performance. In this case, I assume that they are suffering from the same replication delay and are therefore ultimately consistent.

I also understand that "consistent" is overriding and is also used in connection with transactions. Is the true dichotomy between SQL and NoSQL the ability to perform ACID transactions and not the consistency model?