เจนเฉเจฒเฉ, เจนเฉเจฌเจฐ! เจ เฉฑเจ เจ เจธเฉเจ เจเฉฑเจ เจธเจฟเจธเจเจฎ เจฌเจฃเจพเจตเจพเจเจเฉ เจเฉ เจธเจชเจพเจฐเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ เจ เจชเจพเจเฉ เจเจพเจซเจเจพ เจธเฉฐเจฆเฉเจธเจผ เจธเจเฉเจฐเฉเจฎเจพเจ เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเจฐเฉเจเจพ เจ เจคเฉ เจชเฉเจฐเฉเจธเฉเจธเจฟเฉฐเจ เจจเจคเฉเจเจฟเจเจ เจจเฉเฉฐ AWS RDS เจเจฒเจพเจเจก เจกเฉเจเจพเจฌเฉเจธ เจตเจฟเฉฑเจ เจฒเจฟเจเฉเจเจพเฅค
เจเจฒเฉ เจเจฒเจชเจจเจพ เจเจฐเฉเจ เจเจฟ เจเฉฑเจ เจเจพเจธ เจเจฐเฉเจกเจฟเจ เจธเฉฐเจธเจฅเจพ เจธเจพเจจเฉเฉฐ เจเจชเจฃเฉเจเจ เจธเจพเจฐเฉเจเจ เจฌเฉเจฐเจพเจเจเจพเจ เจตเจฟเฉฑเจ "เจเฉฑเจกเจฆเฉ" เจเจเจฃ เจตเจพเจฒเฉ เจฒเฉเจฃ-เจฆเฉเจฃ เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเจฐเจจ เจฆเจพ เจเฉฐเจฎ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจฆเฉ เจนเฉเฅค เจเจน เจเจเจผเจพเจจเฉ เจฒเจ เจเฉฑเจ เจเฉเฉฑเจฒเฉเจนเฉ เจฎเฉเจฆเจฐเจพ เจธเจฅเจฟเจคเฉ, เจฒเฉเจฃ-เจฆเฉเจฃ เจฒเจ เจธเฉเจฎเจพเจตเจพเจ เจเจพเจ เจตเจฟเฉฑเจคเฉ เจจเจคเฉเจเจฟเจเจ เจเจฆเจฟ เจฆเฉ เจคเฉเจฐเฉฐเจค เจเจฃเจจเจพ เจเจฐเจจ เจฆเฉ เจเจฆเฉเจธเจผ เจฒเจ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉเฅค
เจเจพเจฆเฉ เจ เจคเฉ เจเจพเจฆเฉ เจฆเฉ เจเจพเจฆเฉ เจฆเฉ เจตเจฐเจคเฉเจ เจเฉเจคเฉ เจฌเจฟเจจเจพเจ เจเจธ เจเฉเจธ เจจเฉเฉฐ เจเจฟเจตเฉเจ เจฒเจพเจเฉ เจเจฐเจจเจพ เจนเฉ - เจเฉฑเจ เจฆเฉ เจนเฉเจ เจพเจ เจชเฉเฉเจนเฉ! เจเจพเจฃเจพ!
เจเจพเจฃ เจชเจเจพเจฃ
เจฌเฉเจธเจผเฉฑเจ, เจฐเฉเจ เจฒ เจเจพเจเจฎ เจตเจฟเฉฑเจ เจตเฉฑเจกเฉ เจฎเจพเจคเจฐเจพ เจตเจฟเฉฑเจ เจกเฉเจเจพ เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเจฐเจจเจพ เจเจงเฉเจจเจฟเจ เจชเฉเจฐเจฃเจพเจฒเฉเจเจ เจตเจฟเฉฑเจ เจตเจฐเจคเฉเจ เจฒเจ เจเจพเจซเจผเฉ เจฎเฉเจเฉ เจชเฉเจฐเจฆเจพเจจ เจเจฐเจฆเจพ เจนเฉเฅค เจเจธเจฆเฉ เจฒเจ เจธเจญ เจคเฉเจ เจชเฉเจฐเจธเจฟเฉฑเจง เจธเฉฐเจเฉเจเจพเจ เจตเจฟเฉฑเจเฉเจ เจเฉฑเจ เจ เจชเจพเจเฉ เจเจพเจซเจเจพ เจ เจคเฉ เจธเจชเจพเจฐเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจฆเจพ เจเฉเจเจกเจฎ เจนเฉ, เจเจฟเฉฑเจฅเฉ เจเจพเจซเจเจพ เจเจเจฃ เจตเจพเจฒเฉ เจธเฉฐเจฆเฉเจธเจผ เจชเฉเจเฉเจเจพเจ เจฆเฉ เจเฉฑเจ เจธเจเฉเจฐเฉเจฎ เจฌเจฃเจพเจเจเจฆเจพ เจนเฉ, เจ เจคเฉ เจธเจชเจพเจฐเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจเฉฑเจ เจฆเจฟเฉฑเจคเฉ เจธเจฎเฉเจ เจฆเฉ เจ เฉฐเจคเจฐเจพเจฒ 'เจคเฉ เจเจนเจจเจพเจ เจชเฉเจเฉเจเจพเจ เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเจฐเจฆเฉ เจนเฉเฅค
เจเจชเจฒเฉเจเฉเจธเจผเจจ เจฆเฉ เจจเฉเจเจธ เจธเจนเจฟเจฃเจธเจผเฉเจฒเจคเจพ เจจเฉเฉฐ เจตเจงเจพเจเจฃ เจฒเจ, เจ เจธเฉเจ เจเฉเจเจชเฉเจเจเฉฐเจเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจพเจเจเฉเฅค เจเจธ เจตเจฟเจงเฉ เจจเจพเจฒ, เจเจฆเฉเจ เจธเจชเจพเจฐเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจเฉฐเจเจฃ เจจเฉเฉฐ เจเฉเจเจเฉ เจนเฉเจ เจกเฉเจเจพ เจจเฉเฉฐ เจฎเฉเฉ เจชเฉเจฐเจพเจชเจค เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเฉฐเจฆเฉ เจนเฉ, เจคเจพเจ เจเจธเจจเฉเฉฐ เจธเจฟเจฐเจซเจผ เจเจเจฐเฉ เจเฉเจเจชเฉเจเจเฉฐเจ 'เจคเฉ เจตเจพเจชเจธ เจเจพเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉเฉฐเจฆเฉ เจนเฉ เจ เจคเฉ เจเจฅเฉเจ เจเจฃเจจเจพ เจฎเฉเฉ เจธเจผเฉเจฐเฉ เจเจฐเจจเฉ เจชเฉเจเจฆเฉ เจนเฉเฅค
เจตเจฟเจเจธเจค เจธเจฟเจธเจเจฎ เจฆเจพ เจเจฐเจเฉเจเฉเจเจเจฐ
เจตเจฐเจคเฉ เจเจ เจนเจฟเฉฑเจธเฉ:
เจ เจชเจพเจเฉ เจเจพเจซเจเจพ เจเฉฑเจ เจตเฉฐเจกเจฟเจ เจชเจฌเจฒเจฟเจธเจผ-เจธเจฌเจธเจเฉเจฐเจพเจเจฌ เจฎเฉเจธเฉเจเจฟเฉฐเจ เจธเจฟเจธเจเจฎ เจนเฉเฅค เจเจซเจฒเจพเจเจจ เจ เจคเฉ เจเจจเจฒเจพเจเจจ เจธเฉเจจเฉเจนเฉ เจฆเฉ เจเจชเจค เจฒเจ เจขเฉเจเจตเจพเจเฅค เจกเฉเจเจพ เจฆเฉ เจจเฉเจเจธเจพเจจ เจจเฉเฉฐ เจฐเฉเจเจฃ เจฒเจ, เจเจพเจซเจเจพ เจธเฉเจจเฉเจนเจฟเจเจ เจจเฉเฉฐ เจกเจฟเจธเจ 'เจคเฉ เจธเจเฉเจฐ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ เจ เจคเฉ เจเจฒเฉฑเจธเจเจฐ เจฆเฉ เจ เฉฐเจฆเจฐ เจฆเฉเจนเจฐเจพเจเจ เจเจพเจเจฆเจพ เจนเฉเฅค เจเจพเจซเจเจพ เจธเจฟเจธเจเจฎ เจเจผเฉเจเฉเจชเจฐ เจธเจฟเฉฐเจเฉเจฐเฉเจจเจพเจเจเจผเฉเจธเจผเจจ เจธเฉเจตเจพ เจฆเฉ เจธเจฟเจเจฐ 'เจคเฉ เจฌเจฃเจพเจเจ เจเจฟเจ เจนเฉ;เจ เจชเจพเจเฉ เจธเจชเจพเจฐเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ - เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจกเฉเจเจพ เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจฒเจ เจธเจชเจพเจฐเจ เจเฉฐเจชเฉเจจเฉเจเจเฅค เจธเจชเจพเจฐเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจฎเฉเจกเฉเจเจฒ เจเฉฑเจ เจฎเจพเจเจเฉเจฐเฉ-เจฌเฉเจ เจเจฐเจเฉเจเฉเจเจเจฐ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจฌเจฃเจพเจเจ เจเจฟเจ เจนเฉ, เจเจฟเฉฑเจฅเฉ เจกเฉเจเจพ เจธเจเฉเจฐเฉเจฎ เจจเฉเฉฐ เจเฉเจเฉ เจกเฉเจเจพ เจชเฉเจเฉเจเจพเจ เจฆเฉ เจเฉฑเจ เจจเจฟเจฐเฉฐเจคเจฐ เจเฉเจฐเจฎ เจตเจเฉเจ เจตเจฟเจเจเจฟเจ เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเฉเฅค เจธเจชเจพเจฐเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจตเฉฑเจ-เจตเฉฑเจ เจธเจฐเฉเจคเจพเจ เจคเฉเจ เจกเฉเจเจพ เจฒเฉเจเจฆเจพ เจนเฉ เจ เจคเฉ เจเจธเจจเฉเฉฐ เจเฉเจเฉ เจชเฉเจเฉเจเจพเจ เจตเจฟเฉฑเจ เจเฉเฉเจฆเจพ เจนเฉเฅค เจจเจตเฉเจ เจชเฉเจเฉเจ เจจเจฟเจฏเจฎเจค เจ เฉฐเจคเจฐเจพเจฒเจพเจ 'เจคเฉ เจฌเจฃเจพเจ เจเจพเจเจฆเฉ เจนเจจเฅค เจนเจฐ เจตเจพเจฐ เจ เฉฐเจคเจฐเจพเจฒ เจฆเฉ เจธเจผเฉเจฐเฉเจเจค เจตเจฟเฉฑเจ, เจเฉฑเจ เจจเจตเจพเจ เจชเฉเจเฉเจ เจฌเจฃเจพเจเจ เจเจพเจเจฆเจพ เจนเฉ, เจ เจคเฉ เจเจธ เจ เฉฐเจคเจฐเจพเจฒ เจฆเฉเจฐเจพเจจ เจชเฉเจฐเจพเจชเจค เจเฉเจคเจพ เจเฉเจ เจตเฉ เจกเฉเจเจพ เจชเฉเจเฉเจ เจตเจฟเฉฑเจ เจธเจผเจพเจฎเจฒ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉเฅค เจ เฉฐเจคเจฐเจพเจฒ เจฆเฉ เจ เฉฐเจค 'เจคเฉ, เจชเฉเจเฉเจ เจฆเจพ เจตเจพเจงเจพ เจฐเฉเจ เจเจพเจเจฆเจพ เจนเฉ. เจ เฉฐเจคเจฐเจพเจฒ เจฆเจพ เจเจเจพเจฐ เจเฉฑเจ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจฆเฉเจเจฐเจพ เจจเจฟเจฐเจงเจพเจฐเจค เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ เจเจฟเจธเจจเฉเฉฐ เจฌเฉเจ เจ เฉฐเจคเจฐเจพเจฒ เจเจฟเจนเจพ เจเจพเจเจฆเจพ เจนเฉ;เจ เจชเจพเจเฉ เจธเจชเจพเจฐเจ SQL - เจธเจชเจพเจฐเจ เจซเฉฐเจเจธเจผเจจเจฒ เจชเฉเจฐเฉเจเจฐเจพเจฎเจฟเฉฐเจ เจจเจพเจฒ เจฐเจฟเจฒเฉเจธเจผเจจเจฒ เจชเฉเจฐเฉเจธเฉเจธเจฟเฉฐเจ เจจเฉเฉฐ เจเฉเฉเจฆเจพ เจนเฉเฅค เจธเจเฉเจฐเจเจเจฐเจก เจกเฉเจเจพ เจฆเจพ เจ เจฐเจฅ เจนเฉ เจเจน เจกเฉเจเจพ เจเจฟเจธเจฆเจพ เจเฉฑเจ เจธเจเฉเจฎเจพ เจนเฉ, เจญเจพเจต, เจธเจพเจฐเฉ เจฐเจฟเจเจพเจฐเจกเจพเจ เจฒเจ เจเฉเจคเจฐเจพเจ เจฆเจพ เจเฉฑเจ เจธเจฟเฉฐเจเจฒ เจธเฉเฉฑเจเฅค เจธเจชเจพเจฐเจ SQL เจเจ เจคเจฐเฉเจนเจพเจ เจฆเฉ เจขเจพเจเจเจพเจเจค เจกเฉเจเจพ เจธเจฐเฉเจคเจพเจ เจคเฉเจ เจเจจเจชเฉเจ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจเจฐเจฆเจพ เจนเฉ เจ เจคเฉ, เจธเจเฉเจฎเจพ เจเจพเจฃเจเจพเจฐเฉ เจฆเฉ เจเจชเจฒเจฌเจงเจคเจพ เจฒเจ เจงเฉฐเจจเจตเจพเจฆ, เจเจน เจเฉเจธเจผเจฒเจคเจพ เจจเจพเจฒ เจฐเจฟเจเจพเจฐเจกเจพเจ เจฆเฉ เจธเจฟเจฐเจซ เจฒเฉเฉเฉเจเจฆเฉ เจเฉเจคเจฐเจพเจ เจจเฉเฉฐ เจชเฉเจฐเจพเจชเจค เจเจฐ เจธเจเจฆเจพ เจนเฉ, เจ เจคเฉ เจกเจพเจเจพเจซเฉเจฐเฉเจฎ APIs เจตเฉ เจชเฉเจฐเจฆเจพเจจ เจเจฐเจฆเจพ เจนเฉ;AWS RDS เจเฉฑเจ เจฎเฉเจเจพเจฌเจฒเจคเจจ เจธเจธเจคเจพ เจเจฒเจพเจเจก-เจ เจงเจพเจฐเจฟเจค เจฐเจฟเจฒเฉเจธเจผเจจเจฒ เจกเฉเจเจพเจฌเฉเจธ, เจตเฉเฉฑเจฌ เจธเฉเจตเจพ เจนเฉ เจเฉ เจธเฉเฉฑเจเจ เฉฑเจช, เจธเฉฐเจเจพเจฒเจจ เจ เจคเฉ เจธเจเฉเจฒเจฟเฉฐเจ เจจเฉเฉฐ เจธเจฐเจฒ เจฌเจฃเจพเจเจเจฆเจพ เจนเฉ, เจ เจคเฉ เจธเจฟเฉฑเจงเฉ เจเจฎเจพเจเจผเจพเจจ เจฆเฉเจเจฐเจพ เจชเฉเจฐเจฌเฉฐเจงเจฟเจค เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉเฅค
เจเจพเจซเจเจพ เจธเจฐเจตเจฐ เจจเฉเฉฐ เจธเจฅเจพเจชเจฟเจค เจ เจคเฉ เจเจฒเจพเจเจฃเจพ
เจเจพเจซเจเจพ เจฆเฉ เจธเจฟเฉฑเจงเฉ เจตเจฐเจคเฉเจ เจเจฐเจจ เจคเฉเจ เจชเจนเจฟเจฒเจพเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจเจน เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ เจเจฟ เจคเฉเจนเจพเจกเฉ เจเฉเจฒ เจเจพเจตเจพ เจนเฉ, เจเจฟเจเจเจเจฟ... JVM เจเฉฐเจฎ เจฒเจ เจตเจฐเจคเจฟเจ เจเจพเจเจฆเจพ เจนเฉ:
sudo apt-get update
sudo apt-get install default-jre
java -version
เจเจพเจซเจเจพ เจฆเฉ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจ เจฒเจ เจเฉฑเจ เจจเจตเจพเจ เจเจชเจญเฉเจเจคเจพ เจฌเจฃเจพเจ:
sudo useradd kafka -m
sudo passwd kafka
sudo adduser kafka sudo
เจ เฉฑเจเฉ, เจ เจงเจฟเจเจพเจฐเจค เจ เจชเจพเจเฉ เจเจพเจซเจเจพ เจตเฉเจฌเจธเจพเจเจ เจคเฉเจ เจตเฉฐเจก เจจเฉเฉฐ เจกเจพเจเจจเจฒเฉเจก เจเจฐเฉ:
wget -P /YOUR_PATH "http://apache-mirror.rbc.ru/pub/apache/kafka/2.2.0/kafka_2.12-2.2.0.tgz"
เจกเจพเจเจจเจฒเฉเจก เจเฉเจคเฉ เจเจฐเจเจพเจเจต เจจเฉเฉฐ เจ เจจเจชเฉเจ เจเจฐเฉ:
tar -xvzf /YOUR_PATH/kafka_2.12-2.2.0.tgz
ln -s /YOUR_PATH/kafka_2.12-2.2.0 kafka
เจ เจเจฒเจพ เจเจฆเจฎ เจตเจฟเจเจฒเจชเจฟเจ เจนเฉเฅค เจคเฉฑเจฅ เจเจน เจนเฉ เจเจฟ เจกเจฟเจซเฉเจฒเจ เจธเฉเจเจฟเฉฐเจเจพเจ เจคเฉเจนเจพเจจเฉเฉฐ เจ เจชเจพเจเฉ เจเจพเจซเจเจพ เจฆเฉเจเจ เจธเจพเจฐเฉเจเจ เจตเจฟเจธเจผเฉเจธเจผเจคเจพเจตเจพเจ เจจเฉเฉฐ เจชเฉเจฐเฉ เจคเจฐเฉเจนเจพเจ เจตเจฐเจคเจฃ เจฆเฉ เจเจเจพเจเจผเจค เจจเจนเฉเจ เจฆเจฟเฉฐเจฆเฉเจเจ เจนเจจ. เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจเฉฑเจ เจตเจฟเจธเจผเจพ, เจธเจผเฉเจฐเฉเจฃเฉ, เจธเจฎเฉเจน เจจเฉเฉฐ เจฎเจฟเจเจพเจ เจเจฟเจธ เจตเจฟเฉฑเจ เจธเฉเจจเฉเจนเฉ เจชเฉเจฐเจเจพเจธเจผเจฟเจค เจเฉเจคเฉ เจเจพ เจธเจเจฆเฉ เจนเจจเฅค เจเจธเจจเฉเฉฐ เจฌเจฆเจฒเจฃ เจฒเจ, เจเจ เจธเฉฐเจฐเจเจจเจพ เจซเจพเจเจฒ เจจเฉเฉฐ เจธเฉฐเจชเจพเจฆเจฟเจค เจเจฐเฉเจ:
vim ~/kafka/config/server.properties
เจซเจพเจเจฒ เจฆเฉ เจ เฉฐเจค เจตเจฟเฉฑเจ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจจเฉเฉฐ เจธเจผเจพเจฎเจฒ เจเจฐเฉ:
delete.topic.enable = true
เจเจพเจซเจเจพ เจธเจฐเจตเจฐ เจธเจผเฉเจฐเฉ เจเจฐเจจ เจคเฉเจ เจชเจนเจฟเจฒเจพเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจเจผเฉเจเฉเจชเจฐ เจธเจฐเจตเจฐ เจธเจผเฉเจฐเฉ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ; เจ เจธเฉเจ เจธเจนเจพเจเจ เจธเจเฉเจฐเจฟเจชเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจพเจเจเฉ เจเฉ เจเจพเจซเจเจพ เจตเฉฐเจก เจฆเฉ เจจเจพเจฒ เจเจเจเจฆเฉ เจนเฉ:
Cd ~/kafka
bin/zookeeper-server-start.sh config/zookeeper.properties
ZooKeeper เจฆเฉ เจธเจซเจฒเจคเจพเจชเฉเจฐเจตเจ เจธเจผเฉเจฐเฉ เจนเฉเจฃ เจคเฉเจ เจฌเจพเจ เจฆ, เจเจพเจซเจเจพ เจธเจฐเจตเจฐ เจจเฉเฉฐ เจเฉฑเจ เจตเฉฑเจเจฐเฉ เจเจฐเจฎเฉเจจเจฒ เจตเจฟเฉฑเจ เจฒเจพเจเจ เจเจฐเฉ:
bin/kafka-server-start.sh config/server.properties
เจเจ เจเฉเจฐเจพเจเจเฉเจเจธเจผเจจ เจจเจพเจฎเจ เจเฉฑเจ เจจเจตเจพเจ เจตเจฟเจธเจผเจพ เจฌเจฃเจพเจเจ:
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 3 --topic transaction
เจเจฒเฉ เจเจน เจธเฉเจจเจฟเจธเจผเจเจฟเจค เจเจฐเฉเจ เจเจฟ เจญเจพเจเจพเจ เจ เจคเฉ เจชเฉเจฐเจคเฉเจเฉเจฐเจฟเจคเฉ เจฆเฉ เจฒเฉเฉเฉเจเจฆเฉ เจเจฟเจฃเจคเฉ เจตเจพเจฒเจพ เจตเจฟเจธเจผเจพ เจฌเจฃเจพเจเจ เจเจฟเจ เจนเฉ:
bin/kafka-topics.sh --describe --zookeeper localhost:2181
เจเจ เจจเจตเฉเจ เจฌเจฃเฉ เจตเจฟเจธเจผเฉ เจฒเจ เจเจคเจชเจพเจฆเจ เจ
เจคเฉ เจเจชเจคเจเจพเจฐ เจฆเฉ เจเจพเจเจ เจเจฐเจจ เจฆเฉ เจชเจฒเจพเจ เจจเฉเฉฐ เจเฉเจ เจฆเฉเจเจ. เจคเฉเจธเฉเจ เจธเฉเจจเฉเจนเฉ เจญเฉเจเจฃ เจ
เจคเฉ เจชเฉเจฐเจพเจชเจค เจเจฐเจจ เจฆเฉ เจเจพเจเจ เจเจฟเจตเฉเจ เจเจฐ เจธเจเจฆเฉ เจนเฉ เจเจธ เจฌเจพเจฐเฉ เจนเฉเจฐ เจตเฉเจฐเจตเฉ เจ
เจงเจฟเจเจพเจฐเจค เจฆเจธเจคเจพเจตเฉเจเจผเจพเจ เจตเจฟเฉฑเจ เจฒเจฟเจเฉ เจเจ เจนเจจ -
เจจเจฟเจฐเจฎเจพเจคเจพ เจฒเจฟเจเจฃเจพ
เจจเจฟเจฐเจฎเจพเจคเจพ เจฌเฉเจคเจฐเจคเฉเจฌ เจกเฉเจเจพ เจคเจฟเจเจฐ เจเจฐเฉเจเจพ - เจนเจฐ เจธเจเจฟเฉฐเจ เจตเจฟเฉฑเจ 100 เจธเฉเจจเฉเจนเฉเฅค เจฌเฉเจคเจฐเจคเฉเจฌ เจกเฉเจเจพ เจฆเฉเจเจฐเจพ เจธเจพเจกเจพ เจฎเจคเจฒเจฌ เจเฉฑเจ เจธเจผเจฌเจฆเจเฉเจธเจผ เจนเฉ เจเจฟเจธ เจตเจฟเฉฑเจ เจคเจฟเฉฐเจจ เจเฉเจคเจฐเจพเจ เจธเจผเจพเจฎเจฒ เจนเจจ:
- เจธเจผเจพเจเจพ - เจเฉเจฐเฉเจกเจฟเจ เจธเฉฐเจธเจฅเจพ เจฆเฉ เจตเจฟเจเจฐเฉ เจธเจฅเจพเจจ เจฆเจพ เจจเจพเจฎ;
- เจเจฐเฉฐเจธเฉ - เจฒเฉเจฃ-เจฆเฉเจฃ เจฆเฉ เจฎเฉเจฆเจฐเจพ;
- เจฎเจพเจคเจฐเจพ - เจฒเฉเจฃ-เจฆเฉเจฃ เจฆเฉ เจฐเจเจฎเฅค เจเฉเจเจฐ เจเจน เจฌเฉเจเจ เจฆเฉเจเจฐเจพ เจฎเฉเจฆเจฐเจพ เจฆเฉ เจเจฐเฉเจฆ เจนเฉ เจคเจพเจ เจฐเจเจฎ เจเฉฑเจ เจธเจเจพเจฐเจพเจคเจฎเจ เจธเฉฐเจเจฟเจ เจนเฉเจตเฉเจเฉ, เจ เจคเฉ เจเฉเจเจฐ เจเจน เจเฉฑเจ เจตเจฟเจเจฐเฉ เจนเฉ เจคเจพเจ เจเฉฑเจ เจจเจเจพเจฐเจพเจคเจฎเจ เจธเฉฐเจเจฟเจ เจนเฉเจตเฉเจเฉเฅค
เจจเจฟเจฐเจฎเจพเจคเจพ เจฒเจ เจเฉเจก เจเจธ เจคเจฐเฉเจนเจพเจ เจฆเจฟเจเจฆเจพ เจนเฉ:
from numpy.random import choice, randint
def get_random_value():
new_dict = {}
branch_list = ['Kazan', 'SPB', 'Novosibirsk', 'Surgut']
currency_list = ['RUB', 'USD', 'EUR', 'GBP']
new_dict['branch'] = choice(branch_list)
new_dict['currency'] = choice(currency_list)
new_dict['amount'] = randint(-100, 100)
return new_dict
เจ เฉฑเจเฉ, เจญเฉเจเจฃ เจตเจฟเจงเฉ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ, เจ เจธเฉเจ เจธเจฐเจตเจฐ เจจเฉเฉฐ เจเฉฑเจ เจธเฉเจจเฉเจนเจพ เจญเฉเจเจฆเฉ เจนเจพเจ, เจเจฟเจธ เจตเจฟเจธเจผเฉ เจฆเฉ เจธเจพเจจเฉเฉฐ เจฒเฉเฉ เจนเฉ, JSON เจซเจพเจฐเจฎเฉเจ เจตเจฟเฉฑเจ:
from kafka import KafkaProducer
producer = KafkaProducer(bootstrap_servers=['localhost:9092'],
value_serializer=lambda x:dumps(x).encode('utf-8'),
compression_type='gzip')
my_topic = 'transaction'
data = get_random_value()
try:
future = producer.send(topic = my_topic, value = data)
record_metadata = future.get(timeout=10)
print('--> The message has been sent to a topic:
{}, partition: {}, offset: {}'
.format(record_metadata.topic,
record_metadata.partition,
record_metadata.offset ))
except Exception as e:
print('--> It seems an Error occurred: {}'.format(e))
finally:
producer.flush()
เจธเจเฉเจฐเจฟเจชเจ เจเจฒเจพเจเจเจฆเฉ เจธเจฎเฉเจ, เจธเจพเจจเฉเฉฐ เจเจฐเจฎเฉเจจเจฒ เจตเจฟเฉฑเจ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจธเฉเจจเฉเจนเฉ เจชเฉเจฐเจพเจชเจค เจนเฉเฉฐเจฆเฉ เจนเจจ:
เจเจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉ เจเจฟ เจธเจญ เจเฉเจ เจเจธเฉ เจคเจฐเฉเจนเจพเจ เจเฉฐเจฎ เจเจฐเจฆเจพ เจนเฉ เจเจฟเจตเฉเจ เจ
เจธเฉเจ เจเจพเจนเฉเฉฐเจฆเฉ เจนเจพเจ - เจจเจฟเจฐเจฎเจพเจคเจพ เจธเจพเจจเฉเฉฐ เจฒเฉเฉเฉเจเจฆเฉ เจตเจฟเจธเจผเฉ 'เจคเฉ เจธเฉฐเจฆเฉเจธเจผ เจฌเจฃเจพเจเจเจฆเจพ เจนเฉ เจ
เจคเฉ เจญเฉเจเจฆเจพ เจนเฉเฅค
เจ
เจเจฒเจพ เจเจฆเจฎ เจธเจชเจพเจฐเจ เจจเฉเฉฐ เจธเจฅเจพเจชเจฟเจค เจเจฐเจจเจพ เจ
เจคเฉ เจเจธ เจธเฉฐเจฆเฉเจธเจผ เจธเจเฉเจฐเฉเจฎ เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเจฐเจจเจพ เจนเฉเฅค
เจ เจชเจพเจเฉ เจธเจชเจพเจฐเจ เจธเจฅเจพเจชเจค เจเจฐเจจเจพ
เจ เจชเจพเจเฉ เจธเจชเจพเจฐเจ เจเฉฑเจ เจฏเฉเจจเฉเจตเจฐเจธเจฒ เจ เจคเฉ เจเฉฑเจ-เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจตเจพเจฒเจพ เจเจฒเฉฑเจธเจเจฐ เจเฉฐเจชเจฟเจเจเจฟเฉฐเจ เจชเจฒเฉเจเจซเจพเจฐเจฎ เจนเฉเฅค
เจธเจชเจพเจฐเจ เจเฉฐเจเจฐเจเจเจเจฟเจต เจชเฉเฉฑเจเจเจฟเฉฑเจเจพเจ เจ เจคเฉ เจธเจเฉเจฐเฉเจฎ เจชเฉเจฐเฉเจธเฉเจธเจฟเฉฐเจ เจธเจฎเฉเจค เจเจฃเจจเจพ เจเจฟเจธเจฎเจพเจ เจฆเฉ เจเฉฑเจ เจตเจฟเจธเจผเจพเจฒ เจธเจผเฉเจฐเฉเจฃเฉ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจเจฐเจฆเฉ เจนเฉเจ MapReduce เจฎเจพเจกเจฒ เจฆเฉ เจชเฉเจฐเจธเจฟเฉฑเจง เจฒเจพเจเฉเจเจฐเจจ เจจเจพเจฒเฉเจ เจฌเจฟเจนเจคเจฐ เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจเจฐเจฆเจพ เจนเฉเฅค เจตเฉฑเจกเฉ เจฎเจพเจคเจฐเจพ เจตเจฟเฉฑเจ เจกเฉเจเจพ เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเจฐเจจ เจตเฉเจฒเฉ เจธเจชเฉเจก เจเฉฑเจ เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจฃ เจญเฉเจฎเจฟเจเจพ เจจเจฟเจญเจพเจเจเจฆเฉ เจนเฉ, เจเจฟเจเจเจเจฟ เจเจน เจเจน เจเจคเฉ เจนเฉ เจเฉ เจคเฉเจนเจพเจจเฉเฉฐ เจฎเจฟเฉฐเจเจพเจ เจเจพเจ เจเฉฐเจเจฟเจเจ เจฆเฉ เจเจกเฉเจ เจเฉเจคเฉ เจฌเจฟเจจเจพเจ เจเฉฐเจเจฐเจเจเจเจฟเจต เจคเจฐเฉเจเฉ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจ เจฆเฉ เจเจเจฟเจ เจฆเจฟเฉฐเจฆเฉ เจนเฉเฅค เจธเจชเจพเจฐเจ เจฆเฉ เจธเจญ เจคเฉเจ เจตเฉฑเจกเฉ เจคเจพเจเจค เจเฉ เจเจธเจจเฉเฉฐ เจเฉฐเจจเฉ เจคเฉเจเจผเฉ เจจเจพเจฒ เจฌเจฃเจพเจเจเจฆเฉ เจนเฉ, เจเจน เจเจจ-เจฎเฉเจฎเฉเจฐเฉ เจเจฃเจจเจพ เจเจฐเจจ เจฆเฉ เจฏเฉเจเจคเจพ เจนเฉเฅค
เจเจน เจซเจฐเฉเจฎเจตเจฐเจ Scala เจตเจฟเฉฑเจ เจฒเจฟเจเจฟเจ เจเจฟเจ เจนเฉ, เจเจธ เจฒเจ เจคเฉเจนเจพเจจเฉเฉฐ เจเจธเจจเฉเฉฐ เจชเจนเจฟเจฒเจพเจ เจธเจฅเจพเจชเจฟเจค เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ:
sudo apt-get install scala
เจ เจงเจฟเจเจพเจฐเจค เจตเฉเฉฑเจฌเจธเจพเจเจ เจคเฉเจ เจธเจชเจพเจฐเจ เจตเฉฐเจก เจจเฉเฉฐ เจกเจพเจเจจเจฒเฉเจก เจเจฐเฉ:
wget "http://mirror.linux-ia64.org/apache/spark/spark-2.4.2/spark-2.4.2-bin-hadoop2.7.tgz"
เจเจฐเจเจพเจเจต เจจเฉเฉฐ เจ เจจเจชเฉเจ เจเจฐเฉ:
sudo tar xvf spark-2.4.2/spark-2.4.2-bin-hadoop2.7.tgz -C /usr/local/spark
เจฌเฉเจธเจผ เจซเจพเจเจฒ เจตเจฟเฉฑเจ เจธเจชเจพเจฐเจ เจฆเจพ เจฎเจพเจฐเจ เจเฉเฉเฉ:
vim ~/.bashrc
เจธเฉฐเจชเจพเจฆเจ เจฆเฉเจเจฐเจพ เจนเฉเจ เจฒเจฟเจเฉเจเจ เจฒเจพเจเจจเจพเจ เจเฉเฉเฉ:
SPARK_HOME=/usr/local/spark
export PATH=$SPARK_HOME/bin:$PATH
bashrc เจตเจฟเฉฑเจ เจฌเจฆเจฒเจพเจ เจเจฐเจจ เจคเฉเจ เจฌเจพเจ เจฆ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจเจฎเจพเจเจก เจเจฒเจพเจ:
source ~/.bashrc
AWS PostgreSQL เจจเฉเฉฐ เจคเฉเจจเจพเจค เจเฉเจคเจพ เจเจพ เจฐเจฟเจนเจพ เจนเฉ
เจเฉ เจฌเจเจฟเจ เจนเฉ เจเจน เจกเฉเจเจพเจฌเฉเจธ เจจเฉเฉฐ เจคเฉเจจเจพเจค เจเจฐเจจเจพ เจนเฉ เจเจฟเจธ เจตเจฟเฉฑเจ เจ เจธเฉเจ เจธเจเฉเจฐเฉเจฎเจพเจ เจคเฉเจ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเฉเจคเฉ เจเจพเจฃเจเจพเจฐเฉ เจจเฉเฉฐ เจ เจชเจฒเฉเจก เจเจฐเจพเจเจเฉเฅค เจเจธเจฆเฉ เจฒเจ เจ เจธเฉเจ AWS RDS เจธเฉเจตเจพ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจพเจเจเฉเฅค
AWS เจเฉฐเจธเฉเจฒ -> AWS RDS -> เจกเจพเจเจพเจฌเฉเจธ -> เจกเจพเจเจพเจฌเฉเจธ เจฌเจฃเจพเจ 'เจคเฉ เจเจพเจ:
PostgreSQL เจเฉเจฃเฉ เจ
เจคเฉ เจ
เฉฑเจเฉ เจเจฒเจฟเฉฑเจ เจเจฐเฉ:
เจเจฟเจเจเจเจฟ เจเจน เจเจฆเจพเจนเจฐเจจ เจธเจฟเจฐเจซเจผ เจตเจฟเจฆเจฟเจ
เจ เจเจฆเฉเจธเจผเจพเจ เจฒเจ เจนเฉ; เจ
เจธเฉเจ "เจเฉฑเจเฉ-เจเฉฑเจ" (เจฎเฉเจซเจผเจค เจเฉเจ
เจฐ) เจเฉฑเจ เจฎเฉเจซเจผเจค เจธเจฐเจตเจฐ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจพเจเจเฉ:
เจ
เฉฑเจเฉ, เจ
เจธเฉเจ เจซเฉเจฐเฉ เจเฉเจ
เจฐ เจฌเจฒเจพเจ เจตเจฟเฉฑเจ เจเฉฑเจ เจเจฟเจ เจฒเจเจพ เจฆเจฟเฉฐเจฆเฉ เจนเจพเจ, เจ
เจคเฉ เจเจธ เจคเฉเจ เจฌเจพเจ
เจฆ เจธเจพเจจเฉเฉฐ เจเจชเจฃเฉ เจเจช เจนเฉ t2.micro เจเจฒเจพเจธ เจฆเฉ เจเฉฑเจ เจเจฆเจพเจนเจฐเจฃ เจชเฉเจธเจผ เจเฉเจคเฉ เจเจพเจตเฉเจเฉ - เจนเจพเจฒเจพเจเจเจฟ เจเจน เจเจฎเจเจผเฉเจฐ เจนเฉ, เจเจน เจธเจพเจกเฉ เจเฉฐเจฎ เจฒเจ เจฎเฉเจซเจค เจ
เจคเฉ เจเจพเจซเจผเฉ เจขเฉเจเจตเจพเจ เจนเฉ:
เจ
เฉฑเจเฉ เจฌเจนเฉเจค เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจเฉเจเจผเจพเจ เจเจเจเจฆเฉเจเจ เจนเจจ: เจกเฉเจเจพเจฌเฉเจธ เจเจฆเจพเจนเจฐเจฃ เจฆเจพ เจจเจพเจฎ, เจฎเจพเจธเจเจฐ เจเจชเจญเฉเจเจคเจพ เจฆเจพ เจจเจพเจฎ เจ
เจคเฉ เจเจธเจฆเจพ เจชเจพเจธเจตเจฐเจกเฅค เจเจ เจเจฆเจพเจนเจฐเจฃ เจจเฉเฉฐ เจจเจพเจฎ เจฆเฉเจเจ: myHabrTest, เจฎเจพเจธเจเจฐ เจเจชเจญเฉเจเจคเจพ: habr, เจชเจพเจธเจตเจฐเจก: habr12345 เจ
เจคเฉ เจ
เฉฑเจเฉ เจฌเจเจจ 'เจคเฉ เจเจฒเจฟเฉฑเจ เจเจฐเฉ:
เจ เจเจฒเฉ เจชเฉฐเจจเฉ 'เจคเฉ เจธเจพเจกเฉ เจกเฉเจเจพเจฌเฉเจธ เจธเจฐเจตเจฐ เจฆเฉ เจฌเจพเจนเจฐเฉเจ เจชเจนเฉเฉฐเจเจฏเฉเจเจคเจพ (เจเจจเจคเจ เจชเจนเฉเฉฐเจเจฏเฉเจเจคเจพ) เจ เจคเฉ เจชเฉเจฐเจ เจเจชเจฒเจฌเจงเจคเจพ เจฒเจ เจเจผเจฟเฉฐเจฎเฉเจตเจพเจฐ เจฎเจพเจชเจฆเฉฐเจก เจนเจจ:
เจเจฒเฉ VPC เจธเฉเจฐเฉฑเจเจฟเจ เจธเจฎเฉเจน เจฒเจ เจเฉฑเจ เจจเจตเฉเจ เจธเฉเจเจฟเฉฐเจ เจฌเจฃเจพเจเจ, เจเฉ เจชเฉเจฐเจ 5432 (PostgreSQL) เจฐเจพเจนเฉเจ เจธเจพเจกเฉ เจกเฉเจเจพเจฌเฉเจธ เจธเจฐเจตเจฐ เจคเฉฑเจ เจฌเจพเจนเจฐเฉ เจชเจนเฉเฉฐเจ เจฆเฉ เจเจเจฟเจ เจฆเฉเจตเฉเจเฉเฅค
เจเจฒเฉ เจเฉฑเจ เจตเฉฑเจเจฐเฉ เจฌเฉเจฐเจพเจเจเจผเจฐ เจตเจฟเฉฐเจกเฉ เจตเจฟเฉฑเจ AWS เจเฉฐเจธเฉเจฒ เจคเฉ VPC เจกเฉเจธเจผเจฌเฉเจฐเจก -> เจธเฉเจฐเฉฑเจเจฟเจ เจธเจฎเฉเจน -> เจธเฉเจฐเฉฑเจเจฟเจ เจธเจฎเฉเจน เจธเฉเจเจธเจผเจจ เจฌเจฃเจพเจ:
เจ
เจธเฉเจ เจธเฉเจฐเฉฑเจเจฟเจ เจธเจฎเฉเจน เจฒเจ เจจเจพเจฎ เจธเฉเฉฑเจ เจเฉเจคเจพ เจนเฉ - PostgreSQL, เจเฉฑเจ เจตเฉเจฐเจตเจพ, เจเจน เจฆเจฐเจธเจพเจเจเจฆเจพ เจนเฉ เจเจฟ เจเจน เจธเจฎเฉเจน เจเจฟเจธ VPC เจจเจพเจฒ เจธเฉฐเจฌเฉฐเจงเจฟเจค เจนเฉเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ เจ
เจคเฉ เจฌเจฃเจพเจ เจฌเจเจจ 'เจคเฉ เจเจฒเจฟเฉฑเจ เจเจฐเฉ:
เจจเจตเฉเจ เจฌเจฃเจพเจ เจเจ เจธเจฎเฉเจน เจฒเจ เจชเฉเจฐเจ 5432 เจฒเจ เจเจจเจฌเจพเจเจเจก เจจเจฟเจฏเจฎเจพเจ เจจเฉเฉฐ เจญเจฐเฉ, เจเจฟเจตเฉเจ เจเจฟ เจนเฉเจ เจพเจ เจคเจธเจตเฉเจฐ เจตเจฟเฉฑเจ เจฆเจฟเจเจพเจเจ เจเจฟเจ เจนเฉเฅค เจคเฉเจธเฉเจ เจชเฉเจฐเจ เจจเฉเฉฐ เจนเฉฑเจฅเฉเจ เจจเจฟเจฐเจงเจพเจฐเจฟเจค เจจเจนเฉเจ เจเจฐ เจธเจเจฆเฉ เจนเฉ, เจชเจฐ เจเจพเจเจช เจกเฉเจฐเฉเจช-เจกเจพเจเจจ เจธเฉเจเฉ เจตเจฟเฉฑเจเฉเจ PostgreSQL เจฆเฉ เจเฉเจฃ เจเจฐเฉเฅค
เจธเจเจคเฉ เจจเจพเจฒ เจฌเฉเจฒเจฆเฉ เจนเฉเจ, เจฎเฉเฉฑเจฒ ::/0 เจฆเจพ เจ
เจฐเจฅ เจนเฉ เจชเฉเจฐเฉ เจฆเฉเจจเฉเจ เจคเฉเจ เจธเจฐเจตเจฐ 'เจคเฉ เจเจเจฃ เจตเจพเจฒเฉ เจเฉเจฐเฉเจซเจฟเจ เจฆเฉ เจเจชเจฒเจฌเจงเจคเจพ, เจเฉ เจเจฟ เจชเฉเจฐเจฎเจพเจฃเจฟเจ โโเจคเฉเจฐ 'เจคเฉ เจชเฉเจฐเฉ เจคเจฐเฉเจนเจพเจ เจธเจนเฉ เจจเจนเฉเจ เจนเฉ, เจชเจฐ เจเจฆเจพเจนเจฐเจฃ เจฆเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจจ เจฒเจ, เจเจ เจเจชเจฃเฉ เจเจช เจจเฉเฉฐ เจเจธ เจชเจนเฉเฉฐเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจ เจฆเฉ เจเจเจพเจเจผเจค เจฆเฉเจเจ:
เจ
เจธเฉเจ เจฌเฉเจฐเจพเจเจเจผเจฐ เจชเฉฐเจจเฉ 'เจคเฉ เจตเจพเจชเจธ เจเจเจเจฆเฉ เจนเจพเจ, เจเจฟเฉฑเจฅเฉ เจธเจพเจกเฉ เจเฉเจฒ "เจเจกเจตเจพเจเจธเจก เจธเฉเจเจฟเฉฐเจเจเจผ เจเฉเจเจซเจฟเจเจฐ เจเจฐเฉ" เจเฉเฉฑเจฒเฉ เจนเฉ เจ
เจคเฉ VPC เจธเฉเจฐเฉฑเจเจฟเจ เจธเจฎเฉเจน เจญเจพเจ เจตเจฟเฉฑเจ เจเฉเจฃเฉ -> เจฎเฉเจเฉเจฆเจพ VPC เจธเฉเจฐเฉฑเจเจฟเจ เจธเจฎเฉเจน เจเฉเจฃเฉ -> PostgreSQL:
เจ เฉฑเจเฉ, เจกเฉเจเจพเจฌเฉเจธ เจตเจฟเจเจฒเจชเจพเจ เจตเจฟเฉฑเจ -> เจกเฉเจเจพเจฌเฉเจธ เจจเจพเจฎ -> เจจเจพเจฎ เจธเฉเฉฑเจ เจเจฐเฉ - habrDB.
เจ
เจธเฉเจ เจกเจฟเจซเฉเจฒเจ เจคเฉเจฐ 'เจคเฉ, เจฌเฉเจเจ
เฉฑเจช (เจฌเฉเจเจ
เฉฑเจช เจงเจพเจฐเจจ เจฆเฉ เจฎเจฟเจเจฆ - 0 เจฆเจฟเจจ), เจจเจฟเจเจฐเจพเจจเฉ เจ
เจคเฉ เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจเจจเจธเจพเจเจเจธ เจจเฉเฉฐ เจ
เจฏเฉเจ เจเจฐเจจ เจฆเฉ เจ
เจชเจตเจพเจฆ เจฆเฉ เจจเจพเจฒ, เจฌเจพเจเฉ เจฎเจพเจชเจฆเฉฐเจกเจพเจ เจจเฉเฉฐ เจเฉฑเจก เจธเจเจฆเฉ เจนเจพเจเฅค เจฌเจเจจ 'เจคเฉ เจเจฒเจฟเฉฑเจ เจเจฐเฉ เจกเจพเจเจพเจฌเฉเจธ เจฌเจฃเจพเจ:
เจฅเจฐเจฟเฉฑเจก เจนเฉเจเจกเจฒเจฐ
เจ เฉฐเจคเจฎ เจชเฉเจพเจ เจเฉฑเจ เจธเจชเจพเจฐเจ เจเฉเจฌ เจฆเจพ เจตเจฟเจเจพเจธ เจนเฉเจตเฉเจเจพ, เจเฉ เจนเจฐ เจฆเฉ เจธเจเจฟเฉฐเจเจพเจ เจตเจฟเฉฑเจ เจเจพเจซเจเจพ เจคเฉเจ เจเจเจฃ เจตเจพเจฒเฉ เจจเจตเฉเจ เจกเฉเจเจพ เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเจฐเฉเจเจพ เจ เจคเฉ เจจเจคเฉเจเจพ เจกเฉเจเจพเจฌเฉเจธ เจตเจฟเฉฑเจ เจฆเจพเจเจฒ เจเจฐเฉเจเจพเฅค
เจเจฟเจตเฉเจ เจเจฟ เจเฉฑเจชเจฐ เจจเฉเจ เจเฉเจคเจพ เจเจฟเจ เจนเฉ, เจธเจชเจพเจฐเจเจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจตเจฟเฉฑเจ เจเฉเจเจชเฉเจเจเฉฐเจ เจเฉฑเจ เจฎเฉเฉฑเจ เจตเจฟเจงเฉ เจนเฉ เจเจฟเจธเจจเฉเฉฐ เจจเฉเจเจธ เจธเจนเจฟเจฃเจธเจผเฉเจฒเจคเจพ เจจเฉเฉฐ เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจฃ เจฒเจ เจเฉเจเจซเจฟเจเจฐ เจเฉเจคเจพ เจเจพเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉเฅค เจ เจธเฉเจ เจเฉเจเจชเฉเจเจเฉฐเจเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจพเจเจเฉ เจ เจคเฉ, เจเฉเจเจฐ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจ เจธเจซเจฒ เจนเฉ เจเจพเจเจฆเฉ เจนเฉ, เจคเจพเจ เจธเจชเจพเจฐเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจฎเฉเจกเฉเจเจฒ เจจเฉเฉฐ เจธเจฟเจฐเจซเจผ เจเจเจฐเฉ เจเฉเจเจชเฉเจเจเฉฐเจ 'เจคเฉ เจตเจพเจชเจธ เจเจพเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉเจตเฉเจเฉ เจ เจคเฉ เจเฉเจเจเฉ เจนเฉเจ เจกเฉเจเจพ เจจเฉเฉฐ เจฎเฉเฉ เจชเฉเจฐเจพเจชเจค เจเจฐเจจ เจฒเจ เจเจธ เจคเฉเจ เจเจฃเจจเจพ เจฎเฉเฉ เจธเจผเฉเจฐเฉ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเจตเฉเจเฉเฅค
เจเฉเจเจชเฉเจเจเฉฐเจเจฟเฉฐเจ เจจเฉเฉฐ เจเฉฑเจ เจจเฉเจเจธ-เจธเจนเจฟเจฃเจธเจผเฉเจฒ, เจญเจฐเฉเจธเฉเจฏเฉเจ เจซเจพเจเจฒ เจธเจฟเจธเจเจฎ (เจเจฟเจตเฉเจ เจเจฟ HDFS, S3, เจเจฆเจฟ) เจเฉฑเจคเฉ เจเฉฑเจ เจกเจพเจเจฐเฉเจเจเจฐเฉ เจธเฉเจ เจเจฐเจเฉ เจธเจฎเจฐเฉฑเจฅ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉ เจเจฟเจธ เจตเจฟเฉฑเจ เจเฉเฉฑเจเจชเฉเจเจเฉฐเจ เจเจพเจฃเจเจพเจฐเฉ เจธเจเฉเจฐ เจเฉเจคเฉ เจเจพเจตเฉเจเฉเฅค เจเจน เจตเจฐเจค เจเฉ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ, เจเจฆเจพเจนเจฐเจจ เจฒเจ:
streamingContext.checkpoint(checkpointDirectory)
เจธเจพเจกเฉ เจเจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจ, เจ เจธเฉเจ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจชเจนเฉเฉฐเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจพเจเจเฉ, เจ เจฐเจฅเจพเจค, เจเฉเจเจฐ เจเฉเฉฑเจเจชเฉเจเจเฉฐเจ เจกเจพเจเจฐเฉเจเจเจฐเฉ เจฎเฉเจเฉเจฆ เจนเฉ, เจคเจพเจ เจธเฉฐเจฆเจฐเจญ เจจเฉเฉฐ เจเฉเฉฑเจเจชเฉเจเจเฉฐเจ เจกเฉเจเจพ เจคเฉเจ เจฆเฉเจฌเจพเจฐเจพ เจฌเจฃเจพเจเจ เจเจพเจตเฉเจเจพเฅค เจเฉเจเจฐ เจกเจพเจเจฐเฉเจเจเจฐเฉ เจฎเฉเจเฉเจฆ เจจเจนเฉเจ เจนเฉ (เจเจฟเจตเฉเจ เจเจฟ เจชเจนเจฟเจฒเฉ เจตเจพเจฐ เจเจฒเจพเจเจ เจเจฟเจ), เจคเจพเจ เจเฉฑเจ เจจเจตเจพเจ เจธเฉฐเจฆเจฐเจญ เจฌเจฃเจพเจเจฃ เจ เจคเฉ DStreams เจจเฉเฉฐ เจเฉเจเจซเจฟเจเจฐ เจเจฐเจจ เจฒเจ functionToCreateContext เจจเฉเฉฐ เจฌเฉเจฒเจพเจเจ เจเจพเจเจฆเจพ เจนเฉ:
from pyspark.streaming import StreamingContext
context = StreamingContext.getOrCreate(checkpointDirectory, functionToCreateContext)
เจ เจธเฉเจ KafkaUtils เจฒเจพเจเจฌเฉเจฐเฉเจฐเฉ เจฆเฉ createDirectStream เจตเจฟเจงเฉ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ "เจเฉเจฐเจพเจเจเฉเจเจธเจผเจจ" เจตเจฟเจธเจผเฉ เจจเจพเจฒ เจเฉเฉเจจ เจฒเจ เจเฉฑเจ เจกเจพเจเจฐเฉเจเจเจธเจเฉเจฐเฉเจฎ เจเจฌเจเฉเจเจ เจฌเจฃเจพเจเจเจฆเฉ เจนเจพเจ:
from pyspark.streaming.kafka import KafkaUtils
sc = SparkContext(conf=conf)
ssc = StreamingContext(sc, 2)
broker_list = 'localhost:9092'
topic = 'transaction'
directKafkaStream = KafkaUtils.createDirectStream(ssc,
[topic],
{"metadata.broker.list": broker_list})
JSON เจซเจพเจฐเจฎเฉเจ เจตเจฟเฉฑเจ เจเจเจฃ เจตเจพเจฒเฉ เจกเฉเจเจพ เจจเฉเฉฐ เจชเจพเจฐเจธ เจเจฐเจจเจพ:
rowRdd = rdd.map(lambda w: Row(branch=w['branch'],
currency=w['currency'],
amount=w['amount']))
testDataFrame = spark.createDataFrame(rowRdd)
testDataFrame.createOrReplaceTempView("treasury_stream")
เจธเจชเจพเจฐเจ SQL เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ, เจ เจธเฉเจ เจเฉฑเจ เจธเจงเจพเจฐเจจ เจเจฐเฉเฉฑเจชเจฟเฉฐเจ เจเจฐเจฆเฉ เจนเจพเจ เจ เจคเฉ เจจเจคเฉเจเจพ เจเฉฐเจธเฉเจฒ เจตเจฟเฉฑเจ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจเจฐเจฆเฉ เจนเจพเจ:
select
from_unixtime(unix_timestamp()) as curr_time,
t.branch as branch_name,
t.currency as currency_code,
sum(amount) as batch_value
from treasury_stream t
group by
t.branch,
t.currency
เจชเฉเฉฑเจเจเจฟเฉฑเจ เจเฉเจเจธเจ เจจเฉเฉฐ เจชเฉเจฐเจพเจชเจค เจเจฐเจจเจพ เจ เจคเฉ เจเจธเจจเฉเฉฐ เจธเจชเจพเจฐเจ SQL เจฆเฉเจเจฐเจพ เจเจฒเจพเจเจฃเจพ:
sql_query = get_sql_query()
testResultDataFrame = spark.sql(sql_query)
testResultDataFrame.show(n=5)
เจ เจคเฉ เจซเจฟเจฐ เจ เจธเฉเจ AWS RDS เจตเจฟเฉฑเจ เจเฉฑเจ เจธเจพเจฐเจฃเฉ เจตเจฟเฉฑเจ เจจเจคเฉเจเฉ เจตเจเฉเจ เจเจเฉฑเจ เฉ เจเฉเจคเฉ เจกเฉเจเจพ เจจเฉเฉฐ เจธเฉเจฐเฉฑเจเจฟเจ เจค เจเจฐเจฆเฉ เจนเจพเจเฅค เจเฉฑเจ เจกเฉเจเจพเจฌเฉเจธ เจเฉเจฌเจฒ เจตเจฟเฉฑเจ เจเจเจฐเฉเจเฉเจธเจผเจจ เจจเจคเฉเจเจฟเจเจ เจจเฉเฉฐ เจธเฉเจฐเฉฑเจเจฟเจ เจค เจเจฐเจจ เจฒเจ, เจ เจธเฉเจ เจกเฉเจเจพเจซเฉเจฐเฉเจฎ เจเจฌเจเฉเจเจ เจฆเฉ เจฒเจฟเจเจฃ เจตเจฟเจงเฉ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจพเจเจเฉ:
testResultDataFrame.write
.format("jdbc")
.mode("append")
.option("driver", 'org.postgresql.Driver')
.option("url","jdbc:postgresql://myhabrtest.ciny8bykwxeg.us-east-1.rds.amazonaws.com:5432/habrDB")
.option("dbtable", "transaction_flow")
.option("user", "habr")
.option("password", "habr12345")
.save()
AWS RDS เจจเจพเจฒ เจเฉเจจเฉเจเจธเจผเจจ เจธเจฅเจพเจชเจค เจเจฐเจจ เจฌเจพเจฐเฉ เจเฉเจ เจธเจผเจฌเจฆเฅค เจ เจธเฉเจ "AWS PostgreSQL เจฆเฉ เจคเฉเจจเจพเจคเฉ" เจชเฉเจพเจ 'เจคเฉ เจเจธเจฆเฉ เจฒเจ เจเจชเจญเฉเจเจคเจพ เจ เจคเฉ เจชเจพเจธเจตเจฐเจก เจฌเจฃเจพเจเจ เจนเฉเฅค เจคเฉเจนเจพเจจเฉเฉฐ เจกเฉเจเจพเจฌเฉเจธ เจธเจฐเจตเจฐ url เจฆเฉ เจคเฉเจฐ 'เจคเฉ เจเจเจกเจชเฉเจเจเฉฐเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจเฉ เจเจพเจนเฉเจฆเฉ เจนเฉ, เจเฉ เจเจจเฉเจเจเฉเจตเจฟเจเฉ เจ เจคเฉ เจธเฉเจฐเฉฑเจเจฟเจ เจธเฉเจเจธเจผเจจ เจตเจฟเฉฑเจ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจนเฉเฉฐเจฆเจพ เจนเฉ:
เจธเจชเจพเจฐเจ เจ เจคเฉ เจเจพเจซเจเจพ เจจเฉเฉฐ เจธเจนเฉ เจขเฉฐเจ เจจเจพเจฒ เจเฉเฉเจจ เจฒเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจเจฐเจเฉเจซเฉเจเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจธเจฎเจพเจฐเจ-เจธเจฌเจฎเจฟเจ เจฐเจพเจนเฉเจ เจเฉฐเจฎ เจเจฒเจพเจเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ เจธเจชเจพเจฐเจ-เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ-เจเจพเจซเจเจพ-0-8_2.11. เจเจธ เจคเฉเจ เจเจฒเจพเจตเจพ, เจ เจธเฉเจ PostgreSQL เจกเฉเจเจพเจฌเฉเจธ เจจเจพเจฒ เจเฉฐเจเจฐเฉเจเจ เจเจฐเจจ เจฒเจ เจเฉฑเจ เจเจฐเจเฉเจซเฉเจเจ เจฆเฉ เจตเจฐเจคเฉเจ เจตเฉ เจเจฐเจพเจเจเฉ; เจ เจธเฉเจ เจเจนเจจเจพเจ เจจเฉเฉฐ --packages เจฐเจพเจนเฉเจ เจเฉเจฐเจพเจเจธเจซเจฐ เจเจฐเจพเจเจเฉเฅค
เจธเจเฉเจฐเจฟเจชเจ เจฆเฉ เจฒเจเจเจคเจพ เจฒเจ, เจ เจธเฉเจ เจเจจเจชเฉเจ เจชเฉเจฐเจพเจฎเฉเจเจฐเจพเจ เจฆเฉ เจฐเฉเจช เจตเจฟเฉฑเจ เจธเฉเจจเฉเจนเจพ เจธเจฐเจตเจฐ เจฆเจพ เจจเจพเจฎ เจ เจคเฉ เจเจน เจตเจฟเจธเจผเจพ เจตเฉ เจธเจผเจพเจฎเจฒ เจเจฐเจพเจเจเฉ เจเจฟเจธ เจคเฉเจ เจ เจธเฉเจ เจกเฉเจเจพ เจชเฉเจฐเจพเจชเจค เจเจฐเจจเจพ เจเจพเจนเฉเฉฐเจฆเฉ เจนเจพเจเฅค
เจเจธ เจฒเจ, เจเจน เจธเจฟเจธเจเจฎ เจฆเฉ เจเจพเจฐเจเจเฉเจธเจผเจฒเจคเจพ เจจเฉเฉฐ เจฒเจพเจเจ เจเจฐเจจ เจ เจคเฉ เจเจพเจเจเจฃ เจฆเจพ เจธเจฎเจพเจ เจนเฉ:
spark-submit
--packages org.apache.spark:spark-streaming-kafka-0-8_2.11:2.0.2,
org.postgresql:postgresql:9.4.1207
spark_job.py localhost:9092 transaction
เจธเจญ เจเฉเจ เจเฉฐเจฎ เจเฉเจคเจพ! เจเจฟเจตเฉเจ เจเจฟ เจคเฉเจธเฉเจ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจคเจธเจตเฉเจฐ เจตเจฟเฉฑเจ เจฆเฉเจ เจธเจเจฆเฉ เจนเฉ, เจเจฆเฉเจ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจเฉฑเจฒ เจฐเจนเฉ เจนเฉ, เจจเจตเฉเจ เจเจเจฐเฉเจเฉเจธเจผเจจ เจจเจคเฉเจเฉ เจนเจฐ 2 เจธเจเจฟเฉฐเจเจพเจ เจตเจฟเฉฑเจ เจเจเจเจชเฉเฉฑเจ เจนเฉเฉฐเจฆเฉ เจนเจจ, เจเจฟเจเจเจเจฟ เจเจฆเฉเจ เจ เจธเฉเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจเฉฐเจเฉเจเจธเจ เจเจฌเจเฉเจเจ เจฌเจฃเจพเจเจเจฆเฉ เจนเจพเจ เจคเจพเจ เจ เจธเฉเจ เจฌเฉเจเจฟเฉฐเจ เจ เฉฐเจคเจฐเจพเจฒ เจจเฉเฉฐ 2 เจธเจเจฟเฉฐเจเจพเจ 'เจคเฉ เจธเฉเฉฑเจ เจเจฐเจฆเฉ เจนเจพเจ:
เจ เฉฑเจเฉ, เจ เจธเฉเจ เจธเจพเจฐเจฃเฉ เจตเจฟเฉฑเจ เจฐเจฟเจเจพเจฐเจกเจพเจ เจฆเฉ เจฎเฉเจเฉเจฆเจเฉ เจฆเฉ เจเจพเจเจ เจเจฐเจจ เจฒเจ เจกเฉเจเจพเจฌเฉเจธ เจฒเจ เจเฉฑเจ เจธเจงเจพเจฐเจจ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจเจฐเจฆเฉ เจนเจพเจ เจฒเฉเจฃ-เจฆเฉเจฃ_เจชเฉเจฐเจตเจพเจน:
เจธเจฟเฉฑเจเจพ
เจเจธ เจฒเฉเจ เจจเฉ เจ เจชเจพเจเฉ เจเจพเจซเจเจพ เจ เจคเฉ PostgreSQL เจฆเฉ เจจเจพเจฒ เจธเจชเจพเจฐเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ เจเจพเจฃเจเจพเจฐเฉ เจฆเฉ เจธเจเฉเจฐเฉเจฎ เจชเฉเจฐเฉเจธเฉเจธเจฟเฉฐเจ เจฆเฉ เจเฉฑเจ เจเจฆเจพเจนเจฐเจจ เจฆเฉเจเฉ เจนเฉเฅค เจตเฉฑเจ-เจตเฉฑเจ เจธเจฐเฉเจคเจพเจ เจคเฉเจ เจกเฉเจเจพ เจฆเฉ เจตเจพเจงเฉ เจฆเฉ เจจเจพเจฒ, เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจ เจคเฉ เจฐเฉเจ เจฒ-เจเจพเจเจฎ เจเจชเจฒเฉเจเฉเจธเจผเจจเจพเจ เจจเฉเฉฐ เจฌเจฃเจพเจเจฃ เจฒเจ เจธเจชเจพเจฐเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจฆเฉ เจตเจฟเจนเจพเจฐเจ เจฎเฉเฉฑเจฒ เจฆเจพ เจ เจจเฉเจฎเจพเจจ เจฒเจเจพเจเจฃเจพ เจฎเฉเจธเจผเจเจฒ เจนเฉเฅค
เจคเฉเจธเฉเจ เจฎเฉเจฐเฉ เจฐเจฟเจชเฉเจเจผเจเจฐเฉ เจตเจฟเฉฑเจ เจชเฉเจฐเจพ เจธเจฐเฉเจค เจเฉเจก เจเฉฑเจฅเฉ เจฒเฉฑเจญ เจธเจเจฆเฉ เจนเฉ
เจฎเฉเจ เจเจธ เจฒเฉเจ 'เจคเฉ เจเจฐเจเจพ เจเจฐเจเฉ เจเฉเจธเจผ เจนเจพเจ, เจฎเฉเจ เจคเฉเจนเจพเจกเฉเจเจ เจเจฟเฉฑเจชเจฃเฉเจเจ เจฆเฉ เจเจฎเฉเจฆ เจเจฐเจฆเจพ เจนเจพเจ, เจ เจคเฉ เจฎเฉเจ เจธเจพเจฐเฉ เจฆเฉเจเจญเจพเจฒ เจเจฐเจจ เจตเจพเจฒเฉ เจชเจพเจ เจเจพเจ เจคเฉเจ เจเจธเจพเจฐเฉ เจเจฒเฉเจเจจเจพ เจฆเฉ เจตเฉ เจเจฎเฉเจฆ เจเจฐเจฆเจพ เจนเจพเจเฅค
เจฎเฉเจ เจคเฉเจนเจพเจจเฉเฉฐ เจธเจซเจฒเจคเจพ เจฆเฉ เจเจพเจฎเจจเจพ เจเจฐเจฆเจพ เจนเจพเจ!
เจเจผเจฌเฉ. เจธเจผเฉเจฐเฉ เจตเจฟเฉฑเจ เจเฉฑเจ เจธเจฅเจพเจจเจ PostgreSQL เจกเฉเจเจพเจฌเฉเจธ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจ เจฆเฉ เจฏเฉเจเจจเจพ เจฌเจฃเจพเจ เจเจ เจธเฉ, เจชเจฐ AWS เจฒเจ เจฎเฉเจฐเฉ เจชเจฟเจเจฐ เจจเฉเฉฐ เจฆเฉเจเจฆเฉ เจนเฉเจ, เจฎเฉเจ เจกเฉเจเจพเจฌเฉเจธ เจจเฉเฉฐ เจเจฒเจพเจเจก เจตเจฟเฉฑเจ เจญเฉเจเจฃ เจฆเจพ เจซเฉเจธเจฒเจพ เจเฉเจคเจพ. เจเจธ เจตเจฟเจธเจผเฉ 'เจคเฉ เจ
เจเจฒเฉ เจฒเฉเจ เจตเจฟเฉฑเจ, เจฎเฉเจ เจฆเจฟเจเจพเจตเจพเจเจเจพ เจเจฟ AWS เจตเจฟเฉฑเจ AWS Kinesis เจ
เจคเฉ AWS EMR เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ เจเฉฑเจชเจฐ เจฆเฉฑเจธเฉ เจเจ เจชเฉเจฐเฉ เจธเจฟเจธเจเจฎ เจจเฉเฉฐ เจเจฟเจตเฉเจ เจฒเจพเจเฉ เจเจฐเจจเจพ เจนเฉเฅค เจเจผเจฌเจฐเจพเจ เจฆเจพ เจชเจพเจฒเจฃ เจเจฐเฉ!
เจธเจฐเฉเจค: www.habr.com