Beruflich Dokumente
Kultur Dokumente
Sybase Confidential
Mejorado Distintivo
Escalamiento Rendimiento Encriptacin Seguridad , en general sin cambios en las aplicaciones Transacciones Inteligentes Las nuevas aplicaciones pueden combinar inteligencia del negocio (DSS) con operaciones OLTP Mensajera Abierta Obtencin de eventos en tiempo real y XML sin overhead El ms bajo TCO EL RDBMS ms eficiente es ahora ms auto - administrable
MEJORAS
ASE 15 es la nueva generacin del RDBMS manteniendo costos y riesgos operativos a un bajo nivel
Mejorado Distintivo
Escalamiento parejo para los ms altos niveles de datos Rendimiento : un 80% mejor Encriptacin Seguridad , en general sin cambios en las aplicaciones Transacciones Inteligentes Las nuevas aplicaciones pueden combinar inteligencia del negocio (DSS) con operaciones OLTP Mensajera Abierta Obtencin de eventos en tiempo real y XML sin overhead El ms bajo TCO El RDBMS ms eficiente es ahora ms auto -administrable
DE GIGABYTES A TERABYTES
Escalable : Sobre 1 exabyte* prctico y ms de 2 billones de dispositivos (devices) Nuevas Caractersticas de Escalabilidad:
Particiones semnticas Indices de funcin Columnas calculadas Grid-ready ** y mucho ms Para el DBA, la mantencin se ve simplificada con las nuevas caractersticas de escalabilidad.
MEJOR RENDIMIENTO
Transaciones (OLTP) mejoradas entre 10% - 80% Transacciones de consulta mejoradas hasta un 500%. Nuevas Caractersticas de Rendimiento:
Particiones inteligentes Nuevo Optimizador de querys Columnas Calculadas Indices de funcin
QUE ES LO DISTINTIVO
ASE 15 es la nueva generacin del RDBMS manteniendo costos y riesgos operativos a un bajo nivel.
Escalamiento parejo para lo ms altos niveles de datos Rendimeinto : un 80% mejor Encriptacin Seguridad sin cambios en las aplicaciones Transaciones Inteligentes Las nuevas aplicaciones pueden combinar inteligencia del negocio (DSS) con operaciones OLTP Mensajera Abierta Obtencin de eventos en tiempo real y XML sin overhead El ms bajo TCO EL RDBMS ms eficiente es ahora ms auto - administrable
Mejorado Distintivo
ENCRIPTACION
Proteccin de los datos ms crticos histricos y actuales sin cambios en las aplicaciones. Nuevas Caractersticas de seguridad:
Encriptacin de columnas patente pendiente Encriptacin de SSL optimizada Mejor autentificacin LDAP El hurto de datos no sirve, incluso si discos o cintas estn involucrados
TRANSACCIONES INTELIGENTES
Si el negocio lo requiere, ASE 15 est preparado para trabajar en ambientes mixtos de querys complejos con transacciones OLTP. Nuevas Caractersticas en DSS:
Nuevo optimizador Columnas calculadas Indices de funcin
MENSAJERIA ABIERTA
Construccin de aplicaciones usando Transact-SQL: alertas instantneas , mensajera e integracin . Nuevas Caractersticas de Conectividad: Integracin en tiempo real con populares buses de mensajera XML de alto rendimiento Web services definidos por el usuario
ASE 15 - Agenda
Encriptacin Particionamiento Semntico Optimizacin XML Futuros de ASE
ENCRIPTACION - Definicin
Encriptacin o cifrado es el proceso de cambiar datos , a una forma en la cual puedan ser accesados slo por un receptor especfico. Para descifrar el mensaje, este ltimo debe tener una llave para desencriptar o descifrar.
Asimtrico Usa par de llaves Llave pbica compartida, llave privada se mantiene oculta Ejemplo : RSA Largo de llaves Llaves del algoritmo asimtrico son ms largas que el simtrico para capacidades equivalentes Ejemplo : Llaves 1024-bit RSA son equivalentes en capacidad a llaves simtricas de 80-bit
Almacenada y encriptada en <nombreBD>..sysencryptkeys Usa Security Builder API para todas las funciones criptogrficas
Create/Alter table para especificar CEK para la(s) columna(s) Grant decryption a usuarios y/o roles Continua usando el mismo T-SQL
Todas las funciones de encriptacin/desencriptacin son transparentes al usuario Automticamente encripta / desencripta columnas En INSERT, UPDATE, SELECT En clusulas WHERE
(colname1 datatype [default_clause | NULL] [encrypt] , - usa llave CEK default colname2 datatype [default_clause | NULL] [ encrypt [with [db.[owner].]keyname ]
keyname identifica la llave recin creada si keyname se omite se usa un default de la base de datos alter table [db.[owner].]table_name modify colname
Nota: Una tabla creada por el usuario(sso) con columnas con encriptacin requiere permiso SELECT
Asigna password default de sistema para encriptar CEKs ASE almacena passwords en forma encriptada
sp_encryption help [, keyname [, display_cols]]
Entrega informacin acerca de CEKs del propietario (owner) Ejecutado por el SSO, entrega informacin acerca de todas las llaves en la BD
DDLGen
Utilitario para generar DDL para esquemas de replicacin Habiltado para generar DDL para extensiones al T-SQL
BCP
Habilitado para exportar/importar datos encriptados
Replication Server
Replicacin / disaster recovery habilitado para replicar datos encriptados
ASE Auditing
Habilitado para soportar auditora de encriptacin relacionada con comandos DDL
DEMO I - ENCRIPTACION
ASE 15 - Agenda
Encriptacin Particionamiento Semntico Optimizacin XML Futuros de ASE
QUE ES PARTICIONAMIENTO ?
Estrategia para dividir grandes volumenes de datos
Trozos ms pequeos y manejables
Cada trozo de datos individual se conoce como particin Los datos en cada particin son procesados en forma independiente de las otras particiones Beneficio para el DBA
Grandes tareas se dividen en sub tareas Las tareas ms lentas se pueden ejecutar en paralelo Comandos de reorganizacin acotados en tiempo
Large Table
Partition
La rg e
DSS Query
Update statistics
Partition
Update statistics
OL TP ap ps
Partition
OL TP ap ps
Data load
Partition
Tabla no particionada
Data load
Tabla Particionada
DSS
De le te
e rg La e et el D
PARTICIONES - ESTRATEGIAS
Particionamiento no semntico (pre 15.0)
Distribucin de datos tipo round - robin Slo distribucin aleatoria de datos entre particiones No ayuda al optimizador en querys dado que no existen semnticas asociadas con la distribucin de los datos
ASE 15
PARTICIONES - ESTRATEGIAS
Particionamiento Semntico
La fila pertenece a una particin especfica basado en el valor de sta , dada por las columnas elegidas para particionar Tres tipos : Range, Hash, List Range : Conjunto de datos distribuido de acuerdo a los rangos de valores de la columna Hash : Conjunto de datos distribuido de acuerdo a funciones de hashing en la(s) columna(s) List : Conjunto de datos dividido en listas de valores que son nicos a travs de todas las listas especificadas
Cada conjunto de listas puede incluir hasta 250 valores distintos
PARTICIONES - Uso
Estrategias de particionamiento y optimizacin Extensiones DDL: create table, alter table, create index, truncate table Cambios en las tablas de sistema
PARTICIONES - Uso
Habilitar particionamiento :
sp_configure enable semantic partitioning, 1
RANGE PARTITION
Create table customer ( c_custkey int, c_name varchar(20), c_address varchar(40) ) partition by range (c_custkey) (cust_ptn1 values <= (20000) on segment1, cust_ptn2 values <= (40000) on segment2, cust_ptn3 values <= (60000) on segment3 )
cust_ptn1: values <=20000 cust_ptn2: values <=40000 cust_ptn3: values <=60000
Segment 1
Segment 2
Segment 3
Es posible agregar nuevos rangos al final del lmite mayor sin reorganizar el resto de la tabla
HASH PARTITION
Create table lineitem ( l_orderkey int , l_partkey int , l_suppkey int , l_linenumber int , l_quantity double , l_extendedprice double ) partition by hash (l_orderkey, l_linenumber) (litem_hash1 on segment1, litem_hash2 on segment2, litem_hash3 on segment3, litem_hash4 on segment4 ) not null not null not null not null not null not null
litem_hash1:
litem_hash2:
litem_hash3:
litem_hash4:
Segment 1
Segment 2
Segment 3
Segment 4
LIST PARTITION
Create table nation ( n_nationkey int not null , n_name char(25) not null , n_regionkey varchar(30) not null , n_comment varchar(152) not null ) on segment 1 Restriccin de datos a un partition by list (n_regionkey) lista de ( region1 values (Americas), valores equivale a CHECK constraint region2 values (Asia), sobre una columna region3 values (Europe), region4 values (Australia, Other) )
region1: region2: region3: region4:
Segment 1
PARTICIONES - Indices
Indices Globales El ndice abarca todas las particiones de datos en la tabla Indices Locales Cada particin tiene su propio ndice Varios sub-ndices, uno para cada particin de datos.
Indices Clustered siempre son locales en tablas con particionamiento range, hash, list.
Segment 1
Segment 2
Segment 3
Segment 1
Segment 2
Segment 4
Segment 3
DEMO II - PARTICIONAMIENTO
Create table partition & create index
PARTICIONES - Optimizacin
Joins Dirigidos con datos particionados Eliminacin de particiones Indices locales en particiones Estadsticas especficas a cada particin
Segment 1
Segment 2
Segment 3
Segment 4
Segment 5
Segment 6
Segment 1
Segment 2
Segment 3
Segment 4
Segment 5
Segment 6
Query A
Query C
Pre-ASE15
Indice Particionado
Online
Rebuilt/ Repair
Update statistics
PARTICIONES - Optimizacin
Joins Dirigidos con datos particionados Eliminacin de particiones Indices locales en particiones Estadsticas especficas a cada particin
PARTICIONES - Uso
Estrategias de particionamiento y optimizacin Extensiones DDL: create table, alter table, create index, truncate table Cambios en las tablas de sistema
( [ partition_name ] values <= ( { constant | MAX } [, { constant | MAX } ] ...) [ on segment_name ] [] | partition by hash (column_name[, column_name ]...) { ( partition_name [ on segment_name ] [, partition_name [ on segment_name ] ]...) | number_of_partitions [ on (segment_name[, segment_name ]...)]} | partition by list (column_name) { ( [ partition_name ] values (constant [, constant ])[ on segment_name ] [, [ partition_name ] values (constant [, constant ])[ on segment_name ] ]...)[on (segment_name[,segment_name ]...)]} | partition by roundrobin { ( partition_name [ on segment_name ] [, partition_name [ on segment_name ] ]...) | number_of_partitions [on( segment_name[,segment_name ]...)]}]
ASE 15 - Agenda
Encriptacin Particionamiento Semntico Optimizacin XML Futuros de ASE
OPTIMIZACION
Optimizador de Carga Mixta (mixed workload optimizer) Query Plans Columnas Calculadas Indices de Funcin
Ajustes y sintxis
Server sp_configure optimization goal,0,option_name goal option_name Sesin set plan optgoal option_name Query select * from <tablename> ...plan (use optgoal option_name) option_name
Estrategias de Joins configurables ( sesin / server ) set hash_join on, set merge_join_off sp_configure enable sort-merge join and JTC,1
ASE 15
Bushy Joins vertical, Parallel join - horizontal Nuevo timeout para la optimizacin del procesamiento de la query ( plan ptimo ) sp_configure optimization timeout limit,[value%] default = 5%
Sintxis
Server - sp_configure enable metrics capture,1 Sesin - set metrics_capture [on,off]
Acceso a Mtricas
Visualizacin en la vista sysquerymetrics en BD..queryplans
Expresiones No-Determinsticas
Pueden entregar resultados variables para un conjutno de entrada determinado Ejemplo : getdate()
Su valor no se almacena en la fila. Slo es evaluada cuando est siendo accesada Menos espacio en disco; Menos overhead en INSERT/UPDATE; Adecuadas para obtener valores variantes de tiempo va expresiones no-determinsticas Ejemplo:
create table inventory (part_id int, price money, quantity int, stock_date as getdate() age as datediff(dd,stock_date, getdate()) )
COLUMNAS CALCULADAS
CPC Materializadas (MCPC)
Evaluadas al instante de INSERT/UPDATE Valores se almacenan en la fila No se re-evalua cuando est siendo accesada Rendimiento de acceso rpido justifica un poco de overhead de almacenamiento Ejemplo
create table inventory ( part_id int, price money, quantity int, stock_date as getdate() materialized , age as datediff(dd,stock_date, getdate()) )
Beneficios FIs
Rendimiento Fcil de usar y adecuado para las aplicaciones existentes
DEMO IV - OPTIMIZACION
SARGs, FI & DBISQL
ASE 15 - Agenda
Encriptacin Optimizacin Particionamiento Semntico XML Futuros de ASE
XML EN ASE 15
ALMACENAMIENTO
INTEGRACION
XML EN ASE
QUERY
SHRED
GENERACION
Beneficios
Elimina la necesidad de engines XML customizados Elimina repositorios XML externos ; Reduce costo de desarrollo Alto rendimiento
Exponer ASE como Web Services e integrar datos desde Web Services externos Integrar datos desde buses de mensajera
GENERACION
FOR XML
for xml mapea un resultado SQL a un documento SQLX
select 11 as a, 12 as b union select 21, 22 for xml
<resultset> <row> <a>11</a> <b>12</b> </row> <row> <a>21</a> <b>22</b> </row> </resultset>
ROOT TAG
ROW TAG
EJEMPLO 1:
1> declare @doc varchar(16383) 2> set @doc = (select * from systypes for xml returns varchar(16383))
EJEMPLO 2:
1> select xmlextract(//row[usertype=18], (select * from systypes for xml))
1> select pub_id, pub_name from pubs2.dbo.publishers for xml schema 2> go
-----------------------------------------------------------------------------------------------------------------<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:complexType name="RowType.resultset"> <xsd:sequence> <xsd:element name="pub_id" type="CHAR_4"/> <xsd:element name="pub_name" type="VARCHAR_40" minOccurs="0" maxOccurs="1"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="TableType.resultset">
1> select pub_id, pub_name from pubs2.dbo.publishers for xml all 2> go
---------<multiple results> <multiple-results-item type=result-set> <multiple-results-item-dtd> <!DOCTYPE resultset[ ]> </multiple-results-item-dtd> <multiple-results-item-schema> </multiple-results-item-schema> <multiple-results-item-data> </multiple-results-item-data>
DEMO V - XML
ASE 15 EN RESUMEN
Higher Availability
Easier Manageability
High Performance
Mixed Workload
Complex Data
OLTP APP
ASE 15 - Agenda
Encriptacin Particionamiento Semntico Optimizacin XML Futuros de ASE
ASE: Roadmap
12.5.2*
ASE 12.5.4
Encrypted columns RTDS MQ
beta 1
beta 2
ASE 15.0
Enhanced Encryption Partitions New optimizer Functional columns/indexes
15.1
Q304
Q404
Q105
Q205
Q405
Clusters 2006
Transaction Processing
Managing Terabytes Capture/Store
Partitions
Managing Petabytes
Offline Import and Export with indexing Partition Aware Clusters
Managing Petabytes
Extended LOBs Sizing predictors OLAP Cubes Performance predictors Context Search Faster Loads Fine grained archival and restore
Query/Access/ Search
Pipelined Parallelism Logical Process Management Unlimited Striping Offline maintenance Backup compression
Real-time Transactional
ASE #1
ASE #2
HA System
SAN ASE #1 Quorum ASE #2
Both ASE servers are active servicing disjoint applications Both ASE servers are companions of each other for availability
Disk Storage
All servers provide service to single database store S1 S2 S3 S4 Applications run on multiple nodes with shared data Connections are directed to least loaded servers Private Interconnect SAN
Cluster DB
Finance Application
S2
S4
Cluster-aware application partitioning improves scalability Easy to implement Service Level Agreement
Cluster DB
Sales DB
PARTNERS MUNDIALES
ASE 15 - GRACIAS !
?
Encuestas !