Blockdit Logo
Blockdit Logo (Mobile)
สำรวจ
ลงทุน
คำถาม
เข้าสู่ระบบ
มีบัญชีอยู่แล้ว?
เข้าสู่ระบบ
หรือ
ลงทะเบียน
Shoper Gamer
•
ติดตาม
28 ส.ค. เวลา 09:29 • การศึกษา
Data By Shoper Gamer
Semi-Structured Data คืออะไร
โดย
ในโลกแห่งข้อมูลที่ไม่เคยหยุดนิ่ง ไม่ใช่ข้อมูลทั้งหมดที่จะถูกจัดเก็บในตารางที่เราออกแบบไว้ล่วงหน้า ข้อมูลจำนวนมหาศาลในยุคอินเทอร์เน็ต และ IoT มักมีรูปแบบที่เปลี่ยนแปลง และ ซับซ้อน จึงเกิดเป็นข้อมูลประเภทที่ "อยู่กึ่งกลาง" ระหว่างข้อมูลที่มีโครงสร้าง และ ข้อมูลที่ไม่มีโครงสร้าง ซึ่งเราเรียกมันว่า Semi-Structured Data (ข้อมูลกึ่งโครงสร้าง) ซึ่งเป็นการผสมผสานระหว่างความเป็นระเบียบ และ ความยืดหยุ่นเข้าไว้ด้วยกันอย่างลงตัว
★
Semi-Structured Data คืออะไร
Semi-Structured Data คือ ข้อมูลที่มีโครงสร้างบางส่วน แต่ไม่ได้อยู่ในรูปแบบตารางที่ตายตัว มันไม่มีโครงสร้างที่ตายตัวเหมือนตารางในฐานข้อมูล แต่มีเครื่องหมาย, แท็ก หรือ กลไกอื่นๆ ที่ช่วยแยกองค์ประกอบของข้อมูล และ กำหนดโครงสร้างแบบลำดับชั้น
ลองจินตนาการว่ามันเหมือน แบบฟอร์มที่มีโครงสร้างหลักให้กรอกข้อมูล แต่ก็อนุญาตให้คุณเพิ่มข้อมูล หรือ หมายเหตุเพิ่มเติมได้ตามต้องการ โดยไม่ทำลายรูปแบบหลัก
★
Semi-Structured Data ทำงานอย่างไร
ข้อมูลประเภทนี้อาศัย "แท็ก" หรือ "คีย์" ในการระบุข้อมูล และ ความสัมพันธ์
1) การใช้แท็ก (Tags) และ คีย์ (Keys): ข้อมูลจะถูกติดป้ายกำกับ (เช่น `<name>`...`</name>`) หรือ ใช้คีย์-ค่า (Key-value pairs) (เช่น `"firstName": "John"`) เพื่ออธิบายรายละเอียด และ บริบทของข้อมูล
1
2) การอธิบายข้อมูลในตัวเอง: โครงสร้างมักจะ "ฝัง" อยู่ในตัวข้อมูลเอง ซึ่งหมายความว่าข้อมูลนั้นสามารถ "อธิบายตัวเองได้"
3) Schema-on-Read: ต่างจากฐานข้อมูลแบบดั้งเดิมที่ต้องกำหนดโครงสร้างก่อนเขียนข้อมูล (Schema-on-Write) ข้อมูลกึ่งโครงสร้างจะใช้ "รูปแบบเมื่ออ่าน" (Schema-on-Read) นั่นคือจะมีการตีความ และ กำหนดโครงสร้างข้อมูลเมื่อมีการนำข้อมูลไปวิเคราะห์ ทำให้มีความยืดหยุ่นอย่างมาก
2
★
ประเภทของ Semi-Structured Data
○ JSON (JavaScript Object Notation): เป็นรูปแบบที่สำคัญที่สุดในยุคใหม่ เป็นรูปแบบที่ได้รับความนิยมสูงสุดสำหรับเว็บ API และ แอปพลิเคชันบนมือถือ เนื่องจากง่ายต่อการอ่าน และ เขียนสำหรับทั้งมนุษย์ และ เครื่องจักร
○ XML (Extensible Markup Language): รูปแบบคลาสสิกที่ใช้แท็ก ซึ่งยังคงถูกนำไปใช้อย่างแพร่หลายในองค์กร และ การจัดเก็บเอกสาร
○ CSV ที่มีส่วนหัว: ไฟล์ CSV ทั่วไปอาจถือเป็นข้อมูลมีโครงสร้าง แต่ถ้ามีคอลัมน์ที่เปลี่ยนแปลงได้ หรือ มีข้อมูลแบบลำดับชั้นอยู่ในเซลล์เดียวกัน ก็สามารถจัดเป็นข้อมูลกึ่งโครงสร้างได้
○ Email: อีเมลมีโครงสร้างบางส่วน (เช่น ผู้ส่ง, ผู้รับ, หัวข้อ) แต่เนื้อหา และ ไฟล์แนบที่อยู่ภายในจะไม่มีโครงสร้าง
○ Electronic Data Interchange (EDI): รูปแบบมาตรฐานที่ใช้ในการแลกเปลี่ยนข้อมูลระหว่างองค์กร (B2B)
★
ประโยชน์
✅️ ความยืดหยุ่นสูง: นี่คือข้อได้เปรียบที่ใหญ่ที่สุด สามารถเพิ่มฟิลด์ใหม่ เปลี่ยนโครงสร้าง หรือ รองรับข้อมูลซ้อนกันได้ง่าย โดยไม่ต้องทำการเปลี่ยนแปลงโครงสร้างที่ซับซ้อนเหมือนฐานข้อมูล
✅️ เหมาะกับข้อมูลที่เปลี่ยนแปลงเร็ว: เหมาะสำหรับข้อมูลที่รูปแบบมีการเปลี่ยนแปลงตามกาลเวลา หรือ ตามแหล่งที่มา
✅️ แสดงความสัมพันธ์แบบลำดับชั้น: สามารถแสดงข้อมูลที่มีความสัมพันธ์แบบลำดับชั้นได้ดีกว่าตารางทั่วไป (เช่น ข้อมูลลูกค้าที่มีที่อยู่หลายแห่ง)
✅️ เป็นสะพานเชื่อมระหว่างข้อมูลมีโครงสร้างและไม่มีโครงสร้าง: สามารถทำงานร่วมกับระบบแบบดั้งเดิม และ ระบบใหม่ได้อย่างดี
✅️ เหมาะกับเว็บ และ IoT: เป็นรูปแบบพื้นฐานสำหรับการแลกเปลี่ยนข้อมูลระหว่างแอปพลิเคชัน (API) และ จากอุปกรณ์ IoT นับล้านชิ้น
★
ตัวอย่างการใช้งาน
○ เว็บ API และ Microservices: การสื่อสารระหว่างบริการต่างๆ ในสถาปัตยกรรม Microservices เกือบทั้งหมดใช้ JSON ซึ่งเป็นข้อมูลกึ่งโครงสร้าง
○ ฐานข้อมูล NoSQL: ฐานข้อมูล เช่น MongoDB และ Couchbase จัดเก็บข้อมูลเป็นเอกสาร JSON ซึ่งใช้ประโยชน์จากความยืดหยุ่นของข้อมูลกึ่งโครงสร้าง
○ ข้อมูลเซ็นเซอร์ IoT: ข้อมูลที่ส่งจากเซ็นเซอร์มักมีส่วนที่มีโครงสร้าง (รหัสอุปกรณ์, เวลา) และส่วนที่ไม่มีโครงสร้าง (ข้อมูลค่าที่อ่านได้ที่เปลี่ยนแปลงได้) ซึ่งโดยปกติจะอยู่ในรูปแบบ JSON หรือ XML
○ ไฟล์ Log: ไฟล์ Log ที่สร้างโดยซอฟต์แวร์ และ ระบบต่างๆ แต่ละบรรทัดจะมีส่วนที่มีโครงสร้าง (เวลา, รหัสข้อผิดพลาด) แต่ส่วนของข้อความจะแตกต่างกัน และ ไม่มีโครงสร้าง
○ ฟีดโซเชียลมีเดีย: ข้อมูลจากโพสต์ต่างๆ (เช่น Blockdit, Facebook) จะมี Metadata ที่มีโครงสร้าง (จำนวนไลก์, เวลาโพสต์) และ เนื้อหาที่ไม่เป็นโครงสร้าง เช่น ข้อความจริง หรือ แฮชแท็ก
✏️ Shoper Gamer
>>
https://shopergamer.vercel.app/
✓
IoT คืออะไร 👇
>>
https://www.blockdit.com/posts/656a8a267b0ede0f80ad7d98
✓
API คืออะไร 👇
>>
https://www.blockdit.com/posts/6653080ced0e28cf94447410
✓
Log คืออะไร 👇
>>
https://www.blockdit.com/posts/6832c11dceab9e8e771e26d7
Credit :
👇
●
https://www.lemon8-app.com/@baitoeysb/7259366724292592130
●
https://www.blockdit.com/posts/60017f3135bb53495c033652
●
https://www.blockdit.com/posts/627b784561979c655fce9663
เทคโนโลยี
ข่าวรอบโลก
data
บันทึก
1
2
ดูเพิ่มเติมในซีรีส์
Data
1
2
โฆษณา
ดาวน์โหลดแอปพลิเคชัน
© 2025 Blockdit
เกี่ยวกับ
ช่วยเหลือ
คำถามที่พบบ่อย
นโยบายการโฆษณาและบูสต์โพสต์
นโยบายความเป็นส่วนตัว
แนวทางการใช้แบรนด์ Blockdit
Blockdit เพื่อธุรกิจ
ไทย