ฉันส่วนใหญ่เรียนรู้ด้วยตนเองเมื่อพูดถึงการออกแบบฐานข้อมูล ฉันโพสคำถามนี้เพราะฉันได้ตัดสินในโครงสร้างทั่วไปนี้ แต่ฉันสงสัยว่ามันเป็นวิธีที่มีประสิทธิภาพมากที่สุดหรือ 'มาตรฐานอุตสาหกรรม'
ฐานข้อมูลส่วนใหญ่ที่ฉันออกแบบมีตารางผู้ใช้แล้วมีการติดตามบุคคล activty ในตารางอื่น ฉันเข้าใจว่าความสวยงามของฐานข้อมูลคือการมีประสิทธิภาพเหล่านี้ แต่ตารางกิจกรรมจะรวบรวมเหตุการณ์จำนวนมากอย่างรวดเร็วจากผู้ใช้ทุกคนที่ใช้เป็นประจำอย่างรวดเร็วซึ่งจะกลายเป็นตารางขนาดใหญ่อย่างรวดเร็วด้วยการใช้ผู้ใช้ในระดับปานกลาง นี่เป็นวิธีที่ดีที่สุดที่จะปล่อยให้มันเติบโตในลักษณะนี้หรือไม่? หรือเป็นระดับของตารางหรือแยกไปตามตารางที่แตกต่างกันตามวันที่หรือต่อจำนวนผู้ใช้หรืออย่างอื่น
+--------------------+ +------------------------+
| UserData | | Activity |
+-=------------------+ +------------------------+
| ID (auto uint) | <--1-to-many-+ | ID (auto uint) |
| UserName (text) | +--> | UserID (uint) |
| Email (text) | | Timestamp (time) |
| additional info... | | Type (ID to elsewhere) |
+--------------------+ | additional info... |
+------------------------+
ฉันแค่อยากจะรู้ว่าฉันสามารถปรับปรุงอะไรได้บ้างเพื่อช่วยให้ฉันเรียนรู้