educative.io

Educative

Horizontal Partitioning

Could you explain the following statement, with an example
Another important implication of horizontal partitioning is the potential for loss of transactional semantics.

Hi @Tanay_Gupta

Can you please share the course and lesson links?

Course: Distributed Systems for Practitioners - Learn Interactively
lesson: Basic Concepts and Theorems → Partitioning → Limitations of partitioning

Hi @Tanay_Gupta

My name is Shahrukh Naeem. I hope everything is going well with you. Thank you for reaching out about this. I will try my best to answer your query!

We treat transactions as programs whose semantics can be analyzed at design time. The effect of each transaction is specified using pre and post-conditions, and any schedule that preserves these conditions is permissible. Such schedules can produce database states that could not be reached by any serial execution. In addressing the issue of performance, we use transaction semantics to decompose transactions into steps and describe a concurrency control that controls step interleaving in such a way that assertions are preserved. The same model can be used to study the interleaving of sub-transactions of concurrent distributed transactions.
So, loss of transactional semantics may result from horizontal partitioning, which is another significant consequence of horizontal partitioning.

I hope that this guide is helpful. Remember that I am always available via message to help you with any difficulty you might encounter.

Regards,

Happy Learning :slight_smile:

1 Like

Thank you for the answer. I did understand what you are trying to explain, but it would really help if you could provide with a simple example. :grinning_face_with_smiling_eyes: