Making Snapshot Isolation Serializable åè â 2013å¹´çãªä½ç½®ä»ã ã¾ãã¡ããã©å¹´åº¦ã®éå§ãªã®ã§ãä»å¹´ã¯èªåçã«ã¯RDBMSé¢é£ã®ä½ç½®ä»ãã¨ãæ´çãã¦ããã¾ããå»å¹´ã®å¾åãããããã®åãã§ãããNoSQLçãªçºå±ã¨åããã¦ãæ¬æ ¼çãªDBå帰ãå§ã¾ã£ã¦ããæãã§ããNoSQLç³»ã®ã»ã¼è´å½çãªå¼±ç¹ã®ä¸ã¤ãtransactionå¦çã§ãããã¨ã¯ææãå¤ãã¨ããã§ããè¦ããã«ãã¼ã¿ãæ¸ãè¾¼ãã¦ãä¸æ´åãçºçãã¾ãããã¨ãããã¨ã«ãªã£ã¦ãã¾ãã¾ããããã§ã¯ãªããªã使ããªããã¨ããã®ãç¾ç¶ã§ãããã ãªã®ã§ãRDBMã®æè¯ã®ãã¦ãã¦ã§ããtransactionå¦çã¨NoSQLçãªåæ£å¦çãã¡ããã¨æ´åæ§ã¨ããããã«ãã¾ããããã¨ããèªç¶ãªæµãã¯å¾åãããããå¼·ãè¦è«ãåãã§ãããã(ã§ãããã©ããã¯å¥ã§ããã) ããã§ããããããªãããã®æã®ãã®ãRDBMSãµ
Making Snapshot Isolation Serializable åè - æ¥ãã°åããé¸ã¶ãªãè¿é ã§ç´¹ä»ããã¦ãã2ã¤ã®è«æãèªãã ã®ã§ã¡ã¢ã Making Snapshot Isolation Serializable Alan Feketeã®è«æã okachimachiorzããã詳ããæ¸ãã¦ããã®ã§å¼ã£æãã£ãã¨ããã ãã¡ã¢ã ç¨èªã«ã¤ã㦠Predicate Read ååï¼Identifierï¼ã«ãã£ã¦ç¹å®ããã対象ã«å¯¾ããReadã§ã¯ãªãã¦ãæ¯è¼æ¼ç®çã®è¿°èªãçãã©ãããè©ä¾¡ãé¸æãã¦Readããæä½ãç¹å¥ã«Predicate Readã¨å¼ãã§ããã ãã¡ããæ®éã ã¨æã£ã¦ãããé常ã¯Indexã«ãã£ã¦ä¸æ¬é£ãã§ãããã¨ãåæã«ãªãããè¿°èªã®è©ä¾¡ã«ããé¸æã«æ¢ãã¦ååãã¤ãã¦ããã®ããªã First Commiter Winã«ã¼ã« åã対象ãWrite使ç¨ã¨ã
å¾æ¥ã®MySQLã®ã¬ããªã±ã¼ã·ã§ã³ã§ã¯ãæ°è¦ã«ã¹ã¬ã¼ãã追å ããéã«ãã¹ã¿ã¼ã®ãã¤ããªãã°ãã¡ã¤ã«åã¨ãã¤ããªãã°ãã¡ã¤ã«ã®ãã¸ã·ã§ã³ãæå®ããå¿ è¦ãããã¾ããã MySQL 5.6.5ãã追å ãããæ©è½ã§ããã°ãã¼ãã«ãã©ã³ã¶ã¯ã·ã§ã³èå¥åï¼GTIDï¼ã使ç¨ãããã¨ã§ããã¹ã¿ã¼ã®ãã¤ããªãã°ãã¡ã¤ã«åã¨ãã¤ããªãã°ãã¡ã¤ã«ã®ãã¸ã·ã§ã³ãæå®ãããã¨ãªãã容æã«ã¬ããªã±ã¼ã·ã§ã³ãæ§æã»éå§ã§ããããã«ãªãã¾ããä»åã¯GTIDã使ç¨ããã¬ããªã±ã¼ã·ã§ã³æ§æã«ã¤ãã¦ç´¹ä»ãããã¾ãã ç°å¢æ§ç¯ 第22åãç¹å®ã®SQLæãåå ã§çºçããã¬ããªã±ã¼ã·ã§ã³é 延ã®èª¿æ»æ¹æ³ã§ç´¹ä»ããæ¹æ³ã«ã¦ãMySQLã®ã¤ã³ã¹ãã¼ã«ã¾ã§ç°å¢æ§ç¯ãã¾ããä»åã®MySQLã®ãã¼ã¸ã§ã³ã¯MySQL5.6.31ã§ãã æ§æã¯ä»¥ä¸ã®ããã«ãªã£ã¦ãã¾ãã GTIDã使ç¨ããã¬ããªã±ã¼ã·ã§ã³ã®è¨å® MySQL5.6ã«ã¦GTIDãæå¹ã«
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}