Apakah akal DBA Oracle baru saya berbicara


15

Ketika kami menyiapkan FC LUN untuk kotak MSSQL kami, kami jarang harus menyajikannya dengan lebih dari 8 LUN berbeda dari berbagai jenis (Kuorum, MSDTC, TempDB, Data, Log, Cadangan, dan beberapa lainnya).

Kami memiliki Oracle DBA baru, dan dia memberi saya daftar LUN yang dia inginkan untuk server barunya yang pertama - ada 38 di antaranya! dan ini untuk kotak DB yang benar-benar dasar, dengan hanya satu DB. Mereka semua LUN yang cukup kecil (100GB) dan mereka jelas menggunakan ASM dengan cara tipe LVM.

Apakah cara terbaik untuk melakukan ini, saya benar-benar bukan ahli Oracle tetapi tampaknya terlalu kompleks bagi saya, apa pendapat dan pengalaman Anda tentang masalah ini?


1
38 LUN untuk satu DB ... apa?!?!
Zypher

Jawaban:


19

Saya seorang Oracle DBA. DBA baru Anda bertindak seperti banyak Oracle DBA dan lebih dari rekayasa.

  1. TIDAK oracle TIDAK membutuhkan 38 LUN. Saya telah menyebarkan file data pada sejumlah besar lun tetapi ini pada sistem yang SANGAT aktif dan SANGAT besar. LUN tidak perlu memetakan ke grup RAID baru, kan? Jadi memiliki file pada lun yang terpisah tidak perlu menyebarkan apa pun (saya bukan ahli dalam hal ini).

  2. Semua pengupasan file semacam ini akan lakukan adalah membuat lebih banyak pekerjaan untuk DBA. Ini meningkatkan kepentingannya bagi tim. Banyak Oracle DBA mencoba untuk membuat diri mereka tampak lebih penting dan merekayasa hal-hal sepanjang waktu.

  3. Memisahkan data ke grup / lun raid berbeda tidak spesifik. Ini berdasarkan penggunaan. Untuk menyebar file dengan benar, DBA Anda harus memahami aplikasi untuk mengetahui apa yang sedang diakses banyak (btw, memisahkan indeks dari data TIDAK meningkatkan kinerja karena akses serial ...). Apakah dia tahu aplikasi itu? Apakah dia melihat database untuk melihat objek apa yang sedang diakses? Apa yang perlu disebarkan? Apa yang ditulis massal dan dibaca serta perlu diisolasi.

Ini terdengar seperti database ukuran kecil / menengah. Apa tingkat aktivitasnya? Dia mungkin tidak tahu.

Umumnya pada basis data yang lebih kecil Anda tidak perlu melakukan banyak hal pada tingkat sistem file untuk meningkatkan kinerja. 95% adalah SQL dan melakukan pengembang menjalankan terlalu banyak pernyataan sql dalam loop.

sunting ( tahun kemudian !):

Saya telah menghabiskan waktu berbicara dengan insinyur SAN dan telah meningkatkan pengetahuan saya tentang SAN dan LUN sejak memposting ini. Pertama LUN adalah 'logis'. Itu tidak perlu memetakan untuk memisahkan kelompok RAID, disk, dll ... Itu adalah setup oleh insinyur SAN dan tidak akan terlihat oleh DBA. Ada banyak lagi untuk memisahkan IO dalam SAN yang disadari kebanyakan orang.

Saya sedang mengerjakan sistem yang sangat besar yang memiliki tingkat aktivitas yang sangat tinggi. Kami memiliki ratusan LUN, Grup RAID, dll ... kami menyebarkan file di semua tempat. Kami bekerja dengan para insinyur SAN untuk mengkonfigurasi LUN untuk memastikan mereka menyebar ke berbagai bagian SAN. Kami benar-benar tidak memiliki visibilitas bagaimana LUN dipetakan dari tingkat OS. Sistem file baru tidak berarti kami memiliki data yang dipetakan ke lokasi baru di SAN.

Sejauh kertas HP tentang striping ASM. Ini sama sekali tidak ada artinya ketika bekerja dengan SAN. Striping, mirroring, RAID, dll ... semuanya dilakukan di bawah permukaan. Anda tidak akan melihatnya di level aplikasi atau basis data. Mengkonfigurasi Oracle ASM untuk 'striping' tidak ada artinya dalam SAN, karena Anda hanya akan menggunakan volume logis yang bisa menggunakan konfigurasi RAID 5 (sebagian besar karena biaya kontrol. SAN adalah investasi multi-juta dolar). Anda hanya akan melihat sistem file. Mereka tidak perlu memetakan ke disk yang berbeda atau lokasi yang berbeda di SAN.

IBM ternyata memiliki fitur baru yang memungkinkan SAN memutuskan tempat menulis ke disk berdasarkan aktivitas. Maksud saya di sini adalah bahwa orang yang mengoptimalkan SAN adalah spesialis. Anda harus bekerja dengan mereka. DBA atau pengembang aplikasi tidak akan memiliki visibilitas untuk melihat apakah ada sesuatu yang tersebar.

Dari apa yang saya lihat kebanyakan toko tidak memiliki insinyur SAN yang sangat baik. Ini cenderung menjadi pekerjaan untuk orang-orang tingkat junior. Sebagian besar yang baik cenderung menjadi konsultan. Jadi banyak waktu Anda hanya menggunakan pengaturan default oleh pabrikan. Mengulangi menambahkan lebih banyak LUN mungkin tidak akan menyebarkan data apa pun, kecuali jika Anda memiliki teknisi SAN yang mengkonfigurasinya untuk Anda di bawah permukaan. Selain itu, Anda dapat memiliki 1 LUN dan menyebarkannya untuk Anda. Kecuali Anda memiliki insinyur SAN yang baik, semua ini tidak ada artinya. Jelas bagi saya bahwa DBA yang dipermasalahkan tidak cukup tahu tentang SAN bahkan tidak tahu apa-apa.

99,9% dari konfigurasi standar waktu baik-baik saja. Kecuali jika Anda memiliki hambatan IO tertentu, ini tidak perlu. Jika Anda melakukannya, maka Anda perlu bekerja dengan insinyur SA dan SAN untuk menentukan apa masalahnya. Banyak waktu tidak ada hubungannya dengan tata letak SAN. Sekali lagi, DBA dan pengembang tidak akan memiliki akses untuk melihat apa yang terjadi di bawahnya, apalagi pengetahuan untuk mengetahuinya. SAN sangat kompleks.


Dengan segala hormat, hanya beberapa poin perhatian: - 1. "SAN itu kompleks" - Begitu juga database Oracle. Bahkan salah satu produk paling mahal dalam infrastruktur TI atau sistem TI apa pun. 2. "Striping / menyebar / dll" - Setuju. DBA tidak perlu tahu apa yang terjadi di bawah asalkan mereka tidak pernah menghadapi masalah dengan I / O - tapi sayangnya itu selalu merupakan hambatan IO untuk masalah terkait kinerja. 3. Sekali lagi DBA berbeda - Infra / Core DBA vs Aplikasi DBA. Infra DBA ditugaskan dengan kegiatan yang berhubungan dengan DB yang bekerja dengan OS & disk (SAN) - jadi dia harus memiliki pengetahuan yang baik tentang apa yang terjadi. 4. Semua yang di atas

5

Anda dapat mencoba untuk mengalahkannya dengan INI , menggambarkan pendekatan SAMA (Stripe Dan Cermin Semuanya), yang sangat sederhana.


1
Saya pikir itulah yang dia coba lakukan - tidak menyadari bahwa array kita adalah binatang yang sudah jahat dengan RAID10.
Chopper3

4

Saya tidak punya jawaban langsung karena kami menggunakan MSSQL dan mySQL. Tetapi setiap kali DBA saya meminta sesuatu yang terdengar gila ... seperti itu. Saya meminta dia untuk mendokumentasikan mengapa setiap bagian diperlukan. Ini melayani dua tujuan satu banyak kali mereka tiba-tiba berubah pikiran menjadi sesuatu yang lebih waras dan dua memungkinkan saya untuk melihat proses pemikiran mereka sehingga saya dapat menerapkan beberapa sistem logika untuk apa yang mereka inginkan dan menyajikan alternatif yang tidak begitu rusak. . JADI dalam hal ini saya akan meminta dokumen yang membenarkan kebutuhan untuk masing-masing 38 LUN


Terima kasih atas tanggapannya, saya telah meminta ini, tetapi dia belum menjawab, saya pikir saya akan memeriksa dulu dengan Anda orang baik;)
Chopper3

2

Ada penelitian yang menunjukkan bahwa striping di ASM dan pada tingkat perangkat keras dapat menjadi keuntungan bagi kinerja. Whitepaper HP-Oracle Keuntungan kinerja ini sebagian besar terlihat dalam situasi konkurensi tinggi yang tidak terdengar seperti yang Anda harapkan. Tapi mungkin seperti apa DBA Anda dulu.


Sebenarnya ini akan SANGAT bersamaan, hanya DB sederhana - jadi terima kasih.
Chopper3

1

Saya tahu bahwa untuk DB2 pada AIX, DBA kami mendapatkan 5 volume per basis data - masing-masing untuk bagian DB yang berbeda. Satu untuk DB, satu untuk log primer, satu untuk log arsip, temp, dan yang lainnya. Itu adalah volume, itu tidak harus LUNs, itu tergantung pada bagaimana Anda ingin mengelola penyimpanan Anda.


Diperlukan lebih banyak detail - apakah dia ingin 38 LUN untuk satu DB, atau 38 LUN untuk satu DB PLUS versi server baru? Apakah itu Oracle pada Windows, atau Linux / Unix? Admin Linux / Unix cenderung menginginkan partisi yang lebih kecil hanya untuk OS, bahkan sebelum Anda masuk ke aplikasi dan DB - / usr, / var, swap, / etc, dan sebagainya. Saya pikir Anda perlu melakukan diskusi terperinci dengannya, dan Anda berdua mungkin perlu melakukan lebih banyak riset. Dia mungkin membutuhkan banyak disk yang tidak digunakan bersama untuk alasan IO, misalnya.
mfinni
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.