26
<[QIY _ZIv Igg] Y<pQ] k[fkIQg< p<[ IYYs I[W<ZQ[ .IIG !<sh<Z 9<D<[GIP $ZQG /RFNIUHH 7UDQVDFWLRQDO 6XSSRUW IRU 'LVWULEXWHG 'DWD 6WRUHV

Omid: Lock-free Transactional Support for Distributed Data Stores

Embed Size (px)

DESCRIPTION

ICDE 2014

Citation preview

Page 1: Omid: Lock-free Transactional Support for Distributed Data Stores

�<[QIY��_ZIv��Igg]�������������������������������Y<pQ]��k[fkIQg<��

�p<[��IYYs������������������������������������������������I[W<ZQ[�.IIG��

���������!<sh<Z�9<D<[GIP

$ZQG/RFN�IUHH�7UDQVDFWLRQDO�6XSSRUW�IRU�

'LVWULEXWHG�'DWD�6WRUHV

Page 2: Omid: Lock-free Transactional Support for Distributed Data Stores

��!/���<j<D<hI�!<[<OIZI[j�/shjIZh

/- �/kdd]gj

£ 0g<[h<EjQ][h

£ �]Q[

£ �[G�«�

/E<Y<DQYQjs

Pjjd���ZIGQ<�ZIgEP<[jEQgEYI�E]Z�ÃÆÊÁÈÉÈÇ�GIhXÚÃÁj]]ÚÃÁhZ<YY¢NkYY�WdIO

� ���ÃÁÂÅ

Page 3: Omid: Lock-free Transactional Support for Distributed Data Stores

�<j<�/j]gIh

£ /E<Y<DQYQjs

  /E<YI�]kj�ph��kd

  /dgI<G�jPI�G<j<�<Eg]hh�jP]kh<[Gh�]N�G<j<�hIgpIgh

  ��O����QO0<DYI����<hI�� <hh<[Gg<��«

£ "]�/- �hkdd]gj

  �]Q[��«£ "]j�� ��

  jg<[h<EjQ][h��«

Pjjd���hqDY]O�hd<qIIX�E]Z�qd�E][jI[j�kdY]<Gh�ÃÁÂÂ�ÁÇ�q]Z<[�<j�GIhX�<j�DI<EP�WdO

� ���ÃÁÂÅ

Page 4: Omid: Lock-free Transactional Support for Distributed Data Stores

/- ��<d

h<q]ZI[j<YXjIEP�E]Z��Pjjd���qqq�EYXIg�E]Z�

��!/ �<j<�/j]gI

0g<[h<EjQ][h

«

�]Q[

� ���ÃÁÂÅ

Page 5: Omid: Lock-free Transactional Support for Distributed Data Stores

0g<[h<EjQ][�¥jr[¦

£ .I<G�qgQjI�Ng]Z�ZkYjQdYI�g]qh

Â� �YY�]g�[]jPQ[O�ĺ�h<NI�qQjP�[]GI�N<QYkgIh

� ][EkggI[Es

£ ��jr[�G]Ih[°j�]DhIgpI�d<gjQ<Y�EP<[OIh�]N�]jPIgh�

£ �IpIY]dIgh�<gI�[]j�DkgGI[IG�qQjP�jPIhI�GIj<QYh

0h

0E

� ���ÃÁÂÅ

Page 6: Omid: Lock-free Transactional Support for Distributed Data Stores

�ddYQE<jQ][h

Â� �<[X�jg<[h<EjQ][h��I�r����g<G�h�+<sEPIEX�ĺ£ �GG�jPI�Z][Is�j]��g<G�h�<EE]k[j�Û£ �IEgI<hI�jPI�Z][Is�Ng]Z�jPI��]YYsq]]G�h�<EE]k[j

Ã� 1dG<jQ[O�DQGQgIEjQ][<Y�YQ[Xh  �[OIYQ[<�<[G��g<G�<gI�NgQI[Gh�ĺ

£ �GG��g<G�j]��[OIYQ[<�NgQI[G�YQhj�Û£ �GG��[OIYQ[<�j]��g<G�NgQI[G�YQhj

Ä� 1dG<jQ[O�hIE][G<gs�Q[GIrIh  �GG�[Iq�<G]djIG�EPQYG�Û�kdG<jI�jPI�Q[GIr

Å� �]]OYI�+IgE]Y<j]g  1dG<jI��QO0<DYI�qQjP�jPI�[Iq�Eg<qYIG�G<j<  1hI�E][EkggI[j�jr[h�Q[hjI<G�]N�][I�DQO�!<d.IGkEI�W]D

�� ���ÃÁÂÅ

Page 7: Omid: Lock-free Transactional Support for Distributed Data Stores

/[<dhP]j��h]Y<jQ][��/�

£ �h]Y<jQ][�YIpIY��GINQ[Ih�hshjIZ�DIP<pQ]g�Q[�N<EI�]N�E][EkggI[j�jg<[h<EjQ][h

¦�.I<G�][Ys�<[G�][Ys�Ng]Z�E]ZZQjjIG�p<YkIh�DIN]gI�0

h

0h

0E

8]YG

8[Iq

8E][EkggI[j

� ���ÃÁÂÅ

Page 8: Omid: Lock-free Transactional Support for Distributed Data Stores

/[<dhP]j��h]Y<jQ][��/�

£ �h]Y<jQ][�YIpIY��GINQ[Ih�hshjIZ�DIP<pQ]g�Q[�N<EI�]N�E][EkggI[j�jg<[h<EjQ][h

æ�+gIpI[j�qgQjI�qgQjI�E][NYQEjh��O���jr[

[Iq�<[G�jr[

E][EkggI[j�Z]GQNs�g]q�g

0h

0E

8]YG

8[Iq

8E][EkggI[j

� ���ÃÁÂÅ

Page 9: Omid: Lock-free Transactional Support for Distributed Data Stores

$!��

£ $djQZQhjQE�0g<[h<EjQ][�!<[<OIZI[j��[��<j<�

hj]gIh

  �hhkZdjQ][h

  �]<Yh

  �IhQO[

  �p<Yk<jQ][

0g<[h<EjQ][h

� ���ÃÁÂÅ

Page 10: Omid: Lock-free Transactional Support for Distributed Data Stores

�hhkZdjQ][h

£ /Q[OYI�G<j<EI[jIg

0g<[h<EjQ][h

� ���ÃÁÂÅ

��<hI.IOQ][/IgpIgh

£ !kYjQ�pIghQ][�XIs�p<YkI�hj]gI

£ YQI[jh����ddYQE<jQ][h ��<hI� YQI[jh

Page 11: Omid: Lock-free Transactional Support for Distributed Data Stores

�IhQO[��]<Yh

£ ]EX�NgII��"]�GQhjgQDkjIG�Y]EXh

0g<[h<EjQ][h

� ���ÃÁÂÅ

��<hI� YQI[jh

��<hI.IOQ][/IgpIgh

��<hI� YQI[jh

��<hI.IOQ][/IgpIgh

Page 12: Omid: Lock-free Transactional Support for Distributed Data Stores

�IhQO[��]<Yh

£ ]q�]pIgPI<G�][�G<j<�hIgpIgh

0g<[h<EjQ][h

� ���ÃÁÂÅ

��<hI� YQI[jh

��<hI.IOQ][/IgpIgh

7[Q

7[Q

.H\�6HF

��<hI� YQI[jh

��<hI� YQI[jh

Page 13: Omid: Lock-free Transactional Support for Distributed Data Stores

�IhQO[��]<Yh

£ "]�Z<W]g�EP<[OI�Q[�G<j<�hj]gI  /]kgEI�E]GI  �<j<�hEPIZI

0g<[h<EjQ][h

� ���ÃÁÂÅ

��<hI� YQI[jh

��<hI.IOQ][/IgpIgh

�<j<�/j]gI8

�<j<�/j]gI9

Page 14: Omid: Lock-free Transactional Support for Distributed Data Stores

�IhQO[��]<Yh

£ /E<Y<DQYQjs

0g<[h<EjQ][h

� ���ÃÁÂÅ

£ /E<Y<DQYQjs£ �QOP�/E<YI

  ÂÁÁ��7gQjI�0+/

Page 15: Omid: Lock-free Transactional Support for Distributed Data Stores

�IhQO[��]<Yh

£ /QZdYQEQjs

0g<[h<EjQ][h

� ���ÃÁÂÅ

(YHU\WKLQJ�VKRXOG�EH�PDGH�DV�VLPSOH�DV�SRVVLEOH��EXW�QR�VLPSOHU

Page 16: Omid: Lock-free Transactional Support for Distributed Data Stores

��j]]�hQZdYI�GIhQO[

��<hI.IOQ][/IgpIgh

0r[�/IgpIg

��<hI� YQI[j

��<hI.IOQ][/IgpIgh

��<hI.IOQ][/IgpIgh

��<hI.IOQ][/IgpIgh

��<hI� YQI[j��<hI� YQI[j��<hI� YQI[jh

0g<[h<EjQ][h

� ���ÃÁÂÅ

Page 17: Omid: Lock-free Transactional Support for Distributed Data Stores

/QZdYI��IhQO[

��<hI.IOQ][/IgpIgh

��<hI� YQI[j

��<hI.IOQ][/IgpIgh

��<hI.IOQ][/IgpIgh

��<hI.IOQ][/IgpIgh

��<hI� YQI[j��<hI� YQI[j��<hI� YQI[jh

� ���ÃÁÂÅ

/j<jkh�$g<EYI�¥/$¦FRPPLW"

0g<[h<EjQ][h

UHFRYHU\�GHOD\�a���V

���.�0VJ�VHF��GXDO�FRUH�

SXW�NH\��YDOXH��W[Q[� JHW�NH\��YDOXH��W[QZ�

W[QZ��LV�FRPPLWWHG"

W[QZ��LV�LQ�SURJUHVV"

W[QZ��LV�DERUWHG"

Page 18: Omid: Lock-free Transactional Support for Distributed Data Stores

/QZdYI��IhQO[

��<hI.IOQ][/IgpIgh

��<hI� YQI[j

��<hI.IOQ][/IgpIgh

��<hI.IOQ][/IgpIgh

��<hI.IOQ][/IgpIgh

��<hI� YQI[j��<hI� YQI[j��<hI� YQI[jh

� ���ÃÁÂÅ

/j<jkh�$g<EYI�¥/$¦

/$

FRPPLW"

0g<[h<EjQ][h

��<hI.IOQ][/IgpIgh

��<hI� YQI[j

��<hI.IOQ][/IgpIgh

��<hI.IOQ][/IgpIgh

��<hI.IOQ][/IgpIgh

��<hI� YQI[j��<hI� YQI[j��<hI� YQI[jh

/j<jkh�$g<EYI�¥/$¦

/$

FRPPLW"

Page 19: Omid: Lock-free Transactional Support for Distributed Data Stores

/$�.IdYQE<jQ][�][� YQI[jh

£ ǻ/$Q��EP<[OIh�Q[j]�/$�hQ[EI�jPI�Y<hj�0

h�gIfkIhj�

Ng]Z�jPQh�E][[IEjQ][

YQI[jÂ

/$

YQI[jÃ

/$

/$0$

0h�dYI<hI 0

h��ǻ/$Q

£��7QjP�<�dg]dIg�E]ZdgIhhQ][�ǻ/$�E]kYG�NQj�Q[j]�<�d<EXIj�ĺ�YQOPj�gIdYQE<jQ][�qQjP�dQOOsD<EXQ[O�

� ���ÃÁÂÅ

/$Q�Û�ǻ/$�Qh�I[]kOP�N]g�hIgpQ[O�8

0h

Page 20: Omid: Lock-free Transactional Support for Distributed Data Stores

�p<Yk<jQ][� � YQI[j�/E<Y<DQYQjs

�� ���ÃÁÂÅ

Page 21: Omid: Lock-free Transactional Support for Distributed Data Stores

�]<Y�EPIEX�YQhj

� /QZdYQEQjs� ]EX�NgII��dg]OgIhh�IpI[�qQjP�N<QYIG�EYQI[jh

� "IOYQOQDYI�]pIgPI<G

� "]�Z<W]g�EP<[OI�Q[�jPI�G<j<�hj]gI

� �QOP�hE<YI

0g<[h<EjQ][h

� ���ÃÁÂÅ

Page 22: Omid: Lock-free Transactional Support for Distributed Data Stores

�p<Yk<jQ][

Ɣ �QOPIhj�<EPQIp<DYI�dIgN]gZ<[EIƔ �<gID][Ih�]N�jPI�<gEPQjIEjkgIż /QZdYI��k<Y�E]gI�hIgpIg�N]g�/$ż "]�D<jEPQ[O�ZhOh�Ng]Z�EYQI[jhż "]�]djQZQv<jQ][�N]g�gI<G�][Ys�jr[h

Ɣ !I<hkgI�qgQjI�jg<[h<EjQ][hż Æ�ÃÁÚ�hj<[G<gG�DI[EPZ<gXh

Ɣ /$�hE<Y<DQYQjs�qQjP�¾�]N�qgQjI�jr[h����

�� ���ÃÁÂÅ

Page 23: Omid: Lock-free Transactional Support for Distributed Data Stores

�p<Yk<jQ][� �0r[�hE<Y<DQYQjs���É�g]qh

�Ã�ÂÄ�ÂÃ

Page 24: Omid: Lock-free Transactional Support for Distributed Data Stores

�p<Yk<jQ][� �0r[�hE<Y<DQYQjs

� ���ÃÁÂÅ

Page 25: Omid: Lock-free Transactional Support for Distributed Data Stores

$!��

£ 1hI�<�EI[jg<YQvIG�hIgpIg�j]�E]ZZQj  �YY]qh�<�Y]EX�NgII�QZdYIZI[j<jQ][  .IdYQE<jI�jPI�E]ZZQj�jQZIhj<Zd�][�EYQI[jh

£ �NNQEQI[j�QZdYIZI[j<jQ][  ÂÃÅ��qgQjI�0+/  ÂÁÁÁ�EYQI[jh

��<hI.IOQ][/IgpIgh

/j<jkh�$g<EYI�¥/$¦��<hI� YQI[j

��<hI.IOQ][/IgpIgh

��<hI.IOQ][/IgpIgh

��<hI.IOQ][/IgpIgh

��<hI� YQI[j��<hI� YQI[j��<hI� YQI[jh /$

0g<[h<EjQ][h

� ���ÃÁÂÅ

£ "]�E]Zdg]ZQhI�][�dIgN]gZ<[EI

Page 26: Omid: Lock-free Transactional Support for Distributed Data Stores

Pjjdh���OQjPkD�E]Z�s<P]]�]ZQG�

]ZQG�dg]WIEj³O]]OYIOg]kdh�E]Z

���¾]ZQGdg]WIEj

� ���ÃÁÂÅ �