"Hadoop ááœáẠáá±áá¬ááá¬ááá»á¬ážá áœá¬ááᯠááŒáá·áºáá±ááŒááºážá¡ááœáẠáááºážáááºážáá»á¬áž" á á®ážáá®ážá០"Hadoop. ZooKeeper" áá±á¬ááŒá±á¬ááœá²á á á¬áá¬ážááŸááºáááºážááᯠáááºááẠá¡ááŒá¶ááŒá¯ááá¯áá«áááºá
Hadoop áá±áá áá áºááœáẠáááºážááá±áá¬á ZooKeeper áá°ááẠá¡áááºáááºážá ááŒáá·áºáá±áá¬ážáá±á¬ ááœááºáá»ááºááŸá¯ááŸáá·áºáááºáááºá ááŸá¬ážááœááºážáá±á¬á¡áá»ááºáá»á¬ážá á á¶ááŒáá·áºáá±á áá áºá áá¯á¶ááŒááºážá ááŒáá·áºáá±ááŸá¯á áá áºáá»á¬ážááᯠááŸáááŸáá¯ááºážáá¬ááœáẠáááºáá²ááŒááºážá áá¯á¶ááŸááºááŸáááŸáá¯ááºážááŸá¯ááŒá¿áá¬áá»á¬ážá ZooKeeper ááá®ááá¯ááºážáá±á¬ááºááœááºááŸá¡ááŒá±áá¶áá°áá»á¬ážá ZooKeeper áá±áá¬áá±á¬áºáááºá znode á¡áá¶áá»á¬ážá áááºááŸááºáá»á¬ážá áá¯á¶ážá áœá²áá° API áá°áá¡á áá»á¬áž (ááœá²á·á ááºážáá¯á¶á á¡ááœá²á·áááºááŒááºážá ááá¯ážááŸááºážáá±á¬áá±á¬á·ááá±á¬ááºáá»á¬ážá áá±á«ááºážáá±á¬ááºááœá±ážáá±á¬ááºááœá²á ááœá¬ážá¡á¯ááºá¡áá»áá¯ážáááºáá±á¬ááºááŸá¯áááŸááá² áá±á¬á·ááºáá»ááŒááºáž)á ZooKeeper áááá¯áá¬á ZooKeeper DB ZAB ááá¯ááºááœááºáá°ááᯠáá±á¬ááºážááá¯áá«á
áá®áá±á·áá±á¬á· ZooKeeper á¡ááŒá±á¬ááºáž ááŒá±á¬ááŒáá«áááºá á€á¡áá¬áááºá¡ááœááºá¡áá¯á¶ážáááºáááºá Apache Hadoop áá¯ááºáá¯ááºáá»á¬ážáá²á·ááá¯á·áááºážááœáẠááá¯ááá¯áá«ááŸááááºá áá°áá áºáá±á¬ááºááᯠáá¯á¶áá±á¬áºáááºá
áá®áááá¯ááºáááºááŸá¬á á¡á²áá®ááŸá¬ data ááœá±ááᯠáááºááá¯áá¯ááºáá±á¬ááºááá¯ááºááá²á á¡á²áá«ááᯠáááºááá¯ááááºážáááºážáááá²á á¡á²áá«ááᯠáá áºáááºážáááºážáá²á· á¡áá¯á¶ážááŒá¯áááºážáá²á· á¡á²áá«ááᯠáá áºáááºážáááºážáá²á· áá¯ááºáá±á¬ááºááá¯ááºáá²á·á¡ááŒá±á¬ááºáž á¡ááááá¬ážááŒá®áž ááœá±ážááœá±ážáá²á·áá«áááºá áá®áá±á·ááŸá¬áá±á¬á· ááŒáá·áºáá±áá²á· Application ááœá±ááᯠáááºáá±á¬ááºááŒááºážá¡ááŒá±á¬ááºáž á¡áááºážááẠááŒá±á¬ááŒáá»ááºáá«áááºá ZooKeeper ááẠá€ááá á¹á áááºááᯠááá¯ážááŸááºážááœááºáá°á á±ááá·áº á¡áá¬áá»á¬ážáá²á០áá áºáá¯ááŒá áºáááºá áááºážááẠááŒáá·áºáá±áá¬ážáá±á¬ á¡ááºááºáá®áá±ážááŸááºážáá»á¬ážááœáẠááŒáá·áºáá±áá¬ážáá±á¬ á áá áºáá»á¬ážááœáẠáá¯ááºáááºážá ááºáá»á¬ážá á¡ááŒááºá¡ááŸáẠáá±á«ááºážá ááºááŸáááŸáá¯ááºážááŸá¯áá»áá¯ážá¡ááœáẠáááºááœááºááá·áº áááºáá±á¬ááºááŸá¯áá áºáá»áá¯ážááŒá áºáááºá
ááá¯ááá¯á·áá±á¬ áá»áŸá±á¬ááºááœáŸá¬áá»á¬ážá¡ááœáẠááá¯á¡ááºáá»ááºááẠáá±á·á ááºááŸáá·áºá¡áá»áŸ ááá¯áá»á¬ážáá¬áá±áááºá ááá¯á¡áá¬ááẠáá»áœááºá¯ááºááá¯á·á áááºáááºážááŒá áºáááºá áá áºáááºááœááºá MapReduce ááŸáá·áº á€á¡áááºááá·áºáá¯ááºáá¬ážáá±á¬ áá°áá±á¬ááºááẠááá·áºá¡á¬áž á€ááŸá¯ááºááœá±ážááŸá¯ááᯠáááºááŸá¬ážááá¯ááºááŒá®áž á¡ááŒááºá¡ááŸááºáááºáá¶áá±ážááŸáá·áº áá¯ááºáááºážá ááºáá»á¬áž áá±á«ááºážá ááºááŸáááŸáá¯ááºážááŸá¯áá²á·ááá¯á·áá±á¬ áá°áá¡á áá»á¬ážááᯠáá±ážáá¬ážááŒááºážá០áááá¯ááááºáá¬á¡á¬áž ááœááºááŒá±á¬ááºá á±ááá¯ááºáááºá ááá¯á·áá±á¬áº á¡ááŒá¬ážáá áºáááºááœááºáá°á á€á¡áá¬ááẠáááºááá¯á·áááºááŒá áºáááá·áºáááºááá¯ááºáᯠáááºáá°ááá»áŸ á¡á¬ááá¶áá»ááºáááŸááá«á MapReduce ááá¯á·ááá¯áẠá¡ááŒá¬ážáá±á¬ á¡áááºááá·áºáá¯ááºáá¬ážáá±á¬ áá°áá±á¬ááºáá»á¬ážááẠáááºážááá¯á¡áá¯á¶ážááŒá¯á á¡áá±á¬ááºá¡áááºááá±á¬áºááá¯ááºáá±á¬ á¡áá»áá¯á·áá±á¬ááá á¹á áááºáá»á¬ážááᯠá¡ááŒá²áááºáž áá¯á¶ážáá¯á¶ážá¡á á¬ážááá¯ážááááá«á MapReduce ááá¯ááºááá¯ááºááŸáá·áº á¡ááŒá¬ážáá±á¬ Apache ááá±á¬áá»ááºáá»á¬ážá áœá¬ á¡áá«á¡áááºá áááºážááá¯á·ááẠá¡ááŸááºááááºáááºáž ááŒáá·áºáá±áá¬ážáá±á¬ application áá»á¬ážááŒá áºáááºá á á¬áá±ážááᬠááá¯ááœááºá¡á±á¬áẠZooKeeper áá±ážáááºá
Hadoop ááŸáá·áºáááºáááºáá±á¬ application áá»á¬ážá¡á¬ážáá¯á¶ážáá²á·ááá¯á·áááºážááᯠYahoo ááŸáá®ááœááºáá²á·áááºá ááá¯á¡áá« áááºážááẠááá¬ážááẠApache á¡ááºááºáá áºáá¯áááºážááŒá áºáááºá áááºážááẠHBase áá²á·ááá¯á· áááºááŒáœá áœá¬ áááœá¶á·ááŒáá¯ážáá«á ááẠJIRA HBase ááá¯á·ááœá¬ážáá«á áá±á·ááá¯ááºážááœáẠáá»áá¯á·ááœááºážáá»ááºá¡á á®áááºáá¶á á¬áá»á¬ážá áá áºá á¯á¶áá áºáá¯ááᯠá¡áá±á¬ááºážáá¯á¶ážááŒá áºá¡á±á¬ááºááŒá¯áá¯ááºááẠá¡ááá¯ááŒá¯áá»ááºáá»á¬ážá áœá¬ááŸááááºá ááá¯ááá¯áááºááŸá¬ ááá±á¬áá»ááºááŸáááááẠá¡áááºáááŒááºááŒá áºáá±áá«áááºá áá áºáááºááœáẠZooKeeper ááẠá¡áá±á¬áºáá±ážááá¯ážááŸááºážáá±á¬áá¯ááºáá¯ááºááŒá áºááŒá®áž á¡ááŒá¬ážáá áºáááºááœááºá áááºážááẠáááºážááá¯á¶ááŒááºá áááºáá»áááŸá¯ááᯠá¡á¬ááá¶áá«áááºá áááºážáááºá¡áá¯á¶ážááŒá¯áááºá¡áá±á¬áºáá±ážááœááºáá°áá±á¬ááŒá±á¬áá·áºáááºážááẠHadoop áá±áá áá áºá¡ááœááºážááŸá application áá»á¬ážááœááºá á¶áá áºáá¯ááŒá áºáá¬áááºá áá«ááŒá±á¬áá·áº áááºááá¯á¡áá¯ááºáá¯ááºáááºá áááºááá¯áá¯á¶ážááááºááá¯áᬠáá¬ážáááºá¡á±á¬áẠááŒááºáá¯á¶ážáááºáá¬á á¡áá¯á¶ážáááºáááºááá¯á· áááºáá«áááºá
áá«á áá»áœááºáá±á¬áºááá¯á· áááºááŒá¬ážááŒááá±ážáá²á·áá²á· áá¯á¶ááááºáá áºáá¯áá«á ááá¯á¡áá»áááºá¡áá áá»áœááºá¯ááºááá¯á· á ááºážá á¬ážáá¬ážááá»áŸ á¡áá¬á¡á¬ážáá¯á¶ážá¡ááœáẠá¡áá»áá¯ážáá®áá®áᯠááá¯ááá¯ááºáá«áááºá á€áá±áá¬ááœáẠáá±á¬áºááŒáá¬ážááá·áºá¡áá¬á¡á¬ážáá¯á¶ážááẠZooKeeper ááŸáá·áº á¡áá¯ááºáá¯ááºáááºá ááá¯ááá¯áááºááŸá¬ á€áá¯ááºáá¯ááºá¡á¬ážáá¯á¶ážááᯠá¡áá¯á¶ážááŒá¯ááá·áº áááºáá±á¬ááºááŸá¯áá áºáá¯ááŒá áºáááºá HDFS ááŸáá·áº MapReduce ááŸá áºáá¯áá¯á¶ážááẠáááºážááá¯á·á¡ááœáẠá¡áá°ážááá·áºáá»á±á¬áºááá·áº áááºážááá¯á·á á¡áá¬ážáá°áááºáá±á¬ááºááŸá¯áá»á¬ážááᯠááá±ážááŒáá«á ááá¯á·ááŒá±á¬áá·áº ZooKeeper ááá¯á¡áá¯á¶ážááŒá¯áááºá áááºážááẠááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááŸáá·áº á¡ááŸá¬ážá¡ááœááºážáá»á¬ážááŸáá·áºáááºáááºááá·áº á¡áá»áá¯á·á¡áá¬áá»á¬ážááᯠááá¯ážááŸááºážá á±áááºá
áá«ááœá±á¡á¬ážáá¯á¶áž áááºááá¬áá¬áá²á ááá°áá®áá±á¬ááœááºáá»á°áá¬áá»á¬ážáá±á«áºááœáẠá¡ááŒáá¯ááºá¡ááá®áá±ážááŸááºážááŸá áºáá¯ááᯠáá»áœááºá¯ááºááá¯á·ááœáŸáá·áºáááºáá²á·ááŒá®áž áááºážááá¯á·ááᯠá á¬ááŒá±á¬ááºážáá áºáᯠááá¯á·ááá¯áẠááœááºáá áºáá¯ááŒáá·áº áá»áááºáááºáá¬ážáᬠá¡áá¬á¡á¬ážáá¯á¶áž á¡áááºááŒá±ááœá¬ážáá¯á¶ááááºá ááá¯á·áá±á¬áº ááŒá¿áá¬ááŸá¬ Network ááẠá áááºááá»ááá±á¬ááŒá±á¬áá·áºá áááºááẠá¡ááœá¬ážá¡áá¬ááᯠááŸá°ááŸáá¯ááºááááẠááá¯á·ááá¯áẠáááá·áºáá«ážáá±á¬ á¡ááá·áºááœáẠááŒá áºáá»ááºáá±áááºáá»á¬ážááᯠááŒáá·áºááŸá¯áá«áá ááœááºáááºáá±á«áºááœáẠáá¯á¶ážá áœá²áá°áá»á¬áž á¡ááŒááºá¡ááŸáẠáá¯á¶á·ááŒááºáá¯á¶á á¡áá»áá¯á·áá±á¬ packet áá»á¬áž áá»á±á¬ááºáá¯á¶ážááœá¬ážááŒááºáž ááá¯á·ááá¯áẠááŒááºáááºáá±ážááá¯á·ááŒááºážááá¯á·ááᯠáááŒá¬áá ááŒááºááœá±á·ááá¯ááºáááºá ááá·áºá¡á¬áž áááºááŸááºáá¬ážáá±á¬ á ááºááŸááºáá áºáá¯ááᯠáááºáá±á¬ááºáááºááŸáá·áº áááºáá±á·áá»áºáá±ážááá¯á·ááŸá¯ááᯠá¡á¬ááá¶ááá¯ááºá á±ááá·áº TCP áááá¯ááá¯áá±á¬áá»á¬ážááᯠáá®ááœááºáá²á·ááŒááºážááẠáááºááá·áºá¡ááœááºáá»áŸ ááá¯ááºáá«á áááºááá¯á·áááºááá¯á á± TCP áááºáá»áŸáẠááá·áºá¡á¬áž á¡ááŒá²ááááºáááºááá¯ááºáá«á á¡áá¬áá¬ááá¯ááºážáᬠá¡áá»áááºáá¯ááºáá¯á¶ážááŸá¯ááŸááááºá ááœááºáááºááẠáááᬠáá»ááºááœá¬ážááá¯ááºáááºá áá»ááºáá±á¬ááºáááºáá±ááá¯ááºáááºá áá«ááœá±á¡á¬ážáá¯á¶ážá Network ááᯠáá¯á¶ááŒááºá áááºáá»ááá²á·á¡áá±á«áºááŸá¬ ááẠá¡á¬ážááá¯ážááá¯á·áááá°ážááá¯áá²á·á¡áá»ááºááᯠááŒá áºáá±á«áºá á±áááºá áááºážááẠááœááºáá»á°áá¬áá áºáá¯á¶ážáá±á«áºááœáẠááá¯á·ááá¯áẠá á°áá«ááœááºááŒá°áá¬áá áºáá¯áá±á«áºááœáẠá¡áá¯ááºáá¯ááºáá±á¬ á¡ááŒáá¯ááºá¡ááá®áá±ážááŸááºážáá»á¬ážááᯠáá±ážáá¬ážááŒááºážá០á¡áááááœá¬ááŒá¬ážáá»ááºááŸá¬ ááœááºáááºáááŸááá±á¬á áááºááá¯áá®ááœáẠááá¯ááá¯á áááºáá»ááá±á¬ áá±áá¬áá²ááŸááºáá±ážáááºá áºáá áºáá¯ááŸáááá·áº ááœááºáááºáááŸáááá·áºáá±áá¬ááŒá áºáááºá ááŒá®ážáá±á¬á· áá«á á¡ááŒá±áᶠááŒá¬ážáá¬ážáá»ááºáá«á
á¡ááŒá¬ážá¡áá¬áá»á¬ážáá²ááœáẠNetwork ááá¯á¡áá¯á¶ážááŒá¯áá±á¬á¡áá«ááœááºá latency áááºá¡ááŒá²ááŸááá±áá«áááºá disk ááŸá¬áááºáž áá«áá«áááºá áá«áá±ááá·áº Network ááŸá¬ ááá¯ááŸááá«áááºá Latency ááẠá¡áááºážááẠááá¯á·ááá¯áẠá¡ááœááºáááá¬á á±ááá·áº ááŸá±á¬áá·áºááŸá±ážááá·áºá¡áá»áááºááŒá áºáááºá
ááœááºááẠtopology ááẠááŒá±á¬ááºážáá²áá±áááºá topology áá°ááẠá¡áááºáááºáž - á€á¡áá¬ááẠáá»áœááºá¯ááºááá¯á·á ááœááºáááºá ááºáá á¹á ááºážáá»á¬ážá áá±áá¬áá»áá¬ážááŸá¯ááŒá áºáááºá áá±áá¬á ááºáá¬ááœá±ááŸááááºá ááá¯ááŸá¬áááºáá±áá²á· áááœááºááœá±ááŸááááºá ááá±á¬ááºážááá¯ááºááœá±ááŸááááºá á€á¡áá¬á¡á¬ážáá¯á¶ážááᯠááŒááºáááºáá»áááºáááºááá¯ááºáááºá ááœáŸá±á·ááá¯ááºáááºá á áááŒáá·áºá á€á¡áá¬á¡á¬ážáá¯á¶ážááá¯áááºáž ááá·áºááœááºážá ááºážá á¬ážááẠááá¯á¡ááºáá«áááºá IP á¡áááºáá»á¬áž ááŒá±á¬ááºážáá²ááŒááºážá áá»áœááºá¯ááºááá¯á·á áááºážááŒá±á¬ááºážáá»á¬áž ááœá¬ážáá¬áá±ááá·áº áááºážááŒá±á¬ááºáž ááŒá±á¬ááºážáá²áá«áááºá áá«ááá¯áááºáž ááá·áºááœááºážá ááºážá á¬ážááá¯á· ááá¯áá«áááºá
ááœááºáááºááẠá ááºáááááá¬ááá¯ááºáᬠá ááºážáááºážáá»ááºáá»á¬ážááœááºáááºáž ááŒá±á¬ááºážáá²ááá¯ááºáááºá áááºááœá±á·á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·áááœááºáááºá¡ááºáá»ááºáá®áá¬áá»á¬ážááẠááá±á¬ááºážááá¯ááºáá»á¬ážáá±á«áºááœáẠáá áºáá¯áá¯ááᯠá¡áá«á¡á¬ážáá»á±á¬áºá áœá¬ á¡ááºááááºáá¯ááºááŒááºážááᯠá¡ááŸááºááááºááŸá áºáááºáááºáᯠáá»áœááºáá±á¬áºááŒá±á¬ááá¯ááºáááºá áá¯ááºáááẠFirmware á¡áá áºáá áºáá¯ááœááºáá¬ááŒá®áž Hadoop á¡á á¯á¡áá±ážá¡áá»áá¯á·ááᯠá¡áá°ážá áááºááááºá á¬ážáá²á·ááŒáá«á áá°ááá¯á·ááŸá¬ ááá¯ááºááá¯ááºá¡áá¯ááºááŸááááºá áá°ááá¯á·á¡ááœáẠá¡áááá¡áá»ááºá Network á¡áá¯ááºáá¯ááºáá«áááºá ááá¯á·ááŒá±á¬áá·áºá áááºážááá¯á·ááẠááá¯áá±áá¬ááœáẠáá áºáá¯áá¯ááᯠááŒááºááẠá¡ááºáá¯ááºáá¯ááºáááºá áááºážááá¯á·á áá¬á·ááºáá²áá±á«áºááœáẠá¡áááºážááŒááºááŒááºážááᯠááŒá¯áá¯ááºááá¯ááŒááŒá®áž áá¬á·ááºáá²ááá¯áááºáž á¡áá«á¡á¬ážáá»á±á¬áºá áœá¬ ááŒá±á¬ááºážáá²ááá¯ááŒáááºá á€á¡áá¬á¡á¬ážáá¯á¶ážááᯠáá áºáááºážáááºážááŒáá·áº ááá·áºááœááºážá ááºážá á¬ážááẠááá¯á¡ááºáá«áááºá á€á¡áá¬á¡á¬ážáá¯á¶ážááẠáá»áœááºá¯ááºááá¯á·á ááŒáá·áºáá±áá¬ážáá±á¬ á¡ááá®áá±ážááŸááºážá¡áá±á«áº áááºáá±á¬ááºááŸá¯ááŸááááºá
á¡áá»á¬ážá¡á¬ážááŒáá·áº áá±áá¬ááá¬ááá»á¬ážá áœá¬ááŒáá·áº á áááºáá¯ááºááá¯ááºáá°áá»á¬ážááẠá¡ááºáá¬áááºááẠá¡ááá·áºá¡áááºáááŸááᯠáá¯á¶ááŒááºááŒáááºá á¡á²áá®ááŸá¬ terabytes á¡áá»á¬ážá¡ááŒá¬ážááŸááá²á· ááá¯ááºáá áºáá¯ááŸááááºááá¯áááºá á¡á²áá«ááᯠááá·áºáá¬áᬠáá«ááŸááá¯áẠááœááºáá»á°áá¬ááŸá¬ áá°ááŒá®áž ááœáá·áºáá¯á¶ážááá¯ááºáá«áááºá ááœá±á¬áá» á á±á¬áá·áºááŒáá·áºáá«á áá±á¬ááºááẠerror áá áºáá¯ááŸááá±áá«áááºá Vim áá áºáá¯á¶ážáá»á¬ážááá¯ááŒáá·áºáá«á ááá±á¬ááºážáá²á·á¡ááœáẠáááºáá±á¬á·á០ááá¯ááºáá«áá²á·á Vim ááẠá¡áá¬á¡á¬ážáá¯á¶ážááᯠááŒá¬ážáá¶áááºááŒáá¯ážá á¬ážáá±á¬ááŒá±á¬áá·áºá á¡áá°ážáááŒáá·áº áá»áœááºá¯ááºááá¯á·ááẠá€ááŸááºáááºážááá¯á áááºááœá±á·áá»á¬ážááŒá®áž áá áºáá¯áá¯ááá¯ááŸá¬ááœá±áá±áá±á¬á¡áá«ááœáẠá¡áá¬á¡á¬ážáá¯á¶ážááᯠááŸááºáá¬ááºááœááºáááºáá«á áá«ááœá±á áá±á·áá»á±á¬ááºáá±áá±ááá·áº áááºááŒááºááá·áºáááºá
áááá¯áááºáá¬áá áºáá¯áá²á· ááœááºáá»á°áá¬áá áºáá¯á¶ážááŸá¬ á¡áá¯ááºáá¯ááºáá²á· áááá¯ááááºáá áºáá¯ááᯠáá±ážááᬠááá¯ááœááºáááºá
áá»áœááºá¯ááºááá¯á·áá áá ẠááŒá®ážááœá¬ážáá¬áá±á¬á¡áá«á áá»áœááºá¯ááºááá¯á·ááẠáááºážá¡á¬ážáá¯á¶ážááᯠáá»ááºážááŒáá¯ááºááŒá¯áá¯ááºááá¯ááŒá®áž áááºážááᯠááœááºáá»á°áá¬áá±á«áºááœááºáá¬áá á¡á á¯á¡áá±ážáá áºáá¯ááœááºáá« á¡ááŒáá¯ááºááŒá¯áá¯ááºááá¯áá«áááºá áá±ážááœááºážáá±á«áºáá¬áááº- á€ááá á¹á ááᯠáááºááá¯á·ááŸáááŸáá¯ááºážáá±á¬ááºááœááºáááºáááºážá áá»áœááºá¯ááºááá¯á·á á¡ááá®áá±ážááŸááºážáá»á¬ážááẠáá áºáá¯ááŸáá·áºáá áºáᯠá¡ááŒááºá¡ááŸáẠá¡áá»áá¯ážáááºáá±á¬ááºááŸá¯ááŸáááá¯ááºáá±á¬áºáááºáž áá¬áá¬áá»á¬ážá áœá¬ááœáẠáá¯ááºáááºážá ááºáá»á¬ážá áœá¬ááᯠáá»áœááºá¯ááºááá¯á· áá¯ááºáá±á¬ááºáá«áááºá ááŒá®ážáá±á¬á· áá°ááá¯á·á¡ááœáẠá¡áá¬á¡á¬ážáá¯á¶áž á¡áááºááŒá±ááœá¬ážá¡á±á¬áẠáááºááᯠá á±á¬áá·áºááŒáá·áºáááá²á á¥ááá¬á á¡ááºáá¬áááºááá± áá áºáá¯áᯠááá¯á·áááºá á¥ááá¬á¡á¬ážááŒáá·áºá á¡áá»áá¯á·áá±á¬ áá±áá¬áá±á·á Ạááá¯á·ááá¯áẠááŸááºáááºážáá áºáá¯áá¯ááœáẠáááºážááá¯á·á á¡ááŒá±á¡áá±á¡ááŒá±á¬ááºáž áá±ážááááºááŒá áºááŒá®ážá ááá¯á·áá±á¬áẠá€ááŸááºáááºážááᯠá á¯á ááºážááŒá®áž áá áºáá±áá¬áá¬ááœáẠááœá²ááŒááºážá áááºááŒá¬áá«á ááá¯á·á¡ááŒááºá áá¯ááºáááºážá ááºááẠá¡áá¯ááºáá¯ááºáá±ááŒá®áž á¡áá¯ááºáá¯ááºáá±ááŒá±á¬ááºáž ááá·áºááœááºážá ááºážá á¬ážáááºááá¯áááºá áááºážááœáẠá¡ááŸá¬ážá¡ááœááºážá¡áá»áá¯á· áá±á«áºáá¬ááẠááá¯á·ááá¯áẠáá»ááºááœá¬ážáááºá ááá¯á·áá±á¬áẠáááºážá¡ááŒá±á¬ááºážááᯠáá»áœááºá¯ááºááá¯á· áááºáá»áŸááŒááºááŒááºááŸá¬ááœá±ááá¯ááºáááºáááºážá
áá«ááœá±á¡á¬ážáá¯á¶ážááᯠááŒááºááŒááºáááºááẠá á±á¬áá·áºááŒáá·áºááá¯ááºáááºááá¯áᬠááŸááºážáá«áááºá áááºážááẠáá±á¬ááºážááœááºáá±á¬áºáááºáž á á±á¬áá·áºááŒáá·áºááŒááºážááẠá¡áá»áá¯á·á¡áá¬áá»á¬ážááᯠá¡ááŒáá·áºáá¯á¶ážá¡ááá·áºááœáẠá á±á¬áá·áºááŒáá·áºááá¯ááºá á±ááá·áº á¡ááá·áºá¡áááºáá áºáá¯ááŒá áºáááºá
áá»áœááºá¯ááºááá¯á·á áá¯ááºáááºážá ááºáá»á¬ážááẠáá áºáá¯ááŸáá·áºáá áºáᯠá¡ááŒááºá¡ááŸáẠá¡ááŒááºá¡ááŸáẠá¡áá»áá¯ážáááºáá±á¬ááºá á±ááá¯áá±á¬á¡áá«á á¥ááá¬á¡á¬ážááŒáá·áºá áá±áá¬á¡áá»áá¯á·ááᯠá¡áá»ááºážáá»ááºáž áá±ážááá¯á·ááá¯áá±á¬á¡áá«ááœáẠáá±ážááœááºážáá±á«áºáá¬ááẠ- áá«á áááºááá¯ááŒá áºááá²á ááŒáá¯ááºááœá²á¡ááŒá±á¡áá± áá áºáá»áá¯ážáá»áá¯ážááŸáááá¬ážá áá áºáá¯áá²á·áá áºáᯠáááºáá±ážááá¬ážá áá±áá¬ááœá± ááŸááºááŸááºáááºááẠáá±á¬ááºáá¬ááá¬ážá áááºážáá áºáá»áŸá±á¬ááºááŸá¬ áá áºáá¯áᯠáá¯á¶ážááŸá¯á¶ážááœá¬ážááá¬áž? áááá¯ááá¯áá±á¬ áá áºáá»áá¯ážáá»áá¯áž á áááºááá¯á·ááᯠáá±á¬áºáá±á¬ááºááẠááá¯á¡ááºáá«áááºá
á€áá¯ááºáááºážá ááºáá»á¬ážá¡á¬ážáá¯á¶ážááᯠááŸáááŸáá¯ááºážáá±á¬ááºááœááºááŒááºážááẠá¡áá±ážá¡ááœá²ááá á¹á ááá¯ááºáá«á áááºážááẠdeveloper á¡á¬áž á¡á±á¬ááºááŒá±á¡ááá·áºááá¯á· áááºážáááºááŸáá·áº á áá áºáá»á¬ážááᯠá¡á ááŸáá±á ááá¯á·ááá¯áẠá¡á ááŸáá±á áá±ážááẠááœááºážá¡á¬ážáá±ážáá±á¬áºáááºážá á€áá»áŸ áááá¯ážááŸááºážáá«á
á¡áááºá áááºááẠcryptographic algorithm áá áºáá¯ááŸáá·áº á¡áá±á¬ááºá¡áááºáá±á¬áºáááºááá¯áá«áá áááºážááẠááá·áºá¡ááœáẠá¡áá¯ááºáááŒá áºááá¯ááºáá±á¬ááŒá±á¬áá·áº áááºážááᯠáá»ááºáá»ááºážá áœáá·áºáá áºáá«á áááºážááœáẠáááºáá¶á·ááá¯ážáá±ážááẠáá±á·ááœá¬ážáá±á¬ á¡ááŸá¬ážá¡ááœááºážáá»á¬ážá áœá¬ áá«áááºááá¯ááºááœááºááŸááááºá ááááºáááŒáááºááŒá áºááá¯ááºáá±á¬ááŒá±á¬áá·áº ááŒááºážáááºáá±á¬ áááºááá·áºá¡áá¬á¡ááœááºá០ááá¯á¶ážáá«ááŸáá·áºá á¡áááºááŒá±á¬áá·áºááá¯áá±á¬áº áááºááŸááá±áá±á¬ algorithms á¡á¬ážáá¯á¶ážááᯠá¡áá»áááºá¡áá±á¬áºááŒá¬á¡á±á¬áẠá ááºážáááºáá¬ážáá±á¬ááŒá±á¬áá·áº ááŒá áºáááºá á¡ááá¯ááºážá¡áááºážá ááŸá±á¬áá·áºááŸááºáá±áááºá áá«á áá®ážááŒá¬ážá¡ááŒá±á¬ááºážá¡áá¬áá«á áá®ááŸá¬ á¡áá°áá°áá«áá²á áá¯ááºáááºážá ááºá¡áá»áá¯á·ááᯠáááºááá¯ááºááá¯áẠáááºáá°ááŒá¯ááŒááºážáá»áá¯áž á¡áá±á¬ááºá¡áááºáá±á¬áºááẠáááŒá áºááá¯ááºáá«áá áááºážááẠá¡ááœááºááŸá¯ááºááœá±ážááŒá®áž á¡ááŸá¬ážá¡ááœááºážáá»á¬ážááᯠá¡áááºáááŒááºááŸá¬ááœá±áá±ááá·áº ááá·áºá¡á¬áž áá¯ááºááŸá¯ááºáá»á±á¬ááºáá»á¬ážá á±áá±á¬ áááºážááŒá±á¬ááºážáá±á«áºááá¯á· ááá¯á·áá±á¬ááºáá±ážáá±á¬ááŒá±á¬áá·áº áááºážááᯠááá¯ááºáá±á¬ááºááŒááºážá ááá¯áá±á¬ááºážáá«áááºá
ááá±á·áá»áœááºá¯ááºááá¯á·ááẠZooKeeper á¡ááŒá±á¬ááºážááŒá±á¬áá±ááŒáááºá áá áºáááºááœááºá áááºážááẠáá°áá±á¬ááºáá áºáá¯ááŒá áºááŒá®áž á¡ááŒá¬ážáá áºáááºááœááºá áááºážááẠdeveloper á¡ááœáẠááááá¯ááá¯ááœááºáá°á á±ááŒá®áž áá»áœááºá¯ááºááá¯á·ááá¯ááºáááºážá ááºáá»á¬ážááᯠáááºááá¯ááºááá»áŸ áá¯áá¹áááá±áááŸáá·áº áá±á«ááºážá ááºááŸáááŸáá¯ááºážáá±á¬ááºááœááºááŸá¯áá»á¬ážááᯠááá¯ážááŸááºážááœááºáá°á á±áááºá
á á¶ááŒáá·áºáá±ááŸá¯á áá áºá áááºááá¯áá¯á¶ááá¹áá¬ááºááŸááá²ááá¯áᬠááŸááºáá¬ážáá¡á±á¬ááºá áá«á HDFSá HBase á¡ááŒá±á¬ááºážááŒá±á¬áá±áá¬á á¡áá¯ááºááá¬ážáá»á¬ážááŸáá·áº áá»áœááºáá¯ááºáááºážá ááºáá»á¬ážááᯠá á®áá¶ááá·áºááœá²ááá·áº Master áá¯ááºáááºážá ááºáá áºáᯠááŸááá«áááºá á¡áá¯ááºáá»á¬ážááᯠááŸáááŸáá¯ááºážáá±ááŸááŒááºážá á¡áá¯ááºááá¬ážáá»á¬áž ááŒááºáááºá áááºááŒááºážá á¡áá áºáá»á¬ážá áááºááŒááºážááŸáá·áº áááºáá¯ááºáááºááá¯ážáá»á¬áž ááœá²áá±áá±ážááŒááºážááá¯á·á¡ááœáẠáá¬áááºááŸááá«áááºá
ááá¯áá¡ááá·áºááŒáá·áºááá·áºá¡áá¬ááŸá¬ ááŸáááŸáá¯ááºážáá±ážáááºáá±á¬ááºááŸá¯á ááá¯ááá¯áááºááŸá¬á ááŸáááŸáá¯ááºážáá±ážáá¬áááºááᯠáá®ážááŒá¬ážáá¯ááºáááºážá ááºáá áºáá¯á¡ááŒá Ạáá°á·áá¬áá¬áá° ááœáŸá±á·áᬠáá¬á áá¬ááẠáá»ááŸá¯á¶ážááá¯ááºáá±á¬ááŒá±á¬áá·áº á¡áááºáá°ážáá°ááŒááºáž ááá¯á·ááá¯áẠstanby Master á¡áá»áá¯á·ááᯠá¡ááŒáá¯ááºáá¯ááºáá±á¬ááºááŒááºážááŒá áºáááºá á¡áááºá ááá¬ááŒá®ážááŒá¯ááºáá»áá«á áá»áœááºá¯ááºááá¯á·áá áá áºááẠá¡áá¯ááºáááŒá áºáá«á áá»áœááºá¯ááºááá¯á·ááẠá¡áááºááááºážááŒááºážááᯠáá¯ááºáá±á¬ááºáá±áá«áááºá Master ááᯠá¡áááºáá°ážáá°ááẠáááºáá°ááá¯á¡ááºáááºáᯠá¡áá»áá¯á·á áá±á¬áºááŒáááºá áá«ááᯠááŸáááŸáá¯ááºážáá±áž áááºáá±á¬ááºááŸá¯ááá¯áááºáž á¡ááºááŸááºážááá¯ááºáá«áááºá ááá¯á·áá±á¬áº á€áá¯á¶ááŒááºážááœáẠááá¬ááŒá®ážááá¯ááºááá¯ááºá á¡áá¯ááºááá¬ážáá»á¬ážá¡á¬áž ááŸáááŸáá¯ááºážáá±á¬ááºááœááºáá±ážááẠáá¬áááºááŸááááºá á€áá±áá¬ááœáẠáááºáá±á¬ááºááŸá¯ááẠáá±áá¬áá¯á¶áá°ááœá¬ážááŒááºážááá¯ááºáᬠáá¯ááºáááºážáá»á¬ážááᯠááŸáááŸáá¯ááºážáá±á¬ááºááœááºáá±ážáá«áááºá
ááá¯ááá¯á¡ááá·áºááŒáá·áºáá±á¬ ááœá±ážáá»ááºááŸá¯áá áºáá¯ááẠá¡áá»á¬ážá¡á¬ážááŒáá·áº áá¯ááºáá±á¬ááºááá·áºá¡ááá¯ááºáž áá»áœááºá¯ááºááá¯á·ááááºáá±á¬ááºááŸá¯á០ááŸáááŸáá¯ááºážáá±á¬ááºááœááºááŸá¯á¡á¬ážáá¯á¶ážááᯠááá¯ááºááœááºááá·áºá¡áá«ááŒá áºáááºá á¡áá¬áá¬ááᯠáá±áá»á¬á¡á±á¬ááºáá¯ááºááá¯á· áá°áá¬áááºáá°áááºá áá áºáá¯áá¯á¡áááºáááŒá±áá«áá áá»áœááºá¯ááºááá¯á·ááẠáááºážá¡ááŒá±á¬ááºážááᯠááááŸáááŒá®áž á€á¡ááŒá±á¡áá±ááá¯á·áá±á¬ááºááẠááŒáá¯ážá á¬ážáá«á áááºááá¯á·áááºááá¯á á±áá¬áá°á á¡áá»áá¯á·áá±á¬áááºáá±á¬ááºááŸá¯ááŸáá áºááá·áº áá»áœááºáá»á¬ážááŸáá·áºáááºáá¶ááŒá®áž áá±áá¬á á¡áá»ááºá¡áááºáá»á¬ážá áááºáá±á·áá»áºáá»á¬ážá áááºááá¯á·ááᯠáá±ážááá¯á·ááá¯ááºáá±á¬ ááá¬ááŒá®ážáá áºáŠážááŸáá·áº áá»ááºááŸááá±áá«áááºá
áá»áœááºá¯ááºááá¯á·ááœáẠáá¬á áá¬áááŸááá±á¬á¡áá« ááá¯ááááºá¡ááá·áºááŒáá·áºáá±á¬á¡á á®á¡á ááºáá áºáá¯ááŸááá«áááºá áá¯á¶ááŸááºáá»á¬ážá¡á¬ážáá¯á¶ážááẠááááºáá»áœááºáá»á¬ážááŒá áºááŒá®áž áááºážááá¯á·áá¡ááŒá¯á¡áá°ááŸáá·áº ááœá²ááŒá¬ážáá«áááºá ááá¯á·áá±á¬áº áááºážááá¯á·ááẠá¡áá»ááºážáá»ááºážá¡ááŒááºá¡ááŸáẠáááºáá¶ááẠááá¯á¡ááºáá±áá±ážáá±á¬ááŒá±á¬áá·áº á€áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠááŸáááŸáá¯ááºážáá±á¬ááºááœááºááẠáááºáá±á¬ááºááŸá¯á¡áá»áá¯á· áá»ááºáá±áá±ážáááºá á€áááá¬áááœááºá¡áá¯ááºáá¯ááºáá±á¬ Cassandra áááºá€á¡á á®á¡á ááºááŸáá·áºááá¯ááºáá®áááºá
á€á¡á á®á¡á á¥áºáá»á¬ážáá²á០áááºááá·áºá¡á á®á¡á á¥áºááá¯áá±á¬ááºážáááºááá¯áááºááᯠááŒá±á¬ááááºáá«áááºá áá áºáá¯áá»ááºážá á®ááœááºáááºážáá¡á¬ážáá¬áá»ááºáá»á¬ážááŸáá·áºá¡á¬ážáááºážáá»ááºáá»á¬ážááŸááááºá
á¡ááá·áºááŒá±á¬áá·áºááá¯áá±á¬áº á¡áá»áá¯á·áá±á¬á¡áá¬áá»á¬ážááᯠááŒá±á¬ááºááœá¶á·áá±ááẠáááá¯á¡ááºáá±á á¡áááºááŒá±á¬áá·áºááá¯áá±á¬áº áá»áá·áºá ááºááŒááá·áºá¡ááá¯ááºážá áá°ááẠá¡ááŒá²áá á± á¡ááŸá¯áá±á¬áºáááºážáá±á¬ááºááẠá¡ááœááºá¡áááºáž ááŒá±á¬ááºááœá¶á·ááœááºáááŸááá±á á€áá±áá¬ááœáẠá¡áááá¡áá»ááºááŸá¬ á€áááºáá±á¬ááºááŸá¯á¡á¬áž áá®ážááŒá¬ážá¡á¬ážáá±á¬ááºážáá±á¬ node áá áºáá¯ááœáẠáááºáá¶áá»ááºážááááºá¡ááœáẠááŸááºáááºáá±á¬ááŒá±ááŸááºážáá»ááºááᯠááœá±ážáá»ááºáááºááŒá áºááŒá®ážá ááá¯á·ááŒá±á¬áá·áº áááºážááœáẠá¡áááºážá¡ááŒá áºáá»á¬áž á¡áá¯á¶á¡áá±á¬ááºááŸáá á±áááºá ááá¯á·ááŸáᬠááŒá áºááá¯ááºáá«á á¡áá¯á¶ážááŒá¯áá°áá»á¬ážááẠá€áá¯ááºáááºážá ááºááᯠááá±á¬áºáá ááááºááá á±áááºááŒá áºáááºá ááá¯á·áá±á¬áºáá áºáá»áááºáááºážááŸá¬áááºá ááá¯ááá¯á·áá±á¬á¡á á®á¡á á¥áºááœáẠMaster áá¯ááºáááºážá ááºááŸá¡áá¯ááºááá¬ážáá»á¬ážááá¯á á®áá¶ááá·áºááœá²áááºááá¯ááá¯ááœááºáá°áááºá ááá¯ááá¯áááºááŸá¬á€á¡á á®á¡á á¥áºááá¯á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯ááŸá¯áá±á¬áá·áºááŸááá¯ááá¯ááá¯ážááŸááºážáá«áááºá
á€á¡á á®á¡á á¥áº (á¡áááº) ááẠááá¯áááŸá¯ááºááœá±ážááá¯ááºáááºá ááá¯á·áá±á¬áº ááá¯ááá¯á¶ááŒááºá áááºáá»ááááºá
á¡áááááŒá¿áá¬ááŸá¬ áá áºá áááºáá áºááá¯ááºáž áá»ááºááœááºááŸá¯áá»á¬ážááŒá áºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠNetwork ááŸáááá·áº áááºáá±á·áá»áºááá¯á·áá±á¬á¡áá«ááœáẠááá±á¬áºááááŸá¯ áá áºáá»áá¯ážáá»áá¯áž ááŒá áºáá±á«áºááŒá®áž áááºáá±á·áá»áºááá¯á·áá°ááẠáááºážá áááºáá±á·áá»áºááᯠáááºáá¶áááŸáááŒááºáž ááŸáá áááŸá ááááŸáááá¯ááºáááºááŒá áºááŒá®áž áááºáá¶áá°áááºá០áááºáá²á·ááá¯á· ááŒá áºáá»ááºáá²á·áááºááᯠááááŸáááá¯ááºááẠááá¯ááºáá«á ááá¯ááá¯áááºááŸá¬ áá°ááẠáááºááá·áºá¡áááºááŒá¯áá»ááºááá¯áá»áŸ áááºáá¶áááºááá¯ááºáá«á
áá«ááŒá±á¬áá·áº áá®á¡ááŒá±á¡áá±ááᯠá á®áá¶áá±á¬ááºááœááºááááºá á¡ááá¯ážááŸááºážáá¯á¶ážááá±á¬á· áá®á á¬ááá¯ááŒááºááá¯á·ááŒá®áž áá¯á¶á·ááŒááºááŸá¯áááŸááá²á·á¡ááá á±á¬áá·áºáá«á á€ááá á¹á ááœááºá áááºáá¶áá°áá¡ááŒá±á¡áá±ááŒá±á¬ááºážáá²ááŒááºážááŸááááŸá ááá·áºááœááºážá ááºážá á¬ážáááºááá¯ááºáá«á áááºáá±á·áá»áºááá¯á·ááŒá®áž áá°áá®áá±á¬áá±áá¬ááᯠááŸá áºááŒáááºááá·áºááá¯ááºáááºá
ZooKeeper ááẠáá»áœááºá¯ááºááá¯á·áááááᯠááá¯ááá¯ááœááºáá°á á±ááá·áº ááá¯ááŒááºážááá¯ááŸá¯áá»á¬ážááᯠááá¯ááºááœááºááŒá±ááŸááºážááẠáááºážáááºážáá»á¬ážááᯠáá±ážáá«áááºá
á¡á á±á¬ááá¯ááºážáááŒá±á¬áá²á·ááá·áºá¡ááá¯ááºážá áááºážááẠmulti-threaded áááá¯ááááºáá»á¬ážááá¯áá±ážáá¬ážááŒááºážááŸáá·áºáááºáá°áá±á¬áºáááºáž á¡áááááœá¬ááŒá¬ážáá»ááºááŸá¬ ááá°áá®áá±á¬á ááºáá»á¬ážááœááºáá»áœááºá¯ááºááá¯á·áááºáá±á¬ááºáá¬ážáá±á¬ááŒáá·áºáá±ááá·áºá¡ááºááºáá®áá±ážááŸááºážáá»á¬ážááœááºáááºááœááºáááºáá áºáá¯áááºážáá±á¬áááºážáááºážááŸá¬ Network ááŒá áºáááºá á¡ááŒá±áá¶á¡á¬ážááŒáá·áºá á€á¡áá¬ááẠáá»áŸáá±ááŒááºážáááŸááá² áááá¯áá¬áá áºáá¯ááŒá áºáááºá á ááºáá áºáá¯áá±á«áºááœááºáááºáááºááá·áº áá¯ááºáááºážá áẠááá¯á·ááá¯áẠáááºáá±á¬ááºááŸá¯áá áºáá¯á á®ááœáẠáááºážáááá¯ááºááá¯ááºááŸááºáá¬ááºá áááºážáááá¯ááºááá¯ááºáá áºá áááºážáááá¯ááºááá¯ááºáááá¯áááºáá¬á áááºážááẠáááºáá°áá áºáŠážáá áºáá±á¬ááºááŸáá·áºáá»áŸ áá»áŸáá±ááŒááºážáááŸááá±á
ááœááºáá»á°áá¬áá áºáá¯á¶ážááŸá¬ Multi-threaded áááá¯ááááºáá áºáá¯ááᯠáá±ážáááºááá¯ááẠáá±áá¬áááŸááºááá¯á·á¡ááœáẠáá»áŸáá±áá¬ážáá²á· Memory ááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáá«áááºá áá»áœááºá¯ááºááá¯á·ááœáẠáááºá ááºááá¯ááºáá áºáá¯ááŸááááºá áá¯ááºáááºážá ááºáá»á¬ážááŒá±á¬ááºážááá¯ááºáááºá áá«á á áœááºážáá±á¬ááºáááºááᯠááááá¯ááºá á±áááºá áá áºáááºááœááºá á¡á á¯á¡ááœá²á·áá áºáá¯ááŸá áááá¯ááááºááœáẠááá¯ááá¯á·áá±á¬á¡áá¬áá»áá¯ážáááŸááá±á¬áºáááºáž Network ááœáẠááŒá¿áá¬áá»á¬ážááŸááá±áááºá
ááá¯á·ááŒá±á¬áá·áº ááŒáá·áºáá±ááá·áºá áá áºáá»á¬ážááᯠáá±ážáá¬ážááá·áºá¡áá«ááœáẠááŒá áºáá±á«áºáá¬ááá·áº á¡áááááŒá¿áá¬áá»á¬ážááŸá¬ ááœá²á·á ááºážááŸá¯ááŒá áºáááºá áá»áœááºá¯ááºááá¯á·ááẠá¡ááºááá®áá±ážááŸááºážáá áºáá»áá¯ážááᯠáá±ážáá±áá«áááºá ááá¯ážááŸááºážáá«áá áá»áœááºá¯ááºááá¯á·ááẠáá¯ááºááœáẠáá¶áá«ááºá¡áá»áá¯ážáá»áá¯ážááᯠhardcode áá¯ááºáá¬ážáá±á¬áºáááºáž áááºážááẠá¡áááºáááŒá±áá±á¬ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á·ááẠá áá¹ááá·áºáááºá á¡áá»áááºáá¯ááºáá¯á¶ážááá·áºá¡á á¬áž áá»áœááºá¯ááºááá¯á·ááẠáá áºá áá¹ááá·áºá á¡áá»áááºáá¯ááºáá¯á¶ážááá¯ááŒá±á¬ááºáž áá¯á¶ážááŒááºáá«áá áá»áœááºá¯ááºááá¯á·ááẠá¡ááá®áá±ážááŸááºážááᯠááŒááºáááºáá±á«ááºážá ááºážááẠááá¯á¡ááºáá«áááºá á¡áá¬á¡á¬ážáá¯á¶ážááᯠááŒááºááŸááºááá¯ááºáá«á á¡á²áá«á á ááºáá áºáá¯á¶ážááŸá¬ááŸááá²á·á¡áá«á áááºááá² restart áá¯ááºááá¯á·ááá±ááá·áº á ááºááœá±á¡áá»á¬ážááŒá®ážááŸááá²á·á¡áá«á á¡áá¬á¡á¬ážáá¯á¶ážááᯠá¡áááºáááŒááºáá°ážáá°ááá«áááºá á¡ááá®áá±ážááŸááºážááᯠconfigurable ááŒá áºá¡á±á¬áẠááŒáá¯ážá á¬ážááááºá
á€ááœáẠáá»áœááºá¯ááºááá¯á·ááẠá áá áºáá¯ááºáááºážá ááºáá»á¬ážá¡ááœáẠstatic configuration á¡ááŒá±á¬ááºážááŒá±á¬áá±áá«áááºá áááºážááẠáá¯á¶ážáááá¯ááºáá«á áááºáááºááŸá¯á áá áºáááŸá¯áá±á¬áá·áºááŸááŒá áºááá¯ááºáááºá áááºážááẠáá»áœááºá¯ááºááá¯á·ááá¯ááºáááºážá ááºáá»á¬ážá¡ááœáẠstatic configuration ááŒá áºáá±á¬ááºážááŒá áºááá¯ááºáááºá ááá¯ááá¯áááºááŸá¬á á€áááºááŸá¬ ááá¯ážááŸááºážá áœá¬áá°áááœááºážáá¶ááááá¯ááºáá±á¬ááœá²á·á ááºážáá¯á¶áá áºáá¯ááŒá áºáááºá
ááá¯ááºážááá áºááœá²á·á ááºážáá¯á¶áááºáž ááŸááá«áááºá á€á¡áá¬áá»á¬ážááẠáááºážááá¯á·ááᯠááá¯áá±áá¬ááœáẠáá±á¬ááºáá°ááá¯ááºááẠáá»áœááºá¯ááºááá¯á· áá»á¶áááºážááŒá±á¬ááºážáá²ááá¯áá±á¬ áá±á¬ááºáá»á¬ážááŒá áºáááºá
áá®ááŸá¬ áá¬ááŒá¿áá¬ááŸáááá¯á·áá²á áá»áœááºá¯ááºááá¯á·ááẠconfig ááá¯ááœááºážáá¶ááŒá®ážáááºážááá¯áá¯ááºáá²á·áááºá áá«ááá¯áá¬áá²á ááŒá¿áá¬á ááááºááŸá¬ config ááᯠáá¯ááºáá±ážáá±ááá·áº á¡áá áºááᯠáá±á·ááœá¬ážááá¯á· config á á¡á²áá®ááŸá¬áá² áá»ááºáá±áá²á·áá¬á áá¯áááá¡áá±ááŒáá·áºá áá»áœááºá¯ááºááá¯á· á áááºáá¯ááºáá¯ááºá ááºááœááºá á¡áá»áá¯á·áá±áá¬áá»á¬ážááœáẠááœá²á·á ááºážááŸá¯áá¯á¶á á¶ááᯠá¡ááºááááºáá¯ááºáá²á·áá±á¬áºáááºáž á¡ááŒá¬ážáá±áá¬áá»á¬ážááœáẠááá¯ááºáá«á á ááºáá áºáá¯á¶ážááœááºáááºáááºáá±áá±á¬ áá»áœááºá¯ááºááá¯á·áá¡ááá®áá±ážááŸááºážááá¯ááºáááºážá ááºá¡áá»áá¯á·ááᯠconfig á¡áá áºáá áºáá¯ááŒáá·áº ááŒááºáááºá áááºáá²á·ááŒá®áž á¡áá»áá¯á·áá±áá¬ááœáẠá¡áá±á¬ááºážáá áºáá¯ááŒáá·áº ááŒááºáááºá áááºáá²á·áááºá áááºážááẠáá»áœááºá¯ááºááá¯á·á ááŒáá·áºáá±áá¬ážáá±á¬ á¡ááá®áá±ážááŸááºážááᯠááœá²á·á ááºážááŸá¯áá¯á¶á á¶ááŸá¯áá±á¬áá·áºá០áááááºáááºážááŒá áºá á±ááá¯ááºáááºá áá®ááŒá¿áá¬á á¡ááŒá áºáá»á¬ážáááºá ááá¯ááºážááá áºááœá²á·á ááºážááŸá¯áá áºáá¯á¡ááœááºá áááºážááẠáá»á¶áááºážááŸá¯ááœáẠááŒá±á¬ááºážáá²ááá¯ááºáááºáᯠááá¯ááá¯áá±á¬ááŒá±á¬áá·áº áááºážááẠááá¯ááá¯áááºááá¯ááºáááºá
áá±á¬ááºááŒá¿áá¬áá áºáá¯ááá±á¬á· á¡ááœá²á·á¡ááœá²á·áááºááŒá áºááŒááºážáá«á áá»áœááºáá±á¬áºááá¯á·ááŸá¬ á¡áá¯ááºááá¬ážááœá± á¡ááŒá²ááŸááá±áááºá ââáá°ááá¯á·áá²á áááºáá°á á¡áááºááŸááºáá±áá²á áááºáá°á áá±ááœá¬ážááŒá®áá² ááá¯áᬠá¡ááŒá²áááá»ááºáá±áááºá áá¬á áá¬ááŸááá«áá ááœááºáá»ááºááŸá¯áá»á¬ážáá¯ááºáá±á¬ááºááẠááá¯á·ááá¯áẠáá±áá¬ááŒáá·áºá¡áá¯ááºáá¯ááºááá¯ááºá á±ááẠáááºááá·áºá¡áá¯ááºááá¬ážáá»á¬ážááᯠáá±á¬ááºáááºáá»á¬ážáᶠááŒááºááœáŸááºážááá¯ááºáááºááᯠáá°áá¬ážáááºááá«áááºá á¡áááºáááŒááºááŒá áºáá±á«áºáá±ááá·áº ááŒá¿áá¬áá áºáá¯ááŸá¬ áá»áœááºá¯ááºááá¯á·áá¡á á¯á¡áá±ážááœáẠáááºáá°áááºáááºááᯠááááŸáááẠááá¯á¡ááºáá«áááºá
áá±á¬ááºááŒá¿áá¬áá áºáá¯ááá±á¬á· áá±á«ááºážáá±á¬áẠááœá±ážáá±á¬ááºááœá²ááŸá¬ áááºáá°á áááºáá°áá¬áááºáá¶áá² ááá¯áᬠáááá»ááºáá«áááºá á¥ááá¬áá áºáá¯ááẠá á¬áá±ážááŒááºážáá¯ááºáááºážááᯠáááºáá¶áááŸáááŒá®ážáá±á¬áẠá¡ááŒá¬ážáá¯ááºáááºážá ááºáá»á¬ážááŒá¬ážááœáẠáááºáá°ááŒá¯ááá·áº áá¯ááºáááºážá ááºá¡áá»áá¯á·ááŸááá±á¬á¡áá« á¥ááá¬áá áºáá¯ááẠáá°ážáá°ááŒááºážááŒá áºáá«áááºá áá°ááẠáá±á«ááºážáá±á¬ááºááŒá áºáááá·áºáááºá á¡ááŒá¬ážáá°ááá¯ááºážá áá°á·á¡á¬áž áá¬áá¶áááá·áºáááºá áá°á·áá±á¬ááºááá¯ááºááŒáááá·áºáááºá áá±á«ááºážáá±á¬ááºááŸá áºáŠážááᯠááœá±ážáá»ááºááŒááºážááá¶áá á±ááẠáá°ááá¯ááºážá¡ááœáẠááŸá¯ááºááœá±ážááŸá¯áááŸáá á±ááẠáá¯ááºáááºážá ááºááᯠááœá±ážáá»ááºááẠááá¯á¡ááºáá«áááºá
áá®ážááá·áºáááºáá±á¬ááºááœáá·áºáááºáž ááŸááá«áááºá áá®áá±áá¬ááŸá¬ ááŒá¿áá¬á ááá¯ááŸá¯ááºááœá±ážáááºá Multi-threaded áááá¯ááááºáá»á¬ážááᯠáá±ážáá¬ážááŒá®áž á¡áá»áá¯á·áá±á¬ áááºážááŒá Ạá¥ááᬠáááºááá¯áá®áá²ááºááá¯á· áááºáá±á¬ááºááá¯áá±á¬á¡áá«ááœáẠááá·áºáááºáá»ááºáá áºáá¯áᬠáá¯ááºáá±á¬ááºááẠmutex áá²á·ááá¯á·áá±á¬ á¡áá¬áá áºáᯠááŸááá«áááºá á€áá±áá¬ááœáẠá¡áááºážá¡ááŒá áºááẠááá¯á á ááá¹ááááŒá áºááá¯ááºáááºá áá»áœááºá¯ááºááá¯á·á Network á ááá°áá®áá±á¬ node áá»á¬ážá០ááá°áá®áá±á¬ á¡ááá®áá±ážááŸááºážáá»á¬ážááẠáá±ážáá¬ážáá±á¬ á¡áááºážá¡ááŒá áºáá áºáá¯ááá¯á· áá®ážááá·áºáááºáá±á¬ááºááœáá·áºááá¯áᬠáááŸáááá·áºáááºá ááá¯á·ááŸáᬠáá°ááá¯ááºážá áááºážááᯠááŒá±á¬ááºážáá²ááá¯ááºááẠááá¯á·ááá¯áẠááá¯áá±áá¬ááœáẠáá áºáá¯áá¯áá±ážááá¯ááºáááºááá¯ááºáá±á á¡á²áá«ááœá±ááᯠáá±á¬á·áááºááá¯á· áá±á«áºáá¬á
ZooKeeper ááẠááá·áºá¡á¬áž á€ááŒá¿áá¬á¡á¬ážáá¯á¶ážááᯠá¡ááá¯ááºážá¡áá¬áá áºáᯠááá¯á·ááá¯áẠá¡ááŒá¬ážáá áºáá¯á¡áá ááŒá±ááŸááºážááá¯ááºá á±áá«áááºá ááŒá®ážáá±á¬á· á¡á²áá«á áááºážááᯠáááºááᯠáá¯ááºááœáá·áºáá±ážááá² á¥ááá¬ááœá±áá²á· ááŒáááºá
ááááºááá¯á·ááŒááºážá áá±á¬ááºáááºááœá²áá»á¬áž áááŸááá«á áá áºá á¯á¶áá áºáá¯ááᯠá áááºá¡áá¯á¶ážááŒá¯áá±á¬á¡áá«á á€áá°áááŒá áºá ááºááẠáááºááá·áºááŒá áºáááºááá¯áááᯠááŒá áºáá±á«áºáá¬á á±ááẠá á±á¬áá·áºáááºááá¯ááºáá«á ááŒá áºááá¯ááºáá»á± á¡áá»á¬ážá á¯ááŸá¬á á€á¡áá¬ááẠáá áºá á¯á¶áá áºáá¯ááᯠá á±á¬áá·áºááá¯ááºážáá±á áẠá¡áá»áááºááœá²ááá±á á±ááẠáá¯ááºáááºážá ááºáá»á¬ážááᯠá¡áá»áááºáááœá±áž áááŒáá¯ááºááẠáá¯ááºáá±á¬ááºááá¯ááºáááºááŒá áºáááºá áá«á á¡áááºážá¡áá¯á¶ážáááºáá²á·á¡áá¬áá«á
áá±á¬ááºááẠáá±á¬ááºážááá¯áá»ááºá¡á¬ážáá¯á¶ážááᯠáá±áá°áá»áááºážá á®á á¡á á®á¡á á¥áºá¡ááá¯ááºáž áá¯ááºáá±á¬ááºáá«áááºá
áá±á¬ááºáááºáá»á¬ážááẠááŒá±á¬ááºážáá²áá¬ážáá±á¬áá±áá¬ááᯠááá¯ááºááá¯ááºáááŒááºáá® á¡áá»áá¯á·áá±á¬á¡ááŒá±á¡áá±áá»á¬ážá áá±áá¬ááŒá±á¬ááºážáá²ááŸá¯áá»á¬ážá¡ááŒá±á¬ááºážá á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážá¡ááŒá±á¬ááºáž á¡ááŒá±á¬ááºážááŒá¬ážáá»ááºááᯠáááºáá¶áááŸáááẠá¡ááœáá·áºá¡áá±ážááŸááááºá
ZooKeeper ááẠáá¯ááºááŸá áºáá¯ááŒáá·áº á¡áá¯ááºáá¯ááºááá¯ááºáááºá ááááá áºáá¯ááẠnode áá áºáá¯áá±á«áºááœáẠstandalone ááŒá áºáááºá áá«á á ááºážáááºááá¯á· á¡áááºááŒá±áááºá áááºážááẠáááºááá·áºáá¬áá¬áá»á¬ážáá±á«áºááœááºáááᯠá¡á á¯ááá¯ááºáá¯ááºááœááºáááºáž áá¯ááºáá±á¬ááºááá¯ááºáááºá á¡áááºá áá»áœááºá¯ááºááá¯á·ááœáẠá áẠ100 á¡á á¯á¡áá±ážááŸááá«á á áẠ100 ááœááºá¡áá¯ááºáá¯ááºáááºáááá¯á¡ááºáá«á ZooKeeper áá¯á¶ážááá¯ááºáá±á¬ á ááºáá»á¬ážá áœá¬ááᯠááœá±ážáá»ááºááẠáá¯á¶áá±á¬ááºáá«áááºá áááºážááẠááŒáá·áºáá¬ážáá±á¬áááŸáááá¯ááºááŸá¯áááá¬áááᯠáá±á¬ááºáá±á¬ááºáááºá áá¯ááºáá±á¬ááºáá±ááá·áº á¥ááá¬áá áºáá¯á á®ááœáẠZooKeeper ááẠá¡áá»ááºá¡áááºáá áºáá¯áá¯á¶ážááᯠáááá¹áá°áá áºáᯠááááºážáááºážáá¬ážáááºá áá±á¬ááºá០áá°áááºááá¯áá¯ááºáá² ááŒá±á¬ááŒáááºá áááºážááẠáá±áá¬ááᯠáá»áŸáá±ááŒááºáž ááá¯á·ááá¯áẠáááºážááᯠááá¯ááºážááŒááºááŒááºážáááŒá¯áá«á áá áºáááºááœááºá áá»áœááºá¯ááºááá¯á·ááẠáá»á¬ážá áœá¬áááááºážáááºážááá¯ááºáá±á¬ á¡áá¯ááºááá¹ááá¬áá áºáá¯ááŒá áºááŒá®áž á¡ááŒá¬ážáá áºáááºááœááºáá° ááá¯ááá¯á·áá¯ááºáá±á¬ááºááẠáááá¯á¡ááºáá«á á¡á²áá«á áá®ááá¯ááºážáá¯ááºáá¬ážáᬠááá¯ááºáá°ážá áá±áá¬áá±á·á Ạááá¯ááºáá°ážá
áá±áá¬ááᯠclient áááºááœáẠááááºážáááºážááá¯ááºáááºá á€áááºááŸá¬ áá»áœááºá¯ááºááá¯á·ááẠáááºáá±á¬ááºááŸá¯ááᯠá¡ááŸá±á¬áá·áºá¡ááŸááºáááŒá áºá á±áá² áá°áá®áá±á¬áá±á¬ááºážááá¯ááŸá¯áá»á¬ážááŒáá·áº ááááºááẠá á¶áá°áá áºáá¯ááŒá áºáááºá á áááºáá±á¬ááºáááºáá áºáŠážááẠá€á¡ááŒá±á¬ááºážááᯠá¡áá»á¬ážá¡á¬ážááŒáá·áºááááŒá®áž áááºážááᯠááááºážáááºážáá¬ážáááºá
á¥ááá¬á¡á¬ážááŒáá·áºá á€áá±áá¬ááœáẠáá áºá á¯á¶áá áºáᯠááŒá±á¬ááºážáá²ááœá¬ážáááºá áá»áŸá±á¬ááºááœáŸá¬á¡áá»áá¯ážá¡á á¬ážá¡áá»áá¯á·ááŸááááºá á¥ááá¬- á á¬áá±ážááŒááºáž áá¯ááºáááºážáá»á¬ážááᯠáá±á¬ááºááœááºáá¬ááœáẠáá¬áááºááŸááá±á¬ áá±á«ááºážáá±á¬ááºá¡áá áºááᯠááœá±ážáá»ááºáááºááŒáŸá±á¬ááºááŒááºážáá¶ááááºá ááŒá®ážáá±á¬á· data ááœá±ááᯠáááºáá°áá¯ááºáá»ááºáááºá ááŒá±ááŸááºážáááºážáá áºáá¯ááá±á¬á· á¡á²áá«ááᯠááŒáá¯ážááá¯ááºážáá²ááŸá¬ ááá·áºáá¬ážááá¯á·áá«áá²á áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·ááááºáá±á¬ááºááŸá¯ááᯠá¡áááºáááŒááºáá±ážááœááºážáá¯ááºááẠ- áá áºáá¯áá¯ááŒá±á¬ááºážáá²ááœá¬ážááŒá®áá¬ážá áá¯áááááœá±ážáá»ááºááŸá¯ááẠááá¯á á¡áá±á¬ááºážáá¯á¶ážááŒá áºáááºá áááºážááẠááá·áºá¡á¬áž áá áºá á¯á¶áá áºáᯠááŒá±á¬ááºážáá²ááœá¬ážááŒá±á¬ááºáž áá¯á¶ážá áœá²áá°áá»á¬ážá¡á¬áž á¡áááá±ážááá¯ááºááá·áº áá¬áá®ááá¹ááá¬ážáá áºáá¯ááŒá áºáááºá á€áááºááŸá¬ á¡áááºážá¡ááŒá áºáá»á¬ážááŸáá·áºáááºáááºááŒá®áž á á»á±ážáááºáá¬ááŒá®áž áá±á¬ááºáááºáá»á¬ážá¡ááœáẠááá¯ááá¯á¡áááºááŒá±á á±áááºá
Client ááẠZooKeeper ááá¯á¡áá¯á¶ážááŒá¯áá±á¬á¡áá¯á¶ážááŒá¯áá°ááŒá áºáááºá
áá¬áá¬ááẠZooKeeper áá¯ááºáááºážá ááºááá¯ááºááá¯ááºááŒá áºáááºá
Znode ááẠZooKeeper áá¡áááá¡áá¬ááŒá áºáááºá znodes á¡á¬ážáá¯á¶ážááᯠZooKeeper á០ááŸááºáá¬ááºááœáẠááááºážáááºážáá¬ážááŒá®áž áá áºáááºáá¯á¶á á¶ááŒáá·áº á¡áááºá¡á±á¬ááºáá¯á¶ááá¹áá¬ááºáá¯á¶á á¶ááŒáá·áº ááœá²á·á ááºážáá¬ážáááºá
áááºáááºááŸá¯ ááŸá áºáá»áá¯ážááŸááááºá áá¯ááºáá±á¬ááºáá»ááºá¡áá»áá¯á·ááẠáá»áœááºá¯ááºááá¯á·ááá áºáááºáá¡ááŒá±á¡áá±ááᯠááŒá±á¬ááºážáá²áá±á¬á¡áá« áááá¡áá»ááºááŸá¬ á¡ááºááááº/áá±ážááŒááºážááŒá áºáá«áááºá áá áºáááºá á¡ááŒá áºáá»á¬ážáááºá
ááá¯á·á¡ááŒáẠclient ááẠáá±á¬ááºážááá¯áá»ááºáá áºáá¯á¡á¬áž áááŒá®ážááŒá±á¬ááºáá² á¡áááºááŒááºááœá¬ážááŒááºáž ááŒá áºááá¯ááºáá±á¬áºáááºáž áááºážááẠZooKeeper ááŸáá·áº á¡ááŒááºá¡ááŸááºáá¯á¶á·ááŒááºááá·áº session áá áºáá¯ááᯠáááºáá±á¬ááºááá¯ááºáááºá
ZooKeeper á áá±áá¬áá±á¬áºáááºááẠááá¯ááºá áá áºááŸáá·áº áááºáá°áááºá á á¶á¡ááŒá áºáá áºáá¯ááŸáááŒá®ážá ááá¯á·áá±á¬áẠáá»áœááºá¯ááºááá¯á·ááẠroot ááŸááœá¬ážáá±á¬ áááºážááœáŸááºáá»á¬ážá¡ááá¯ááºážááœá¬ážáá«áááºá ááŒá®ážáá±á¬á· áááá¡ááá·áºá áá¯áááá¡ááá·áº áááºááá±á¬ááºá á€áááºááŸá¬ znodes á¡á¬ážáá¯á¶ážááŒá áºáááºá
znode áá áºáá¯á á®ááẠáá±áá¬á¡áá»áá¯á·ááᯠááááºážáááºážááá¯ááºáááºá áá»á¬ážáá±á¬á¡á¬ážááŒáá·áº á¡ááœááºáááŒá®ážáá±á¬ á¥ááá¬á 10 áá®ááá¯ááá¯ááºáá»á¬ážá znode áá áºáá¯á á®ááœáẠá¡áá»áá¯á·áá±á¬ ááá±ážá¡áá±á¡ááœáẠááŸáááá¯ááºáááºá
Znodes á¡áá»áá¯ážá¡á á¬ážáá»á¬ážá áœá¬ááŸááááºá áááºáá®ážááá¯ááºááŒáááºá znode áá áºáá¯áááºáá®ážáá±á¬á¡áá«á áááºážááŸáá·áºáááºááá¯ááºááá·áºá¡áá»áá¯ážá¡á á¬ážááá¯áá»áœááºá¯ááºááá¯á·áááºááŸááºáá±ážáááºá
ááŸá áºáá»áá¯ážááŸááá«áááºá ááááá áºáá¯á áá±á«áºáááºá¡áá¶á Znode ááẠsession áá áºáá¯á¡ááœááºážáá±ááá¯ááºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá client ááẠsession áá áºáá¯ááᯠáááºáá±á¬ááºáá¬ážáááºá ááŒá®ážáá±á¬á· áá® session á á¡áááºááŸááºáá±áááœá±á·áá±á¬á· áááºááŸááá±ááŸá¬áá«á áááá¯á¡ááºáá±á¬ á¡áá¬áá»á¬áž ááá¯ááºáá¯ááºááá¯ááºááẠá€á¡áá»ááºááẠááá¯á¡ááºáá«áááºá áááºážááẠá ááºááŸááºáá áºáá¯á¡ááœááºáž áá±áᬠprimitives áá»á¬ážááᯠááááºážáááºážááẠá¡áá±ážááŒá®ážááá·áºá¡áá»áááºáá»á¬ážá¡ááœááºáááºáž ááá·áºáá»á±á¬áºáá«áááºá
áá¯áááá¡áá»áá¯ážá¡á á¬ážááŸá¬ ááá·áºáá²á¡áá¶ááŒá áºáááºá áááºážááẠznode ááá¯á·ááœá¬ážáá¬áááºážááœááºáá±á¬ááºáá¬ááá¯ážáá±ážáááºá á¥ááá¬á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááœáẠá¡ááá®áá±ážááŸááºáž 1_5 áá«ááá·áº áááºážááœáŸááºáá áºáá¯ááŸááááºá ááá node ááá¯áááºáá®ážáá±á¬á¡áá«á áááºážááẠp_1á áá¯ááá - p_2 ááá¯áááŸááá²á·áááºá áá»áœááºá¯ááºááá¯á·ááẠá€áááºážáááºážááᯠá¡ááŒáááºááá¯ááºážáá±á«áºááá¯áá±á¬á¡áá«á áá»áœááºá¯ááºááá¯á·ááẠáááºážááŒá±á¬ááºážá áá áºá áááºáá áºááá¯ááºážááá¯áᬠááœáŸááºááŒááŒá®áž áááºážááŒá±á¬ááºážáá áºáá¯áá¯á¶ážááᯠáá»á±á¬áºááœá¬ážáᬠnode á¡áá»áá¯ážá¡á á¬ážááᯠáááºááá¯ááºáá±á¬áºááŒáá±á¬ááŒá±á¬áá·áº á€áá¶áá«ááºááẠá¡ááá¯á¡áá»á±á¬ááºááá¯ážáá¬áá«áááºá
áá¯á¶ááŸáẠznode áá°áááẠá¡ááŒá²áá±ááá¯ááºááŒá®áž áá»áœááºá¯ááºááá¯á· áá°áááᯠááŒá±á¬ááŒáá±á¬ áá¬áááºááŸááááºá
áá±á¬ááºáááºá¡áá¯á¶ážáááºáá¬ááá±á¬á· áá¬áá®á¡áá¶áá«á áááºážááᯠáá»áœááºá¯ááºááá¯á·ááá·áºááœááºážáá«áá client ááẠáá®ážááŒá¬áž node áá áºáá¯á¡ááœáẠá¡áá»áá¯á·áá±á¬ááŒá áºáááºáá»á¬ážááᯠá á¬áááºážááœááºážááá¯ááºáá«áááºá á¡á²áá«ááᯠáááºááá¯áá¯ááºááŒá®ážááŒá®áá² áá±á¬ááºá០á¥ááá¬ááŒáááºá Node áá±á«áºááŸá áá±áá¬áá»á¬áž ááŒá±á¬ááºážáá²ááœá¬ážááŒá±á¬ááºáž ZooKeeper ááá¯ááºááá¯ááºá áá¯á¶ážá áœá²áá°á¡á¬áž á¡áááá±ážáááºá ááá¯á·áá±á¬áºá á¡ááŒá±á¬ááºážááŒá¬ážáá»ááºáá»á¬ážááẠá¡áá»áá¯á·áá±á¬áá±áá¬á¡áá áºáá»á¬ážáá±á¬ááºááŸááá¬ááŒá±á¬ááºáž á¡á¬áááá¶ááá¯ááºáá«á áá áºáá¯áá¯ááŒá±á¬ááºážáá²ááœá¬ážáááºáᯠáááºážááá¯á·á ááá¯ážááá¯ážááŸááºážááŸááºážááŒá±á¬áá±á¬ááŒá±á¬áá·áº áá±á¬ááºááá¯ááºážááœáẠáá®ážááŒá¬ážáá±á«áºááá¯ááŸá¯áá»á¬ážááŸáá·áº áá±áá¬ááᯠááŸáá¯ááºážááŸááºááẠááá¯á¡ááºáá±áá±ážáááºá
áá»áœááºáá±á¬áºááŒá±á¬áá²á·áááá¯áá² áá±áá¬áá²á· á¡á á®á¡á á¥áºááᯠáá®ááá¯ááá¯ááºáá²á· áá¯á¶ážááŒááºáá«áááºá áá±áá¬áá±á·á áºáá áºáá¯ááá¯ááºáá±á¬ááŒá±á¬áá·áº áááºážááẠááŒá®ážáá¬ážáá±á¬ á á¬áá¬ážáá±áá¬ááᯠááááºážáááºážáááºáááá¯á¡ááºáá«á áááºážááẠáá¯ááºáá±á¬ááºáá»ááºááŸáááŸáá¯ááºážáá±ážáá¬áá¬áá áºáá¯ááŒá áºáááºá
áááºáááºážááœá±á¡ááŒá±á¬ááºáž áááºážáááºážááŒá±á¬ááŒáááºá áá»áœááºá¯ááºááá¯á·ááœáẠáá¬áá¬áá»á¬ážá áœá¬ááŸááá«áá session identifier ááᯠá¡áá¯á¶ážááŒá¯á áá¬áá¬á០áá¬áá¬ááá¯á· ááœáá·áºáááºážááŒááºáá¬á áœá¬ ááœáŸá±á·ááŒá±á¬ááºážááá¯ááºáá«áááºá áá±á¬áºáá±á¬áºá¡áááºááŒá±áá«áááºá
Session áá áºáá¯á á®ááœáẠá¡áá»áááºáá¯ááºáá¯á¶ážááŸá¯ áá áºáá»áá¯ážá á®ááŸááááºá ááá¯á ááºááŸááºá¡ááœááºáž áá±á¬ááºáááºááẠáá¬áá¬ááá¯á· áá áºá á¯á¶áá áºáᬠáá±ážááá¯á·ááŒááºáž ááŸáá á¡áá»áááºáá¯ááºááœá¬ážáá»áááºááœáẠáááºááá·áºá¡áá¬á០áááá¯á·áá«áá á ááºááŸáẠáá»ááºááœá¬ážáááºá ááá¯á·ááá¯áẠclient ááẠáááºážááᯠááá¯ááºááá¯ááºááááºááá¯ááºáááºá
áááºážááœáẠáá»á¬ážá áœá¬áá±á¬ á¡ááºá¹áá«áááºáá»á¬áž ááá«ááŸááá±á¬áºáááºáž ဠAPI ááŒáá·áº ááá°áá®áá±á¬á¡áá¬áá»á¬ážááᯠáááºáá¯ááºáá±á¬ááºááá¯ááºáááºá áá»áœááºá¯ááºááá¯á·áááºáá®ážáá¬ážáá±á¬ áá±á«áºááá¯ááŸá¯ááẠznode áá áºáá¯ááᯠáááºáá®ážááŒá®áž áá±á¬ááºáá¯á¶ážáá¯ááᯠáá°áááºá á€áááºááŸá¬ znode ááá¯á·ááœá¬ážáá¬áááºážááŒá±á¬ááºážááŒá áºááŒá®áž áááºážááᯠroot á០á¡ááŒáá·áºá¡á á¯á¶áááºááŸááºáá¬ážááá«áááºá áá±á¬ááºááŒá®áž áá«á áá»áœááºáá±á¬áºááá¯á· á¡á²áá®ááᯠááœáŸá²ááŒá±á¬ááºážáá»ááºáá²á· áá±áá¬ááá»áá¯á·áááºáž ááŒá áºáá«áááºá á¡áá¶á¡áá»áá¯ážá¡á á¬ážááŸáá·áºá áááºáá®ážááŒá®ážáá±á¬ááºáááºážááẠznode ááá¯á·áááºážááŒá±á¬ááºážááŒááºáá±ážáááºá
áá¯áááá¡áá±áá²á· áááºá á¡á²áá«ááᯠáá»ááºááá¯ááºáááºá á€ááœááºááŸáá·áºááœááºááŸá¬ znode ááá¯á·ááœá¬ážááá·áºáááºážááŒá±á¬ááºážá¡ááŒáẠáá¯ááá parameter ááẠáá¬ážááŸááºážááᯠáááºááŸááºááá¯ááºááẠá ááá¯á·ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á·ááœáŸá²ááŒá±á¬ááºážáá±ážáá±á¬ áááºážááá¬ážááŸááºážááẠá¡ááŸááºááááºááŸááá±ááá·áº áá¬ážááŸááºážááŸáá·áº áá®áá»áŸáá«á á¡ááá¯áá« znode ááᯠáá»ááºááá¯ááºáá«áááºá
á€áá¬ážááŸááºážááᯠáá»áœááºá¯ááºááá¯á· áá á áºáá±ážááá¯áá«á "-1" á¡ááŒááºážá¡áá¯á¶ááᯠááá¯ážááá¯ážááŸááºážááŸááºáž áá»á±á¬áºááŒááºáá«á
ááááá áááºážááẠznode ááááºááŸáááŸá¯ááá¯á á áºáá±ážáááºá node ááŸááá»áŸáẠááŸááºáááºá ááá¯ááºáá«á false ááŒááºáá±ážáááºá
ááá¯á·áá±á¬áẠဠnode ááᯠá á±á¬áá·áºááŒáá·áºááẠááœáá·áºááŒá¯ááá·áº á¡áá¶áá¬áá® áá±á«áºáá¬áááºá
á€á¡áá¶ááᯠáááºááŸáááŒááºážáááŸááá±á¬ áá¯ááºáá áºáá¯áá±á«áºááœááºááẠáááºáááºááŸááºááá¯ááºááŒá®áž áá±á«áºáá¬ááá·áºá¡áá« á¡ááŒá±á¬ááºážááŒá¬ážáá»ááºáá áºáᯠáááºáá¶áááŸáááá¯ááºáá«áááºá áá«ááááºáž á¡áá¯á¶ážáááºááá¯ááºáá«áááºá
áá±á¬ááºááẠá áááºáá±á«áºááŸá¯ááœá± ááŸááá«áá±ážáááºá getData. áá»áœááºá¯ááºááá¯á·ááẠznode ááŸáááá·áº data ááá¯áááºáá¶áááŸáááá¯ááºááŒá±á¬ááºážááŸááºážáááºážáááºá á¡áá¶áá¬áá®ááá¯áááºáž áá¯á¶ážááá¯ááºáááºá á€ááá á¹á ááœááºá node áááŸááá«á install áá¯ááºáááºááá¯ááºáá«á ááá¯á·ááŒá±á¬áá·áºá áááºážááẠáááºááŸáááŒá±á¬ááºáž áá¬ážáááºááẠááá¯á¡ááºááŒá®áž áá±áá¬ááᯠááá°áá«á
áááºážááŸááááºá SetData. á€ááœááºáá»áœááºá¯ááºááá¯á·áá¬ážááŸááºážááá¯ááŒááºáááºážáá«á áááºážááá¯áá»áœááºá¯ááºááá¯á·ááŒááºáááºážáá«áá á¡áá»áá¯á·áá±á¬áá¬ážááŸááºážá znode áá±á«áºááŸááá±áá¬ááá¯ááœááºážáá¶áááºááŒá áºáááºá
á€á á áºáá±ážááŸá¯ááᯠáááºáá¯ááºááẠ"-1" ááá¯áááºáž ááẠáááºááŸááºááá¯ááºáááºá
áá±á¬ááºáááºá¡áá¯á¶ážáááºáá±á¬áááºážáááºážáá áºáá¯ááŒá áºáááºá ááá±ážáá°áá«á. áááºážááŸáá·áºáááºááá¯ááºááá·áº znode áá»á¬ážá¡á¬ážáá¯á¶ážáá á¬áááºážááá¯áááºáž áá»áœááºá¯ááºááá¯á·áááá¯ááºáááºá á¡áá¶áá¬áá®ááᯠáááºááŸááºááŒááºážááŒáá·áº áááºážááᯠáá»áœááºá¯ááºááá¯á· á á±á¬áá·áºááŒáá·áºááá¯ááºáá«áááºá
ááŸáá·áºáááºážáááºáž áááºáá°ááŒá¯ááŒááºáž ááŒá±á¬ááºážáá²ááŸá¯á¡á¬ážáá¯á¶ážááᯠáá áºááŒáá¯ááºááẠáá±ážááá¯á·ááá¯ááºá á±ááŒááºážááŒáá·áº áááºážááá¯á·ááᯠááááºážáááºážááŒá®áž áá±áá¬á¡á¬ážáá¯á¶ážááᯠáá¯á¶ážáááŒá±á¬ááºážáá²ááœá¬ážááŒá±á¬ááºáž áá±áá»á¬á á±áá«áááºá
áá¯á¶ááŸáẠáááá¯ááááºážáááºážá áá áºááŒáá·áº áá°áá®áá±á¬á¡áá»ááºáá»á¬áž áá±ážááœá²áá«áá á¡áááºá áááºááẠá á¬áá±ážáááºá áá áºááºááá¯á· áá áºáá¯áá¯áá±ážáá±ážááá·áº áááºážáááºážáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááá·áºá¡áá«á áááºážááẠááá·áºáᶠáá¯á¶á·ááŒááºááŸá¯ááᯠááŒááºáá±ážááŒá®ážáá±á¬ááºá áááºááẠáá±áá¬ááᯠáá áºááºááá¯á· áá±ážáá¬ážááŒá±á¬ááºáž á¡á¬ááá¶áá»ááºáááŸááá«á áááºáááºááŸá¯á áá áºááẠá¡áá¬á¡á¬ážáá¯á¶ážááᯠáá±ážááŒá®ážááŒá±á¬ááºáž áá¯á¶ááŒááºáá±á¬á¡áá«ááœááºáááºá áá¯ááºáááºážá ááºááẠbuffers á¡ááœáŸá¬áá»á¬ážááŸáá áºááá·áº ááŒááºáááºážááœá¬ážááá·áº áá áºááºááœáẠááá¹ááá¬ážáá»á¬ážááŸáááŒá®ážá áá±áá¬ááᯠáá áºáá±á«áºááœáẠáá¬ážááŸáááŒá®ážáá±á¬ááºááŸáᬠáá¯ááºáá±á¬ááºáááºá
á¡áá»á¬ážá¡á¬ážááŒáá·áº asynchronous áá±á«áºááá¯ááŸá¯áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áááºá áá«á client ááᯠááá°áá®áá²á· áá±á¬ááºážááá¯áá»ááºááœá±áá²á· á¡ááŒáá¯ááºá¡áá¯ááºáá¯ááºááá¯ááºá á±áááºá synchronous áá»ááºážáááºááŸá¯ááᯠáááºáá¯á¶ážááá¯ááºáá±á¬áºáááºáž áááºážááẠá¡áá»áá¯ážáááºážáááºá
áá»áœááºá¯ááºááá¯á·ááŒá±á¬áá²á·áá±á¬ áá¯ááºáá±á¬ááºáá»ááºááŸá áºáá¯ááŸá¬ áá±áá¬ááᯠááŒá±á¬ááºážáá²áá±ážááá·áº á¡ááºááááº/áá±ážááŒááºáž ááŒá áºáááºá áááºážááá¯á·ááẠáááºáá®ážááŒááºážá setDataá áááºáá°ááŒá¯ááŒááºážá áá»ááºááŒááºáž ááá¯á·ááŒá áºáááºá ááŒá®ážáááºááŸáá·áºáááºáááºá getDataá getChildren ááŸááá±áááºá
ááá¯ááœáẠááŒáá·áºáá±ááŸá¯á áá áºááœáẠá¡áá¯ááºáá¯ááºáááºá¡ááœáẠprimitives áá»á¬ážááᯠáááºáááºáá²á·ááá¯á·ááŒá¯áá¯ááºááá¯ááºáá¯á¶á á¥ááá¬á¡áá»áá¯á·á á¥ááá¬á¡á¬ážááŒáá·áºá áá áºá á¯á¶áá áºáá¯áááœá²á·á ááºážáá¯á¶ááŸáá·áºáááºááá¯ááºáááºá á¡áá¯ááºááá¬ážá¡áá Ạáá±á«áºáá¬áááºá áá»áœááºá¯ááºááá¯á·ááẠá ááºááá¯ááá·áºááœááºážááŒá®áž áá¯ááºáááºážá ááºááᯠá áááºáá²á·áááºá ááŒá®ážáá±á¬á· á¡á±á¬ááºáá«áá±ážááœááºážáá¯á¶ážáá¯ááŸááá«áááºá ááœá²á·á ááºážááŸá¯áá¯á¶á á¶á¡ááœáẠZooKeeper ááᯠáááºááá¯á·áá±ážááŒááºážááááºážá configuration ááá¯ááŒá±á¬ááºážáá»ááºáááºá áááºááá¯ááŒá±á¬ááºážááá²á á¡á²áá«ááᯠáá«ááá¯á·ááŒá±á¬ááºážááŒá®ážááẠáá«ááá¯á·ááá¬ážáá²á· á¡áá¯ááºááá¬ážááœá±á áááºááá¯ááá²á
ZooKeeper ááẠáááºážááᯠá¡áá±á¬áºáá±áž ááœááºáá°á á±áááºá á¥ááá¬á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·á znode tree ááŸááááºá á€áá±áá¬ááœáẠáá»áœááºá¯ááºááá¯á·áá¡ááá®áá±ážááŸááºážá¡ááœáẠnode áá áºáá¯ááŸááááºá áá»áœááºá¯ááºááá¯á·ááẠáááºážááœáẠá¡ááᯠnode áá áºáá¯ááá¯áááºáá®ážááŒá®áž configuration ááŸáá±áá¬áá»á¬ážáá«ááŸááááºá áááºážááá¯á·ááẠáá®ážááŒá¬ážááá·áºáááºáá»ááºáá»á¬áž ááŒá áºááá¯ááºááẠááá¯á·ááá¯áẠááŒá áºááá¯ááºáááºá á¡ááœááºá¡á á¬ážááẠáá±ážáááºáá±á¬ááŒá±á¬áá·áºá ááœá²á·á ááºážááŸá¯á¡ááœááºá¡á á¬ážááẠá¡áá»á¬ážá¡á¬ážááŒáá·áº áá±ážáááºáá±á¬ááŒá±á¬áá·áº á€áá±áá¬ááœáẠááááºážáááºážááẠá¡áá±á¬áºáá±áž ááŒá áºááá¯ááºáááºá
áááºá¡áá¯á¶ážááŒá¯áá±áá±á¬áááºážáááºáž getData node á០á¡áá¯ááºááá¬ážá¡ááœáẠconfiguration ááá¯ááá°áááºá á¡ááŸááºáᯠáááºááŸááºáááºá á¡ááŒá±á¬ááºážáá áºáá¯áá¯ááŒá±á¬áá·áº ဠnode áááŸááá«áá áááºážááᯠáá±á«áºáá¬ááá·áºá¡áá« ááá¯á·ááá¯áẠááŒá±á¬ááºážáá²ááá·áºá¡áá«ááœáẠáá»áœááºá¯ááºááá¯á·á¡á¬áž á¡áááá±ážáá«áááºá áá áºá á¯á¶áá áºáᯠááŒá±á¬ááºážáá²ááœá¬ážááŒá±á¬ááºáž áááá»ááºáá«á áááºážááᯠá¡ááŸááºá¡ááŒá ẠáááºááŸááºááá¯ááºáá«á ááŒá®ážáá±á¬á· áá® node áá²á data ááœá± ááŒá±á¬ááºážááœá¬ážáááºáá±á¬á· á¡á²áá«ááᯠáááá«áááá·áºáááºá
SetData. áá»áœááºá¯ááºááá¯á·ááẠáá±áá¬ááᯠáááºááŸááºááŒá®ážá â-1â áᯠáááºááŸááºáááºá ááá¯ááá¯áááºááŸá¬ áá»áœááºá¯ááºááá¯á·ááẠáá¬ážááŸááºážááᯠáá á áºáá±ážáá²á áá»áœááºá¯ááºááá¯á·ááœáẠááœá²á·á ááºážááŸá¯áá¯á¶á á¶áá áºáᯠá¡ááŒá²ááŸááá±áááºáᯠáá»áœááºá¯ááºááá¯á· áá°ááááºá áá»áœááºá¯ááºááá¯á·ááẠáá»á¬ážá áœá¬áá±á¬ááœá²á·á ááºážáá¯á¶áá»á¬ážááᯠááááºážáááºážááẠáááá¯á¡ááºáá«á á¡áá»á¬ážááŒá®áž ááááºážáá¬ážááá¯á· ááá¯ááẠáá±á¬ááºááẠá¡ááá·áºáá áºáᯠáááºááá·áºááá¯á· ááá¯áá«áááá·áºáááºá á€ááœááºáá áºáá¯áá¬ááŸááááºáá¯áá»áœááºá¯ááºááá¯á·áá¯á¶ááŒááºáááºá ááá¯á·ááŒá±á¬áá·áºáá»áœááºá¯ááºááá¯á·áááºáá±á¬ááºáá¯á¶ážááœááºáá áºáá¯áááºážááá¯áá¬á¡ááºááááºáá¯ááºáá±á¬ááŒá±á¬áá·áºáá¬ážááŸááºážááá¯áá á áºáá±ážáá«á ááá¯á¡áá»áááºááœááºá ááááºá á á¬áááºážááœááºážáá¬ážááá·áº áá¯á¶ážá áœá²áá°áá»á¬ážá¡á¬ážáá¯á¶ážááẠဠnode ááœáẠáá áºá á¯á¶áá áºáᯠááŒá±á¬ááºážáá²ááœá¬ážááŒá±á¬ááºáž á¡ááŒá±á¬ááºážááŒá¬ážáá»ááºááᯠáááŸááááºá áá°ááá¯á·áááºáá¶ááŒá®ážááẠá¡áá»ááºá¡áááºááœá±ááá¯áááºáž áááºááŒá®áž áá±á¬ááºážááá¯ááááºá á¡ááŒá±á¬ááºážááŒá¬ážáá»ááºááŸá¬ áááºážááá¯á·ááá¯ááºááá¯ááºá áá±áá¬ááᯠááááŸááá±á¬áºáááºáž á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááᯠá¡áááá±ážááŒááºážáá¬ááŒá áºáááºá á¡á²áá«ááŒá®ážááẠáá±áá¬á¡áá áºááœá± áá±á¬ááºážááááºá
primitive ááá¯á¡áá¯á¶ážááŒá¯ááẠáá¯áááááœá±ážáá»ááºááŸá¯ááŸá¬ á¡á¯ááºá á¯á¡ááœá²á·áááº. áá»áœááºá¯ááºááá¯á·ááœáẠááŒáá·áºáá±áá¬ážáá±á¬ áá»áŸá±á¬ááºááœáŸá¬áá áºáᯠááŸáááŒá®áž á¡áá¯ááºááá¬ážáá»á¬áž á¡á á¯á¡áá±áž ááŸááá±ááŒá®áž áááºážááá¯á·á¡á¬ážáá¯á¶áž áá±áá¬ááœáẠááŸááá±ááŒá±á¬ááºáž áá¬ážáááºáá±ážá á±ááá¯áá«áááºá ááá¯á·ááŒá±á¬áá·áº áááºážááá¯á·ááẠáá»áœááºá¯ááºááá¯á·ááá»áŸá±á¬ááºááœáŸá¬ááœáẠá¡áá¯ááºáá¯ááºááẠáááºážááá¯á·ááá¯ááºááá¯áẠááŸááºáá¯á¶áááºááááºááŒá áºáááºá ááá¯á·á¡ááŒáẠáá»áœááºá¯ááºááá¯á·ááẠMaster áá¯ááºáááºážá ááºááŸááŒá áºá á± á¡ááŒá¬ážáá áºáá±áá¬ááœááºááŒá áºá á± áá»áœááºá¯ááºááá¯á·áááºááŸááááŸááá±áá±á¬ áááºááŒáœáá±á¬á¡áá¯ááºááá¬ážáá»á¬ážá¡á¬ážáá¯á¶ážá¡ááŒá±á¬ááºážááá¯áááºáž áá»áœááºá¯ááºááá¯á· ááááŸáááá¯áá«áááºá
áá«ááᯠáááºááᯠáá¯ááºááá²á á¡ááá®áá±ážááŸááºážá¡ááœááºá áá»áœááºá¯ááºááá¯á·ááẠá¡áá¯ááºááá¬áž node áá áºáá¯ááᯠáááºáá®ážááŒá®áž áááºáá®ážááŸá¯áááºážáááºážááᯠá¡áá¯á¶ážááŒá¯á ááá¯áá±áá¬ááœáẠá¡ááá·áºááœá²áá áºáá¯ááᯠáá±á«ááºážááá·áºáá«áááºá áááá¯ááºáá±á«áºááœáẠá¡ááŸá¬ážá¡ááœááºážáá áºáá¯ááŸááááºá áá®ááŸá¬ áááºážááá¯áááºá áá±á¬ááºáááºááœá² áááºááŸááºáá«á ááá¯á·áá±á¬áẠá¡áá¯ááºááá¬ážá¡á¬ážáá¯á¶ážááᯠáá áºáŠážááŒá®ážáá áºáá±á¬áẠáááºáá®ážáá«áááºá ááŒá®ážáá±á¬á· áá® node áá±ážááœá±áá²á· á¡áá»ááºá¡áááºá¡á¬ážáá¯á¶ážááᯠáá±á¬ááºážááá¯áá²á· application áᬠááŸááá±áá²á· áááºááŒáœáá²á· á¡áá¯ááºááá¬ážá¡á¬ážáá¯á¶ážááᯠáááºáá¶áá«áááºá
áááºážááẠJava áá¯ááºááœáẠá€áá²á·ááá¯á· áá¯ááºáá±á¬ááºááá¯ááºááá·áº ááá¯ážááœá¬ážáá±á¬ á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯áá áºáá¯ááŒá áºáááºá á¡ááááááºážáááºážááŒáá·áº á¡áá¯á¶ážááŸá ááŒáá«á áá¯á·á áá«áá»áœááºá¯ááºááá¯á·áá²á·á¡áááºážáá«á áá°á·áá²á·áááºážáááºážááá¯áááºáá®ážááŒáá«á áá¯á·á áááá¡ááŒááºážá¡áá¯á¶á¡ááŒá Ạáá»áœááºá¯ááºááá¯á·áá»áááºáááºáá±ááá·áº host ááá¯á¡áá¯á¶ážááŒá¯áááºá ááá¯ááá¯áááºááŸá¬ áááºážááᯠá¡ááŒááºážá¡áá¯á¶áá áºáá¯á¡ááŒá ẠáááºááŸááºáááºá áá¯áááá¡ááŒááºážá¡áá¯á¶ááẠá¡ááœá²á·áá¡áááºááŒá áºáááºá
áá»áááºáááºááŸá¯á áááºááá¯ááŒá áºáá¬áá²á á€áááºááŸá¬ á¡áá¯á¶ážááŒá¯áá±á¬ API á ááá¯ážááŸááºážáá±á¬ á¥ááá¬áá áºáá¯ááŒá áºáááºá á€ááœááºá¡áá¬á¡á¬ážáá¯á¶ážáááºá¡áá±á¬áºáá±ážááá¯ážááŸááºážáááºá á á¶á¡ááá·áº ZooKeeper ááŸááá«áááºá áá»áœááºáá±á¬áºááá¯á·á á¡áááºááŸááºááœá±ááᯠááœáŸá²áá±ážáááºá á¥ááá¬á¡á¬ážááŒáá·áº á¡áá»áááºáá¯ááºáá¯á¶ážáá»áááºááᯠ5 á áá¹ááá·áºáááºááŸááºáá«á ááŒá®ážáá±á¬á· áá»áœááºáá±á¬áºááá¯á·ááŸá¬ connectionSignal ááá¯á·áá±á«áºáá²á· á¡ááœá²á·áááºáá áºáá±á¬ááºááŸááááºá á¡ááŒá±áá¶á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠáá°ážá ááºáááºážááŒá±á¬ááºážáá áºáá»áŸá±á¬ááºááœáẠá¡á¯ááºá á¯áá áºáá¯ááᯠáááºáá®ážáááºá áá áºáá¯áá¯áá±ážááá¯ááºáá±ááá·áº á¡á²áá®áá±áá¬ááŸá¬ áá±áá¬ááá±ážáá«áá°ážá á€áá±áá¬ááœáẠnode ááẠpersistent type ááŒá áºáááºá á¡ááŒá±áá¶á¡á¬ážááŒáá·áºá áááºážááẠá¡áá»áááºááá¯ááºážáááºááŸááá±ááá·áº áá¬áááºáá¯á¶ááŸáẠnode áá áºáá¯ááŒá áºáááºá á€áá±áá¬ááœáẠsession ááá¯áááºáá®ážáá¬ážáááºá áá«á client ááá¯ááºááá¯ááºáá²á· á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯áá«á áá»áœááºá¯ááºááá¯á·ááá±á¬ááºáááºááẠá ááºááŸááºá¡áááºáááºááŒá±á¬ááºáž ááœáŸááºááŒáá±á¬ á¡áá»áááºá¡áá«á¡ááá¯áẠáááºáá±á·áá»áºáá»á¬áž áá±ážááá¯á·áá«áááºá áá»áœááºá¯ááºááá¯á·ááẠá ááºááŸááºááᯠá¡áá¯á¶ážáááºáá±á¬á¡áá«ááœáẠáá»áœááºá¯ááºááá¯á·ááẠá¡áá®ážáááºáá±á«áºááá¯ááŒááŒá®ážá á¡á ááºážá¡áá±áž áá»ááºááœá¬ážáá«áááºá á€á¡áá¬ááẠáá»áœááºá¯ááºááá¯á·á¡ááœáẠáá áºáá¯áᯠáá»ááºááœá¬ážáá«á ZooKeeper ááẠáááºážá¡ááŒá±á¬ááºážááᯠááááŸáááŒá®áž á ááºááŸááºááᯠááŒááºáá±á¬ááºáááºááŒá áºáááºá
á¡áááºážá¡ááŒá áºááᯠáááºááá¯áá±á¬á·ááºáá»ááá²á á€ááœááºá¡áá¬á¡á¬ážáá¯á¶ážá¡áááºážáááºááá¯ááŸá¯ááºááœá±ážáááºá áá»áœááºáá±á¬áºááá¯á·ááŸá¬ á¡áá¯ááºááá¬ážááœá± á¡á á¯á¶ááŸááááºá áá±á¬á·áááºáá»ááºáá²á· á¡áááºážá¡ááŒá áºááœá±ááŸááááºá áá«ááá¯áá¯ááºááá¯á·á á¥ááá¬á lock1 ááá¯á·áá±á«áºáá²á· áá®ážááŒá¬áž node áá áºáá¯ááᯠáááºáá®ážáááºá á¡á²áá«ááᯠáááºáá®ážááá¯ááºááẠáá®ááŸá¬ áá±á¬á·áááºááá¯á·ááá«ááŒá®á áááºážááá¯áá»áœááºá¯ááºááá¯á·ááááºáá®ážááá¯ááºáá²á·áá«áá á¡áá¯ááºááá¬ážááẠá€áá±áá¬á០getData ááá¯ááá°áááºááŒáá¯ážá á¬ážááŒá®áž node ááá¯áááºáá®ážááŒá®ážááŒá áºáá±á¬ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á·ááẠá á±á¬áá·áºááŒáá·áºáá°á¡á¬áž á€áá±áá¬ááœááºáá¬ážááŸáááŒá®áž ဠnode áá¡ááŒá±á¡áá±ááŒá±á¬ááºážáá²ááŸá¯á¡ááá¯ááºá¡ááá·áºááœáẠáá»áœááºá¯ááºááá¯á·ááẠáááºážá¡ááŒá±á¬ááºážááᯠááááŸááááºááŒá áºáá«áááºá ááŒá®ážáá±á¬á· á¡á²áá«ááᯠááŒááºáááºáá®ážááá¯á· áá»áœááºáá±á¬áºááá¯á· ááŒáá¯ážá á¬ážááá¯ááºáááºá á¡áááºá áá»áœááºá¯ááºááá¯á·ááẠဠnode ááá¯áá°áá¬á á€áá±á¬á·ááá¯áá°áá²á·áá«áá ááá¯á·áá±á¬áẠáá»áœááºá¯ááºááá¯á·ááẠáá±á¬á·ááᯠáááá¯á¡ááºáá±á¬á·ááá·áºáá±á¬ááºá node ááẠsession á¡ááœááºážáá¬ááŸááá±áá±á¬ááŒá±á¬áá·áº áááºážááᯠá áœáá·áºááœáŸááºááá¯ááºáá«áááºá ááá¯á·ááŒá±á¬áá·áº áá»á±á¬ááºááœááºááœá¬ážáááá·áºáááºá á¡ááŒá¬ážá ááºááŸááºá áá°áá±á¬ááºá¡ááœááºáž á¡ááŒá¬áž client ááẠဠnode ááœáẠáá±á¬á·ááºáá»ááá¯ááºáááá·áºááẠááá¯á·ááá¯áẠáá áºáá¯áá¯ááŒá±á¬ááºážáá²ááœá¬ážááŒá®ááŒá áºááŒá±á¬ááºáž á¡áááá±ážáá»ááºááᯠáááºáá¶áááŸááááºááŒá áºááŒá®áž áááºážááᯠá¡áá»áááºáá®áá¯ááºáá±á¬ááºááá¯ááºáááºááŒá áºáááºá
áááºááá±á«ááºážáá±á¬ááºááᯠáááºááá¯ááœá±ážáá»ááºááá¯ááºááá²ááá¯áá¬áá²á· áá±á¬ááºáááºá¥ááá¬áá áºáá¯á áááºážááẠá¡áááºážáááºááá¯ááŸá¯ááºááœá±ážáá±á¬áºáááºáž á¡áá±á¬áºáá±ážááá¯ážááŸááºážáá«áááºá áá®ááŸá¬áá¬ááœá±ááŒá áºáá±áá¬áá²? á¡áá¯ááºááá¬ážá¡á¬ážáá¯á¶ážááᯠá á¯á ááºážáá±ážááá·áº á¡ááá áá¯á¶ááŸááºáá áºáᯠááŸááááºá áá±á«ááºážáá±á¬ááºááŸáá·áºáááºáááºáá±á¬ á¡áá»ááºá¡áááºáá»á¬ážááᯠááá°ááẠááŒáá¯ážá á¬ážáá±áá«áááºá á¡áááºá á€á¡áᬠá¡á±á¬ááºááŒááºáá²á·áá«áá ááá¯ááá¯áááºááŸá¬ áá»áœááºá¯ááºááá¯á·ááẠáá±áá¬á¡áá»áá¯á·ááᯠáááºáá¶áááŸáááŒá®ážáá±á¬ááºá áá»áœááºá¯ááºááá¯á·á á¡áá¯ááºááá¬ážááẠá€áá±á«ááºážáá±á¬ááºáá±á¬ááºááá¯á· á áááºááá¯ááºáá«áááºá áá±á«ááºážáá±á¬ááºááŸááá±ááŒá®áᯠáá¯á¶ááŒááºáááºá
á¥ááá¬á¡á¬ážááŒáá·áº áá±á«ááºážáá±á¬ááºá á¡ááŒá±á¬ááºážáá áºáá¯áá¯ááŒá±á¬áá·áº ááŒá¯ááºáá»áááºá áá±á«ááºážáá±á¬ááºá¡áá áºááᯠáááºáá®ážááá¯á· ááŒáá¯ážá á¬ážáááºá áá«ááá¯á·á¡á±á¬ááºááŒááºááẠáá«ááá¯á·á¡áá¯ááºááá¬ážá áá±á«ááºážáá±á¬ááºááŒá áºáá¬áááºá áá®á¡áá»áááºááŸá¬ áá áºáá±á¬ááºáá±á¬ááºá áá±á«ááºážáá±á¬ááºá¡áá áºááᯠáááºáá®ážááá¯ááºáá²á·áááºá áá«ááá¯á·á áááºáá°áá²ááá¯áᬠáá¬ážáááºá¡á±á¬ááºááŒáá¯ážá á¬ážááŒá®áž áá°á·áá±á¬ááºááᯠááá¯ááºááœá¬ážááá¯ááºáá«á
á€ááœáẠá¡á á¯á¡ááŒá¯á¶ááá¯ááºá¡áá»áá¯ážáááºáá±á¬ááºááŸá¯ááẠááŒá áºáá±á«áºáá¬áááºá ááá¯ááá¯áááºááŸá¬á áá±á«ááºážáá±á¬ááºáá áºáŠážáá±áá¯á¶ážáá±á¬á¡áá«á á¡áá»áááºáá®áá®áá±á¬áá°ááẠáá±á«ááºážáá±á¬ááºááŒá áºáá¬ááá¯ááºáá±á¬ááŒá±á¬áá·áºááŒá áºáááºá
á¡áááºážá¡ááŒá áºáá áºáá¯á¡á¬áž áááºážáá°áá¬ááœáẠá¡á±á¬ááºáá«á¡ááá¯ááºáž á¡áááºážáááºááœá²ááŒá¬ážáá±á¬áá»ááºážáááºáááºážááᯠá¡áá¯á¶ážááŒá¯ááẠááŒáá¯ážá á¬ážááá¯ááºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠáá±á¬á·áááºááŒááºážááᯠááá°ááá¯áá±á¬áºáááºáž hert á¡áá»áá¯ážáááºáá±á¬ááºááŸá¯áááŸááá«á áá»áœááºá¯ááºááá¯á·á á¡ááá®áá±ážááŸááºážááẠáá±á¬á·áááºáá¬ážááŒá®áž ááŸáááŒá®ážáá¬áž node áá áºáá¯á¡ááœáẠnode ids áá»á¬ážá á¬áááºážááᯠáá±á¬ááºážááá¯áá±áá±á¬ááŒá±á¬áá·áº áááºážááœáẠáá«áááºáááºááŒá áºáááºá áá»áœááºá¯ááºááá¯á·áááºáá®ážáá¬ážáá±á¬ áá±á¬á·ááá±á¬ááºááẠáá»áœááºá¯ááºááá¯á·áááºáá¶áááŸáááá·áº set áá¡áá±ážáá¯á¶ážááŒá áºáááºááá¯áá»áŸááºá áááºážá áá»áœááºá¯ááºááá¯á·ááẠáá±á¬á·ááá¯áááºážááááŒá®áᯠááá¯ááá¯áá«áááºá áá»áœááºá¯ááºááá¯á·ááẠáá±á¬á·ááºáá»ááŒááºážááᯠáááºáá¶áááŸáááŒá±á¬ááºáž á á áºáá±ážáá«áááºá á á áºáá±ážááŸá¯áá áºáá¯á¡áá±ááŒáá·áº áá±á¬á·ááºá¡áá áºáááºáá®ážáá¬ááœáẠáá»áœááºá¯ááºááá¯á·áááŸááá±á¬ id ááẠá¡áááºážáááºáá»áŸáá¬ááŸááá±á¬ á¡ááŒá±á¡áá±áá áºáá¯ááŸááá«áááºá áááºáá¶áááŸááá«áá áááºáááºáá¯ááºáá±á¬ááºááœá¬ážáá«áááºá
áá»áœááºá¯ááºááá¯á·ááá±á¬á·áááºáááºáá±á¬ ID á¡áá»áá¯á·ááŸááá«áá ááá¯á·áá±á¬áẠáá»áœááºá¯ááºááá¯á·ááẠá€ááŒá áºáááºááœáẠá á±á¬áá·áºááŒáá·áºáá°á¡á¬áž áá¬ážááŸááᬠáá áºá á¯á¶áá áºáᯠááŒá±á¬ááºážáá²ááœá¬ážáááºá¡áá á¡ááŒá±á¬ááºážááŒá¬ážáá»ááºááᯠá á±á¬áá·áºáá«á ááá¯ááá¯áááºááŸá¬á áá»áœááºá¯ááºááá¯á·ááẠá€áá±á¬á·áááºááŒááºážááᯠáááºáá¶áááŸááá²á·áááºá ááŒá¯ááºáá»áááºá¡áá áá»áœááºá¯ááºááá¯á·ááẠá¡áááá·áºáá¯á¶áž id ááŒá áºáá¬áááºááá¯ááºááá·áºá¡ááŒáẠá¡áááá·áºáá¯á¶ážáá±á¬á·ááᯠáááºáá¶áááŸááááºááá¯ááºáá±á¬ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·ááẠáá±á¬á·ááºá¡ááºáááºááá¯ááºáááºááŒá áºáááºá á¡áááºá á€á¡ááŒá±á¡áá±ááŸáá·áºáááá¯ááºáá®áá«áá á€á¡áá»áááºá¡áá±á¬á¡ááœááºáž áá áºáá¯áá¯ááŒá±á¬ááºážáá²ááœá¬ážááá¯ááºáá±á¬ááŒá±á¬áá·áº á€áá±á¬á·ááºááᯠáá»ááºáá»ááºážááá°ááẠááŒáá¯ážá á¬ážáá«á
ZooKeeper ááœáẠá¡áááºá¡áá¬áá«áááºááááºážá á¡áááá¡áá»áẠá áá»ááºááŸááá«áááºá áááºážááẠá á®áá¶áá±á¬ááºááœááºáá² áá¯ááºáááºážá ááºáá»á¬áž - áá±á¬ááºážááá¯áá»ááºá ZooKeeper Atomic Broadcast áááºážááŒá áºáá«áááºá áá¯ááºáá±á¬ááºáá»ááºá¡á¬ážáá¯á¶ážááᯠááŸááºáááºážáááºáá¬ážááá·áº Commit Log áá áºáá¯ááŸááááºá ááŸáá·áº In-memory Replicated DB ááá¯ááºááá¯ááºá ááá¯ááá¯áááºááŸá¬ á€áá áºáááºáá áºáá¯áá¯á¶ážááᯠááááºážáááºážáá¬ážááá·áº áá±áá¬áá±á·á áºááá¯ááºááá¯ááºááŒá áºáááºá
á á¬áá±ážááŒááºážáá¯ááºáááºážá¡á¬ážáá¯á¶ážááẠRequest Processor ááŸáááá·áºááœá¬ážáááºááᯠáááááŒá¯ááá·áºáááºá ááŸáá·áºáááºááŒááºážáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááẠIn-memory database ááá¯á· ááá¯ááºááá¯ááºááœá¬ážáá«áááºá
áá±áá¬áá±á·á áºááá¯ááºááá¯ááºá á¡ááŒáá·áºá¡á áááºáá°áá¯ááºáá¬ážáá«áááºá ZooKeeper áááŒá áºáááºá¡á¬ážáá¯á¶ážááẠá¡áá»ááºá¡áááºá¡ááŒáá·áºá¡á á¯á¶ááᯠáááá¹áá°áá áºáá¯ááááºážáááºážáá¬ážáááºá
áá»ááºáá»ááŒá®ážáá±á¬áẠáá±áá¬áá±á·á áºááᯠááŒááºáááºááá°áááºá¡ááœááºá Commit ááŸááºáááºážáá áºáᯠááŸááá«áááºá á á¶á¡áá±á·á¡áá»áá·áºáá áºáá¯ááá±á¬á· áá±áá¬áááºááá¯áá®áá²ááᯠááááºáááºááŸá¬ áá»ááºááœá¬ážááẠáá®áá±á¬á·ááºááᯠááŒááºááœáá·áºááá¯ááºááŒá®áž á áá áºá¡ááŒá±á¡áá±ááᯠááŒááºáá°ááá¯ááºá á±ááá¯á· á¡á²áá®áá±áá¬ááŸá¬ áá±ážáá¬ážáá«áááºá áá±áá¬áá±á·á áºá á¡áá»áááºá¡ááá¯ááºážá¡ááŒá¬ážá¡ááá¯áẠáá»áŸááºáá áºááŒááºááá¯ááºáá»ááºáá»á¬ážááá¯áááºáž á¡áá¯á¶ážááŒá¯áá«áááºá
ZooKeeper Atomic Broadcast ááẠáá¯á¶áá°áá°ážáá¬ážáá±á¬ áá±áá¬ááᯠááááºážááááºážááẠá¡áá¯á¶ážááŒá¯ááá·áº á¡áá¬áá áºáá¯ááŒá áºáááºá
ZAB ááẠZooKeeper node áááŸá¯áá±á¬áá·áºá០áá±á«ááºážáá±á¬ááºáá áºáŠážááᯠá¡ááœááºážááá¯ááºážá០ááœá±ážáá»ááºáááºá á¡ááŒá¬áž node áá»á¬ážááẠáá°áááá±á¬ááºááá¯ááºáá»á¬ážááŒá áºáá¬ááŒá®áž áá°ááá¶á០áá¯ááºáá±á¬ááºáá»ááºá¡áá»áá¯á·ááᯠáá»áŸá±á¬áºááá·áºáá¬ážáááºá áááºááœáá·áºáááŸááá«á á¡á¬ážáá¯á¶ážááᯠáá±á«ááºážáá±á¬ááºáᶠáá±ážááá¯á·áááºá áá°ááẠááááŠážá áœá¬ á á¬áá±ážááŒááºážáá¯ááºáááºážááᯠáá¯ááºáá±á¬ááºááŒá®ážáá±á¬áẠáááºážááá±á¬ááºááá¯ááºáá»á¬ážáᶠá¡ááŒá±á¬ááºážá¡áá²áá»á¬ážá¡ááŒá±á¬ááºáž áááºáá±á·áá»áºáá±ážááá¯á·áááºá áááºážááẠá¡ááŸááºááááºá¡á¬ážááŒáá·áº á¡ááºáááºáááºážá¡á áá¯ááºáá±á¬ááºááááºá ááá¯ááá¯áááºááŸá¬ á¡áá¬áá áºáá¯áá¯á¶ážá á¡áá¶ááœááºážááŒááºážááŸáá·áº áá¯ááºááœáŸáá·áºááŒááºážáá¯ááºáááºážááᯠá¡ááºáááºáá¯á¶á á¶á¡ááá¯ááºáž áá¯ááºáá±á¬ááºááááºááŒá áºááŒá®ážá ááá¯á·ááŒá±á¬áá·áº áá±áá¬áá®ááœááºááŸá¯ááᯠá¡á¬ááá¶áá«áááºá
áááºážááẠáá±á¬ááºážááá¯ááŸá¯áá»á¬ážááᯠáá±ážáááºáᬠáá¯ááºáá±á¬ááºáááºá áááºážáá¡ááááá¬áááºááŸá¬ áá¯ááºáá±á¬ááºáá»ááºá¡á¬áž á¡áá±á¬ááºážá¡áááºááá¯ááºáᬠá¡ááºááááºá¡ááŒá áºááá¯á· ááŒá±á¬ááºážáá²áá±ážááŒááºážááŒá áºáááºá á€áááºááŸá¬ á¡áá°ážáá¯ááºáá¯ááºáá¬ážáá±á¬ áá±á¬ááºážááá¯áá»ááºááŒá áºáááºá
á€áá±áá¬ááœáẠáá°áá®áá±á¬áá¯ááºáá±á¬ááºáá»ááºá¡ááœáẠá¡ááºááááºáá»á¬ážá á¡á áœááºážááá¹áááááŸáááŒááºážááᯠá¡á¬ááá¶ááŒá±á¬ááºáž á€áá±áá¬ááœáẠáááááŒá¯ááá·áºáááºá áá«áá¬áá²? á€á¡áá¬á¡á¬áž ááŸá áºááŒáááºáá¯ááºáá±á¬ááºáá«á áá°áá®áá±á¬á¡ááŒá±á¡áá±ááŸááááºá ááá¯ááá¯áááºááŸá¬ áá±á¬ááºážááá¯áá»ááºááẠááŒá±á¬ááºážáá²áááºááá¯ááºáá«á áá»ááºáá»ááœá¬ážááá·áºá¡áá«ááœáẠáááºááẠáááºáááºááŸá¯ááᯠááŒááºáááºá áááºááá¯ááºááŒá®áž áááºááŸáá¡áá»áááºááœáẠáá»ááºááœá¬ážáá±á¬ á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááᯠááŒááºáááºá áááºááá¯ááºááẠáááºážááᯠáá¯ááºáá±á¬ááºáááºááá¯á¡ááºáááºá á€á¡ááŒá±á¡áá±ááœááºá á áá áºáá¡ááŒá±á¡áá±ááẠáá°áá®áááá·áºáááºá ááá¯ááá¯áááºááŸá¬ áá°áá®áá±á¬á á®ážáá®ážáá»á¬ážá á¥ááá¬á á¡ááºááááºáá¯ááºáááºážá ááºáá»á¬ážááẠá áá áºáááá°áá®áá±á¬áá±á¬ááºáá¯á¶ážá¡ááŒá±á¡áá±áá»á¬ážáá®ááá¯á· áŠážáááºááœá¬ážááá·áºááá á¹á áá»áá¯áž áááŒá áºááá·áºáá«á
source: www.habr.com