ค่อนข้างใหม่สำหรับ PostgreSQL ฉันไม่เคยใช้งานขนาดใหญ่มาก่อน แต่ฉันมีประสบการณ์ที่ดีในโซลูชันระดับองค์กรและฉันต้องการลองใช้สิ่งที่ฉันเรียนรู้โดยใช้ PostgreSQL
ฉันมีเว็บไซต์ที่มีขนาดใหญ่พอที่จะรองรับข้อมูลและปริมาณข้อมูลจำนวนมาก โครงสร้างพื้นฐานจะถูกสร้างโดยใช้บน amazon (AWS) โดยใช้อินสแตนซ์ของ EC2 และ EBS
การออกแบบควรมีสองฐานข้อมูลฐานข้อมูลธุรกรรมหลักและคลังข้อมูลเพื่อจัดการการวิเคราะห์และการรายงาน
ฐานข้อมูลธุรกรรมหลัก
จะถูกใช้สำหรับเว็บไซต์สดเว็บไซต์นี้สร้างขึ้นบนหลายโหนดเพื่อขยายขนาดผู้ใช้พร้อมกัน ส่วนใหญ่เราต้องการฐานข้อมูลสำหรับกรณีนี้ที่จะรวดเร็วในการดำเนินการอ่านเราคาดว่า> ข้อมูล 100GB กับการเติบโต 30% ต่อปี ณ จุดนี้เราวางแผนที่จะใช้เซิร์ฟเวอร์ EC2 สองเครื่อง ( และเพิ่มในภายหลังตามที่เราต้องการ )
คำถามของฉันการตั้งค่าที่แนะนำสำหรับข้อกำหนดข้างต้นคืออะไร นอกจากนี้มีวิธีจัดการตารางและการแบ่งพาร์ติชันของไดรฟ์ข้อมูลหรือไม่? มีคำแนะนำสำหรับการใช้การตั้งค่า AWS หรือไม่
ฐานข้อมูลคลังข้อมูล
ส่วนใหญ่จะใช้สำหรับการจับข้อมูลทั้งหมดจากฐานข้อมูลธุรกรรมหลักในมิติเวลา ดังนั้นแม้ลบบันทึกจากฐานข้อมูลหลักจะถูกจับใน DWH ดังนั้นข้อมูลจะมีขนาดใหญ่มากและการเติบโตจะยิ่งใหญ่ขึ้น นอกจากนี้เรายังจะใช้อินสแตนซ์คู่ EC2 ขึ้นไปหากต้องการ
การตั้งค่าที่แนะนำในกรณีนี้คืออะไร? สิ่งนี้จะต้องใช้การเขียนที่รวดเร็วเนื่องจากการเขียนคงที่ (ETL) เราสามารถสร้าง OLAP คิวบ์ใน PostgreSQL ได้ไหม? ถ้าใช่มีใครลองทำบ้างไหม?
กำลังเชื่อมต่อกับฐานข้อมูล
เว็บเซิร์ฟเวอร์จะเชื่อมต่อกับฐานข้อมูลหลักเพื่อสืบค้นและเขียน ขณะนี้เรากำลังพัฒนาแอปพลิเคชั่นโดยใช้ django ซึ่งใช้ไลบรารีดั้งเดิมสำหรับการเชื่อมต่อ แนะนำให้ใช้วิธีการพื้นฐานเดียวกันหรือไม่ หรือเราควรกำหนดค่า pgpool?
คลังข้อมูล (ETL)
วิธีที่แนะนำสำหรับการสร้างกระบวนการ ETL เพื่ออ่านจากหลักและโหลดไปยังคลังข้อมูลคืออะไร? มีเครื่องมืออะไรบ้าง? วิธีการที่จะปฏิบัติตาม? PostgreSQL เสนอฟังก์ชั่น / เครื่องมือที่เป็นประโยชน์ในการสร้างกระบวนการ ETL หรือไม่?