Significado de Semántica
Qué es Semántica:
Se denomina como semántica a la ciencia lingüística que estudia el significado de las palabras y expresiones, es decir, lo que las palabras quieren decir cuando hablamos o escribimos. Término acuñado por Michel Bréal en 1833.
La finalidad de la semántica es descomponer el significado en unidades más pequeñas, llamadas semas o rasgos semánticos, estos permiten segmentar el significado de las palabras, y diferenciar palabras de significado parecido y palabras de significado opuesto.
Por otro lado, la semántica lingüística se encarga de estudiar la denotación y connotación de las palabras, cuando el mensaje se expresa objetivamente, se dice que su significa es denotativo y, cuando a la comunicación objetiva se le añade alguna valoración personal mediante gestos o entonación, se habla de que su significado es connotativo.
El estudio de las palabras puede estar dividido en:
- Sinonimia se produce cuando un mismo significante se puede expresar con varios significantes, por ejemplo: desplomarse, caerse, derrumbarse, entre otros.
- Antonimia se caracteriza porque el significante tiene el significado opuesto al de otro, por ejemplo: frío – caliente.
- Polisemia se origina cuando un significante le corresponde varios significados, es el caso de la palabra pata, le corresponde tanto a un animal como a la pata del mueble.
- Homonimia, es la semejanza de significados, las palabras homónimas presentan variación en la escritura, por ejemplo: tuvo (verbo tener) y tubo (objeto cilíndrico).
La semántica lógica, utilizada en las ciencias, es el estudio de la relación entre un signo y su realidad. Por otro lado, la semántica en ciencias cognitiva estudia la relación que la mente de una persona atribuye a los signos, y analiza el mecanismo psíquica entre el hablante y oyente.
Existen palabras adoptadas de otras lenguas, es lo que se denomina calco semántico. Por otro lado, la ciencia semiótica se encarga de estudiar los signos, sus relaciones y significado.
En informática, la semántica se encarga de estudiar desde un punto de vista matemática, el significado de los programas o funciones.
Etimológicamente, el término semántica proviene del griego “semantikos”,que significa “algo que tiene un significado relevante o significativo”.
Semántico y sintaxis
La sintaxis tiene como función ofrecer pautas o normas para crear oraciones de forma coherente, con el objetivo de expresar o enunciar el significado correcto de las palabras, pudiendo ser supervisado por la ciencia lingüística semántica que como bien se identificó anteriormente se encarga de estudiar el significado de las palabras.
Semántico y morfológico
La morfología es la disciplina lingüística encargada de estudiar la forma y las combinaciones de los componentes internos de las palabras. La morfología estudia a través de los monemas y, estos se dividen en: lexemas y morfemas.
Los lexemas aportan el significado léxico a la palabra, esto es, la raíz de los sustantivos, verbos, adjetivos y adverbios, por ejemplo: panadero, el lexema es pan, azulado el lexema es azul. Por su parte, los morfemas aportan el significado gramatical, como: los artículos determinantes, preposiciones, conjunciones, desinencias o afijos.
Semántica y sintáctica
La función sintáctica es el tipo de relación que se establece entre las distintas clases de sintagmas.
Las funciones sintácticas pueden clasificarse en 3 categorías:
- Primarias, sujeto y predicado.
- Secundarias, desempeñadas por los complementos verbales.
- Terciarias, inciden en las secundarias, es decir, complemento del nombre, complemento del adjetivo, complemento del adverbio.
Semántica léxica y estructural
La semántica léxica consiste en el estudio de las palabras sin ningún tipo de vinculación con el contexto en donde se desenvuelve. Por su parte, la semántica estructural, tal como lo indica su nombre consiste en construir y analizar las unidades elementales para comprender tales significados.
Semántica generativa
En la teoría lingüística generativa, la semántica es el componente de la gramática que interpreta la significación de los enunciados generados por la sintaxis y el léxico. Pues bien, la semántica generativa es la teoría lingüística que proviene de la gramática generativa, y establece que toda oración realizada procede, por transformaciones, de una estructura semántica y no sintáctica.
DEFINICIÓN
DE CONCURRENCIA
En el campo informatico, el termino concurrencia
se refiere a la capacidad de los Sistemas de Administración de Base de Datos,
de permitir que múltiples procesos sean ejecutados al mismo tiempo, y que
tambien puedan interactuar entre sí.
Los procesos concurrentes pueden ser ejecutados realmente de forma
simultánea, sólo cuando cada uno es ejecutado en diferentes procesadores. En
cambio, la concurrencia es simulada si sólo existe un procesador encargado de
ejecutar todos los procesos, simulando
la concurrencia, ocupándose de forma alternada de uno y otro proceso a muy
pequeños intervalos de tiempo. De esta manera simula que se están ejecutando a
la vez.
Algunos casos de concurrencia, pueden ser:
● La multiprogramación, ya que el tiempo del procesador es compartido
dinámicamente por varios procesos.
● Las aplicaciones estructuradas, donde la programación estructurada se
implementa como un conjunto de procesos concurrentes.
● También se tiene que la misma estructura recién mencionada es utilizada
en el diseño de los sistemas operativos, los cuales se implementan como un
conjunto de procesos.
Debido a que los procesos concurrentes en un sistema pueden interactuar entre otros también en ejecución, el número de caminos de ejecución puede ser extremadamente grande, resultando en un comportamiento sumamente complejo. Las dificultades asociadas a la concurrencia han sido pensadas para el desarrollo de lenguajes de programación y conceptos que permitan hacer la concurrencia más manejable.
SINCRONIZACIÓN
Los algoritmos distribuidos deben cumplir con las siguientes caracteristicas:
- La informacion relevante se distribuye entre varias maquinas
- Los procesos toman las decisiones sólo en base a la informacion disponible en forma local
- Debe evitarse un punto de fallo en el sistema
- No existe un reloj común o alguna fuente precisa del tiempo global
Control de concurrencia
En general, un servidor ejecuta operaciones en beneficio de varios clientes cuyas operaciones pueden estar entrelazadas. Las transacciones atómicas permiten a los clientes especificar secuencias atómicas de operaciones. Estas secuencias de operaciones deben ser planificadas en el servidor de tal forma que su efecto sobre los datos compartidos sea serialmente equivalente. Estos métodos de planificación son conocidos como métodos o algoritmos de control de concurrencia. Esta sección vamos a examinar tres de ellos.
1 Bloqueo
Un ejemplo simple de mecanismo de serialización es el uso de bloqueos exclusivos. En este método, el servidor intenta bloquear cualquier dato que utiliza la transacción en curso. Si el clienteY pide el acceso a un dato que ya ha sido bloqueado por otra transacción de un cliente X, la petición es suspendida y el cliente Y debe esperar hasta que el dato sea desbloqueado. La figura 3.10 ilustra el uso de los bloqueos exclusivos.
| Transacción T: | Transacción U: | ||
| Retirada(A, 4); | Retirada(C, 3); | ||
| Depósito(B, 4); | Depósito(B, 3); | ||
| Operaciones | Bloqueos | Operaciones | Bloqueos |
| AbrirTransacción | |||
| balance := A.Read() | bloquea A | ||
| A.Escribe(balance-4) | |||
| AbrirTransacción | |||
| balance := C.Read() | bloquea C | ||
| C.Escribe(balance-3) | |||
| balance := B.Read() | bloquea B | ||
| balance := B.Read() | espera por B | ||
| B.Escribe(balance+4) | |||
| CierraTransacción | Desbloquea A,B | ||
| bloquea B | |||
| B.Escribe(balance + 3) | |||
| CierraTransacción | desbloquea B, C |
2 Control de concurrencia optimista
{
Una manera de lidiar con el problema es asumir que este tipo de interferencia de hilos es poco probable que ocurra, y simplemente verificar el problema y devolver un error si esto es así. Esto es comúnmente un modo válido de lidiar con el problema en situaciones complejas donde la “sobrecarga” de estructuras de datos por varios hilos no es demasiado elevada.
} (Damian Andres Lopez 22/05/2011)
Kung y Robinson (1981) identificaron un número de desventajas del mecanismo de bloqueo y propusieron una aproximación alternativa optimista a la serialización de transacciones que evitan sus defectos. Entre los defectos del bloqueo identificaron los siguientes:
El mantenimiento de los bloqueos representa una sobrecarga para un servidor transaccional. Incluso las transacciones que sólo leen datos, como las búsquedas, que no tienen posibilidad de afectar a la integridad de los datos, necesitan bloqueo de tipo lectura a fin de garantizar que el dato que se está leyendo no es modificado por otras transacciones al mismo tiempo.
3 Etiquetado temporal
Una aproximación completamente diferente al control de concurrencia es asignar una etiqueta temporal a la transacción en el cliente cuando este invocaAbrirTransacción. Usando el algoritmo de Lamport, podemos asegurar que las etiquetas temporales son únicas.
El algoritmo de control de concurrencia basado en etiquetas temporales utiliza también el concepto de copias o versiones tentativas de los datos. Así, cada transacción dispone de una copia para cada dato al que accede. Las operaciones de escritura se graban en versiones tentativas hasta que el cliente emita la primitivaCerrarTransacción en que la transacción se compromete y la versión tentativa del dato se transforma en definitiva. Tanto el dato como cada una de sus copias tienen asociados una etiqueta temporal de escritura. El dato tiene un conjunto de etiquetas de lectura que son resumidas por la etiqueta más reciente. Cuando una transacción se compromete, la copia de cada dato accedido por la transacción se convierte en el dato y la etiqueta temporal de cada copia se convierte en la etiqueta temporal del dato correspondiente.
{
Una manera de lidiar con el problema es asumir que este tipo de interferencia de hilos es poco probable que ocurra, y simplemente verificar el problema y devolver un error si esto es así. Esto es comúnmente un modo válido de lidiar con el problema en situaciones complejas donde la “sobrecarga” de estructuras de datos por varios hilos no es demasiado elevada.
} (Damian Andres Lopez 22/05/2011)
Kung y Robinson (1981) identificaron un número de desventajas del mecanismo de bloqueo y propusieron una aproximación alternativa optimista a la serialización de transacciones que evitan sus defectos. Entre los defectos del bloqueo identificaron los siguientes:
El mantenimiento de los bloqueos representa una sobrecarga para un servidor transaccional. Incluso las transacciones que sólo leen datos, como las búsquedas, que no tienen posibilidad de afectar a la integridad de los datos, necesitan bloqueo de tipo lectura a fin de garantizar que el dato que se está leyendo no es modificado por otras transacciones al mismo tiempo.
3 Etiquetado temporal
Una aproximación completamente diferente al control de concurrencia es asignar una etiqueta temporal a la transacción en el cliente cuando este invocaAbrirTransacción. Usando el algoritmo de Lamport, podemos asegurar que las etiquetas temporales son únicas.
El algoritmo de control de concurrencia basado en etiquetas temporales utiliza también el concepto de copias o versiones tentativas de los datos. Así, cada transacción dispone de una copia para cada dato al que accede. Las operaciones de escritura se graban en versiones tentativas hasta que el cliente emita la primitivaCerrarTransacción en que la transacción se compromete y la versión tentativa del dato se transforma en definitiva. Tanto el dato como cada una de sus copias tienen asociados una etiqueta temporal de escritura. El dato tiene un conjunto de etiquetas de lectura que son resumidas por la etiqueta más reciente. Cuando una transacción se compromete, la copia de cada dato accedido por la transacción se convierte en el dato y la etiqueta temporal de cada copia se convierte en la etiqueta temporal del dato correspondiente.
PROPIEDADES
FUNDAMENTALES DE UNA TRANSACCIÓN
● Atomicidad: Se refiere al hecho
de que una transacción se trata como una unidad de operación. Por lo tanto, o
todas las acciones de la transacción se realizan o ninguna de ellas se lleva a
cabo. La atomicidad requiere que si una transacción se interrumpe por una
falla, sus resultados parciales sean anulados.
● Consistencia: La consistencia de
una transacción es simplemente su correctitud. En otras palabras, una
transacción es un programa correcto que lleva a la base de datos de un estado
consistente a otro con la misma característica. Debido a esto, las
transacciones no violan las restricciones de integridad de una base de datos.
● Aislamiento: Una transacción en
ejecución no puede revelar sus resultados a otras transacciones concurrentes
antes de finalizar. Más aún, si varias transacciones se ejecutan
concurrentemente, los resultados deben ser los mismos que si ellas se hubieran
ejecutado de manera secuencial.
● Permanencia: Es la propiedad de
las transacciones que asegura que una vez que una transacción finaliza
exitosamente, sus resultados son permanentes y no pueden ser borrados de la
base de datos por alguna falla posterior.
Por lo tanto, los sistemas administradores de base de datos aseguran que
los resultados de una transacción sobrevivirán a fallas del sistema.
Esta propiedad motiva el aspecto de recuperación de base de datos, el
cual trata sobre cómo recuperar la base de datos a un estado consistente donde
todas las acciones que han finalizado con éxito queden reflejadas en la base.
ESTADOS DE TRANSACCION
- Active, el estado inicial y permanece durante toda la ejecución
- Partially committed, después de que se ha ejecutado el último statement
- Failed, después de algun error, no se puede continuar
- Aborted, se hace un "rollback" hacia un estado anterior consistente
- Committed, después del éxito
Programación
| Crear Conexión Abrir Conexión (Openconnection) Iniciar Transacción (Begin Transaction) setAutoCommit(0/false) Queries... (Insert, Select, Update, Delete...) -Error (Abort Transaction) rollback Procesar resultados (Print, a= , b= ) Asegurar Transacción (End Transaction) commit Cerrar Conexión (Closeconnection) |
Notas:
- Por default toda transacción tiene autocommit = 1
- El rollback generalmente se usa en el catch de los programas, aunque puede ir en cualquier parte.
- Una transacción que no llega al commit automáticamente hace el rollback
PROBLEMAS DE
CONCURRENCIA
Existen tres formas en las que una transacción, aunque sea correcta por
sí misma, puede producir una respuesta incorrecta si alguna otra transacción
interfiere con ella en alguna forma.
Consideremos que la transacción que interfiere también puede ser
correcta; lo que produce el resultado incorrecto general es el intercalado sin
control entre las operaciones de las dos transacciones correctas.
Los tres problemas son:
● El problema de la Actualización Perdida
● El problema de la Dependencia No Confirmada
● El problema del Análisis Inconsistente
REFERENCIAS
https://www.significados.com/semantica/
https://so2-caece.wikispaces.com/M%C3%B3dulo+3.+Concurrencia+y+sincronizaci%C3%B3n
https://so2-caece.wikispaces.com/M%C3%B3dulo+3.+Concurrencia+y+sincronizaci%C3%B3n
http://ict.udlap.mx/people/carlos/is341/bases10.html
https://www.fdi.ucm.es/profesor/fernan/DBD/apuntestema07.pdf
https://es.slideshare.net/joseguadalupecouohdzul/invetigacion-base-de-datos-dis-para-subir
https://www.fdi.ucm.es/profesor/fernan/DBD/apuntestema07.pdf
https://es.slideshare.net/joseguadalupecouohdzul/invetigacion-base-de-datos-dis-para-subir

Comentarios
Publicar un comentario