Es mi nuevo sentido de hablar de Oracle DBA

15

Cuando configuramos FC LUN para nuestros cuadros de MSSQL, rara vez tenemos que presentarles más de 8 LUN distintos de varios tipos (Quórum, MSDTC, TempDB, Datos, Registros, Copia de seguridad y algunos otros).

Tenemos un nuevo Oracle DBA, y él me dio una lista de LUN que quiere para su primer servidor nuevo: ¡hay 38 de ellos! y esto es para un cuadro de DB realmente básico, con un solo DB. Todos son LUN bastante pequeños (100 GB) y se atornillan claramente usando ASM de forma LVM.

Es la mejor manera de hacer esto, realmente no soy un experto en Oracle, pero me parece demasiado complejo, ¿cuáles son sus pensamientos y experiencias al respecto?

Chopper3
fuente
1
38 LUN para un solo DB ... ¡¿Qué?!?!
Zypher
55
thedailywtf.com/Articles/The-Certified-DBA.aspx
Pausado hasta nuevo aviso.

Respuestas:

19

Soy un DBA Oracle. Su nuevo DBA está actuando como muchos DBA de Oracle y sobre ingeniería.

  1. Ningún oráculo NO necesita 38 LUN. He extendido archivos de datos en grandes cantidades de lun, pero estos están en sistemas que son MUY activos y MUY grandes. Los LUN no necesariamente se asignan a nuevos grupos RAID, ¿verdad? Por lo tanto, tener archivos en monjas separadas no necesariamente distribuye nada de todos modos (no soy un experto en esto).

  2. Todo este tipo de división de archivos hará mucho más trabajo para el DBA. Esto aumenta su importancia para el equipo. Muchos DBA de Oracle intentan hacerse parecer más importantes y sobre diseñar cosas TODO EL TIEMPO.

  3. La separación de datos en diferentes grupos de incursiones / luns no es específica de Oracle. Se basa en el uso. Para distribuir correctamente los archivos, su DBA necesitaría comprender la aplicación para saber mucho a qué se accede (por cierto, separar los índices de los datos NO mejora el rendimiento ya que el acceso es en serie ...). ¿Conoce la aplicación? ¿Ha mirado la base de datos para ver a qué objetos se accede mucho? ¿Qué necesita ser extendido? Lo que escribe y lee a granel y necesita ser aislado.

Esto suena como una base de datos de tamaño pequeño / mediano. ¿Cuál es el nivel de actividad? Probablemente no lo sepa.

En general, en bases de datos más pequeñas, no necesita hacer mucho a nivel del sistema de archivos para mejorar el rendimiento. El 95% es SQL y los desarrolladores ejecutan demasiadas sentencias sql en bucles.

editar ( años más tarde !):

He pasado algún tiempo hablando con ingenieros de SAN y he mejorado un poco mi conocimiento de SAN y LUN desde que publiqué esto. Primero, un LUN es 'lógico'. No es necesario asignar para separar grupos RAID, discos, etc. Eso lo configura el ingeniero de SAN y no será visible para el DBA. Hay mucho más para separar IO en una SAN que la mayoría de las personas se dan cuenta.

Estoy trabajando en un sistema muy grande que tiene un nivel de actividad muy alto. Tenemos cientos de LUN, grupos RAID, etc ... distribuimos archivos por todo el lugar. Trabajamos con los ingenieros de SAN para configurar los LUN para asegurarnos de que se extiendan a diferentes partes de la SAN. Realmente NO tenemos visibilidad de cómo se asignan los LUN desde el nivel del sistema operativo. Un nuevo sistema de archivos no significa que tengamos datos asignados a una nueva ubicación en la SAN.

En cuanto al papel de HP sobre el trazado de bandas de ASM. Esto no tiene ningún sentido cuando se trabaja con una SAN. Las rayas, la duplicación, RAID, etc., se realizan bajo la superficie. No lo verá a nivel de aplicación o base de datos. La configuración de Oracle ASM para 'striping' no tiene sentido en una SAN, ya que simplemente se dividirá en volúmenes lógicos que podrían estar utilizando una configuración RAID 5 (gran mayoría debido a los costos de control. Las SAN son inversiones multimillonarias). Solo verá los sistemas de archivos. Esos no se asignan necesariamente a diferentes discos o diferentes ubicaciones en la SAN.

Aparentemente, IBM tiene una nueva característica que le permite a la SAN decidir dónde escribir en los discos en función de la actividad. Mi punto aquí es que las personas que optimizan SAN son especialistas. Necesitas trabajar con ellos. Un DBA o un desarrollador de aplicaciones no tendrán visibilidad para ver si se está diseminando algo.

Por lo que he visto, la mayoría de las tiendas no tienen muy buenos ingenieros de SAN. Tiende a ser un trabajo para personas de nivel junior. La mayoría de los buenos tienden a ser consultores. Por lo tanto, muchas veces solo está utilizando la configuración predeterminada por el fabricante. Para reiterar que agregar más LUN probablemente no distribuirá ningún dato, a menos que tenga un ingeniero de SAN que lo configure bajo la superficie. Además de eso, puede tener 1 LUN y tenerlo extendido por usted. A menos que tenga un buen ingeniero de SAN, todo esto no tiene sentido. Es obvio para mí que el DBA en cuestión no sabe lo suficiente sobre SAN como para saber que no sabe nada.

El 99,9% de las configuraciones estándar de tiempo están bien. A menos que tenga un cuello de botella de E / S específico, esto es innecesario. Si lo hace, debe trabajar con el ingeniero de SA y SAN para determinar cuál es el problema. Gran parte del tiempo no tiene NADA que ver con el diseño de la SAN. Una vez más, los DBA y los desarrolladores no tendrán acceso para ver lo que está sucediendo debajo, y mucho menos el conocimiento para resolver esto. Las SAN son muy complejas.

Beto
fuente
Con todo respeto, solo algunos puntos de atención: - 1. "SAN es complejo" - También lo es la base de datos Oracle. Incluso uno de los productos más caros en cualquier infraestructura de TI o sistema de TI. 2. "Franjas / extensión / ect" - De acuerdo. Los DBA no necesitan saber qué sucede debajo, siempre y cuando nunca enfrenten problemas con E / S, pero desafortunadamente siempre es un cuello de botella de E / S para cualquier problema relacionado con el rendimiento. 3. Nuevamente, los DBA difieren: Infra / Core DBA frente a Application DBA. Infra DBA tiene la tarea de realizar actividades relacionadas con DB trabajando con SO y discos (SAN), por lo que debe tener un buen conocimiento de lo que está sucediendo. 4. Todo lo anterior
5

Puedes tratar de golpearlo en la cabeza con ESTO , describiendo el mismo enfoque (Stripe And Mirror Everything), que es refrescantemente simple.

janneb
fuente
1
Creo que eso es lo que está tratando de hacer, sin darse cuenta de que nuestra matriz es una bestia ya desagradable con RAID10.
Chopper3
4

No tengo una respuesta directa porque usamos MSSQL y mySQL. Pero cada vez que mi DBA pide algo que suena loco ... así. Le solicito que documente por qué se requiere cada pieza. Esto sirve para dos propósitos, uno muchas veces, de repente cambian de opinión a algo más sano y dos me permiten ver su proceso de pensamiento para que pueda aplicar la lógica de algunos sistemas a lo que quieren y presentar una alternativa que no está tan fuera de control . Entonces, en este caso, pediría un documento que justifique la necesidad de cada uno de los 38 LUN

Zypher
fuente
Gracias por la respuesta, he pedido esto, pero aún no ha respondido, pensé en consultar con ustedes primero;)
Chopper3
2

Hay estudios que muestran que las bandas en ASM y en el nivel de hardware pueden ser una ventaja para el rendimiento. Informe técnico de HP-Oracle Estas mejoras de rendimiento se observan principalmente en situaciones de alta concurrencia que no parece que esté esperando. Pero podría ser a lo que está acostumbrado su DBA.

Todd Pierce
fuente
En realidad, esto será ALTAMENTE concurrente, solo un DB simple, así que gracias.
Chopper3
1

Sé que para DB2 en AIX, nuestros DBA obtienen 5 volúmenes por base de datos, cada uno para una parte diferente de la base de datos. Uno para la base de datos, uno para el registro primario, uno para el registro de archivo, una temperatura y algo más. Esos son volúmenes, no tienen que ser LUN, depende de cómo le guste administrar su almacenamiento.

mfinni
fuente
Se necesitan más detalles: ¿quiere 38 LUN para una base de datos o 38 LUN para una base de datos ADEMÁS de la compilación del nuevo servidor? ¿Es Oracle en Windows o Linux / Unix? Los administradores de Linux / Unix tienden a querer particiones más pequeñas solo para el sistema operativo, incluso antes de entrar en aplicaciones y bases de datos: / usr, / var, swap, / etc, y así sucesivamente. Creo que necesita tener una discusión detallada con él, y ambos pueden necesitar más investigación. Es posible que necesite muchos discos no compartidos por razones IO, por ejemplo.
mfinni