phhhh
1
สวัสดีครับ
ผมมือใหม่มากๆสำหรับ DE อยากจะลองสร้าง Data Pipeline ด้วย Apache Airflow เองดู
แล้วได้ลองดูคลิปของพี่กานต์คลิปนี้
ทำ Data Pipeline แบบง่ายๆ ด้วย เครื่องมือสุดฮิตอย่าง Apache Airflow
แล้วก่อนหน้านี้ก็ดูคลิปที่ติดตั้ง Apache Airflow ไว้บนเครื่องของตนเอง ติดตั้ง Apache Airflow บน Windows 10
zkan
2
จาก error ที่บรรทัดสุดท้าย ใน screenshot นะครับ
ModuleNotFoundError: No module named: 'airflow.providers.mysql'
ตรงนี้จะหมายความว่ายังขาดโมดูลที่เอาไว้เชื่อมต่อกับ MySQL อยู่ครับผม ทำให้ยังไม่สามารถใช้งาน DAG ที่ผมทำไว้ได้
พอดีในวีดีโอผมไม่ได้พูดถึงวิธีติดตั้งแพคเกจหรือโมเดลไว้ (ต้องขออภัยด้วยครับ แหะ ๆ) ทีนี้ใน repo ของผมจะมีไฟล์ requirements.txt
อยู่ครับ อยากให้ลองคำสั่งด้านล่างนี้
pip install -r requirements.txt`
จะเป็นการติดตั้งแพคเกจทั้งหมดที่มีชื่ออยู่ในไฟล์ requirements.txt
หรืออาจจะติดตั้งแค่แพคเกจที่เกี่ยวข้องแพคเกจเดียวก็ได้ครับ ใช้คำสั่งด้านล่างนี้
pip install apache-airflow-providers-mysql
ประมาณนี้ครับผม ถ้ายังติด error อีก สามารถมาคอมเม้นต์เพิ่มเติมได้เลย ยินดีช่วยเหลือเต็มที่ครับ ^^
ปล. ปัญหาของผมมันอาจจะดูเล็กเกินไปสำหรับสร้างโพสต์นี้ขึ้นมา แต่อย่างน้อยผมคิดว่าโพสต์นี้ อาจจะเป็นตัวช่วยสำหรับ DE มือใหม่ในอนาคตได้ครับ (หรือมีช่องทางอื่นที่ให้สอบถามปัญหาย่อยๆ บอกได้นะครับ)
ตรงนี้ไม่มีปัญหาเลยครับ ต้องขอบคุณมาก ๆ ด้วยที่มาแปะปัญหาที่เจอไว้ ไม่ว่าจะเล็กหรือใหญ่ หรือไร้สาระ สามารถสร้างโพสต์ขึ้นมาพูดคุยกันได้เลยนะครับ มาร่วมสร้าง knowledge + community กัน
ปล2. ขอบคุณพี่กานต์ที่สร้างเว็บบอร์ดแบบนี้ขึ้นมามากครับบบ ผมตามหามานานมากเว็บบอร์ดดีๆแบบนี้ พัฒนาต่อไป เป็นกำลังใจให้ครับ
Love ครับ
phhhh
3
ตรงนี้ไม่มีปัญหาเลยครับ ต้องขอบคุณมาก ๆ ด้วยที่มาแปะปัญหาที่เจอไว้ ไม่ว่าจะเล็กหรือใหญ่ หรือไร้สาระ สามารถสร้างโพสต์ขึ้นมาพูดคุยกันได้เลยนะครับ มาร่วมสร้าง knowledge + community กัน
ฮืออออ ขอบคุณค้าบบ
แต่ว่าาา…
มัน Error เพราะอะไรหรอครับบ
zkan
4
โอ้ ต้องติดตั้ง MySQL ลงบนเครื่องก่อนครับ ลองสั่งคำสั่งตามนี้ครับผม เพื่อติดตั้งลงบนเครื่อง
sudo apt install mysql-server
zkan
5
แอบถามเพิ่มเติมครับ ไม่แน่ใจว่าเคยใช้ Docker มาก่อนหรือเปล่า แต่ถ้าไม่เคย เดี๋ยวผมช่วยแก้ปัญหา error ที่กำลังเจออยู่นี้ให้สามารถรัน Airflow ให้ได้ก่อนนะครับ แล้วเดี๋ยวจะแนะนำให้ไปท่า Docker แทน
phhhh
6
ติดตั้งตาม code นี้แล้วครับ แต่ Error ก็ยังเป็นเหมือนเดิมอะครับ
phhhh
7
ไม่เคยใช้เลยครับ แต่เห็นคลิปที่พี่กานต์ทำไว้อยู่
หรือตอนนี้ผมควรเปลี่ยนไปใช้ Docker แทนเลยดีครับ
phhhh
8
ผมลองทำตามคลิปพี่กานต์ตอนนี้ติดปัญหาตรงที่หลังจากใช้คำสั่ง
docker-compose up
ผมก็ลองทำตามคลิปพี่กานต์ต่อ เปิดอีก Terminal เพื่อรันคำสั่ง
airflow db init
แต่ก็ขึ้น Error แบบนี้อะครับ
phhhh
9
แล้วพอจะใช้คำสั่งเพื่อ exec อีกรอบ
docker-compose exec airflow-scheduler bash
- ก็ Error แบบนี้ครับ (ผมอาจจะยังไม่เข้าใจเรื่อง container ด้วย ไม่รู้ว่าผมพลาดอะไรตอนใช้ Docker หรือเปล่า)
zkan
10
อยากแนะนำให้ไปทาง Docker จะดีกว่า เพราะว่าจะไม่ค่อยติดปัญหาแนว ๆ เพราะว่าเป็นเครื่อง Mac บ้าง หรือเป็น Windows บ้างอะไรแบบนี้ครับผม
แล้วก็ตามรูปที่สั่ง airflow db init
ไม่ได้ จากรูป screenshot ที่แปะมานะครับ เป็นเพราะว่าจังหวะที่กำลังจะรันคำสั่ง ตัว shell ได้หลุดออกมาจาก container แล้ว เพราะว่า container ตายเลยรันไม่ได้ครับ
ส่วนสาเหตุที่ container ตาย อันนี้ต้องดู log อย่างเดียวเลยว่าเป็นเพราะอะไร T-T พอจะลองสั่ง
docker-compose logs airflow-scheduler
แล้วแปะ log ที่พ่นออกมาทั้งหมดมาให้ดูสักหน่อยครับผม
zkan
12
เอ… ถ้ามีประมาณนี้ก็ไม่น่ามีปัญหาอะไรนะครับ รอสัก 5-10 นาที ลองสั่ง exec
อีกสักรอบดู
ปล. การ up ขึ้นมาครั้งแรกจะค่อนข้างนานครับผม
phhhh
13
ได้แล้วครับพี่กานนนต์ ขอบคุณครับบ
ตอนนี้ก็เริ่มต้นทำ Data Pipeline ตามคลิปนี้ได้แล้ววว
ทำ Data Pipeline แบบง่ายๆ ด้วย เครื่องมือสุดฮิตอย่าง Apache Airflow By Data Engineer Cafe
แต่ว่าตอนนี้ยังไม่รู้วิธีใช้ Database ร่วมกับ Docker เดี๋ยวผมลองศึกษาเรื่อยๆ
ถ้าเจอปัญหาอะไรอีก ผมขอกลับมารบกวนพี่กานต์ และพี่ๆท่านอื่นๆใน Data Engineer Cafe แห่งนี้อีกครั้งนะค้าบ
ขอบคุณทุกคนอีกครั้งค้าบบบ
2 Likes
zkan
14
เย้ ๆๆ ยินดีมากครับบบ มาถามได้เรื่อย ๆ เลยครับผม
1 Like