Hola, no se nada de esto y me gustaria saber, en que consiste indexear las tablas, para que es, como se hace y de que sirve.
Es muy complejo?
SALUDOS!
| |||
En que consiste un indexeo de tablas? Hola, no se nada de esto y me gustaria saber, en que consiste indexear las tablas, para que es, como se hace y de que sirve. Es muy complejo? SALUDOS! |
| |||
Respuesta: En que consiste un indexeo de tablas? Hola IISLAS, gracias por responder, ya he buscado en google pero no he encontrado lo que quieroo y en unos son muy tecnicos como por ejemplo esto:
Código SQL:
Lo que quiero saber como se hace en sql server y si puedo afectar algo etc... Ver original |
| ||||
Respuesta: En que consiste un indexeo de tablas? Te voy a platicar un ejemplo, que siempre digo, cuando me preguntan que es un INDICE. Si vas a buscar al Dr. Jimenez, en un edificio, donde no hay DIRECTORIO y no hay recepcionista, ni policia a la entrada y no llevas la direccion de su despacho, ¿que harias? Tocar de piso en piso, despacho por despacho, por el Dr. Jimenez, como bien, te lo puedes encontrar en el piso 1, despcho 101 o bien podrias llegar al piso 15, despacho 909 y no dar con el, ¿cierto? Bueno, pues para eso sirven los INDICES en las tablas, para no "recorrer registro por registro (scan)", simplemente, cuando buscas al "Dr. Jimenez" y si hay un indice en tu tabla por ese campo, la busqueda se hara de forma DIRECTA. ¿Que afectas?, Nada A menos claro, que crees INDICES sin razon alguna. Hay una teoria no escrita que dice, "Todas los campos colocados despues del WHERE, son candidatos a ser indices". Si buscas en una tabla de MILLONES DE REGISTROS sin indice, el motor debera ir comparando registro por registro, el filtro (where) que tu has colocado, a este efecto se le conoce como SCAN. En cambio, si tu tabla, tiene un indice por los campos despues del where, la busqueda seria mucho, pero mucho mas rapida. Espero haberme explicado. Saludos
__________________ MCTS Isaias Islas |
| |||
Respuesta: En que consiste un indexeo de tablas? Entonces los indices son por campo y no por registro???' ya me quedo mas claro solo quiero saber eso. Esque tengo un problema, una gringa reviso nuestras bases de datos ya que tenemos problemas con ella y nos mando a decir esto: Cita: Crees tu que con los indices podemos solucionar esto?Hello, The speed of loading the tools is based on database size, index fragmentation, and processing power. The first recommendation to speed processing would be server maintenance, reindexing the tables when the site is not running is highly recommended. I have reindexed a few of your key growth tables, but server maintenance is the responsibility of the site. If you have a down period that you would like me to enable a task to run a job to reindex, please submit an RFC for this automatic job to be enabled. Otherwise, please ask your SQL Server Support team to perform database maintenance. If you need Fortech to provide this maintenance, please send a request to [email protected] for a proposal to perform this maintenance for you when the site will be down. Saludos |
| ||||
Respuesta: En que consiste un indexeo de tablas? En pocas palabras, LOS INDICES, se crean por campo (o suma de campos, indices compuestos). Claro esta que una tabla que tiene indices, pero a su vez es de actualizacion constante (insert, update, delete), sus indices se van CORROMPIENDO. ¿Que hay que hacer? Lo que la "gringa" te dice, es que detecto que tienes muy DEFRAGMENTADOS (dañados) tus indices, entonces, hay que RE-CREARLOS. ¿Como? Si tienes version 2005 o superior: -- Ejecutar por cada base de datos exec sp_msforeachtable 'ALTER INDEX ALL ON ? REBUILD WITH (FILLFACTOR = 80)' -- Al terminar, actualizar estadisticos exec sp_updatestats Con esto, te aseguras que tus indices, se les ha dado MANTENIMIENTO ¿Cada cuando? Al menos deberias tener un job que lo hiciera cada SEMANA, me temo que no tienes mucha experiencia en el manejo de SQL SERVER.
__________________ MCTS Isaias Islas |
| |||
Respuesta: En que consiste un indexeo de tablas? Hola IIslas, gracias por tu apóyo, ejecute esto en el servidor y me sale: Cita: Sabes que sera? si es por que el servidor esta actualmente en produccion o algo por el estilo?The statement has been terminated. Msg 0, Level 11, State 0, Line 0 A severe error occurred on the current command. The results, if any, should be discarded. Msg 0, Level 20, State 0, Line 0 A severe error occurred on the current command. The results, if any, should be discarded. Saludos |
| ||||
Respuesta: En que consiste un indexeo de tablas? Deberias revisar si ya tienes aplicado tu ultimo service pack, ejecuta esto: SELECT CAST( SERVERPROPERTY( 'MachineName' ) AS varchar( 30 ) ) AS MachineName , CAST( SERVERPROPERTY( 'InstanceName' ) AS varchar( 30 ) ) AS Instance , CAST( SERVERPROPERTY( 'ProductVersion' ) AS varchar( 30 ) ) AS ProductVersion , CAST( SERVERPROPERTY( 'ProductLevel' ) AS varchar( 30 ) ) AS ProductLevel , CAST( SERVERPROPERTY( 'Edition' ) AS varchar( 30 ) ) AS Edition , ( CASE SERVERPROPERTY( 'EngineEdition') WHEN 1 THEN 'Personal or Desktop' WHEN 2 THEN 'Standard' WHEN 3 THEN 'Enterprise' END ) AS EngineType , CAST( SERVERPROPERTY( 'LicenseType' ) AS varchar( 30 ) ) AS LicenseType , SERVERPROPERTY( 'NumLicenses' ) AS #Licenses; Referencia: http://support.microsoft.com/kb/910416
__________________ MCTS Isaias Islas |
Etiquetas: |