SlideShare una empresa de Scribd logo
7 Índices
espaciales
OBJETIVOS
•Explicar el concepto de indexación espacial.
•Generar un árbol R índice espacial.
•Estimar el tamaño de un índice R-tree.
Oracle Spatial utiliza un índice espacial para optimizar el rendimiento de las consultas
espaciales, de la misma manera que se crea un índice en los datos escalares para
mejorar el la obtención de información.
Oracle Spatial utiliza índices de árbol R para un acceso eficiente a los datos. Los índices
espaciales se pueden construir en dos, tres o cuatro dimensiones; siendo el de default el
de dos dimensiones.
Un índice espacial puede ayudar a encontrar:
•Objetos dentro de un espacio de datos indexado, mismos que interactúan con un punto o
área de interés (ventana de consulta)
•Pares de objetos que interactúan unos con otros (spatial join).
1 INDEXANDO DATOS ESPACIALES
2 INDEXADO CON ÁRBOLES R
El indexado con árboles R está basado en el MBR (minimum bounding rectangles ) para
el caso de dos dimensiones, mientras que para tres dimensiones se utiliza el MBV
(minimum bounding volumes ).
La indexación utilizando árboles R es usada como técnica debido a que prácticamente
no requieren de que se realice de manera continua un tunning (optimizacion).
Cada entrada al índice aproxima una geometría utilizando MBR para 2D y MBV para 3D.
MBRs y MBVs son indexados internamente utilizando una estructura de árbol.
Cada nodo hoja del índice árbol R almacena un MBR y un puntero a la geometría
original.
3 ¿CÓMO SON INDEXADAS LAS GEOMETRÍAS
EMPLEANDO ÁRBOLES R?
Cuando un índice de árbol R se genera, un rectángulo mínimo (MBR) es construido
alrededor de cada geometría. En la figura de arriba, hay nueve rectángulos mínimo de
delimitación, una para cada geometría. En el nivel más bajo de un índice árbol R, hay
un puntero hacia la geometría real (para el identificador de la geometría) y el MBR
asociado a esa geometría. Índices árbol R tienen una entrada de índice (o nodo de la
hoja) para cada geometría.
Después de que el MBR se construye alrededor de cada geometría, las aproximaciones
se agrupan de manera que las geometrías que están cercanas unas a otras
En el nivel más bajo (o nivel hoja) del árbol-R, A, B, C y D contienen MBR para cada una
de las geometrías, así como enlaces o apuntadores a cada una de estas geometrías.
A continuación, A, B, C y D se agrupan en función de su proximidad. En este caso, A y B
se agrupan en R, mientras que y C y D se agrupan en S.
El nivel superior (o raíz) de los índices de árbol R, contiene enlaces a R y S, así como a
los rectángulos de delimitación mínimas asociados con esos dos nodos.
Nota: la estructura de árbol R está optimizado para el acceso a elementos que están
cerca unos de otros.
El número de ramas de un árbol R se calcula automáticamente basado en el tamaño de
bloque de base de datos utilizado para la instancia, así como el número de dimensiones
que se indexan.
4 SINTAXIS “CREATE INDEX”
CREATE INDEX <index-name>
ON <table-name> (<column-name>)
INDEXTYPE IS MDSYS.SPATIAL_INDEX
[PARAMETERS (
'SDO_RTR_PCTFREE = <param_value>
<storage_parameters> = <param_value> ... ')
] [PARALLEL [<parallel_degree>]];
La instrucción CREATE INDEX es exactamente la misma que cualquier otra instrucción
CREATE INDEX Oracle, con algunas opciones adicionales.
<INDEX-NAME>: Nombre del índice. Se deben de respetar la serie dec onvenciones de
nomenclatura en el nombre de índices. La longitud del nombre debe ser 30 caracteres o
menos, y el nombre del índice debe comenzar con un carácter alfabético.
<TABLE-NAME>: Nombre de la tabla que contiene la columna espacial que será indexada.
La columna espacial es del tipo SDO_GEOMETRY.
<COLUMN-NAME>: El nombre de la columna del tipo de SDO_GEOMETRY que se va a
indexar espacialmente.
CREATE INDEX geod_states_sidx
ON geod_states (geom)
INDEXTYPE IS mdsys.spatial_index;
Cuando un índice árbol R se construye, una tabla de
Oracle se crea. Esto también se conoce como la tabla
de índice espacial. La tabla de índice espacial es
visible para el usuario final, y se marca en las tablas
de metadatos de Oracle (USER_TABLES,
ALL_TABLES, DBA_TABLES) como secundaria = 'Y'.
El espacio de tablas para el índice espacial aparece
como NULL si se busca en user_indexes. Esto es
porque el nombre de índice espacial es sólo una
estructura lógica asociada con otra estructura física (la
tabla de índice espacial). Las tablas y los parámetros
de almacenamiento pueden ser especificadas en la
tabla de índice espacial asociada con el nombre de
índice espacial.
Nota: No actualizar, modificar o eliminar la tabla de
índice espacial. Al colocar el índice, éstas se
actualizan automáticamente.
<SDO_INDX_DIMS>:
Define el número de dimensiones en que se construye el índice.
Permite la indexación de más de dos dimensiones.
<SDO_RTR_PCTFREE>:
Es el porcentaje de ramas de los árboles R reservadas en cada nodo del índice
para dar cabida a futuras inserciones.
Acepta el 10 por ciento como valor predeterminado, es decir, 10 por ciento de las
ramas en el árbol, son reservadas cuando se crea el índice espacial.
<LAYER_GTYPE>:
Es la restricción de tipo de capa para todos los tipos de índice espacial.
Sólo permiten geometrías del tipo dado para que se indexe.
Se utiliza para el funcionamiento y control de tipo de geometría.
Los valores válidos son:
•POINT
•LINE o CURVE
•POLYGON
•MULTIPOINT
•MULTILINE or MULTICURVE
•MULTIPOLYGON
•COLLECTION
INITIAL:
Tamaño de la medida inicial de la tabla de índice espacial.
TABLESPACE:
Nombre del tablespace donde se aloja el índice.
WORK_TABLESPACE:
Nombre del tablespace donde las tablas de trabajo son creadas durante el proceso
de creación de índices árbol R.
Algunos parámetros de almacenamiento adicionales (no se usa con frecuencia):
NEXT:
Tamaño de la medida siguiente de la tabla de índice espacial
PCTINCREASE:
Porcentaje en que aumentará la medida utilizada anteriormente, cuando surge
la necesidad de crear una nueva dimensión.
MINEXTENTS:
Número mínimo de extensiones para crear la tabla de índice espacial.
MAXEXTENTS:
El número máximo de extensiones para crear la tabla de índice espacial.
<SDO_DML_BATCH_SIZE>:
Es un parámetro de ajuste a las actualizaciones de índice.
Acepta 1000 como el valor predeterminado, que está bien para la mayoría de las
cargas de trabajo
Puede poseer un valor más alto si se dispone de más memoria.
<SDO_NON_LEAF_TBL>:
Este parámetro permite que el índice de árboles R se divida en dos durante la
creación del índice.
PARALLEL [<parallel_degree>]
Esto rompe la labor de la creación del índice en trozos más pequeños que se
pueden realizar en paralelo. Si el grado de paralelismo no se especifica, Oracle
elige un valor por defecto en base a los algoritmos internos de Oracle, los cuales
se encuentran basados en el número de CPU s.
5 CREACIÓN DE UN ÍNDICE ESPACIAL EN PARALELO
Spatial
clustering
Spatial
clustering
Spatial
clustering
Spatial
clustering
MBR
MBR
generation
MBR
generation
MBR
generation
MBR
generation
Spatial
index
tables
CREATE INDEX
….
PARALLEL 4;
Si un recurso del sistema (CPU, memoria, E / S) ya está saturado, el paralelismo puede
afectar negativamente a ese recurso.
6 ANALIZANDO TABLAS ESPACIALES
exec dbms_stats.gather_table_stats
(<schema_name>,<table_name>)
La información es recopilada para el optimizador de Oracle. La información recogida
incluye el número de filas y de los índices, y demás información adicional.
No hay necesidad de recopilar estadísticas sobre las tablas índice espacial.
7 SINTAXIS “DROP INDEX”
Esto sentencia elimina el índice espacial y su correspondiente tabla de índice espacial.
Si CREATE INDEX en una columna de SDO_GEOMETRY no se llega a completar con
éxito, se debe de tratar de hacer un DROP INDEX. Si eso no funciona, se debe de llamar
a DROP INDEX mediante el uso de la opción FORCE.
DROP INDEX <index_name>;
DROP INDEX <index_name> FORCE;
8 SINTAXIS “ALTER INDEX REBUILD”
ALTER INDEX <index_name>
REBUILD
[PARAMETERS (<parameter string>)];
Esta sentencia vuelve a generar una tabla de índice espacial.
Los parámetros se pasan como una cadena entre comillas.
Por ejemplo, para cambiar la distribución espacial de tablas de índice de
tablespace:
'Tablespace = indx_tblspc'
'Work_tablespace = work_indx_tblspc'
9 VISTAS DEL DICCIONARIO DE DATOS
USER_SDO_INDEX_METADATA: Muestra todos los metadatos de índice
espacial para el usuario actual
ALL_SDO_INDEX_METADATA: Muestra todos los metadatos de índice espacial
que el usuario actual tiene el privilegio de SELECT .
Oracle Spatial mantiene automáticamente las visitas del diccionario de datos.
USER_SDO_INDEX_METADATA
Otras vistas que son útiles para extraer información de índices espaciales son:
USER_SDO_INDEX_INFO
ALL_SDO_INDEX_INFO
INDEX_NAME VARCHAR2(32)
TABLE_NAME VARCHAR2(32)
COLUMN_NAME VARCHAR2(2048)
SDO_INDEX_TYPE VARCHAR2(32)
SDO_INDEX_TABLE VARCHAR2(32)

Más contenido relacionado

La actualidad más candente

Spatial Databases
Spatial DatabasesSpatial Databases
Spatial Databases
Pratibha Chaudhary
 
Database User and Administrator
Database User and AdministratorDatabase User and Administrator
Database User and Administrator
A. S. M. Shafi
 
Lecture 4 sql {basics keys and constraints}
Lecture 4 sql {basics  keys and constraints}Lecture 4 sql {basics  keys and constraints}
Lecture 4 sql {basics keys and constraints}
Shubham Shukla
 
Data mining and data warehouse lab manual updated
Data mining and data warehouse lab manual updatedData mining and data warehouse lab manual updated
Data mining and data warehouse lab manual updated
Yugal Kumar
 
basis data lanjut modul
 basis data lanjut modul basis data lanjut modul
basis data lanjut modul
Denny Safardan
 
Integrity Constraints
Integrity ConstraintsIntegrity Constraints
Integrity Constraints
Megha yadav
 
Sql o NoSql en Informática Médica
Sql o NoSql en Informática MédicaSql o NoSql en Informática Médica
Sql o NoSql en Informática Médica
Liz Armenteros
 
SPATIAL DATABASES.pptx
SPATIAL DATABASES.pptxSPATIAL DATABASES.pptx
SPATIAL DATABASES.pptx
AmanSingla57
 
Introduction to Oracle Spatial
Introduction to Oracle SpatialIntroduction to Oracle Spatial
Introduction to Oracle Spatial
Ehsan Hamzei
 
Database Keys
Database KeysDatabase Keys
Database Keys
Forrester High School
 
Introducción a Sql
Introducción a SqlIntroducción a Sql
Introducción a Sql
alexmerono
 
Structured query language(sql)ppt
Structured query language(sql)pptStructured query language(sql)ppt
Structured query language(sql)ppt
Gowarthini
 
Multidimensional schema
Multidimensional schemaMultidimensional schema
Multidimensional schema
Chaand Chopra
 
Object oriented database model
Object oriented database modelObject oriented database model
Object oriented database modelPAQUIAAIZEL
 
2700 3 data preprocessing
2700 3 data preprocessing2700 3 data preprocessing
2700 3 data preprocessing
Universitas Bina Darma Palembang
 
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)Sergio Sanchez
 
Triggers in SQL | Edureka
Triggers in SQL | EdurekaTriggers in SQL | Edureka
Triggers in SQL | Edureka
Edureka!
 
SQL DDL
SQL DDLSQL DDL
SQL DDL
Vikas Gupta
 

La actualidad más candente (20)

Spatial Databases
Spatial DatabasesSpatial Databases
Spatial Databases
 
Database User and Administrator
Database User and AdministratorDatabase User and Administrator
Database User and Administrator
 
Lecture 4 sql {basics keys and constraints}
Lecture 4 sql {basics  keys and constraints}Lecture 4 sql {basics  keys and constraints}
Lecture 4 sql {basics keys and constraints}
 
Data mining and data warehouse lab manual updated
Data mining and data warehouse lab manual updatedData mining and data warehouse lab manual updated
Data mining and data warehouse lab manual updated
 
basis data lanjut modul
 basis data lanjut modul basis data lanjut modul
basis data lanjut modul
 
Integrity Constraints
Integrity ConstraintsIntegrity Constraints
Integrity Constraints
 
Sql o NoSql en Informática Médica
Sql o NoSql en Informática MédicaSql o NoSql en Informática Médica
Sql o NoSql en Informática Médica
 
SPATIAL DATABASES.pptx
SPATIAL DATABASES.pptxSPATIAL DATABASES.pptx
SPATIAL DATABASES.pptx
 
Introduction to Oracle Spatial
Introduction to Oracle SpatialIntroduction to Oracle Spatial
Introduction to Oracle Spatial
 
enhanced er diagram
enhanced er diagramenhanced er diagram
enhanced er diagram
 
Sentencias sql
Sentencias sqlSentencias sql
Sentencias sql
 
Database Keys
Database KeysDatabase Keys
Database Keys
 
Introducción a Sql
Introducción a SqlIntroducción a Sql
Introducción a Sql
 
Structured query language(sql)ppt
Structured query language(sql)pptStructured query language(sql)ppt
Structured query language(sql)ppt
 
Multidimensional schema
Multidimensional schemaMultidimensional schema
Multidimensional schema
 
Object oriented database model
Object oriented database modelObject oriented database model
Object oriented database model
 
2700 3 data preprocessing
2700 3 data preprocessing2700 3 data preprocessing
2700 3 data preprocessing
 
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
 
Triggers in SQL | Edureka
Triggers in SQL | EdurekaTriggers in SQL | Edureka
Triggers in SQL | Edureka
 
SQL DDL
SQL DDLSQL DDL
SQL DDL
 

Destacado

Oracle Spatial de la A a la Z - Unidad 8
Oracle Spatial de la A a la Z - Unidad 8Oracle Spatial de la A a la Z - Unidad 8
Oracle Spatial de la A a la Z - Unidad 8
Jorge Ulises
 
Oracle Spatial de la A a la Z - Unidad 6
Oracle Spatial de la A a la Z - Unidad 6Oracle Spatial de la A a la Z - Unidad 6
Oracle Spatial de la A a la Z - Unidad 6
Jorge Ulises
 
Oracle Spatial de la A a la Z - JUGM 2010
Oracle Spatial de la A a la Z - JUGM 2010Oracle Spatial de la A a la Z - JUGM 2010
Oracle Spatial de la A a la Z - JUGM 2010
J. Ulises Gonzalez Medina
 
Android de la A a la Z - Unidad 9
Android de la A a la Z - Unidad 9Android de la A a la Z - Unidad 9
Android de la A a la Z - Unidad 9
Jorge Ulises
 
Oracle spatial de la A a la Z - INTRO
Oracle spatial de la A a la Z - INTROOracle spatial de la A a la Z - INTRO
Oracle spatial de la A a la Z - INTRO
Jorge Ulises
 
Analisis geografico con oracle
Analisis geografico con oracleAnalisis geografico con oracle
Analisis geografico con oraclewalteromero
 
Manual completo-oracle-español-spanish-by-silex
Manual completo-oracle-español-spanish-by-silexManual completo-oracle-español-spanish-by-silex
Manual completo-oracle-español-spanish-by-silexAngel Lucas
 
Introdución a PostGis
Introdución a PostGisIntrodución a PostGis
Introdución a PostGis
Marco Carranza
 
Intro To PostGIS
Intro To PostGISIntro To PostGIS
Intro To PostGIS
mleslie
 
Introducción a base de datos Oracle
Introducción a base de datos OracleIntroducción a base de datos Oracle
Introducción a base de datos Oracle
pajaro5
 
Introducción a SQL sobre Oracle
Introducción a SQL sobre OracleIntroducción a SQL sobre Oracle
Introducción a SQL sobre OracleRaúl Galíndez
 
Base de Dato Oracle
Base de Dato OracleBase de Dato Oracle
Base de Dato Oracle
Jose Antonio Espino Lopez
 

Destacado (12)

Oracle Spatial de la A a la Z - Unidad 8
Oracle Spatial de la A a la Z - Unidad 8Oracle Spatial de la A a la Z - Unidad 8
Oracle Spatial de la A a la Z - Unidad 8
 
Oracle Spatial de la A a la Z - Unidad 6
Oracle Spatial de la A a la Z - Unidad 6Oracle Spatial de la A a la Z - Unidad 6
Oracle Spatial de la A a la Z - Unidad 6
 
Oracle Spatial de la A a la Z - JUGM 2010
Oracle Spatial de la A a la Z - JUGM 2010Oracle Spatial de la A a la Z - JUGM 2010
Oracle Spatial de la A a la Z - JUGM 2010
 
Android de la A a la Z - Unidad 9
Android de la A a la Z - Unidad 9Android de la A a la Z - Unidad 9
Android de la A a la Z - Unidad 9
 
Oracle spatial de la A a la Z - INTRO
Oracle spatial de la A a la Z - INTROOracle spatial de la A a la Z - INTRO
Oracle spatial de la A a la Z - INTRO
 
Analisis geografico con oracle
Analisis geografico con oracleAnalisis geografico con oracle
Analisis geografico con oracle
 
Manual completo-oracle-español-spanish-by-silex
Manual completo-oracle-español-spanish-by-silexManual completo-oracle-español-spanish-by-silex
Manual completo-oracle-español-spanish-by-silex
 
Introdución a PostGis
Introdución a PostGisIntrodución a PostGis
Introdución a PostGis
 
Intro To PostGIS
Intro To PostGISIntro To PostGIS
Intro To PostGIS
 
Introducción a base de datos Oracle
Introducción a base de datos OracleIntroducción a base de datos Oracle
Introducción a base de datos Oracle
 
Introducción a SQL sobre Oracle
Introducción a SQL sobre OracleIntroducción a SQL sobre Oracle
Introducción a SQL sobre Oracle
 
Base de Dato Oracle
Base de Dato OracleBase de Dato Oracle
Base de Dato Oracle
 

Similar a Oracle Spatial de la A a la Z - Unidad 7

Base de datos 11:02
Base de datos 11:02Base de datos 11:02
Base de datos 11:02
fabianleon10
 
Base de Datos 11:02
Base de Datos 11:02Base de Datos 11:02
Base de Datos 11:02fabianleon10
 
Ppt0000007
Ppt0000007Ppt0000007
Ppt0000007
Edgar Vìllamizar
 
Presentacion Sql
Presentacion SqlPresentacion Sql
Presentacion Sqlguest5f0fa0
 
Postgresql
PostgresqlPostgresql
Postgresql
PostgresqlPostgresql
Postgresql
jbersosa
 
INDICES EN SQL SERVER
INDICES EN SQL SERVERINDICES EN SQL SERVER
INDICES EN SQL SERVERDarwin Durand
 
Trabajando con datos Compuestos
Trabajando con datos CompuestosTrabajando con datos Compuestos
Trabajando con datos Compuestos
Martin Coronel
 
Base de datos
Base de datosBase de datos
Base de datos
Danìella Lagos
 
Optimizaciones
Optimizaciones   Optimizaciones
Optimizaciones
Christian Gallegos
 
Práctica sql server [fbdr]
Práctica sql server [fbdr]Práctica sql server [fbdr]
Práctica sql server [fbdr]
TelexFREE
 

Similar a Oracle Spatial de la A a la Z - Unidad 7 (20)

Base de datos 11:02
Base de datos 11:02Base de datos 11:02
Base de datos 11:02
 
Base de Datos 11:02
Base de Datos 11:02Base de Datos 11:02
Base de Datos 11:02
 
Ppt0000007
Ppt0000007Ppt0000007
Ppt0000007
 
Base de datos multidimensional
Base de datos multidimensionalBase de datos multidimensional
Base de datos multidimensional
 
Presentacion Sql
Presentacion SqlPresentacion Sql
Presentacion Sql
 
Postgresql
PostgresqlPostgresql
Postgresql
 
Postgresql
PostgresqlPostgresql
Postgresql
 
Postgresql
PostgresqlPostgresql
Postgresql
 
Postgresql
PostgresqlPostgresql
Postgresql
 
INDICES EN SQL SERVER
INDICES EN SQL SERVERINDICES EN SQL SERVER
INDICES EN SQL SERVER
 
Trabajando con datos Compuestos
Trabajando con datos CompuestosTrabajando con datos Compuestos
Trabajando con datos Compuestos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Optimizaciones
Optimizaciones   Optimizaciones
Optimizaciones
 
Luisa
LuisaLuisa
Luisa
 
Luisa (1)
Luisa (1)Luisa (1)
Luisa (1)
 
Luisa (1)
Luisa (1)Luisa (1)
Luisa (1)
 
Luisa
LuisaLuisa
Luisa
 
Luisa
LuisaLuisa
Luisa
 
Luisa
LuisaLuisa
Luisa
 
Práctica sql server [fbdr]
Práctica sql server [fbdr]Práctica sql server [fbdr]
Práctica sql server [fbdr]
 

Más de Jorge Ulises

Android de la A a la Z - Unidad 8
Android de la A a la Z - Unidad 8Android de la A a la Z - Unidad 8
Android de la A a la Z - Unidad 8
Jorge Ulises
 
Android de la A a la Z - Unidad 7
Android de la A a la Z - Unidad 7Android de la A a la Z - Unidad 7
Android de la A a la Z - Unidad 7
Jorge Ulises
 
Android de la A a la Z - Unidad 6
Android de la A a la Z - Unidad 6Android de la A a la Z - Unidad 6
Android de la A a la Z - Unidad 6
Jorge Ulises
 
Android de la A a la Z - Unidad 5
Android de la A a la Z - Unidad 5Android de la A a la Z - Unidad 5
Android de la A a la Z - Unidad 5
Jorge Ulises
 
Android de la A a la Z - Unidad 3
Android de la A a la Z - Unidad 3Android de la A a la Z - Unidad 3
Android de la A a la Z - Unidad 3
Jorge Ulises
 
Android de la A a la Z - Unidad 2
Android de la A a la Z - Unidad 2Android de la A a la Z - Unidad 2
Android de la A a la Z - Unidad 2
Jorge Ulises
 
Android de la A a la Z - Unidad 1
Android de la A a la Z - Unidad 1Android de la A a la Z - Unidad 1
Android de la A a la Z - Unidad 1
Jorge Ulises
 
Android de la A a la Z - Introducción
Android de la A a la Z - IntroducciónAndroid de la A a la Z - Introducción
Android de la A a la Z - Introducción
Jorge Ulises
 
Android de la A a la Z - Unidad 11
Android de la A a la Z - Unidad 11Android de la A a la Z - Unidad 11
Android de la A a la Z - Unidad 11
Jorge Ulises
 

Más de Jorge Ulises (9)

Android de la A a la Z - Unidad 8
Android de la A a la Z - Unidad 8Android de la A a la Z - Unidad 8
Android de la A a la Z - Unidad 8
 
Android de la A a la Z - Unidad 7
Android de la A a la Z - Unidad 7Android de la A a la Z - Unidad 7
Android de la A a la Z - Unidad 7
 
Android de la A a la Z - Unidad 6
Android de la A a la Z - Unidad 6Android de la A a la Z - Unidad 6
Android de la A a la Z - Unidad 6
 
Android de la A a la Z - Unidad 5
Android de la A a la Z - Unidad 5Android de la A a la Z - Unidad 5
Android de la A a la Z - Unidad 5
 
Android de la A a la Z - Unidad 3
Android de la A a la Z - Unidad 3Android de la A a la Z - Unidad 3
Android de la A a la Z - Unidad 3
 
Android de la A a la Z - Unidad 2
Android de la A a la Z - Unidad 2Android de la A a la Z - Unidad 2
Android de la A a la Z - Unidad 2
 
Android de la A a la Z - Unidad 1
Android de la A a la Z - Unidad 1Android de la A a la Z - Unidad 1
Android de la A a la Z - Unidad 1
 
Android de la A a la Z - Introducción
Android de la A a la Z - IntroducciónAndroid de la A a la Z - Introducción
Android de la A a la Z - Introducción
 
Android de la A a la Z - Unidad 11
Android de la A a la Z - Unidad 11Android de la A a la Z - Unidad 11
Android de la A a la Z - Unidad 11
 

Último

INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
CrystalRomero18
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
CesarPazosQuispe
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
ValeriaAyala48
 
Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
samuelvideos
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
ManuelCampos464987
 
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
Leidyfuentes19
 
Diagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestreDiagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestre
DiegoCampos433849
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Telefónica
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
Emilio Casbas
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
AlejandraCasallas7
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
coloradxmaria
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
DanielErazoMedina
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
rafaelsalazar0615
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
marianabz2403
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
PABLOCESARGARZONBENI
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
Ing. Julio Iván Mera Casas
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 

Último (20)

INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
 
Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
 
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
 
Diagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestreDiagrama de flujo - ingenieria de sistemas 5to semestre
Diagrama de flujo - ingenieria de sistemas 5to semestre
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 

Oracle Spatial de la A a la Z - Unidad 7

  • 1. 7 Índices espaciales OBJETIVOS •Explicar el concepto de indexación espacial. •Generar un árbol R índice espacial. •Estimar el tamaño de un índice R-tree. Oracle Spatial utiliza un índice espacial para optimizar el rendimiento de las consultas espaciales, de la misma manera que se crea un índice en los datos escalares para mejorar el la obtención de información. Oracle Spatial utiliza índices de árbol R para un acceso eficiente a los datos. Los índices espaciales se pueden construir en dos, tres o cuatro dimensiones; siendo el de default el de dos dimensiones. Un índice espacial puede ayudar a encontrar: •Objetos dentro de un espacio de datos indexado, mismos que interactúan con un punto o área de interés (ventana de consulta) •Pares de objetos que interactúan unos con otros (spatial join). 1 INDEXANDO DATOS ESPACIALES
  • 2. 2 INDEXADO CON ÁRBOLES R El indexado con árboles R está basado en el MBR (minimum bounding rectangles ) para el caso de dos dimensiones, mientras que para tres dimensiones se utiliza el MBV (minimum bounding volumes ). La indexación utilizando árboles R es usada como técnica debido a que prácticamente no requieren de que se realice de manera continua un tunning (optimizacion). Cada entrada al índice aproxima una geometría utilizando MBR para 2D y MBV para 3D. MBRs y MBVs son indexados internamente utilizando una estructura de árbol. Cada nodo hoja del índice árbol R almacena un MBR y un puntero a la geometría original. 3 ¿CÓMO SON INDEXADAS LAS GEOMETRÍAS EMPLEANDO ÁRBOLES R? Cuando un índice de árbol R se genera, un rectángulo mínimo (MBR) es construido alrededor de cada geometría. En la figura de arriba, hay nueve rectángulos mínimo de delimitación, una para cada geometría. En el nivel más bajo de un índice árbol R, hay un puntero hacia la geometría real (para el identificador de la geometría) y el MBR asociado a esa geometría. Índices árbol R tienen una entrada de índice (o nodo de la hoja) para cada geometría.
  • 3. Después de que el MBR se construye alrededor de cada geometría, las aproximaciones se agrupan de manera que las geometrías que están cercanas unas a otras En el nivel más bajo (o nivel hoja) del árbol-R, A, B, C y D contienen MBR para cada una de las geometrías, así como enlaces o apuntadores a cada una de estas geometrías. A continuación, A, B, C y D se agrupan en función de su proximidad. En este caso, A y B se agrupan en R, mientras que y C y D se agrupan en S. El nivel superior (o raíz) de los índices de árbol R, contiene enlaces a R y S, así como a los rectángulos de delimitación mínimas asociados con esos dos nodos. Nota: la estructura de árbol R está optimizado para el acceso a elementos que están cerca unos de otros. El número de ramas de un árbol R se calcula automáticamente basado en el tamaño de bloque de base de datos utilizado para la instancia, así como el número de dimensiones que se indexan.
  • 4. 4 SINTAXIS “CREATE INDEX” CREATE INDEX <index-name> ON <table-name> (<column-name>) INDEXTYPE IS MDSYS.SPATIAL_INDEX [PARAMETERS ( 'SDO_RTR_PCTFREE = <param_value> <storage_parameters> = <param_value> ... ') ] [PARALLEL [<parallel_degree>]]; La instrucción CREATE INDEX es exactamente la misma que cualquier otra instrucción CREATE INDEX Oracle, con algunas opciones adicionales. <INDEX-NAME>: Nombre del índice. Se deben de respetar la serie dec onvenciones de nomenclatura en el nombre de índices. La longitud del nombre debe ser 30 caracteres o menos, y el nombre del índice debe comenzar con un carácter alfabético. <TABLE-NAME>: Nombre de la tabla que contiene la columna espacial que será indexada. La columna espacial es del tipo SDO_GEOMETRY. <COLUMN-NAME>: El nombre de la columna del tipo de SDO_GEOMETRY que se va a indexar espacialmente. CREATE INDEX geod_states_sidx ON geod_states (geom) INDEXTYPE IS mdsys.spatial_index; Cuando un índice árbol R se construye, una tabla de Oracle se crea. Esto también se conoce como la tabla de índice espacial. La tabla de índice espacial es visible para el usuario final, y se marca en las tablas de metadatos de Oracle (USER_TABLES, ALL_TABLES, DBA_TABLES) como secundaria = 'Y'. El espacio de tablas para el índice espacial aparece como NULL si se busca en user_indexes. Esto es porque el nombre de índice espacial es sólo una estructura lógica asociada con otra estructura física (la tabla de índice espacial). Las tablas y los parámetros de almacenamiento pueden ser especificadas en la tabla de índice espacial asociada con el nombre de índice espacial. Nota: No actualizar, modificar o eliminar la tabla de índice espacial. Al colocar el índice, éstas se actualizan automáticamente.
  • 5. <SDO_INDX_DIMS>: Define el número de dimensiones en que se construye el índice. Permite la indexación de más de dos dimensiones. <SDO_RTR_PCTFREE>: Es el porcentaje de ramas de los árboles R reservadas en cada nodo del índice para dar cabida a futuras inserciones. Acepta el 10 por ciento como valor predeterminado, es decir, 10 por ciento de las ramas en el árbol, son reservadas cuando se crea el índice espacial. <LAYER_GTYPE>: Es la restricción de tipo de capa para todos los tipos de índice espacial. Sólo permiten geometrías del tipo dado para que se indexe. Se utiliza para el funcionamiento y control de tipo de geometría. Los valores válidos son: •POINT •LINE o CURVE •POLYGON •MULTIPOINT •MULTILINE or MULTICURVE •MULTIPOLYGON •COLLECTION INITIAL: Tamaño de la medida inicial de la tabla de índice espacial. TABLESPACE: Nombre del tablespace donde se aloja el índice. WORK_TABLESPACE: Nombre del tablespace donde las tablas de trabajo son creadas durante el proceso de creación de índices árbol R. Algunos parámetros de almacenamiento adicionales (no se usa con frecuencia): NEXT: Tamaño de la medida siguiente de la tabla de índice espacial PCTINCREASE: Porcentaje en que aumentará la medida utilizada anteriormente, cuando surge la necesidad de crear una nueva dimensión. MINEXTENTS: Número mínimo de extensiones para crear la tabla de índice espacial. MAXEXTENTS: El número máximo de extensiones para crear la tabla de índice espacial.
  • 6. <SDO_DML_BATCH_SIZE>: Es un parámetro de ajuste a las actualizaciones de índice. Acepta 1000 como el valor predeterminado, que está bien para la mayoría de las cargas de trabajo Puede poseer un valor más alto si se dispone de más memoria. <SDO_NON_LEAF_TBL>: Este parámetro permite que el índice de árboles R se divida en dos durante la creación del índice. PARALLEL [<parallel_degree>] Esto rompe la labor de la creación del índice en trozos más pequeños que se pueden realizar en paralelo. Si el grado de paralelismo no se especifica, Oracle elige un valor por defecto en base a los algoritmos internos de Oracle, los cuales se encuentran basados en el número de CPU s. 5 CREACIÓN DE UN ÍNDICE ESPACIAL EN PARALELO Spatial clustering Spatial clustering Spatial clustering Spatial clustering MBR MBR generation MBR generation MBR generation MBR generation Spatial index tables CREATE INDEX …. PARALLEL 4; Si un recurso del sistema (CPU, memoria, E / S) ya está saturado, el paralelismo puede afectar negativamente a ese recurso. 6 ANALIZANDO TABLAS ESPACIALES exec dbms_stats.gather_table_stats (<schema_name>,<table_name>) La información es recopilada para el optimizador de Oracle. La información recogida incluye el número de filas y de los índices, y demás información adicional. No hay necesidad de recopilar estadísticas sobre las tablas índice espacial.
  • 7. 7 SINTAXIS “DROP INDEX” Esto sentencia elimina el índice espacial y su correspondiente tabla de índice espacial. Si CREATE INDEX en una columna de SDO_GEOMETRY no se llega a completar con éxito, se debe de tratar de hacer un DROP INDEX. Si eso no funciona, se debe de llamar a DROP INDEX mediante el uso de la opción FORCE. DROP INDEX <index_name>; DROP INDEX <index_name> FORCE; 8 SINTAXIS “ALTER INDEX REBUILD” ALTER INDEX <index_name> REBUILD [PARAMETERS (<parameter string>)]; Esta sentencia vuelve a generar una tabla de índice espacial. Los parámetros se pasan como una cadena entre comillas. Por ejemplo, para cambiar la distribución espacial de tablas de índice de tablespace: 'Tablespace = indx_tblspc' 'Work_tablespace = work_indx_tblspc' 9 VISTAS DEL DICCIONARIO DE DATOS USER_SDO_INDEX_METADATA: Muestra todos los metadatos de índice espacial para el usuario actual ALL_SDO_INDEX_METADATA: Muestra todos los metadatos de índice espacial que el usuario actual tiene el privilegio de SELECT . Oracle Spatial mantiene automáticamente las visitas del diccionario de datos.
  • 8. USER_SDO_INDEX_METADATA Otras vistas que son útiles para extraer información de índices espaciales son: USER_SDO_INDEX_INFO ALL_SDO_INDEX_INFO INDEX_NAME VARCHAR2(32) TABLE_NAME VARCHAR2(32) COLUMN_NAME VARCHAR2(2048) SDO_INDEX_TYPE VARCHAR2(32) SDO_INDEX_TABLE VARCHAR2(32)