Geographic coordinate conversion

กำลังคิดถึงโครงสร้างของบริการตัวนึงซึ่งต้องมีพิกัดเข้ามาเกี่ยวข้อง เคยมีคนถามเหมือนกันว่า ข้อมูลพิกัดมีตั้งหลายแบบ จะใช้ตัวไหน ลองค้นข้อมูลดูจาก wiki พบว่ามีสามแบบหลักๆคือ

  1. พิกัดที่ประกอบด้วย degrees (integer), minutes (integer), และ seconds (integer, or real number) (DMS)
  2. พิกัดที่ประกอบด้วย degrees (integer) และ minutes (real number) (MinDec)
  3. พิกัดที่ประกอบด้วย degrees (real number) (DegDec) เท่านั้น

ในแง่ของ UI ที่ใช้ในการกรอกอาจจะมีให้ทั้งสามแบบให้เลือกใช้เอาจะได้ไม่ต้องไปคอยแปลงค่าให้วุ่นวาย

มาถึงเรื่อง back-end ที่จะใช้เก็บพิกัด ลองดูจากบทความเรื่อง NoSQL Databases: What Geospatial Users Need to Know ก็มีหลายบริการที่เลือก MongoDB เป็น back-end ที่ใช้เก็บข้อมูลพิกัด ที่เป็นแบบนั้นน่าจะเป็นเพราะว่า MondoDB มี Geospatial Indexes ในตัวซึ่งจะช่วยให้การ query ทำได้ง่าย

สำหรับข้อมูลเปรียบเทียบ NoSQL อื่นๆลองดูได้จาก http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis

และสุดท้ายอาจจะ ย้ายข้อมูลทั้งหมดจาก MySQL ไปเก็บบน MongoDB ทีเดียวเลย

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s