วันอาทิตย์ที่ 6 มีนาคม พ.ศ. 2554

การลดความซ้ำซ้อนข้อมูลขนาดใหญ่ 6.7 ล้านข้อมูล ความเร็วสูงสุด 1 วินาที ด้วยภาษาไพธอน

วันนี้แนะนำเทคนิค การลดความซ้ำซ้อนข้อมูลขนาดใหญ่ ในตัวอย่างนี้ทดสอบ 6.7 ล้านแถวข้อมูล ด้วยภาษาไพธอน
ใช้เวลาประมวลผลเร็วที่สุด ประมาณ 1 วินาที



ผมไม่แปลกใจที่ทำไม Google ถูกสร้างขึ้นจากไพธอน เพราะผมทดสอบด้วยภาษา PHP ยังไ่ม่สามารถทำได้ เนื่องจากการแยก array สามารถทำได้จำกัดใน php แต่ในภาษาไพธอนไม่จำกัด ผนวกกับสุดยอด functional programming ด้วยการใช้ map ซึ่งเป็นส่วนหนึ่งของ mapreduce ทำให้มันเร็วแบบสุด ๆ ครับ

นี่คือโค๊ดไพธอน ซึ่งเป็นพระเอกของเราในวันนี้ครับ !!
def list_unique(data):
set = {}
map(set.__setitem__,data,[])
return set.keys()

คำเกี่ยวข้อง : การลดความซ้ำซ้อนข้อมูลขนาดใหญ่ , python list unique, fastest list unique using python