เจนเฉ เจนเจฌเจฐ!
เจเฉ เจคเฉเจนเจพเจจเฉเฉฐ เจเฉฑเจกเจฆเฉ เจนเจตเจพเจ เจเจนเจพเจเจผ เจชเจธเฉฐเจฆ เจนเจจ? เจฎเฉเจจเฉเฉฐ เจเจน เจชเจธเฉฐเจฆ เจนเฉ, เจชเจฐ เจธเจตเฉ-เจ เจฒเฉฑเจ-เจฅเจฒเฉฑเจ เจนเฉเจฃ เจฆเฉ เจฆเฉเจฐเจพเจจ เจฎเฉเจจเฉเฉฐ เจเฉฑเจ เจเจพเจฃเฉ-เจชเจเจพเจฃเฉ เจธเจฐเฉเจค - Aviasales เจคเฉเจ เจนเจตเจพเจ เจเจฟเจเจเจพเจ เจฆเฉ เจกเฉเจเจพ เจฆเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจจ เจจเจพเจฒ เจตเฉ เจชเจฟเจเจฐ เจนเฉ เจเจฟเจเฅค
เจ เฉฑเจ เจ เจธเฉเจ Amazon Kinesis เจฆเฉ เจเฉฐเจฎ เจฆเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจพเจเจเฉ, เจฐเฉเจ เจฒ-เจเจพเจเจฎ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจฆเฉ เจจเจพเจฒ เจเฉฑเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจธเจฟเจธเจเจฎ เจฌเจฃเจพเจตเจพเจเจเฉ, Amazon DynamoDB NoSQL เจกเฉเจเจพเจฌเฉเจธ เจจเฉเฉฐ เจฎเฉเฉฑเจ เจกเจพเจเจพ เจธเจเฉเจฐเฉเจ เจตเจเฉเจ เจธเจฅเจพเจชเจฟเจค เจเจฐเจพเจเจเฉ, เจ เจคเฉ เจฆเจฟเจฒเจเจธเจช เจเจฟเจเจเจพเจ เจฒเจ SMS เจธเฉเจเจจเจพเจตเจพเจ เจธเฉเจ เจ เจช เจเจฐเจพเจเจเฉเฅค
เจธเจพเจฐเฉ เจตเฉเจฐเจตเฉ เจเฉฑเจ เจฆเฉ เจ เจงเฉเจจ เจนเจจ! เจเจพเจฃเจพ!
เจเจพเจฃ เจชเจเจพเจฃ
เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจธเจพเจจเฉเฉฐ เจคเฉฑเจ เจชเจนเฉเฉฐเจ เจฆเฉ เจฒเฉเฉ เจนเฉ
เจเจธ เจฒเฉเจ เจฆเจพ เจฎเฉเฉฑเจ เจเจฆเฉเจธเจผ AWS เจตเจฟเฉฑเจ เจเจพเจฃเจเจพเจฐเฉ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจฆเฉ เจตเจฐเจคเฉเจ เจฌเจพเจฐเฉ เจเฉฑเจ เจเจฎ เจธเจฎเจ เจฆเฉเจฃเจพ เจนเฉ; เจ เจธเฉเจ เจเจธ เจเฉฑเจฒ เจจเฉเฉฐ เจงเจฟเจเจจ เจตเจฟเฉฑเจ เจฐเฉฑเจเจฆเฉ เจนเจพเจ เจเจฟ เจตเจฐเจคเฉ เจเจ API เจฆเฉเจเจฐเจพ เจตเจพเจชเจธ เจเฉเจคเจพ เจเจฟเจ เจกเฉเจเจพ เจธเจเจคเฉ เจจเจพเจฒ เจ เฉฑเจช-เจเฉ-เจกเฉเจ เจจเจนเฉเจ เจนเฉ เจ เจคเฉ เจเฉเจธเจผ เจคเฉเจ เจชเฉเจฐเจธเจพเจฐเจฟเจค เจเฉเจคเจพ เจเจฟเจ เจนเฉ, เจเฉ เจเจฟ เจชเจฟเจเจฒเฉ 48 เจเฉฐเจเจฟเจเจ เจฒเจ Aviasales.ru เจ เจคเฉ Jetradar.com เจธเจพเจเจเจพเจ เจฆเฉ เจเจชเจญเฉเจเจคเจพเจตเจพเจ เจฆเฉเจเจฐเจพ เจเฉเจเจพเจ เจฆเฉ เจ เจงเจพเจฐ เจคเฉ เจฌเจฃเจพเจ เจเจ เจนเฉเฅค
เจเจพเจเจจเฉเจธเจฟเจธ-เจเจเฉฐเจ, เจชเฉเจฐเฉเจกเจฟเจเจธเจฟเฉฐเจ เจฎเจธเจผเฉเจจ 'เจคเฉ เจธเจฅเจพเจชเจฟเจค, API เจฆเฉเจเจฐเจพ เจชเฉเจฐเจพเจชเจค เจเฉเจคเจพ เจเจฟเจ, Kinesis เจกเฉเจเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจฆเฉเจเจฐเจพ เจฒเฉเฉเฉเจเจฆเฉ เจธเจเฉเจฐเฉเจฎ เจตเจฟเฉฑเจ เจกเฉเจเจพ เจจเฉเฉฐ เจเจชเจฃเฉ เจเจช เจชเจพเจฐเจธ เจ เจคเฉ เจชเฉเจฐเจธเจพเจฐเจฟเจค เจเจฐเฉเจเจพเฅค เจเจธ เจธเจเฉเจฐเฉเจฎ เจฆเจพ เจเฉฑเจเจพ เจธเฉฐเจธเจเจฐเจฃ เจธเจเฉเจฐ 'เจคเฉ เจธเจฟเฉฑเจงเจพ เจฒเจฟเจเจฟเจ เจเจพเจตเฉเจเจพเฅค DynamoDB เจตเจฟเฉฑเจ เจคเฉเจจเจพเจค เจเฉฑเจเจพ เจกเฉเจเจพ เจธเจเฉเจฐเฉเจ BI เจเฉเจฒเจธ, เจเจฟเจตเฉเจ เจเจฟ AWS Quick Sight เจฆเฉเจเจฐเจพ เจกเฉเฉฐเจเฉ เจเจฟเจเจ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจฆเฉ เจเจเจฟเจ เจฆเฉเจตเฉเจเฉเฅค
เจ เจธเฉเจ เจชเฉเจฐเฉ เจฌเฉเจจเจฟเจเจฆเฉ เจขเจพเจเจเฉ เจจเฉเฉฐ เจคเฉเจจเจพเจค เจเจฐเจจ เจฒเจ เจฆเฉ เจตเจฟเจเจฒเจชเจพเจ 'เจคเฉ เจตเจฟเจเจพเจฐ เจเจฐเจพเจเจเฉ:
- เจฎเฉเจจเฉเจ เจฒ - AWS เจชเฉเจฐเจฌเฉฐเจงเจจ เจเฉฐเจธเฉเจฒ เจฆเฉเจเจฐเจพ;
- เจเฉเจฐเจพเจซเจพเจฐเจฎ เจเฉเจก เจคเฉเจ เจฌเฉเจจเจฟเจเจฆเฉ เจขเจพเจเจเจพ เจเจฒเจธเฉ เจเจเฉเจฎเฉเจเจฐเจพเจ เจฒเจ เจนเฉ;
เจตเจฟเจเจธเจค เจธเจฟเจธเจเจฎ เจฆเจพ เจเจฐเจเฉเจเฉเจเจเจฐ
เจตเจฐเจคเฉ เจเจ เจนเจฟเฉฑเจธเฉ:
Aviasales API - เจเจธ API เจฆเฉเจเจฐเจพ เจตเจพเจชเจธ เจเฉเจคเฉ เจเจ เจกเฉเจเจพ เจจเฉเฉฐ เจ เจเจฒเฉ เจธเจพเจฐเฉ เจเฉฐเจฎ เจฒเจ เจตเจฐเจคเจฟเจ เจเจพเจตเฉเจเจพ;EC2 เจจเจฟเจฐเจฎเจพเจคเจพ เจเจฆเจพเจนเจฐเจฃ โ เจเจฒเจพเจเจก เจตเจฟเฉฑเจ เจเฉฑเจ เจจเจฟเจฏเจฎเจค เจตเจฐเจเฉเจ เจฒ เจฎเจธเจผเฉเจจ เจเจฟเจธ เจเฉฑเจคเฉ เจเจจเจชเฉเจ เจกเฉเจเจพ เจธเจเฉเจฐเฉเจฎ เจคเจฟเจเจฐ เจเฉเจคเจพ เจเจพเจตเฉเจเจพ:เจเฉเจจเฉเจธเจฟเจธ เจเจเฉฐเจ เจฎเจธเจผเฉเจจ 'เจคเฉ เจธเจฅเจพเจจเจ เจคเฉเจฐ 'เจคเฉ เจธเจฅเจพเจชเจค เจเฉเจคเฉ เจเจพเจตเจพ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจนเฉ เจเฉ เจเจฟเจจเฉเจธเจฟเจธ (เจเจฟเจจเฉเจธเจฟเจธ เจกเฉเจเจพ เจธเจเฉเจฐเฉเจฎเจเจผ เจเจพเจ เจเจพเจเจจเฉเจธเจฟเจธ เจซเจพเจเจฐเจนเฉเจเจผ) เจจเฉเฉฐ เจกเจพเจเจพ เจเจเฉฑเจ เจพ เจเจฐเจจ เจ เจคเฉ เจญเฉเจเจฃ เจฆเจพ เจเจธเจพเจจ เจคเจฐเฉเจเจพ เจชเฉเจฐเจฆเจพเจจ เจเจฐเจฆเฉ เจนเฉเฅค เจเจเฉฐเจ เจฒเจเจพเจคเจพเจฐ เจจเจฟเจฐเจงเจพเจฐเจฟเจค เจกเจพเจเจฐเฉเจเจเจฐเฉเจเจ เจตเจฟเฉฑเจ เจซเจพเจเจฒเจพเจ เจฆเฉ เจเฉฑเจ เจธเจฎเฉเจน เจฆเฉ เจจเจฟเจเจฐเจพเจจเฉ เจเจฐเจฆเจพ เจนเฉ เจ เจคเฉ Kinesis เจจเฉเฉฐ เจจเจตเจพเจ เจกเฉเจเจพ เจญเฉเจเจฆเจพ เจนเฉ;API เจเจพเจฒเจฐ เจธเจเฉเจฐเจฟเจชเจ โ เจเฉฑเจ เจชเจพเจเจฅเจจ เจธเจเฉเจฐเจฟเจชเจ เจเฉ API เจจเฉเฉฐ เจฌเฉเจจเจคเฉเจเจ เจเจฐเจฆเฉ เจนเฉ เจ เจคเฉ เจเจตเจพเจฌ เจจเฉเฉฐ เจเฉฑเจ เจซเฉเจฒเจกเจฐ เจตเจฟเฉฑเจ เจฐเฉฑเจเจฆเฉ เจนเฉ เจเจฟเจธเจฆเฉ เจเจฟเจจเฉเจธเจฟเจธ เจเจเฉฐเจ เจฆเฉเจเจฐเจพ เจจเจฟเจเจฐเจพเจจเฉ เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเฉ;
Kinesis เจกเจพเจเจพ เจธเจเฉเจฐเฉเจฎเจเจผ - เจตเจฟเจเจชเจ เจธเจเฉเจฒเจฟเฉฐเจ เจธเจฎเจฐเฉฑเจฅเจพเจตเจพเจ เจตเจพเจฒเฉ เจฐเฉเจ เจฒ-เจเจพเจเจฎ เจกเจพเจเจพ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจธเฉเจตเจพ;Kinesis เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเฉฑเจ เจธเจฐเจตเจฐ เจฐเจนเจฟเจค เจธเฉเจตเจพ เจนเฉ เจเฉ เจฐเฉเจ เจฒ เจเจพเจเจฎ เจตเจฟเฉฑเจ เจธเจเฉเจฐเฉเจฎเจฟเฉฐเจ เจกเฉเจเจพ เจฆเฉ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจจเฉเฉฐ เจธเจฐเจฒ เจฌเจฃเจพเจเจเจฆเฉ เจนเฉเฅค เจเจฎเจพเจเจผเจพเจจ เจเจพเจเจจเฉเจธเจฟเจธ เจกเฉเจเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจธเจฐเฉเจคเจพเจ เจจเฉเฉฐ เจเฉเจเจซเจฟเจเจฐ เจเจฐเจฆเจพ เจนเฉ เจ เจคเฉ เจเจเจฃ เจตเจพเจฒเฉ เจกเฉเจเจพ เจฆเฉ เจเจฟเจธเฉ เจตเฉ เจฎเจพเจคเจฐเจพ เจจเฉเฉฐ เจธเฉฐเจญเจพเจฒเจฃ เจฒเจ เจเจชเจฃเฉ เจเจช เจธเจเฉเจฒ เจเจฐเจฆเจพ เจนเฉ;AWS Lambda โ เจเฉฑเจ เจธเฉเจตเจพ เจเฉ เจคเฉเจนเจพเจจเฉเฉฐ เจธเจฐเจตเจฐ เจฆเจพ เจฌเฉเจเจ เฉฑเจช เจฒเจ เจเจพเจ เจธเฉเฉฑเจเจ เฉฑเจช เจเฉเจคเฉ เจฌเจฟเจจเจพเจ เจเฉเจก เจเจฒเจพเจเจฃ เจฆเฉ เจเจเจพเจเจผเจค เจฆเจฟเฉฐเจฆเฉ เจนเฉเฅค เจนเจฐเฉเจ เจเจพเจฒ เจฒเจ เจธเจพเจฐเฉ เจเฉฐเจชเจฟเจเจเจฟเฉฐเจ เจชเจพเจตเจฐ เจเจเฉเจฎเฉเจเจฟเจ เจนเฉ เจธเจเฉเจฒ เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเฉ;เจเจฎเจพเจเจผเจพเจจ เจกเจพเจเจจเจพเจฎเฉเจกเฉเจฌเฉ - เจฎเฉเฉฑเจ-เจฎเฉเฉฑเจฒ เจฆเฉ เจเฉเฉเจฟเจเจ เจ เจคเฉ เจฆเจธเจคเจพเจตเฉเจเจผเจพเจ เจฆเจพ เจเฉฑเจ เจกเฉเจเจพเจฌเฉเจธ เจเฉ เจเจฟเจธเฉ เจตเฉ เจชเฉเจฎเจพเจจเฉ 'เจคเฉ เจเฉฑเจฒเจฃ เจตเฉเจฒเฉ 10 เจฎเจฟเจฒเฉเจธเจเจฟเฉฐเจ เจคเฉเจ เจเฉฑเจ เจฆเฉ เจฒเฉเจเฉเจเจธเฉ เจชเฉเจฐเจฆเจพเจจ เจเจฐเจฆเจพ เจนเฉเฅค DynamoDB เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจธเจฎเฉเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจเจฟเจธเฉ เจธเจฐเจตเจฐ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจง, เจชเฉเจ เจเจพเจ เจชเฉเจฐเจฌเฉฐเจงเจจ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉเฅค DynamoDB เจเจชเจฒเจฌเจง เจธเจฐเฉเจคเจพเจ เจฆเฉ เจฎเจพเจคเจฐเจพ เจจเฉเฉฐ เจตเจฟเจตเจธเจฅเจฟเจค เจเจฐเจจ เจ เจคเฉ เจเฉฑเจ เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจจเฉเฉฐ เจฌเจฐเจเจฐเจพเจฐ เจฐเฉฑเจเจฃ เจฒเจ เจเจชเจฃเฉ เจเจช เจเฉเจฌเจฒ เจจเฉเฉฐ เจธเจเฉเจฒ เจเจฐเจฆเจพ เจนเฉเฅค เจเฉเจ เจธเจฟเจธเจเจฎ เจชเฉเจฐเจธเจผเจพเจธเจจ เจฆเฉ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉ;เจเจฎเจพเจเจผเจพเจจ SNS - เจชเฉเจฐเจเจพเจธเจผเจ-เจธเจฌเจธเจเฉเจฐเจพเจเจฌเจฐ (Pub/Sub) เจฎเจพเจกเจฒ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ เจธเฉเจจเฉเจนเฉ เจญเฉเจเจฃ เจฒเจ เจเฉฑเจ เจชเฉเจฐเฉ เจคเจฐเฉเจนเจพเจ เจชเฉเจฐเจฌเฉฐเจงเจฟเจค เจธเฉเจตเจพ, เจเจฟเจธ เจจเจพเจฒ เจคเฉเจธเฉเจ เจฎเจพเจเจเฉเจฐเฉเจธเฉเจตเจพเจตเจพเจ, เจตเฉฐเจกเฉเจเจ เจชเฉเจฐเจฃเจพเจฒเฉเจเจ เจ เจคเฉ เจธเจฐเจตเจฐ เจฐเจนเจฟเจค เจเจชเจฒเฉเจเฉเจธเจผเจจเจพเจ เจจเฉเฉฐ เจ เจฒเฉฑเจ เจเจฐ เจธเจเจฆเฉ เจนเฉเฅค SNS เจฆเฉ เจตเจฐเจคเฉเจ เจฎเฉเจฌเจพเจเจฒ เจชเฉเจธเจผ เจธเฉเจเจจเจพเจตเจพเจ, SMS เจธเฉฐเจฆเฉเจธเจผเจพเจ เจ เจคเฉ เจเจฎเฉเจฒเจพเจ เจฐเจพเจนเฉเจ เจ เฉฐเจคเจฎ เจเจชเจญเฉเจเจคเจพเจตเจพเจ เจจเฉเฉฐ เจเจพเจฃเจเจพเจฐเฉ เจญเฉเจเจฃ เจฒเจ เจเฉเจคเฉ เจเจพ เจธเจเจฆเฉ เจนเฉเฅค
เจธเจผเฉเจฐเฉเจเจคเฉ เจธเจฟเจเจฒเจพเจ
เจกเฉเจเจพ เจชเฉเจฐเจตเจพเจน เจฆเฉ เจจเจเจฒ เจเจฐเจจ เจฒเจ, เจฎเฉเจ Aviasales API เจฆเฉเจเจฐเจพ เจตเจพเจชเจธ เจเฉเจคเฉ เจเจ
เจฐเจฒเจพเจเจจ เจเจฟเจเจ เจเจพเจฃเจเจพเจฐเฉ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจ เจฆเจพ เจซเฉเจธเจฒเจพ เจเฉเจคเจพเฅค IN
เจเจธ เจฒเจ, เจเจ เจฐเจเจฟเจธเจเจฐ เจเจฐเฉเจ เจ เจคเฉ เจเจชเจฃเจพ เจเฉเจเจจ เจชเฉเจฐเจพเจชเจค เจเจฐเฉเจเฅค
เจเฉฑเจ เจเจฆเจพเจนเจฐเจจ เจฌเฉเจจเจคเฉ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจเจ เจนเฉ:
http://api.travelpayouts.com/v2/prices/month-matrix?currency=rub&origin=LED&destination=HKT&show_to_affiliates=true&token=TOKEN_API
เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ เจเฉฑเจ เจเฉเจเจจ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจเฉ API เจคเฉเจ เจกเฉเจเจพ เจชเฉเจฐเจพเจชเจค เจเจฐเจจ เจฆเฉ เจเจชเจฐเฉเจเจค เจตเจฟเจงเฉ เจเฉฐเจฎ เจเจฐเฉเจเฉ, เจชเจฐ เจฎเฉเจ เจนเฉเจกเจฐ เจฐเจพเจนเฉเจ เจเจเจธเฉเจธ เจเฉเจเจจ เจชเจพเจธ เจเจฐเจจ เจจเฉเฉฐ เจคเจฐเจเฉเจน เจฆเจฟเฉฐเจฆเจพ เจนเจพเจ, เจเจธเจฒเจ เจ เจธเฉเจ เจเจธ เจตเจฟเจงเฉ เจจเฉเฉฐ api_caller.py เจธเจเฉเจฐเจฟเจชเจ เจตเจฟเฉฑเจ เจตเจฐเจคเจพเจเจเฉเฅค
เจจเจฎเฉเจจเจพ เจเจตเจพเจฌ:
{{
"success":true,
"data":[{
"show_to_affiliates":true,
"trip_class":0,
"origin":"LED",
"destination":"HKT",
"depart_date":"2015-10-01",
"return_date":"",
"number_of_changes":1,
"value":29127,
"found_at":"2015-09-24T00:06:12+04:00",
"distance":8015,
"actual":true
}]
}
เจเจชเจฐเฉเจเจค เจเจฆเจพเจนเจฐเจจ API เจเจตเจพเจฌ เจธเฉเจเจ เจชเฉเจเจฐเจธเจฌเจฐเจ เจคเฉเจ เจซเฉเจ เจคเฉฑเจ เจเจฟเจเจ เจฆเจฟเจเจพเจเจเจฆเจพ เจนเฉ... เจเจน, เจเฉ เจธเฉเจชเจจเจพ เจนเฉ...
เจเจฟเจเจเจเจฟ เจฎเฉเจ เจเจเจผเจพเจจ เจคเฉเจ เจนเจพเจ, เจ
เจคเฉ เจซเฉเจเฉเจ เจนเฉเจฃ "เจธเจฟเจฐเจซเจผ เจเฉฑเจ เจธเฉเจชเจจเจพ" เจนเฉ, เจเจ เจธเฉเจเจ เจชเฉเจเจฐเจธเจฌเจฐเจ เจคเฉเจ เจเจพเจเจผเจพเจจ เจคเฉฑเจ เจฆเฉเจเจ เจเจฟเจเจเจพเจ เจฒเฉฑเจญเฉเจเฅค
เจเจน เจฎเฉฐเจจเจฆเจพ เจนเฉ เจเจฟ เจคเฉเจนเจพเจกเฉ เจเฉเจฒ เจชเจนเจฟเจฒเจพเจ เจนเฉ เจเฉฑเจ AWS เจเจพเจคเจพ เจนเฉเฅค เจฎเฉเจ เจคเฉเจฐเฉฐเจค เจเจธ เจคเฉฑเจฅ เจตเฉฑเจฒ เจตเจฟเจธเจผเฉเจธเจผ เจงเจฟเจเจจ เจเจฟเฉฑเจเจฃเจพ เจเจพเจนเจพเจเจเจพ เจเจฟ Kinesis เจ เจคเฉ SMS เจฆเฉเจเจฐเจพ เจธเฉเจเจจเจพเจตเจพเจ เจญเฉเจเจฃเจพ เจธเจพเจฒเจพเจจเจพ เจตเจฟเฉฑเจ เจธเจผเจพเจฎเจฒ เจจเจนเฉเจ เจนเจจเฅค
เจฎเฉเจซเจค เจเฉเจ เจฐ (เจฎเฉเจซเจค เจตเจฐเจคเฉเจ) . เจชเจฐ เจเจธเจฆเฉ เจฌเจพเจตเจเฉเจฆ, เจเฉเจ เจกเจพเจฒเจฐเจพเจ เจจเฉเฉฐ เจงเจฟเจเจจ เจตเจฟเฉฑเจ เจฐเฉฑเจเจฆเฉ เจนเฉเจ, เจชเฉเจฐเจธเจคเจพเจตเจฟเจค เจชเฉเจฐเจฃเจพเจฒเฉ เจจเฉเฉฐ เจฌเจฃเจพเจเจฃเจพ เจ เจคเฉ เจเจธ เจจเจพเจฒ เจเฉเจกเจฃเจพ เจเจพเจซเจผเฉ เจธเฉฐเจญเจต เจนเฉ. เจ เจคเฉ, เจฌเฉเจธเจผเจ, เจเจนเจจเจพเจ เจฆเฉ เจฒเฉเฉ เจจเจพ เจนเฉเจฃ เจคเฉเจ เจฌเจพเจ เจฆ เจธเจพเจฐเฉ เจธเจฐเฉเจคเจพเจ เจจเฉเฉฐ เจฎเจฟเจเจพเจเจฃเจพ เจจเจพ เจญเฉเฉฑเจฒเฉ.
เจเฉเจธเจผเจเจฟเจธเจฎเจคเฉ เจจเจพเจฒ, DynamoDb เจ เจคเฉ lambda เจซเฉฐเจเจธเจผเจจ เจธเจพเจกเฉ เจฒเจ เจฎเฉเจซเจค เจนเฉเจฃเจเฉ เจเฉเจเจฐ เจ เจธเฉเจ เจเจชเจฃเฉเจเจ เจฎเจนเฉเจจเจพเจตเจพเจฐ เจฎเฉเจซเจค เจธเฉเจฎเจพเจตเจพเจ เจจเฉเฉฐ เจชเฉเจฐเจพ เจเจฐเจฆเฉ เจนเจพเจเฅค เจเจฆเจพเจนเจฐเจจ เจฒเจ, DynamoDB เจฒเจ: 25 GB เจธเจเฉเจฐเฉเจ, 25 WCU/RCU เจ เจคเฉ 100 เจฎเจฟเจฒเฉเจ เจจ เจธเจตเจพเจฒเฅค เจ เจคเฉ เจชเฉเจฐเจคเฉ เจฎเจนเฉเจจเจพ เจเฉฑเจ เจฎเจฟเจฒเฉเจ เจจ เจฒเจพเจเจฌเจกเจพ เจซเฉฐเจเจธเจผเจจ เจเจพเจฒเจพเจเฅค
เจฎเฉเจจเฉเจ เจฒ เจธเจฟเจธเจเจฎ เจคเฉเจจเจพเจคเฉ
เจเจพเจเจจเฉเจธเจฟเจธ เจกเจพเจเจพ เจธเจเฉเจฐเฉเจฎเจเจผ เจธเฉเจ เจ เจช เจเจฐเจจเจพ
เจเจฒเฉ เจเฉเจจเฉเจธเจฟเจธ เจกเจพเจเจพ เจธเจเฉเจฐเฉเจฎเจเจผ เจธเฉเจตเจพ 'เจคเฉ เจเฉฑเจฒเฉเจ เจ เจคเฉ เจฆเฉ เจจเจตเฉเจเจ เจธเจเฉเจฐเฉเจฎเจพเจ เจฌเจฃเจพเจเจ, เจนเจฐเฉเจ เจฒเจ เจเฉฑเจ เจธเจผเจพเจฐเจกเฅค
เจเฉฑเจ เจธเจผเจพเจฐเจก เจเฉ เจนเฉ?
เจเฉฑเจ เจธเจผเจพเจฐเจก เจเฉฑเจ เจเจฎเจพเจเจผเจพเจจ เจเจพเจเจจเฉเจธเจฟเจธ เจธเจเฉเจฐเฉเจฎ เจฆเฉ เจฌเฉเจจเจฟเจเจฆเฉ เจกเฉเจเจพ เจเฉเจฐเจพเจเจธเจซเจฐ เจฏเฉเจจเจฟเจ เจนเฉเฅค เจเฉฑเจ เจเฉฐเจก 1 MB/s เจฆเฉ เจเจคเฉ เจจเจพเจฒ เจเจจเจชเฉเจ เจกเจพเจเจพ เจเฉเจฐเจพเจเจธเจซเจฐ เจ
เจคเฉ 2 MB/s เจฆเฉ เจเจคเฉ เจจเจพเจฒ เจเจเจเจชเฉเฉฑเจ เจกเจพเจเจพ เจเฉเจฐเจพเจเจธเจซเจฐ เจชเฉเจฐเจฆเจพเจจ เจเจฐเจฆเจพ เจนเฉเฅค เจเฉฑเจ เจเฉฐเจก เจชเฉเจฐเจคเฉ เจธเจเจฟเฉฐเจ 1000 PUT เจเจเจเจฐเฉเจเจ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจเจฐเจฆเจพ เจนเฉเฅค เจกเจพเจเจพ เจธเจเฉเจฐเฉเจฎ เจฌเจฃเจพเจเจเจฆเฉ เจธเจฎเฉเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจฒเฉเฉเฉเจเจฆเฉ เจเฉฐเจกเจพเจ เจฆเฉ เจเจฟเจฃเจคเฉ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเฉฐเจฆเฉ เจนเฉเฅค เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจคเฉเจธเฉเจ เจฆเฉ เจนเจฟเฉฑเจธเจฟเจเจ เจฆเฉ เจจเจพเจฒ เจเฉฑเจ เจกเจพเจเจพ เจธเจเฉเจฐเฉเจฎ เจฌเจฃเจพ เจธเจเจฆเฉ เจนเฉเฅค เจเจน เจกเจพเจเจพ เจธเจเฉเจฐเฉเจฎ 2 MB/s 'เจคเฉ เจเจจเจชเฉเจ เจกเจพเจเจพ เจเฉเจฐเจพเจเจธเจซเจฐ เจ
เจคเฉ 4 MB/s 'เจคเฉ เจเจเจเจชเฉเฉฑเจ เจกเจพเจเจพ เจเฉเจฐเจพเจเจธเจซเจฐ เจชเฉเจฐเจฆเจพเจจ เจเจฐเฉเจเจพ, 2000 PUT เจฐเจฟเจเจพเจฐเจก เจชเฉเจฐเจคเฉ เจธเจเจฟเฉฐเจ เจคเฉฑเจ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจเจฐเฉเจเจพเฅค
เจคเฉเจนเจพเจกเฉ เจธเจเฉเจฐเฉเจฎ เจตเจฟเฉฑเจ เจเจฟเฉฐเจจเฉ เจเจผเจฟเจเจฆเจพ เจธเจผเจพเจฐเจกเจธ, เจเจธเจฆเจพ เจฅเฉเจฐเฉเจชเฉเฉฑเจ เจเจจเจพ เจนเฉ เจตเฉฑเจกเจพ เจนเฉเฅค เจธเจฟเจงเจพเจเจค เจตเจฟเฉฑเจ, เจเจธ เจคเจฐเฉเจนเจพเจ เจตเจนเจพเจ เจจเฉเฉฐ เจธเจเฉเจฒ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ - เจธเจผเจพเจฐเจกเจเจผ เจเฉเฉ เจเฉเฅค เจชเจฐ เจคเฉเจนเจพเจกเฉ เจเฉเจฒ เจเจฟเฉฐเจจเฉ เจเจผเจฟเจเจฆเจพ เจธเจผเจพเจฐเจก เจนเฉเจฃเจเฉ, เจเฉเจฎเจค เจเจจเฉ เจนเฉ เจเจผเจฟเจเจฆเจพ เจนเฉเจตเฉเจเฉเฅค เจนเจฐเฉเจ เจธเจผเจพเจฐเจก เจฆเฉ เจเฉเจฎเจค 1,5 เจธเฉเจเจ เจชเฉเจฐเจคเฉ เจเฉฐเจเจพ เจนเฉ เจ เจคเฉ เจนเจฐเฉเจ เจฎเจฟเจฒเฉเจ เจจ PUT เจชเฉเจฒเฉเจก เจฏเฉเจจเจฟเจเจพเจ เจฒเจ เจเฉฑเจ เจตเจพเจงเฉ 1.4 เจธเฉเจเจ เจนเฉเฅค
เจเจ เจจเจพเจฎ เจจเจพเจฒ เจเฉฑเจ เจจเจตเฉเจ เจงเจพเจฐเจพ เจฌเจฃเจพเจเจ เจเจ เจฐเจฒเจพเจเจจ_เจเจฟเจเจเจพเจ, 1 เจธเจผเจพเจฐเจก เจเจธ เจฒเจ เจเจพเจซเฉ เจนเฉเจตเฉเจเจพ:
เจนเฉเจฃ เจจเจพเจฎ เจฆเฉ เจจเจพเจฒ เจเฉฑเจ เจนเฉเจฐ เจฅเจฐเจฟเฉฑเจก เจฌเจฃเจพเจเจเจฆเฉ เจนเจพเจ เจตเจฟเจธเจผเฉเจธเจผ_เจธเจเฉเจฐเฉเจฎ:
เจจเจฟเจฐเจฎเจพเจคเจพ เจธเฉเฉฑเจเจ เฉฑเจช
เจเจฟเจธเฉ เจเฉฐเจฎ เจฆเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจจ เจฒเจ, เจกเฉเจเจพ เจเจคเจชเจพเจฆเจ เจตเจเฉเจ เจเฉฑเจ เจจเจฟเจฏเจฎเจค EC2 เจเจฆเจพเจนเจฐเจฃ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจเจพ เจเจพเจซเจผเฉ เจนเฉเฅค เจเจน เจเฉฑเจ เจธเจผเจเจคเฉเจธเจผเจพเจฒเฉ, เจฎเจนเจฟเฉฐเจเฉ เจตเจฐเจเฉเจ เจฒ เจฎเจธเจผเฉเจจ เจจเจนเฉเจ เจนเฉเจฃเฉ เจเจพเจนเฉเจฆเฉ; เจเฉฑเจ เจธเจชเจพเจ t2.micro เจฌเจฟเจฒเจเฉเจฒ เจ เฉเจ เจเจฐเฉเจเจพเฅค
เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจจเฉเจ: เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจเจฟเฉฑเจคเจฐ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจเฉ เจเจพเจนเฉเจฆเฉ เจนเฉ - Amazon Linux AMI 2018.03.0, เจเจธ เจตเจฟเฉฑเจ เจเจพเจเจจเฉเจธเจฟเจธ เจเจเฉฐเจ เจจเฉเฉฐ เจคเฉเจเจผเฉ เจจเจพเจฒ เจฒเจพเจเจ เจเจฐเจจ เจฒเจ เจเฉฑเจ เจธเฉเจเจฟเฉฐเจเจพเจ เจนเจจเฅค
EC2 เจธเฉเจตเจพ 'เจคเฉ เจเจพเจ, เจเฉฑเจ เจจเจตเฉเจ เจตเจฐเจเฉเจ เจฒ เจฎเจธเจผเฉเจจ เจฌเจฃเจพเจ, เจเจพเจเจช t2.micro เจจเจพเจฒ เจฒเฉเฉเฉเจฆเจพ AMI เจเฉเจฃเฉ, เจเฉ เจเจฟ เจฎเฉเจซเจค เจเฉเจ เจฐ เจตเจฟเฉฑเจ เจธเจผเจพเจฎเจฒ เจนเฉ:
เจจเจตเฉเจ เจฌเจฃเฉ เจตเจฐเจเฉเจ
เจฒ เจฎเจธเจผเฉเจจ เจจเฉเฉฐ เจเจพเจเจจเฉเจธเจฟเจธ เจธเฉเจตเจพ เจจเจพเจฒ เจเฉฐเจเจฐเฉเจเจ เจเจฐเจจ เจฆเฉ เจฏเฉเจ เจนเฉเจฃ เจฒเจ, เจเจธ เจจเฉเฉฐ เจ
เจเจฟเจนเจพ เจเจฐเจจ เจฆเฉ เจ
เจงเจฟเจเจพเจฐ เจฆเจฟเฉฑเจคเฉ เจเจพเจฃเฉ เจเจพเจนเฉเจฆเฉ เจนเจจเฅค เจ
เจเจฟเจนเจพ เจเจฐเจจ เจฆเจพ เจธเจญ เจคเฉเจ เจตเจงเฉเจ เจคเจฐเฉเจเจพ เจนเฉ เจเฉฑเจ IAM เจฐเฉเจฒ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจจเจพเฅค เจเจธ เจฒเจ, เจธเจเฉเจช 3 'เจคเฉ: เจเฉฐเจธเจเฉเจเจธ เจกเจฟเจเฉเจฒ เจธเจเฉเจฐเฉเจจ เจจเฉเฉฐ เจเฉเจเจซเจฟเจเจฐ เจเจฐเฉ, เจคเฉเจนเจพเจจเฉเฉฐ เจเฉเจฃเจจเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ เจจเจตเฉเจ IAM เจฐเฉเจฒ เจฌเจฃเจพเจ:
EC2 เจฒเจ เจเฉฑเจ IAM เจฐเฉเจฒ เจฌเจฃเจพเจเจฃเจพ
เจเฉเฉฑเจฒเจฃ เจตเจพเจฒเฉ เจตเจฟเฉฐเจกเฉ เจตเจฟเฉฑเจ, เจเฉเจฃเฉ เจเจฟ เจ
เจธเฉเจ EC2 เจฒเจ เจเฉฑเจ เจจเจตเฉเจ เจญเฉเจฎเจฟเจเจพ เจฌเจฃเจพ เจฐเจนเฉ เจนเจพเจ เจ
เจคเฉ เจ
เจจเฉเจฎเจคเฉเจเจ เจญเจพเจ เจตเจฟเฉฑเจ เจเจพเจ:
เจธเจฟเจเจฒเจพเจ เจฆเฉ เจเจฆเจพเจนเจฐเจจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ, เจธเจพเจจเฉเฉฐ เจธเจฐเฉเจค เจ
เจงเจฟเจเจพเจฐเจพเจ เจฆเฉ เจฆเจพเจฃเฉเจฆเจพเจฐ เจธเฉฐเจฐเจเจจเจพ เจฆเฉเจเจ เจธเจพเจฐเฉเจเจ เจชเฉเจเฉเจฆเจเฉเจเจ เจตเจฟเฉฑเจ เจเจพเจฃ เจฆเฉ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉ, เจเจธเจฒเจ เจ
เจธเฉเจ เจเจฎเจพเจเจผเจพเจจ เจฆเฉเจเจฐเจพ เจชเจนเจฟเจฒเจพเจ เจคเฉเจ เจธเฉฐเจฐเจเจฟเจค เจเฉเจคเฉเจเจ เจจเฉเจคเฉเจเจ เจฆเฉ เจเฉเจฃ เจเจฐเจพเจเจเฉ: AmazonKinesisFullAccess เจ
เจคเฉ CloudWatchFullAccessเฅค
เจเจ เจเจธ เจญเฉเจฎเจฟเจเจพ เจฒเจ เจเฉเจ เจ เจฐเจฅเจชเฉเจฐเจจ เจจเจพเจฎ เจฆเฉเจเจ, เจเจฆเจพเจนเจฐเจจ เจฒเจ: EC2-KinesisStreams-FullAccess. เจจเจคเฉเจเจพ เจเจนเฉ เจนเฉเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ เจเฉ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจคเจธเจตเฉเจฐ เจตเจฟเฉฑเจ เจฆเจฟเจเจพเจเจ เจเจฟเจ เจนเฉ:
เจเจธ เจจเจตเฉเจ เจญเฉเจฎเจฟเจเจพ เจจเฉเฉฐ เจฌเจฃเจพเจเจฃ เจคเฉเจ เจฌเจพเจ
เจฆ, เจเจธ เจจเฉเฉฐ เจฌเจฃเจพเจ เจเจ เจตเจฐเจเฉเจ
เจฒ เจฎเจธเจผเฉเจจ เจเจฆเจพเจนเจฐเจฃ เจจเจพเจฒ เจเฉเฉเจจเจพ เจจเจพ เจญเฉเฉฑเจฒเฉ:
เจ
เจธเฉเจ เจเจธ เจธเจเฉเจฐเฉเจจ 'เจคเฉ เจนเฉเจฐ เจเฉเจ เจจเจนเฉเจ เจฌเจฆเจฒเจฆเฉ เจ
เจคเฉ เจ
เจเจฒเฉเจเจ เจตเจฟเฉฐเจกเฉเจเจผ 'เจคเฉ เจเจฒเฉ เจเจพเจเจฆเฉ เจนเจพเจเฅค
เจนเจพเจฐเจก เจกเจฐเจพเจเจต เจธเฉเจเจฟเฉฐเจเจพเจ เจจเฉเฉฐ เจกเจฟเจซเฉเจฒเจ เจฆเฉ เจจเจพเจฒ-เจจเจพเจฒ เจเฉเจเจธ เจฆเฉ เจคเฉเจฐ 'เจคเฉ เจเฉฑเจกเจฟเจ เจเจพ เจธเจเจฆเจพ เจนเฉ (เจนเจพเจฒเจพเจเจเจฟ เจเฉเจเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจเจพ เจเฉฐเจเจพ เจ เจญเจฟเจเจธ เจนเฉ, เจเฉฑเจเฉ-เจเฉฑเจ เจเจฆเจพเจนเจฐเจฃ เจจเฉเฉฐ เจเฉฑเจ เจจเจพเจฎ เจฆเจฟเจ เจ เจคเฉ เจตเจพเจคเจพเจตเจฐเจฃ เจจเฉเฉฐ เจฆเจฐเจธเจพเจ)เฅค
เจนเฉเจฃ เจ เจธเฉเจ เจเจฆเจฎ 6 'เจคเฉ เจนเจพเจ: เจธเฉเจฐเฉฑเจเจฟเจ เจธเจฎเฉเจน เจเฉเจฌ เจจเฉเฉฐ เจเฉเจเจซเจฟเจเจฐ เจเจฐเฉ, เจเจฟเฉฑเจฅเฉ เจคเฉเจนเจพเจจเฉเฉฐ เจเฉฑเจ เจจเจตเจพเจ เจฌเจฃเจพเจเจฃ เจเจพเจ เจเจชเจฃเจพ เจฎเฉเจเฉเจฆเจพ เจธเฉเจฐเฉฑเจเจฟเจ เจธเจฎเฉเจน เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจจ เจฆเฉ เจเจผเจฐเฉเจฐเจค เจนเฉ, เจเฉ เจคเฉเจนเจพเจจเฉเฉฐ ssh (เจชเฉเจฐเจ 22) เจฆเฉเจเจฐเจพ เจเจฆเจพเจนเจฐเจฃ เจจเจพเจฒ เจเฉเฉเจจ เจฆเฉ เจเจเจฟเจ เจฆเจฟเฉฐเจฆเจพ เจนเฉเฅค เจธเจฐเฉเจค -> เจฎเฉเจฐเจพ เจเจเจชเฉ เจเฉฑเจฅเฉ เจเฉเจฃเฉ เจ เจคเฉ เจคเฉเจธเฉเจ เจเจฆเจพเจนเจฐเจฃ เจจเฉเฉฐ เจฒเจพเจเจ เจเจฐ เจธเจเจฆเฉ เจนเฉ.
เจเจฟเจตเฉเจ เจนเฉ เจเจน เจเฉฑเจฒ เจฐเจนเฉ เจธเจฅเจฟเจคเฉ 'เจคเฉ เจฌเจฆเจฒเจฆเจพ เจนเฉ, เจคเฉเจธเฉเจ ssh เจฆเฉเจเจฐเจพ เจเจธ เจจเจพเจฒ เจเฉเฉเจจ เจฆเฉ เจเฉเจธเจผเจฟเจธเจผ เจเจฐ เจธเจเจฆเฉ เจนเฉเฅค
เจเจพเจเจจเฉเจธเจฟเจธ เจเจเฉฐเจ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจ เจฆเฉ เจฏเฉเจ เจนเฉเจฃ เจฒเจ, เจฎเจธเจผเฉเจจ เจจเจพเจฒ เจธเจซเจฒเจคเจพเจชเฉเจฐเจตเจ เจเฉเฉเจจ เจคเฉเจ เจฌเจพเจ เจฆ, เจคเฉเจนเจพเจจเฉเฉฐ เจเจฐเจฎเฉเจจเจฒ เจตเจฟเฉฑเจ เจนเฉเจ เจฒเจฟเจเฉเจเจ เจเจฎเจพเจเจกเจพเจ เจฆเจฐเจ เจเจฐเจจเฉเจเจ เจเจพเจนเฉเจฆเฉเจเจ เจนเจจ:
sudo yum -y update
sudo yum install -y python36 python36-pip
sudo /usr/bin/pip-3.6 install --upgrade pip
sudo yum install -y aws-kinesis-agent
เจเจฒเฉ API เจเจตเจพเจฌเจพเจ เจจเฉเฉฐ เจธเฉเจฐเฉฑเจเจฟเจ เจค เจเจฐเจจ เจฒเจ เจเฉฑเจ เจซเฉเจฒเจกเจฐ เจฌเจฃเจพเจเจ:
sudo mkdir /var/log/airline_tickets
เจเจเฉฐเจ เจจเฉเฉฐ เจธเจผเฉเจฐเฉ เจเจฐเจจ เจคเฉเจ เจชเจนเจฟเจฒเจพเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจเจธเจฆเฉ เจธเฉฐเจฐเจเจจเจพ เจจเฉเฉฐ เจเฉเจเจซเจฟเจเจฐ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ:
sudo vim /etc/aws-kinesis/agent.json
agent.json เจซเจพเจเจฒ เจฆเฉ เจธเจฎเฉฑเจเจฐเฉ เจเจธ เจคเจฐเฉเจนเจพเจ เจฆเจฟเจเจพเจ เจฆเฉเจฃเฉ เจเจพเจนเฉเจฆเฉ เจนเฉ:
{
"cloudwatch.emitMetrics": true,
"kinesis.endpoint": "",
"firehose.endpoint": "",
"flows": [
{
"filePattern": "/var/log/airline_tickets/*log",
"kinesisStream": "airline_tickets",
"partitionKeyOption": "RANDOM",
"dataProcessingOptions": [
{
"optionName": "CSVTOJSON",
"customFieldNames": ["cost","trip_class","show_to_affiliates",
"return_date","origin","number_of_changes","gate","found_at",
"duration","distance","destination","depart_date","actual","record_id"]
}
]
}
]
}
เจเจฟเจตเฉเจ เจเจฟ เจธเฉฐเจฐเจเจจเจพ เจซเจพเจเจฒ เจคเฉเจ เจฆเฉเจเจฟเจ เจเจพ เจธเจเจฆเจพ เจนเฉ, เจเจเฉฐเจ /var/log/airline_tickets/ เจกเจพเจเจฐเฉเจเจเจฐเฉ เจตเจฟเฉฑเจ .log เจเจเจธเจเฉเจเจธเจผเจจ เจจเจพเจฒ เจซเจพเจเจฒเจพเจ เจฆเฉ เจจเจฟเจเจฐเจพเจจเฉ เจเจฐเฉเจเจพ, เจเจนเจจเจพเจ เจจเฉเฉฐ เจชเจพเจฐเจธ เจเจฐเฉเจเจพ เจ เจคเฉ เจเจนเจจเจพเจ เจจเฉเฉฐ เจเจ เจฐเจฒเจพเจเจจ_เจเจฟเจเฉเจ เจธเจเฉเจฐเฉเจฎ เจตเจฟเฉฑเจ เจเฉเจฐเจพเจเจธเจซเจฐ เจเจฐเฉเจเจพเฅค
เจ เจธเฉเจ เจธเฉเจตเจพ เจจเฉเฉฐ เจฎเฉเฉ เจเจพเจฒเฉ เจเจฐเจฆเฉ เจนเจพเจ เจ เจคเฉ เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจเจฆเฉ เจนเจพเจ เจเจฟ เจเจน เจเจพเจฒเฉ เจนเฉ เจ เจคเฉ เจเฉฑเจฒ เจฐเจนเฉ เจนเฉ:
sudo service aws-kinesis-agent restart
เจเจ เจนเฉเจฃ เจชเจพเจเจฅเจจ เจธเจเฉเจฐเจฟเจชเจ เจจเฉเฉฐ เจกเจพเจเจจเจฒเฉเจก เจเจฐเฉเจ เจเฉ API เจคเฉเจ เจกเฉเจเจพ เจฆเฉ เจฌเฉเจจเจคเฉ เจเจฐเฉเจเฉ:
REPO_PATH=https://raw.githubusercontent.com/igorgorbenko/aviasales_kinesis/master/producer
wget $REPO_PATH/api_caller.py -P /home/ec2-user/
wget $REPO_PATH/requirements.txt -P /home/ec2-user/
sudo chmod a+x /home/ec2-user/api_caller.py
sudo /usr/local/bin/pip3 install -r /home/ec2-user/requirements.txt
api_caller.py เจธเจเฉเจฐเจฟเจชเจ Aviasales เจคเฉเจ เจกเฉเจเจพ เจฆเฉ เจฌเฉเจจเจคเฉ เจเจฐเจฆเฉ เจนเฉ เจ เจคเฉ เจชเฉเจฐเจพเจชเจค เจเฉเจคเฉ เจเจตเจพเจฌ เจจเฉเฉฐ เจกเจพเจเจฐเฉเจเจเจฐเฉ เจตเจฟเฉฑเจ เจธเฉเจฐเฉฑเจเจฟเจ เจค เจเจฐเจฆเฉ เจนเฉ เจเจฟเจธเจจเฉเฉฐ Kinesis เจเจเฉฐเจ เจธเจเฉเจจ เจเจฐเจฆเจพ เจนเฉเฅค เจเจธ เจธเจเฉเจฐเจฟเจชเจ เจจเฉเฉฐ เจฒเจพเจเฉ เจเจฐเจจเจพ เจเจพเจซเจผเฉ เจฎเจฟเจเจฐเฉ เจนเฉ, เจเฉฑเจฅเฉ เจเฉฑเจ TicketsApi เจเจฒเจพเจธ เจนเฉ, เจเจน เจคเฉเจนเจพเจจเฉเฉฐ API เจจเฉเฉฐ เจ เจธเจฟเฉฐเจเจฐเฉเจจเจธ เจคเฉเจฐ 'เจคเฉ เจเจฟเฉฑเจเจฃ เจฆเฉ เจเจเจพเจเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉเฅค เจ เจธเฉเจ เจเฉฑเจ เจเฉเจเจจ เจฆเฉ เจจเจพเจฒ เจเฉฑเจ เจธเจฟเจฐเจฒเฉเจ เจชเจพเจธ เจเจฐเจฆเฉ เจนเจพเจ เจ เจคเฉ เจเจธ เจเจฒเจพเจธ เจจเฉเฉฐ เจชเฉเจฐเจพเจฎเฉเจเจฐเจพเจ เจฆเฉ เจฌเฉเจจเจคเฉ เจเจฐเจฆเฉ เจนเจพเจ:
class TicketsApi:
"""Api caller class."""
def __init__(self, headers):
"""Init method."""
self.base_url = BASE_URL
self.headers = headers
async def get_data(self, data):
"""Get the data from API query."""
response_json = {}
async with ClientSession(headers=self.headers) as session:
try:
response = await session.get(self.base_url, data=data)
response.raise_for_status()
LOGGER.info('Response status %s: %s',
self.base_url, response.status)
response_json = await response.json()
except HTTPError as http_err:
LOGGER.error('Oops! HTTP error occurred: %s', str(http_err))
except Exception as err:
LOGGER.error('Oops! An error ocurred: %s', str(err))
return response_json
def prepare_request(api_token):
"""Return the headers and query fot the API request."""
headers = {'X-Access-Token': api_token,
'Accept-Encoding': 'gzip'}
data = FormData()
data.add_field('currency', CURRENCY)
data.add_field('origin', ORIGIN)
data.add_field('destination', DESTINATION)
data.add_field('show_to_affiliates', SHOW_TO_AFFILIATES)
data.add_field('trip_duration', TRIP_DURATION)
return headers, data
async def main():
"""Get run the code."""
if len(sys.argv) != 2:
print('Usage: api_caller.py <your_api_token>')
sys.exit(1)
return
api_token = sys.argv[1]
headers, data = prepare_request(api_token)
api = TicketsApi(headers)
response = await api.get_data(data)
if response.get('success', None):
LOGGER.info('API has returned %s items', len(response['data']))
try:
count_rows = log_maker(response)
LOGGER.info('%s rows have been saved into %s',
count_rows,
TARGET_FILE)
except Exception as e:
LOGGER.error('Oops! Request result was not saved to file. %s',
str(e))
else:
LOGGER.error('Oops! API request was unsuccessful %s!', response)
เจเจเฉฐเจ เจฆเฉเจเจ เจธเจนเฉ เจธเฉเจเจฟเฉฐเจเจพเจ เจ เจคเฉ เจเจพเจฐเจเจเฉเจธเจผเจฒเจคเจพ เจฆเฉ เจเจพเจเจ เจเจฐเจจ เจฒเจ, เจเจ api_caller.py เจธเจเฉเจฐเจฟเจชเจ เจฆเฉ เจเจพเจเจ เจเจฐเฉเจ:
sudo ./api_caller.py TOKEN
เจ
เจคเฉ เจ
เจธเฉเจ เจเจเฉฐเจ เจฒเฉเจเจธ เจ
เจคเฉ เจเจ
เจฐเจฒเจพเจเจจ_เจเจฟเจเจเจธ เจกเฉเจเจพ เจธเจเฉเจฐเฉเจฎ เจตเจฟเฉฑเจ เจจเจฟเจเจฐเจพเจจเฉ เจเฉเจฌ เจตเจฟเฉฑเจ เจเฉฐเจฎ เจฆเฉ เจจเจคเฉเจเฉ เจจเฉเฉฐ เจฆเฉเจเจฆเฉ เจนเจพเจ:
tail -f /var/log/aws-kinesis-agent/aws-kinesis-agent.log
เจเจฟเจตเฉเจ เจเจฟ เจคเฉเจธเฉเจ เจฆเฉเจ เจธเจเจฆเฉ เจนเฉ, เจธเจญ เจเฉเจ เจเฉฐเจฎ เจเจฐเจฆเจพ เจนเฉ เจ
เจคเฉ เจเจพเจเจจเฉเจธเจฟเจธ เจเจเฉฐเจ เจธเจซเจฒเจคเจพเจชเฉเจฐเจตเจ เจธเจเฉเจฐเฉเจฎ เจจเฉเฉฐ เจกเฉเจเจพ เจญเฉเจเจฆเจพ เจนเฉ. เจเจ เจนเฉเจฃ เจเจชเจคเจเจพเจฐ เจฆเฉ เจธเฉฐเจฐเจเจจเจพ เจเจฐเฉเจเฅค
เจเจพเจเจจเฉเจธเจฟเจธ เจกเฉเจเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจธเจฅเจพเจชเจค เจเจฐเจจเจพ
เจเจ เจชเฉเจฐเฉ เจธเจฟเจธเจเจฎ เจฆเฉ เจเฉเจเจฆเจฐเฉ เจนเจฟเฉฑเจธเฉ เจตเฉฑเจฒ เจตเจงเฉเจ - Kinesis_analytics_airlines_app เจจเจพเจฎเจ Kinesis เจกเฉเจเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจตเจฟเฉฑเจ เจเฉฑเจ เจจเจตเฉเจ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจฌเจฃเจพเจ:
Kinesis เจกเจพเจเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจคเฉเจนเจพเจจเฉเฉฐ SQL เจญเจพเจธเจผเจพ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ Kinesis เจธเจเฉเจฐเฉเจฎ เจคเฉเจ เจฐเฉเจ
เจฒ-เจเจพเจเจฎ เจกเจพเจเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจจ เจฆเฉ เจเจเจพเจเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉเฅค เจเจน เจเฉฑเจ เจชเฉเจฐเฉ เจคเจฐเฉเจนเจพเจ เจเจเฉเจธเจเฉเจฒเจฟเฉฐเจ เจธเฉเจตเจพ เจนเฉ (เจเจฟเจจเฉเจธเจฟเจธ เจธเจเฉเจฐเฉเจฎเจเจผ เจฆเฉ เจเจฒเจ) เจเฉ:
- เจคเฉเจนเจพเจจเฉเฉฐ เจธเจฐเฉเจค เจกเฉเจเจพ เจฒเจ เจฌเฉเจจเจคเฉเจเจ เจฆเฉ เจ เจงเจพเจฐ เจคเฉ เจจเจตเฉเจเจ เจธเจเฉเจฐเฉเจฎเจพเจ (เจเจเจเจชเฉเฉฑเจ เจธเจเฉเจฐเฉเจฎ) เจฌเจฃเจพเจเจฃ เจฆเฉ เจเจเจฟเจ เจฆเจฟเฉฐเจฆเจพ เจนเฉ;
- เจเจชเจฒเฉเจเฉเจธเจผเจจเจพเจ เจฆเฉ เจเฉฑเจฒเจฆเฉ เจธเจฎเฉเจ เจเจเจเจ เจเจฒเจคเฉเจเจ เจจเจพเจฒ เจเฉฑเจ เจธเจเฉเจฐเฉเจฎ เจชเฉเจฐเจฆเจพเจจ เจเจฐเจฆเจพ เจนเฉ (เจเจฒเจคเฉ เจธเจเฉเจฐเฉเจฎ);
- เจเจจเจชเฉเจ เจกเฉเจเจพ เจธเจเฉเจฎ เจจเฉเฉฐ เจเจเฉเจฎเฉเจเจฟเจ เจนเฉ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐ เจธเจเจฆเจพ เจนเฉ (เจเฉ เจฒเฉเฉ เจนเฉเจตเฉ เจคเจพเจ เจเจธเจจเฉเฉฐ เจนเฉฑเจฅเฉเจ เจฎเฉเฉ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉ)เฅค
เจเจน เจเฉเจ เจธเจธเจคเฉ เจธเฉเจตเจพ เจจเจนเฉเจ เจนเฉ - 0.11 USD เจชเฉเจฐเจคเฉ เจเฉฐเจเจพ เจเฉฐเจฎ, เจเจธ เจฒเจ เจคเฉเจนเจพเจจเฉเฉฐ เจเจธเจจเฉเฉฐ เจงเจฟเจเจจ เจจเจพเจฒ เจตเจฐเจคเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ เจ เจคเฉ เจเจฆเฉเจ เจคเฉเจธเฉเจ เจชเฉเจฐเจพ เจเจฐ เจฒเฉเจเจฆเฉ เจนเฉ เจคเจพเจ เจเจธเจจเฉเฉฐ เจฎเจฟเจเจพเจเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉเฅค
เจเจ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจจเฉเฉฐ เจกเฉเจเจพ เจธเจฐเฉเจค เจจเจพเจฒ เจเจจเฉเจเจ เจเจฐเฉเจ:
เจเจน เจธเจเฉเจฐเฉเจฎ เจเฉเจฃเฉ เจเจฟเจธ เจจเจพเจฒ เจ
เจธเฉเจ เจเฉเฉเจจ เจเจพ เจฐเจนเฉ เจนเจพเจ (airline_tickets):
เจ
เฉฑเจเฉ, เจคเฉเจนเจพเจจเฉเฉฐ เจเฉฑเจ เจจเจตเฉเจ IAM เจฐเฉเจฒ เจจเฉฑเจฅเฉ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ เจคเจพเจ เจเฉ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจธเจเฉเจฐเฉเจฎ เจคเฉเจ เจชเฉเฉเจน เจธเจเฉ เจ
เจคเฉ เจธเจเฉเจฐเฉเจฎ เจตเจฟเฉฑเจ เจฒเจฟเจ เจธเจเฉเฅค เจ
เจเจฟเจนเจพ เจเจฐเจจ เจฒเจ, เจชเจนเฉเฉฐเจ เจ
เจจเฉเจฎเจคเฉเจเจ เจฌเจฒเจพเจ เจตเจฟเฉฑเจ เจเฉเจ เจตเฉ เจจเจพ เจฌเจฆเจฒเจฃเจพ เจเจพเจซเจผเฉ เจนเฉ:
เจนเฉเจฃ เจธเจเฉเจฐเฉเจฎ เจตเจฟเฉฑเจ เจกเฉเจเจพ เจธเจเฉเจฎเจพ เจฆเฉ เจเฉเจ เจฒเจ เจฌเฉเจจเจคเฉ เจเจฐเฉเจ; เจ
เจเจฟเจนเจพ เจเจฐเจจ เจฒเจ, "เจกเจฟเจธเจเจตเจฐ เจธเจเฉเจฎเจพ" เจฌเจเจจ 'เจคเฉ เจเจฒเจฟเฉฑเจ เจเจฐเฉเฅค เจจเจคเฉเจเฉ เจตเจเฉเจ, IAM เจญเฉเจฎเจฟเจเจพ เจจเฉเฉฐ เจ
เฉฑเจชเจกเฉเจ เจเฉเจคเจพ เจเจพเจตเฉเจเจพ (เจเฉฑเจ เจจเจตเจพเจ เจฌเจฃเจพเจเจ เจเจพเจตเฉเจเจพ) เจ
เจคเฉ เจธเจเฉเจฎเจพ เจเฉเจ เจจเฉเฉฐ เจเจธ เจกเฉเจเจพ เจคเฉเจ เจฒเจพเจเจ เจเฉเจคเจพ เจเจพเจตเฉเจเจพ เจเฉ เจชเจนเจฟเจฒเจพเจ เจนเฉ เจธเจเฉเจฐเฉเจฎ เจตเจฟเฉฑเจ เจ เจเฉเฉฑเจเจพ เจนเฉ:
เจนเฉเจฃ เจคเฉเจนเจพเจจเฉเฉฐ SQL เจเจกเฉเจเจฐ 'เจคเฉ เจเจพเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉเฅค เจเจฆเฉเจ เจคเฉเจธเฉเจ เจเจธ เจฌเจเจจ 'เจคเฉ เจเจฒเจฟเฉฑเจ เจเจฐเจฆเฉ เจนเฉ, เจคเจพเจ เจเฉฑเจ เจตเจฟเฉฐเจกเฉ เจฆเจฟเจเจพเจ เจฆเฉเจตเฉเจเฉ เจเฉ เจคเฉเจนเจพเจจเฉเฉฐ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจฒเจพเจเจ เจเจฐเจจ เจฒเจ เจเจนเฉเจเฉ - เจเฉเจฃเฉ เจเจฟ เจคเฉเจธเฉเจ เจเฉ เจฒเจพเจเจ เจเจฐเจจเจพ เจเจพเจนเฉเฉฐเจฆเฉ เจนเฉ:
SQL เจธเฉฐเจชเจพเจฆเจ เจตเจฟเฉฐเจกเฉ เจตเจฟเฉฑเจ เจนเฉเจ เจฆเจฟเฉฑเจคเฉ เจธเจงเจพเจฐเจจ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจชเจพเจ เจ
เจคเฉ เจธเฉเจฐเฉฑเจเจฟเจ
เจค เจเจฐเฉ เจ
เจคเฉ SQL เจเจฒเจพเจ 'เจคเฉ เจเจฒเจฟเฉฑเจ เจเจฐเฉ:
CREATE OR REPLACE STREAM "DESTINATION_SQL_STREAM" ("cost" DOUBLE, "gate" VARCHAR(16));
CREATE OR REPLACE PUMP "STREAM_PUMP" AS INSERT INTO "DESTINATION_SQL_STREAM"
SELECT STREAM "cost", "gate"
FROM "SOURCE_SQL_STREAM_001"
WHERE "cost" < 5000
and "gate" = 'Aeroflot';
เจฐเจฟเจฒเฉเจธเจผเจจเจฒ เจกเฉเจเจพเจฌเฉเจธ เจตเจฟเฉฑเจ, เจคเฉเจธเฉเจ เจฐเจฟเจเจพเจฐเจกเจพเจ เจจเฉเฉฐ เจเฉเฉเจจ เจฒเจ INSERT เจธเจเฉเจเจฎเฉเจเจเจพเจ เจ เจคเฉ เจชเฉเฉฑเจเจเจฟเฉฑเจ เจกเฉเจเจพ เจฒเจ เจเฉฑเจ SELECT เจธเจเฉเจเจฎเฉเจเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ เจเฉเจฌเจฒเจพเจ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจฆเฉ เจนเฉเฅค เจเจฎเจพเจเจผเจพเจจ เจเจพเจเจจเฉเจธเจฟเจธ เจกเฉเจเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจตเจฟเฉฑเจ, เจคเฉเจธเฉเจ เจธเจเฉเจฐเฉเจฎเจเจผ (เจธเจเฉเจฐเฉเจฎ) เจ เจคเฉ เจชเฉฐเจชเจพเจ (เจชเฉฐเจชเจธ) เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจฆเฉ เจนเฉ - เจฒเจเจพเจคเจพเจฐ เจธเฉฐเจฎเจฟเจฒเจฟเจค เจเจฐเจจ เจฆเฉเจเจ เจฌเฉเจจเจคเฉเจเจ เจเฉ เจเฉฑเจ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจตเจฟเฉฑเจ เจเฉฑเจ เจธเจเฉเจฐเฉเจฎ เจคเฉเจ เจกเฉเจเจพ เจจเฉเฉฐ เจฆเฉเจเฉ เจธเจเฉเจฐเฉเจฎ เจตเจฟเฉฑเจ เจธเจผเจพเจฎเจฒ เจเจฐเจฆเฉเจเจ เจนเจจเฅค
เจเจชเจฐเฉเจเจค เจชเฉเจธเจผ เจเฉเจคเฉ SQL เจชเฉเฉฑเจเจเจฟเฉฑเจ เจชเฉฐเจ เจนเจเจผเจพเจฐ เจฐเฉเจฌเจฒ เจคเฉเจ เจเฉฑเจ เจเฉเจฎเจค 'เจคเฉ เจเจฐเฉเจซเจฒเฉเจ เจเจฟเจเจเจพเจ เจฆเฉ เจเฉเจ เจเจฐเจฆเฉ เจนเฉเฅค เจเจนเจจเจพเจ เจธเจผเจฐเจคเจพเจ เจจเฉเฉฐ เจชเฉเจฐเจพ เจเจฐเจจ เจตเจพเจฒเฉ เจธเจพเจฐเฉ เจฐเจฟเจเจพเจฐเจกเจพเจ เจจเฉเฉฐ DESTINATION_SQL_STREAM เจธเจเฉเจฐเฉเจฎ เจตเจฟเฉฑเจ เจฐเฉฑเจเจฟเจ เจเจพเจตเฉเจเจพเฅค
เจฎเฉฐเจเจผเจฟเจฒ เจฌเจฒเจพเจ เจตเจฟเฉฑเจ, เจตเจฟเจธเจผเฉเจธเจผ_เจธเจเฉเจฐเฉเจฎ เจธเจเฉเจฐเฉเจฎ เจฆเฉ เจเฉเจฃ เจเจฐเฉ, เจ
เจคเฉ เจเจจ-เจเจชเจฒเฉเจเฉเจธเจผเจจ เจธเจเฉเจฐเฉเจฎ เจจเจพเจฎ DESTINATION_SQL_STREAM เจกเฉเจฐเฉเจช-เจกเจพเจเจจ เจธเฉเจเฉ เจตเจฟเฉฑเจ:
เจธเจพเจฐเฉเจเจ เจนเฉเจฐเจพเจซเฉเจฐเฉเจเจ เจฆเจพ เจจเจคเฉเจเจพ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจคเจธเจตเฉเจฐ เจฆเฉ เจธเจฎเจพเจจ เจนเฉเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ:
เจเฉฑเจ SNS เจตเจฟเจธเจผเฉ เจจเฉเฉฐ เจฌเจฃเจพเจเจฃเจพ เจ เจคเฉ เจเจพเจนเจเฉ เจฒเฉเจฃเจพ
เจธเจงเจพเจฐเจจ เจธเฉเจเจจเจพ เจธเฉเจตเจพ 'เจคเฉ เจเจพเจ เจ เจคเฉ เจเฉฑเจฅเฉ เจเจ เจฐเจฒเจพเจเจจเจเจผ เจจเจพเจฎ เจจเจพเจฒ เจเฉฑเจ เจจเจตเจพเจ เจตเจฟเจธเจผเจพ เจฌเจฃเจพเจ:
เจเจธ เจตเจฟเจธเจผเฉ เจฆเฉ เจเจพเจนเจเฉ เจฒเจ เจ
เจคเฉ เจฎเฉเจฌเจพเจเจฒ เจซเจผเฉเจจ เจจเฉฐเจฌเจฐ เจฆเฉฑเจธเฉ เจเจฟเจธ 'เจคเฉ SMS เจธเฉเจเจจเจพเจตเจพเจ เจญเฉเจเฉเจเจ เจเจพเจฃเจเฉเจเจ:
DynamoDB เจตเจฟเฉฑเจ เจเฉฑเจ เจธเจพเจฐเจฃเฉ เจฌเจฃเจพเจ
เจเจนเจจเจพเจ เจฆเฉ airline_tickets เจธเจเฉเจฐเฉเจฎ เจคเฉเจ เจเฉฑเจเฉ เจกเฉเจเจพ เจจเฉเฉฐ เจธเจเฉเจฐ เจเจฐเจจ เจฒเจ, เจเจฒเฉ เจเจธเฉ เจจเจพเจฎ เจจเจพเจฒ DynamoDB เจตเจฟเฉฑเจ เจเฉฑเจ เจธเจพเจฐเจฃเฉ เจฌเจฃเจพเจเจเฅค เจ เจธเฉเจ เจชเฉเจฐเจพเจเจฎเจฐเฉ เจเฉเฉฐเจเฉ เจตเจเฉเจ record_id เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจพเจเจเฉ:
เจฒเจพเจเจฌเจกเจพ เจซเฉฐเจเจธเจผเจจ เจเฉเจฒเฉเจเจเจฐ เจฌเจฃเจพเจเจฃเจพ
เจเจฒเฉ เจเจฒเฉเจเจเจฐ เจจเจพเจฎเจ เจเฉฑเจ เจฒเฉเจเจฌเจกเจพ เจซเฉฐเจเจธเจผเจจ เจฌเจฃเจพเจเจเจฆเฉ เจนเจพเจ, เจเจฟเจธเจฆเจพ เจเฉฐเจฎ เจเจ เจฐเจฒเจพเจเจจ_เจเจฟเจเจเจธ เจธเจเฉเจฐเฉเจฎ เจจเฉเฉฐ เจชเฉเจฒ เจเจฐเจจเจพ เจนเฉเจตเฉเจเจพ เจ เจคเฉ, เจเฉเจเจฐ เจเฉฑเจฅเฉ เจจเจตเฉเจ เจฐเจฟเจเจพเจฐเจก เจฎเจฟเจฒเฉ เจนเจจ, เจคเจพเจ เจเจนเจจเจพเจ เจฐเจฟเจเจพเจฐเจกเจพเจ เจจเฉเฉฐ เจกเจพเจเจจเจพเจฎเฉเจกเฉเจฌเฉ เจเฉเจฌเจฒ เจตเจฟเฉฑเจ เจธเจผเจพเจฎเจฒ เจเจฐเฉเฅค เจธเจชเฉฑเจธเจผเจ เจคเฉเจฐ 'เจคเฉ, เจกเจฟเจซเฉเจฒเจ เจ เจงเจฟเจเจพเจฐเจพเจ เจคเฉเจ เจเจฒเจพเจตเจพ, เจเจธ เจฒเจพเจเจฌเจกเจพ เจเฉเจฒ เจเจพเจเจจเฉเจธเจฟเจธ เจกเฉเจเจพ เจธเจเฉเจฐเฉเจฎ เจคเฉฑเจ เจชเฉเฉเจนเจจ เจฆเฉ เจชเจนเฉเฉฐเจ เจ เจคเฉ เจกเจพเจเจจเจพเจฎเฉเจกเฉเจฌเฉ เจคเฉฑเจ เจฒเจฟเจเจฃ เจฆเฉ เจชเจนเฉเฉฐเจ เจนเฉเจฃเฉ เจเจพเจนเฉเจฆเฉ เจนเฉเฅค
เจเฉเจฒเฉเจเจเจฐ เจฒเจพเจเจฌเจกเจพ เจซเฉฐเจเจธเจผเจจ เจฒเจ เจเฉฑเจ IAM เจฐเฉเจฒ เจฌเจฃเจพเจเจฃเจพ
เจชเจนเจฟเจฒเจพเจ, เจเจ เจฒเฉเจเจฌเจกเจพ เจฒเจ เจเฉฑเจ เจจเจตเฉเจ IAM เจญเฉเจฎเจฟเจเจพ เจฌเจฃเจพเจเจ เจเจฟเจธเจฆเจพ เจจเจพเจฎ Lambda-TicketsProcessingRole เจนเฉ:
เจเฉเจธเจ เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจชเจนเจฟเจฒเจพเจ เจคเฉเจ เจธเฉฐเจฐเจเจฟเจค AmazonKinesisReadOnlyAccess เจ
เจคเฉ AmazonDynamoDBFullAccess เจจเฉเจคเฉเจเจ เจเจพเจซเจผเฉ เจขเฉเจเจตเฉเจเจ เจนเจจ, เจเจฟเจตเฉเจ เจเจฟ เจนเฉเจ เจพเจ เจคเจธเจตเฉเจฐ เจตเจฟเฉฑเจ เจฆเจฟเจเจพเจเจ เจเจฟเจ เจนเฉ:
เจเจฆเฉเจ เจจเจตเฉเจเจ เจเจเจเจฐเฉเจเจ เจเจ
เจฐเจฒเจพเจเจจ_เจธเจเฉเจฐเฉเจฎ เจตเจฟเฉฑเจ เจฆเจพเจเจฒ เจนเฉเฉฐเจฆเฉเจเจ เจนเจจ เจคเจพเจ เจเจธ เจฒเจพเจเจฌเจกเจพ เจจเฉเฉฐ เจเจฟเจจเฉเจธเจฟเจธ เจคเฉเจ เจเฉฑเจ เจเจฐเจฟเฉฑเจเจฐ เจฆเฉเจเจฐเจพ เจฒเจพเจเจ เจเฉเจคเจพ เจเจพเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ, เจเจธ เจฒเจ เจธเจพเจจเฉเฉฐ เจเฉฑเจ เจจเจตเจพเจ เจเจฐเจฟเฉฑเจเจฐ เจเฉเฉเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ:
เจเฉ เจเฉเจ เจฐเจนเจฟเฉฐเจฆเจพ เจนเฉ เจเจน เจเฉเจก เจจเฉเฉฐ เจธเฉฐเจฎเจฟเจฒเจฟเจค เจเจฐเจจเจพ เจ
เจคเฉ เจฒเจพเจเจฌเจกเจพ เจจเฉเฉฐ เจธเฉเจฐเฉฑเจเจฟเจ
เจค เจเจฐเจจเจพ เจนเฉ.
"""Parsing the stream and inserting into the DynamoDB table."""
import base64
import json
import boto3
from decimal import Decimal
DYNAMO_DB = boto3.resource('dynamodb')
TABLE_NAME = 'airline_tickets'
class TicketsParser:
"""Parsing info from the Stream."""
def __init__(self, table_name, records):
"""Init method."""
self.table = DYNAMO_DB.Table(table_name)
self.json_data = TicketsParser.get_json_data(records)
@staticmethod
def get_json_data(records):
"""Return deserialized data from the stream."""
decoded_record_data = ([base64.b64decode(record['kinesis']['data'])
for record in records])
json_data = ([json.loads(decoded_record)
for decoded_record in decoded_record_data])
return json_data
@staticmethod
def get_item_from_json(json_item):
"""Pre-process the json data."""
new_item = {
'record_id': json_item.get('record_id'),
'cost': Decimal(json_item.get('cost')),
'trip_class': json_item.get('trip_class'),
'show_to_affiliates': json_item.get('show_to_affiliates'),
'origin': json_item.get('origin'),
'number_of_changes': int(json_item.get('number_of_changes')),
'gate': json_item.get('gate'),
'found_at': json_item.get('found_at'),
'duration': int(json_item.get('duration')),
'distance': int(json_item.get('distance')),
'destination': json_item.get('destination'),
'depart_date': json_item.get('depart_date'),
'actual': json_item.get('actual')
}
return new_item
def run(self):
"""Batch insert into the table."""
with self.table.batch_writer() as batch_writer:
for item in self.json_data:
dynamodb_item = TicketsParser.get_item_from_json(item)
batch_writer.put_item(dynamodb_item)
print('Has been added ', len(self.json_data), 'items')
def lambda_handler(event, context):
"""Parse the stream and insert into the DynamoDB table."""
print('Got event:', event)
parser = TicketsParser(TABLE_NAME, event['Records'])
parser.run()
เจเฉฑเจ lambda เจซเฉฐเจเจธเจผเจจ เจจเฉเจเฉเจซเจพเจเจฐ เจฌเจฃเจพเจเจฃเจพ
เจฆเฉเจเจพ เจฒเจพเจเจฌเจกเจพ เจซเฉฐเจเจธเจผเจจ, เจเฉ เจฆเฉเจเฉ เจธเจเฉเจฐเฉเจฎ (เจตเจฟเจธเจผเฉเจธเจผ_เจธเจเฉเจฐเฉเจฎ) เจฆเฉ เจจเจฟเจเจฐเจพเจจเฉ เจเจฐเฉเจเจพ เจ เจคเฉ SNS เจจเฉเฉฐ เจเฉฑเจ เจจเฉเจเฉเจซเจฟเจเฉเจธเจผเจจ เจญเฉเจเฉเจเจพ, เจเจธเฉ เจคเจฐเฉเจนเจพเจ เจฌเจฃเจพเจเจ เจเจฟเจ เจนเฉเฅค เจเจธ เจฒเจ, เจเจธ เจฒเจพเจเจฌเจกเจพ เจเฉเจฒ เจเจพเจเจจเฉเจธเจฟเจธ เจคเฉเจ เจชเฉเฉเจนเจจ เจ เจคเฉ เจฆเจฟเฉฑเจคเฉ เจเจ SNS เจตเจฟเจธเจผเฉ 'เจคเฉ เจธเฉฐเจฆเฉเจธเจผ เจญเฉเจเจฃ เจฒเจ เจชเจนเฉเฉฐเจ เจนเฉเจฃเฉ เจเจพเจนเฉเจฆเฉ เจนเฉ, เจเฉ เจซเจฟเจฐ SNS เจธเฉเจตเจพ เจฆเฉเจเจฐเจพ เจเจธ เจตเจฟเจธเจผเฉ เจฆเฉ เจธเจพเจฐเฉ เจเจพเจนเจเจพเจ (เจเจฎเฉเจฒ, SMS, เจเจฆเจฟ) เจจเฉเฉฐ เจญเฉเจเฉ เจเจพเจฃเจเฉเฅค
เจเฉฑเจ IAM เจฐเฉเจฒ เจฌเจฃเจพเจเจฃเจพ
เจชเจนเจฟเจฒเจพเจ, เจ
เจธเฉเจ เจเจธ เจฒเจพเจเจฌเจกเจพ เจฒเจ IAM เจฐเฉเจฒ Lambda-KinesisAlarm เจฌเจฃเจพเจเจเจฆเฉ เจนเจพเจ, เจ
เจคเฉ เจซเจฟเจฐ เจเจธ เจฐเฉเจฒ เจจเฉเฉฐ เจฌเจฃเจพเจ เจเจพ เจฐเจนเฉ เจ
เจฒเจพเจฐเจฎ_เจจเฉเจเฉเจซเจพเจเจฐ เจฒเจพเจเจฌเจกเจพ เจจเฉเฉฐ เจธเฉเจเจชเจฆเฉ เจนเจพเจ:
เจเจธ เจฒเจพเจเจฌเจกเจพ เจจเฉเฉฐ เจตเจฟเจธเจผเฉเจธเจผ_เจธเจเฉเจฐเฉเจฎ เจตเจฟเฉฑเจ เจฆเจพเจเจฒ เจนเฉเจฃ เจฒเจ เจจเจตเฉเจ เจฐเจฟเจเจพเจฐเจกเจพเจ เจฒเจ เจเฉฑเจ เจเฉเจฐเจฟเจเจฐ 'เจคเฉ เจเฉฐเจฎ เจเจฐเจจเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ, เจเจธเจฒเจ เจคเฉเจนเจพเจจเฉเฉฐ เจเฉเจฐเจฟเจเจฐ เจจเฉเฉฐ เจเจธเฉ เจคเจฐเฉเจนเจพเจ เจธเฉฐเจฐเจเจฟเจค เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ เจเจฟเจตเฉเจ เจ
เจธเฉเจ เจเฉเจฒเฉเจเจเจฐ เจฒเจพเจเจฌเจกเจพ เจฒเจ เจเฉเจคเจพ เจธเฉเฅค
เจเจธ เจฒเจพเจเจฌเจกเจพ เจจเฉเฉฐ เจเฉเจเจซเจฟเจเจฐ เจเจฐเจจเจพ เจเจธเจพเจจ เจฌเจฃเจพเจเจฃ เจฒเจ, เจเจ เจเฉฑเจ เจจเจตเจพเจ เจตเจพเจคเจพเจตเจฐเจฃ เจตเฉเจฐเฉเจเจฌเจฒ เจชเฉเจธเจผ เจเจฐเฉเจ - TOPIC_ARN, เจเจฟเฉฑเจฅเฉ เจ เจธเฉเจ เจเจ เจฐเจฒเจพเจเจจเจเจผ เจตเจฟเจธเจผเฉ เจฆเจพ ANR (เจเจฎเจพเจเจผเจพเจจ เจฐเจฟเจเฉเจฐเจธ เจจเจพเจฎ) เจฐเฉฑเจเจฆเฉ เจนเจพเจ:
เจ
เจคเฉ เจฒเจพเจเจฌเจกเจพ เจเฉเจก เจชเจพเจ, เจเจน เจฌเจฟเจฒเจเฉเจฒ เจตเฉ เจเฉเฉฐเจเจฒเจฆเจพเจฐ เจจเจนเฉเจ เจนเฉ:
import boto3
import base64
import os
SNS_CLIENT = boto3.client('sns')
TOPIC_ARN = os.environ['TOPIC_ARN']
def lambda_handler(event, context):
try:
SNS_CLIENT.publish(TopicArn=TOPIC_ARN,
Message='Hi! I have found an interesting stuff!',
Subject='Airline tickets alarm')
print('Alarm message has been successfully delivered')
except Exception as err:
print('Delivery failure', str(err))
เจ เจเจฟเจนเจพ เจฒเจเจฆเจพ เจนเฉ เจเจฟ เจเจน เจเจน เจฅเจพเจ เจนเฉ เจเจฟเฉฑเจฅเฉ เจฎเฉเจจเฉเจ เจฒ เจธเจฟเจธเจเจฎ เจธเฉฐเจฐเจเจจเจพ เจชเฉเจฐเฉ เจนเฉเจ เจนเฉเฅค เจเฉ เจเฉเจ เจฌเจเจฟเจ เจนเฉ เจเจน เจเฉเจธเจ เจเจฐเจจเจพ เจ เจคเฉ เจเจน เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจฃเจพ เจนเฉ เจเจฟ เจ เจธเฉเจ เจธเจญ เจเฉเจ เจธเจนเฉ เจขเฉฐเจ เจจเจพเจฒ เจเฉเจเจซเจฟเจเจฐ เจเฉเจคเจพ เจนเฉเฅค
เจเฉเจฐเจพเจซเจพเจฐเจฎ เจเฉเจก เจคเฉเจ เจคเฉเจจเจพเจค เจเจฐเฉ
เจเจผเจฐเฉเจฐเฉ เจคเจฟเจเจฐเฉ
เจคเฉเจธเฉเจ เจตเฉฐเจก เจจเฉเฉฐ เจกเจพเจเจจเจฒเฉเจก เจเจฐ เจธเจเจฆเฉ เจนเฉ
เจเจฟเจธ เจจเฉเฉฐ เจเจฒเจพเจเจฃ เจฒเจ
เจชเฉเจฐเฉเจเฉเจเจ เจฆเจพ เจชเฉเจฐเจพ เจเฉเจก เจนเฉ
เจเจน เจฆเฉเจเจฃ เจฒเจ เจเจฟ เจเฉเจฐเจพเจซเจพเจฐเจฎ เจเจธ เจธเจฎเฉเจ เจเจฒเจพเจเจก เจตเจฟเฉฑเจ เจธเจพเจกเฉ เจฒเจ เจเฉ เจฌเจฃเจพ เจฐเจฟเจนเจพ เจนเฉ, เจชเฉเจฐเฉ เจฌเฉเจจเจฟเจเจฆเฉ เจขเจพเจเจเฉ เจจเฉเฉฐ เจคเฉเจจเจพเจค เจเจฐเจจ เจคเฉเจ เจชเจนเจฟเจฒเจพเจ เจฏเฉเจเจจเจพ เจเจฎเจพเจเจก เจจเฉเฉฐ เจเจฒเจพเจเจฃเจพ เจเฉฑเจ เจตเจงเฉเจ เจ เจญเจฟเจเจธ เจนเฉ:
terraform.exe plan
เจคเฉเจนเจพเจจเฉเฉฐ เจธเฉเจเจจเจพเจตเจพเจ เจญเฉเจเจฃ เจฒเจ เจเฉฑเจ เจซเจผเฉเจจ เจจเฉฐเจฌเจฐ เจฆเจฐเจ เจเจฐเจจ เจฒเจ เจเจฟเจนเจพ เจเจพเจตเฉเจเจพเฅค เจเจธ เจชเฉเจพเจ 'เจคเฉ เจเจธ เจจเฉเฉฐ เจฆเจพเจเจฒ เจเจฐเจจเจพ เจเจผเจฐเฉเจฐเฉ เจจเจนเฉเจ เจนเฉ.
เจชเฉเจฐเฉเจเจฐเจพเจฎ เจฆเฉ เจธเฉฐเจเจพเจฒเจจ เจฏเฉเจเจจเจพ เจฆเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจจ เจคเฉเจ เจฌเจพเจ
เจฆ, เจ
เจธเฉเจ เจธเจฐเฉเจค เจฌเจฃเจพเจเจฃเจพ เจธเจผเฉเจฐเฉ เจเจฐ เจธเจเจฆเฉ เจนเจพเจ:
terraform.exe apply
เจเจธ เจเจฎเจพเจเจก เจจเฉเฉฐ เจญเฉเจเจฃ เจคเฉเจ เจฌเจพเจ เจฆ, เจคเฉเจนเจพเจจเฉเฉฐ เจฆเฉเจฌเจพเจฐเจพ เจเฉฑเจ เจซเจผเฉเจจ เจจเฉฐเจฌเจฐ เจฆเจฐเจ เจเจฐเจจ เจฒเจ เจเจฟเจนเจพ เจเจพเจตเฉเจเจพ; เจเจฆเฉเจ เจ เจธเจฒ เจตเจฟเฉฑเจ เจเจพเจฐเจตเจพเจเจเจ เจเจฐเจจ เจฌเจพเจฐเฉ เจเฉเจ เจธเจตเจพเจฒ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจนเฉเฉฐเจฆเจพ เจนเฉ เจคเจพเจ "เจนเจพเจ" เจกเจพเจเจฒ เจเจฐเฉเฅค เจเจน เจคเฉเจนเจพเจจเฉเฉฐ เจชเฉเจฐเจพ เจฌเฉเจจเจฟเจเจฆเฉ เจขเจพเจเจเจพ เจธเจฅเจพเจชเจค เจเจฐเจจ, EC2 เจฆเฉเจเจ เจธเจพเจฐเฉเจเจ เจฒเฉเฉเฉเจเจฆเฉเจเจ เจธเฉฐเจฐเจเจจเจพเจตเจพเจ เจจเฉเฉฐ เจชเฉเจฐเจพ เจเจฐเจจ, เจฒเฉเจเจฌเจกเจพ เจซเฉฐเจเจธเจผเจจเจพเจ เจจเฉเฉฐ เจฒเจพเจเฉ เจเจฐเจจ, เจเจฆเจฟ เจฆเฉ เจเจเจฟเจ เจฆเฉเจตเฉเจเจพเฅค
เจเฉเจฐเจพเจซเจพเจฐเจฎ เจเฉเจก เจฆเฉเจเจฐเจพ เจธเจพเจฐเฉ เจธเจฐเฉเจคเจพเจ เจจเฉเฉฐ เจธเจซเจฒเจคเจพเจชเฉเจฐเจตเจ เจฌเจฃเจพเจ เจเจพเจฃ เจคเฉเจ เจฌเจพเจ เจฆ, เจคเฉเจนเจพเจจเฉเฉฐ เจเจพเจเจจเฉเจธเจฟเจธ เจเจจเจพเจฒเจฟเจเจฟเจเจธ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจฆเฉ เจตเฉเจฐเจตเจฟเจเจ เจตเจฟเฉฑเจ เจเจพเจฃ เจฆเฉ เจเจผเจฐเฉเจฐเจค เจนเฉ (เจฌเจฆเจเจฟเจธเจฎเจคเฉ เจจเจพเจฒ, เจฎเฉเจจเฉเฉฐ เจเจน เจจเจนเฉเจ เจชเจคเจพ เจฒเฉฑเจเจพ เจเจฟ เจเจน เจเฉเจก เจคเฉเจ เจธเจฟเฉฑเจงเจพ เจเจฟเจตเฉเจ เจเจฐเจจเจพ เจนเฉ)เฅค
เจเจชเจฒเฉเจเฉเจธเจผเจจ เจฒเจพเจเจ เจเจฐเฉ:
เจเจธ เจคเฉเจ เจฌเจพเจ
เจฆ, เจคเฉเจนเจพเจจเฉเฉฐ เจกเฉเจฐเฉเจช-เจกเจพเจเจจ เจธเฉเจเฉ เจตเจฟเฉฑเจเฉเจ เจเฉเจฃ เจเฉ เจธเจชเฉฑเจธเจผเจ เจคเฉเจฐ 'เจคเฉ เจเจจ-เจเจชเจฒเฉเจเฉเจธเจผเจจ เจธเจเฉเจฐเฉเจฎ เจจเจพเจฎ เจธเฉเฉฑเจ เจเจฐเจจเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ:
เจนเฉเจฃ เจธเจญ เจเฉเจ เจเจพเจฃ เจฒเจ เจคเจฟเจเจฐ เจนเฉ.
เจเจชเจฒเฉเจเฉเจธเจผเจจ เจฆเฉ เจเจพเจเจ เจเจฐ เจฐเจฟเจนเจพ เจนเฉ
เจเจพเจนเฉ เจคเฉเจธเฉเจ เจธเจฟเจธเจเจฎ เจจเฉเฉฐ เจนเฉฑเจฅเฉเจ เจเจพเจ เจเฉเจฐเจพเจซเจพเจฐเจฎ เจเฉเจก เจฐเจพเจนเฉเจ เจคเฉเจจเจพเจค เจเฉเจคเจพ เจนเฉเจตเฉ, เจเจน เจเจนเฉ เจเฉฐเจฎ เจเจฐเฉเจเจพเฅค
เจ เจธเฉเจ SSH เจฐเจพเจนเฉเจ EC2 เจตเจฐเจเฉเจ เจฒ เจฎเจธเจผเฉเจจ เจตเจฟเฉฑเจ เจฒเฉเจเจเจจ เจเจฐเจฆเฉ เจนเจพเจ เจเจฟเฉฑเจฅเฉ เจเจฟเจจเฉเจธเจฟเจธ เจเจเฉฐเจ เจธเจฅเจพเจชเจค เจนเฉ เจ เจคเฉ api_caller.py เจธเจเฉเจฐเจฟเจชเจ เจเจฒเจพเจเจเจฆเจพ เจนเฉ
sudo ./api_caller.py TOKEN
เจคเฉเจนเจพเจจเฉเฉฐ เจธเจฟเจฐเจซเจผ เจเจชเจฃเฉ เจจเฉฐเจฌเจฐ 'เจคเฉ เจเฉฑเจ SMS เจฆเฉ เจเจกเฉเจ เจเจฐเจจเฉ เจชเจตเฉเจเฉ:
SMS - เจฒเจเจญเจ 1 เจฎเจฟเฉฐเจ เจตเจฟเฉฑเจ เจคเฉเจนเจพเจกเฉ เจซเจผเฉเจจ 'เจคเฉ เจเฉฑเจ เจธเฉเจจเฉเจนเจพ เจเจเจเจฆเจพ เจนเฉ:
เจเจน เจฆเฉเจเจฃเจพ เจฌเจพเจเฉ เจนเฉ เจเจฟ เจเฉ เจฐเจฟเจเจพเจฐเจกเจพเจ เจจเฉเฉฐ เจฌเจพเจ
เจฆ เจฆเฉ, เจตเจงเฉเจฐเฉ เจตเจฟเจธเจคเฉเจฐเจฟเจค เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจฒเจ เจกเจพเจเจจเจพเจฎเฉเจกเฉเจฌเฉ เจกเฉเจเจพเจฌเฉเจธ เจตเจฟเฉฑเจ เจธเฉเจฐเฉฑเจเจฟเจ
เจค เจเฉเจคเจพ เจเจฟเจ เจธเฉเฅค เจเจ
เจฐเจฒเจพเจเจจ_เจเจฟเจเจ เจธเจพเจฐเจฃเฉ เจตเจฟเฉฑเจ เจฒเจเจญเจ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจกเฉเจเจพ เจธเจผเจพเจฎเจฒ เจนเจจ:
เจธเจฟเฉฑเจเจพ
เจเฉเจคเฉ เจเจ เจเฉฐเจฎ เจฆเฉ เจฆเฉเจฐเจพเจจ, Amazon Kinesis 'เจคเฉ เจเจงเจพเจฐเจฟเจค เจเฉฑเจ เจเจจเจฒเจพเจเจจ เจกเจพเจเจพ เจชเฉเจฐเฉเจธเฉเจธเจฟเฉฐเจ เจธเจฟเจธเจเจฎ เจฌเจฃเจพเจเจ เจเจฟเจ เจธเฉเฅค เจเจพเจเจจเฉเจธเจฟเจธ เจกเฉเจเจพ เจธเจเฉเจฐเฉเจฎเจเจผ เจ เจคเฉ SQL เจเจฎเจพเจเจกเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ เจ เจธเจฒ-เจธเจฎเฉเจ เจฆเฉ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจพเจเจจเฉเจธเจฟเจธ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจฆเฉ เจจเจพเจฒ เจจเจพเจฒ เจเจฟเจจเฉเจธเจฟเจธ เจเจเฉฐเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจ เจฆเฉ เจตเจฟเจเจฒเจชเจพเจ เจฆเฉ เจจเจพเจฒ-เจจเจพเจฒ เจนเฉเจฐ AWS เจธเฉเจตเจพเจตเจพเจ เจฆเฉ เจจเจพเจฒ เจเจฎเจพเจเจผเจพเจจ เจเจพเจเจจเฉเจธเจฟเจธ เจฆเฉ เจชเจฐเจธเจชเจฐ เจชเฉเจฐเจญเจพเจต เจจเฉเฉฐ เจตเจฟเจเจพเจฐเจฟเจ เจเจฟเจ เจธเฉเฅค
เจ เจธเฉเจ เจเจชเจฐเฉเจเจค เจธเจฟเจธเจเจฎ เจจเฉเฉฐ เจฆเฉ เจคเจฐเฉเจเจฟเจเจ เจจเจพเจฒ เจคเฉเจจเจพเจค เจเฉเจคเจพ เจนเฉ: เจเฉฑเจ เจฒเฉฐเจฎเจพ เจฎเฉเจจเฉเจ เจฒ เจ เจคเฉ เจเฉเจฐเจพเจซเจพเจฐเจฎ เจเฉเจก เจคเฉเจ เจเฉฑเจ เจคเฉเจเจผเฅค
เจธเจพเจฐเจพ เจชเฉเจฐเฉเจเฉเจเจ เจธเจฐเฉเจค เจเฉเจก เจเจชเจฒเจฌเจง เจนเฉ
เจฎเฉเจ เจฒเฉเจ 'เจคเฉ เจเจฐเจเจพ เจเจฐเจเฉ เจเฉเจธเจผ เจนเจพเจ, เจฎเฉเจ เจคเฉเจนเจพเจกเฉเจเจ เจเจฟเฉฑเจชเจฃเฉเจเจ เจฆเฉ เจเจฎเฉเจฆ เจเจฐเจฆเจพ เจนเจพเจ. เจฎเฉเจ เจเจธเจพเจฐเฉ เจเจฒเฉเจเจจเจพ เจฆเฉ เจเจฎเฉเจฆ เจเจฐเจฆเจพ เจนเจพเจเฅค
เจฎเฉเจ เจคเฉเจนเจพเจจเฉเฉฐ เจธเจซเจฒเจคเจพ เจฆเฉ เจเจพเจฎเจจเจพ เจเจฐเจฆเจพ เจนเจพเจ!
เจธเจฐเฉเจค: www.habr.com