Oracle DBA ใหม่ของฉันเป็นความรู้สึกที่พูด


15

เมื่อเราติดตั้ง FC LUNs สำหรับกล่อง MSSQL ของเราเราแทบจะไม่ต้องนำเสนอด้วย LUNs ที่แตกต่างกันมากกว่า 8 ชนิด (Quorum, MSDTC, TempDB, Data, Logs, Backup และอื่น ๆ )

เรามี Oracle DBA ใหม่และเขาได้รับรายการ LUN ที่ฉันต้องการสำหรับเซิร์ฟเวอร์ใหม่เครื่องแรกของเขา - มี 38 รายการ! และนี่คือกล่องฐานข้อมูลพื้นฐานจริงๆโดยมีเพียงฐานข้อมูลเดียว พวกมันทั้งหมดมีขนาดค่อนข้างเล็ก (100GB) LUNs และพวกมันก็พุ่งเข้าหากันอย่างชัดเจนโดยใช้ ASM ในแบบ LVM

เป็นวิธีที่ดีที่สุดในการทำสิ่งนี้ฉันไม่ได้เป็นผู้เชี่ยวชาญของออราเคิล แต่ดูเหมือนว่าฉันจะเข้าใจง่ายเกินไปความคิดและประสบการณ์ของคุณในเรื่องนี้คืออะไร?


1
38 LUNs สำหรับ DB เดียว ... อะไรนะ!?!
Zypher

คำตอบ:


19

ฉันเป็น Oracle DBA DBA ใหม่ของคุณทำหน้าที่คล้ายกับ Oracle DBAs และมากกว่าวิศวกรรม

  1. oracle ไม่ต้องการ 38 LUNs ฉันได้กระจายไฟล์ข้อมูลออกไปเป็นจำนวนมาก แต่ก็มีระบบที่ใช้งานได้ดีและมีขนาดใหญ่มาก LUN ไม่จำเป็นต้องแมปกับกลุ่ม RAID ใหม่ใช่มั้ย ดังนั้นการมีไฟล์บน luns แยกไม่จำเป็นต้องกระจายอะไรออกไปเลย (ฉันไม่ใช่ผู้เชี่ยวชาญในเรื่องนี้)

  2. การทำแถบไฟล์แบบนี้จะทำให้ DBA ทำงานได้มากขึ้น นี่เป็นการเพิ่มความสำคัญให้กับทีม Oracle DBA จำนวนมากพยายามทำให้ตัวเองดูมีความสำคัญมากกว่าและควบคุมสิ่งต่าง ๆ ตลอดเวลา

  3. การแยกข้อมูลออกจากกลุ่มการโจมตี differnet / luns ไม่ได้เป็นคำพยากรณ์เฉพาะ มันขึ้นอยู่กับการใช้งาน ในการกระจายไฟล์อย่างถูกต้อง DBA ของคุณจะต้องเข้าใจแอปพลิเคชันเพื่อทราบว่ามีการเข้าถึงอะไรมาก (btw ดัชนีแยกจากข้อมูลไม่ได้ปรับปรุงประสิทธิภาพเนื่องจากการเข้าถึงเป็นแบบอนุกรม ... ) เขารู้ใบสมัครหรือไม่? เขาดูที่ฐานข้อมูลเพื่อดูว่ามีการเข้าถึงวัตถุจำนวนมากหรือไม่ สิ่งที่จะต้องกระจายออกไป? การเขียนและการอ่านและการแยกและต้องแยกเป็นกลุ่มคืออะไร

ดูเหมือนว่าฐานข้อมูลขนาดเล็ก / กลาง ระดับกิจกรรมคืออะไร? เขาอาจไม่รู้

โดยทั่วไปในฐานข้อมูลขนาดเล็กคุณไม่จำเป็นต้องทำอะไรมากในระดับระบบไฟล์เพื่อปรับปรุงประสิทธิภาพ 95% เป็น SQL และผู้พัฒนารันคำสั่ง sql มากเกินไปในลูป

แก้ไข ( ปีต่อมา !):

ฉันใช้เวลาพูดคุยกับวิศวกรของ SAN และได้พัฒนาความรู้เกี่ยวกับ SAN และ LUN บ้างตั้งแต่โพสต์สิ่งนี้ ก่อนปิด LUN คือ 'ตรรกะ' มันไม่จำเป็นต้องทำการแมปเพื่อแยกกลุ่ม RAID ดิสก์ ฯลฯ ... นั่นคือการตั้งค่าโดยวิศวกร SAN และ DBA จะไม่สามารถมองเห็นได้ มีมากขึ้นในการแยก IO ใน SAN ที่คนส่วนใหญ่ตระหนัก

ฉันกำลังทำงานกับระบบที่มีขนาดใหญ่มากซึ่งมีระดับกิจกรรมสูงมาก เรามี LUNs หลายร้อยกลุ่ม RAID ฯลฯ เรากระจายไฟล์ไปทุกที่ เราทำงานร่วมกับวิศวกร SAN เพื่อกำหนดค่า LUN เพื่อให้แน่ใจว่าพวกเขาจะแพร่กระจายไปยังส่วนต่าง ๆ ของ SAN เราไม่สามารถมองเห็นได้ว่าการแมป LUN นั้นมาจากระดับ OS ได้อย่างไร ระบบไฟล์ใหม่ไม่ได้หมายความว่าเรามีข้อมูลที่ถูกแมปไปยังตำแหน่งใหม่บน SAN

เท่าที่กระดาษ HP เกี่ยวกับการสตริป ASM สิ่งนี้ไม่มีความหมายเลยเมื่อทำงานกับ SAN การสตริปการมิเรอร์การจู่โจม ฯลฯ ... เสร็จสิ้นทั้งหมดภายใต้พื้นผิว คุณจะไม่เห็นมันในระดับแอปพลิเคชันหรือฐานข้อมูล การกำหนดค่า Oracle ASM สำหรับ 'การสตริป' นั้นไม่มีความหมายแบบ agian ใน SAN เนื่องจากคุณจะทำการสตริปลอจิคัลวอลุ่มที่สามารถใช้การกำหนดค่า RAID 5 (ส่วนใหญ่เนื่องจากต้นทุนการควบคุม SAN คือการลงทุนหลายล้านดอลลาร์) คุณจะเห็นระบบไฟล์ สิ่งเหล่านั้นไม่จำเป็นต้องแม็พกับดิสก์ที่แตกต่างกันหรือตำแหน่งที่ตั้งอื่นใน SAN

เห็นได้ชัดว่า IBM มีคุณสมบัติใหม่ที่ช่วยให้ SAN ตัดสินใจว่าจะเขียนไปยังดิสก์จากกิจกรรมใด จุดของฉันที่นี่คือคนที่เพิ่มประสิทธิภาพ SAN เป็นผู้เชี่ยวชาญ คุณต้องทำงานกับพวกเขา DBA หรือนักพัฒนาแอปพลิเคชันจะไม่สามารถมองเห็นได้ว่ามีอะไรที่แพร่กระจายออกไป

จากสิ่งที่ฉันเห็นร้านค้าส่วนใหญ่ไม่มีวิศวกร SAN ที่ดีมาก มันมีแนวโน้มที่จะเป็นงานสำหรับคนระดับจูเนียร์ คนดีส่วนใหญ่มักจะเป็นที่ปรึกษา หลายครั้งที่คุณใช้การตั้งค่าเริ่มต้นจากผู้ผลิต หากต้องการย้ำการเพิ่ม LUN เพิ่มเติมอาจจะไม่กระจายข้อมูลใด ๆ เว้นแต่ว่าคุณมีวิศวกร SAN กำหนดไว้สำหรับคุณภายใต้พื้นผิว นอกเหนือจากนั้นคุณสามารถมี 1 LUN และกระจายให้คุณได้ ถ้าคุณไม่มีวิศวกร SAN ที่ดีทุกสิ่งนี้ไม่มีความหมาย เป็นที่ชัดเจนสำหรับฉันว่า DBA ที่เป็นปัญหานั้นไม่รู้จัก SAN มากพอที่จะรู้ว่าเขาไม่รู้อะไรเลย

99.9% ของการกำหนดค่ามาตรฐานในเวลานั้นใช้ได้ ถ้าคุณไม่มีคอขวด IO ที่ระบุสิ่งนี้ไม่จำเป็น หากคุณเป็นเช่นนั้นคุณต้องทำงานกับวิศวกร SA และ SAN เพื่อพิจารณาว่าปัญหาคืออะไร หลายครั้งที่มันไม่มีส่วนเกี่ยวข้องกับเลย์เอาต์ของ SAN อีกครั้ง DBAs และนักพัฒนาจะไม่สามารถเข้าถึงเพื่อดูว่าเกิดอะไรขึ้นภายใต้ความรู้ที่จะคิดออก SAN มีความซับซ้อนมาก


ด้วยความเคารพเพียงไม่กี่จุดที่สนใจ: - 1. "SAN มีความซับซ้อน" - ดังนั้นฐานข้อมูล Oracle จึงเป็นเช่นนั้น แม้แต่หนึ่งในผลิตภัณฑ์ที่มีราคาสูงที่สุดในโครงสร้างพื้นฐานด้านไอทีหรือระบบไอที 2. "การสตริป / การกระจาย / ect" - เห็นด้วย DBA ไม่จำเป็นต้องรู้ว่าเกิดอะไรขึ้นภายใต้ตราบใดที่พวกเขาไม่เคยประสบปัญหากับ I / O - แต่น่าเสียดายที่มันเป็นปัญหาคอขวด IO สำหรับปัญหาที่เกี่ยวข้องกับประสิทธิภาพ 3. DBA ต่างกัน - Infra / Core DBA เทียบกับ DBA ของแอปพลิเคชัน Infra DBA ได้รับมอบหมายให้ทำกิจกรรมที่เกี่ยวข้องกับ DB ที่ทำงานกับระบบปฏิบัติการ & ดิสก์ (SAN) - ดังนั้นเขาต้องมีความรู้ที่ดีว่าเกิดอะไรขึ้น 4. ทั้งหมดข้างต้น

5

คุณสามารถลองตีเขาเหนือหัวด้วยวิธีนี้อธิบายวิธีการเดียวกัน (Stripe and Mirror Everything) ซึ่งเป็นวิธีที่เรียบง่ายสดชื่น


1
ฉันคิดว่านั่นคือสิ่งที่เขาพยายามทำ - ไม่ทราบว่าอาร์เรย์ของเรานั้นเป็นสัตว์ร้ายที่น่ารังเกียจอยู่แล้วด้วย RAID10
Chopper3

4

ฉันไม่มีคำตอบโดยตรงเพราะเราใช้ MSSQL และ mySQL แต่เมื่อใดก็ตามที่ DBA ของฉันขอสิ่งที่ฟังดูบ้า ... แบบนั้น ฉันต้องการให้เขาทำเอกสารว่าทำไมต้องใช้แต่ละชิ้น บริการนี้มีจุดประสงค์สองประการหนึ่งบ่อยครั้งที่พวกเขาเปลี่ยนใจเป็นอะไรที่มีสติมากกว่าและสองให้ฉันเห็นกระบวนการคิดของพวกเขาดังนั้นฉันสามารถใช้ตรรกะของระบบบางอย่างกับสิ่งที่พวกเขาต้องการและนำเสนอทางเลือกที่ไม่ตี . ดังนั้นในกรณีนี้ฉันจะขอเอกสารที่แสดงความจำเป็นสำหรับ 38 LUN แต่ละอัน


ขอบคุณสำหรับการตอบกลับฉันได้ขอสิ่งนี้ แต่เขายังไม่ตอบกลับคิดว่าฉันจะตรวจสอบกับคนดี ๆ ก่อน)
Chopper3

2

มีการศึกษาที่แสดงให้เห็นว่าการสตริปใน ASM และในระดับฮาร์ดแวร์สามารถเป็นข้อได้เปรียบสำหรับประสิทธิภาพ สมุดปกขาว HP-Oracle ประสิทธิภาพเหล่านี้จะเห็นได้ในสถานการณ์ที่เกิดขึ้นพร้อมกันสูงซึ่งส่วนใหญ่ไม่เหมือนที่คุณคาดหวัง แต่อาจเป็นสิ่งที่ DBA ของคุณคุ้นเคย


ที่จริงนี่จะเป็นอย่างมากพร้อมกันเพียง DB ง่าย ๆ - ขอบคุณ
Chopper3

1

ฉันรู้ว่าสำหรับ DB2 บน AIX, DBA ของเราจะได้รับ 5 วอลุ่มต่อฐานข้อมูล - สำหรับแต่ละส่วนของ DB ที่แตกต่างกัน หนึ่งรายการสำหรับ DB อีกหนึ่งรายการสำหรับบันทึกหลักอีกรายการหนึ่งสำหรับบันทึกการจัดเก็บถาวรชั่วคราวและอย่างอื่น นั่นคือไดรฟ์ข้อมูลไม่จำเป็นต้องเป็น LUN ขึ้นอยู่กับว่าคุณต้องการจัดการพื้นที่เก็บข้อมูลอย่างไร


ต้องการรายละเอียดเพิ่มเติม - เขาต้องการ 38 LUN สำหรับหนึ่ง DB หรือ 38 LUN สำหรับหนึ่ง DB PLUS เพื่อสร้างเซิร์ฟเวอร์ใหม่หรือไม่? มันเป็น Oracle บน Windows หรือ Linux / Unix หรือไม่ ผู้ดูแลระบบ Linux / Unix มักจะต้องการพาร์ติชั่นที่เล็กกว่าสำหรับ OS ก่อนที่คุณจะเข้าไปในแอพและ DBs - / usr, / var, swap, / etc และอื่น ๆ ฉันคิดว่าคุณต้องมีการสนทนาอย่างละเอียดกับเขาและคุณทั้งคู่อาจต้องทำการวิจัยเพิ่มเติม เขาอาจต้องการดิสก์ที่ไม่ได้ใช้งานร่วมจำนวนมากด้วยเหตุผล IO เช่น
mfinni
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.