PlusMagi's Blog By Pitt Phunsanit Backend,Database ความเข้าใจนาฬิกาชีวิต (Circadian Rhythm, Melatonin, Cortisol และกลไก Homeostatic Sleep Pressure)

ความเข้าใจนาฬิกาชีวิต (Circadian Rhythm, Melatonin, Cortisol และกลไก Homeostatic Sleep Pressure)

ในฐานะ System Specialist ที่ต้องออกแบบและจัดการระบบที่มีความซับซ้อนและมีวัฏจักร (Cycle) การทำความเข้าใจ ‘จังหวะ’ หรือ Rhythm จึงเป็นสิ่งสำคัญอย่างยิ่ง ไม่ว่าจะเป็นการออกแบบ Database Schema ให้มีการอัปเดตข้อมูลตามช่วงเวลาที่กำหนด หรือแม้จะเป็นการวิเคราะห์รูปแบบพฤติกรรมที่เปลี่ยนแปลงไปตามเวลา

บทความนี้จะพาคุณเจาะลึกถึงกลไกทางชีววิทยาที่ซับซ้อนอย่าง นาฬิกาชีวิต (Circadian Rhythm) ซึ่งเป็นวงจรธรรมชาติที่ควบคุมทุกระบบในร่างกาย เราจะนำแนวคิดเชิงวัฏจักรนี้มาเปรียบเทียบกับการจัดการ Time Series Data ในฐานข้อมูล PostgreSQL เพื่อให้เห็นภาพว่าการทำความเข้าใจ ‘รอบเวลา’ สามารถนำไปใช้ในการออกแบบและวิเคราะห์ระบบที่แม่นยำได้อย่างไร

🧠 Circadian Rhythm: การจำลองวัฏจักรชีวภาพใน PostgreSQL

หัวใจหลักของจังหวะชีวิตคือ Circadian Rhythm ซึ่งเป็นวัฏจักรทางชีวภาพที่ทำงานรอบ 24 ชั่วโมง โดยมีศูนย์ควบคุมอยู่ที่ Suprachiasmatic Nucleus (SCN) ในเชิงระบบ เราสามารถมองวัฏจักรนี้เป็นชุดของ State Change ที่ถูกควบคุมด้วยเวลา (Time-based State Machine) ซึ่งใน PostgreSQL เราสามารถจำลองการเปลี่ยนแปลงสถานะของฮอร์โมนสำคัญได้อย่างแม่นยำ โดยการสร้างตารางที่เก็บค่าที่เปลี่ยนแปลงไปตามเวลา (Time Series Data) โดยใช้คอลัมน์ประเภท TIMESTAMP

🕰️ 1. การสร้าง Schema สำหรับวงจรเวลา

เราต้องสร้างตารางที่สามารถบันทึกค่าของฮอร์โมน (Melatonin และ Cortisol) ที่เปลี่ยนแปลงตามเวลาอย่างต่อเนื่อง:

SQL

CREATE TABLE circadian_data (
    timestamp TIMESTAMP PRIMARY KEY,
    melatonin_level REAL,
    cortisol_level REAL,
    sleep_pressure REAL);

🌙 2. การจำลองการเปลี่ยนแปลงของฮอร์โมน (Melatonin & Cortisol)

Melatonin (ฮอร์โมนการนอนหลับ) จะสูงขึ้นเมื่อมืดลง ขณะที่ Cortisol (ฮอร์โมนความตื่นตัว) จะสูงขึ้นในตอนเช้า การเปลี่ยนแปลงเหล่านี้เป็นรูปแบบที่คาดการณ์ได้ (Predictable Pattern) ซึ่งเราสามารถจำลองการบันทึกข้อมูลใน PostgreSQL ได้:

SQL

INSERT INTO circadian_data (timestamp, melatonin_level, cortisol_level, sleep_pressure) VALUES
('2023-10-27 22:00:00', 0.5, 5.0, 10.0),  -- เริ่มหลั่งเมลาโทนิน
('2023-10-28 02:00:00', 8.0, 2.0, 15.0),  -- เมลาโทนินสูงสุด
('2023-10-28 08:00:00', 1.0, 15.0, 20.0); -- คอร์ติซอลสูงสุด, ความดันสูง

😴 3. การจัดการ Homeostatic Sleep Pressure (Process S)

นอกเหนือจากจังหวะเวลา (Circadian) แล้ว ร่างกายยังมีกลไกความต้องการนอนหลับ (Sleep Pressure) ซึ่งเป็นตัวสะสมค่า (Accumulating Value) ตลอดวัน เมื่อเราตื่นตัว ค่านี้จะเพิ่มขึ้นเรื่อยๆ และจะลดลงเมื่อเรานอนหลับ การคำนวณนี้สามารถทำได้โดยใช้ฟังก์ชัน Window Function หรือการคำนวณเชิงสะสม (Running Total) ใน PostgreSQL เพื่อจำลองการสะสมของความเหนื่อยล้า:

SQL

-- สมมติว่าค่าความดันเริ่มต้นที่ 0.0 และเพิ่มขึ้น 10.0 ทุก 6 ชั่วโมง
SELECT
    timestamp,
    sleep_pressure + 10.0 AS accumulated_pressure
FROM circadian_data
ORDER BY timestamp;

✅ บทสรุป: การบูรณาการชีววิทยาและระบบฐานข้อมูล

การเปรียบเทียบ Circadian Rhythm กับ Time Series Data ใน PostgreSQL แสดงให้เห็นว่ากลไกทางชีววิทยาที่ซับซ้อนสามารถถูกจำลองและวิเคราะห์ด้วยหลักการเชิงระบบ (Systematic Principles) ได้อย่างสมบูรณ์ การใช้ TIMESTAMP และการคำนวณค่าสะสม (Accumulation) ช่วยให้เราไม่เพียงแต่บันทึกข้อมูล แต่ยังสามารถทำนายสถานะของร่างกายมนุษย์ได้ ซึ่งเป็นแนวคิดสำคัญในการออกแบบระบบที่ต้องพึ่งพาลำดับเวลา (Temporal Dependency) อย่างแม่นยำ