jueves, 22 de octubre de 2020

Clave Principal

En el diseño de bases de datos relacionales, se llama clave primaria o clave principal a un campo o a una combinación de campos que identifica de forma única a cada fila de una tabla. Una clave primaria comprende de esta manera una columna o conjunto de columnas. No puede haber dos filas en una tabla que tengan la misma clave primaria.

Ejemplos de claves primarias son DNI (asociado a una persona) o ISBN (asociado a un libro). Las guías telefónicas y diccionarios no pueden usar nombres o palabras o números del sistema decimal de Dewey como claves candidatas, porque no identifican unívocamente números de teléfono o palabras.

El modelo relacional, según se lo expresa mediante cálculo relacional y álgebra relacional, no distingue entre clave primaria y otros tipos de claves. Las claves primarias fueron agregadas al estándar SQL principalmente para conveniencia del programador. En un modelo entidad-relación, la clave primaria permite las relaciones de la tabla que tiene la clave primaria con otras tablas que van a utilizar la información de esta tabla.

Tanto claves únicas como claves primarias pueden referenciarse con claves foráneas.



Clave Foránea

En el contexto de bases de datos relacionales, una clave foránea o clave ajena (o Foreign Key FK) es una limitación referencial entre dos tablas. La clave foránea identifica una columna o grupo de columnas en una tabla (tabla hija o referendo) que se refiere a una columna o grupo de columnas en otra tabla (tabla maestra o referenciada). Las columnas en la tabla referendo deben ser la clave primaria u otra clave candidata en la tabla referenciada.

Los valores en una fila de las columnas referendo deben existir solo en una fila en la tabla referenciada. Así, una fila en la tabla referendo no puede contener valores que no existen en la tabla referenciada. De esta forma, las referencias pueden ser creadas para vincular o relacionar información. Esto es una parte esencial de la normalización de base de datos. Múltiples filas en la tabla referendo pueden hacer referencia, vincularse o relacionarse a la misma fila en la tabla referenciada. Mayormente esto se ve reflejado en una relación uno (tabla maestra o referenciada) a muchos (tabla hija o referendo).



Tablas Relacionales

Una base de datos relacional consta de una o varias tablas relacionadas que, cuando se utilizan de forma conjunta, contienen la información que necesita. Cada instancia de los datos se guarda en una única tabla en cada momento, pero se puede tener acceso a los datos, que se pueden mostrar desde cualquier tabla relacional. Puede cambiar cualquier instancia de los datos relacionados y los cambios aparecen de forma dinámica en todas las ubicaciones. Esto significa que cuando modifica los datos en una ubicación, esos datos se cambian dondequiera que aparezcan para sus datos estén siempre actualizados. Las bases de datos relacionales le permiten trabajar con datos en su estado más actual, configurar y administrar datos de manera eficaz y con flexibilidad, y ahorrar espacio en el disco.

Para recuperar datos de una tabla relacionada y copiarlos en la tabla actual, defina una búsqueda. Los datos copiados se almacenan entonces en dos ubicaciones, como si los hubiera copiado y pegado en un campo de destino. Los datos buscados son actuales en el momento en el que se copian, pero una vez copiados permanecen estáticos a no ser que se vuelvan a buscar.



jueves, 15 de octubre de 2020

Inteligencia artificial

La inteligencia artificial (IA) es la inteligencia llevada a cabo por máquinas. En ciencias de la computación, una máquina «inteligente» ideal es un agente flexible que percibe su entorno y lleva a cabo acciones que maximicen sus posibilidades de éxito en algún objetivo o tarea.​ Coloquialmente, el término inteligencia artificial se aplica cuando una máquina imita las funciones «cognitivas» que los humanos asocian con otras mentes humanas, como por ejemplo: «percibir», «razonar», «aprender» y «resolver problemas».Andreas Kaplan y Michael Haenlein definen la inteligencia artificial como «la capacidad de un sistema para interpretar correctamente datos externos, para aprender de dichos datos y emplear esos conocimientos para lograr tareas y metas concretas a través de la adaptación flexible».A medida que las máquinas se vuelven cada vez más capaces, tecnología que alguna vez se pensó que requería de inteligencia se elimina de la definición. Por ejemplo, el reconocimiento óptico de caracteres ya no se percibe como un ejemplo de la «inteligencia artificial» habiéndose convertido en una tecnología común. Avances tecnológicos todavía clasificados como inteligencia artificial son los sistemas de conducción autónomos o los capaces de jugar al ajedrez o al Go.



Escuelas de Pensamiento

La IA se divide en dos escuelas de pensamiento:
  • La inteligencia artificial convencional.
  • La inteligencia computacional.
Inteligencia artificial convencional

Se conoce también como IA simbólico-deductiva. Está basada en el análisis formal y estadístico del comportamiento humano ante diferentes problemas:
Razonamiento basado en casos: Ayuda a tomar decisiones mientras se resuelven ciertos problemas concretos y, aparte de que son muy importantes, requieren de un buen funcionamiento.
Sistemas expertos: Infieren una solución a través del conocimiento previo del contexto en que se aplica y ocupa de ciertas reglas o relaciones.
Redes bayesianas: Propone soluciones mediante inferencia probabilística.
Inteligencia artificial basada en comportamientos: Esta inteligencia contiene autonomía y puede auto-regularse y controlarse para mejorar.
Smart process management: Facilita la toma de decisiones complejas, proponiendo una solución a un determinado problema al igual que lo haría un especialista en dicha actividad.

Inteligencia artificial computacional
La Inteligencia Computacional (también conocida como IA subsimbólica-inductiva) implica desarrollo o aprendizaje interactivo (por ejemplo, modificaciones interactivas de los parámetros en sistemas de conexiones). El aprendizaje se realiza basándose en datos empíricos.



Historia de la inteligencia artificial

La Inteligencia Artificial surge definitivamente a partir de algunos trabajos publicados en la década de 1940 que no tuvieron gran repercusión, pero a partir del influyente trabajo en 1950 de Alan Turing, matemático británico, se abre una nueva disciplina de las ciencias de la información.

Si bien las ideas fundamentales se remontan a la lógica y algoritmos de los griegos, y a las matemáticas de los árabes, varios siglos antes de Cristo, el concepto de obtener razonamiento artificial aparece en el siglo XIV. A finales del siglo XIX se obtienen lógicas formales suficientemente poderosas y a mediados del siglo XX, se obtienen máquinas capaces de hacer uso de tales lógicas y algoritmos de solución.



Inteligencia Artificial: Ventajas y Desventajas

Ventajas de la inteligencia artificial

1. Se minimizan los errores

En primer lugar, a través de la inteligencia artificial se reducen los errores humanos. Las máquinas son más precisas y menos susceptibles a errores externos.

2. AI es compatible con numerosos sectores e industrias

Se puede emplear desde el ámbito sanitario, hasta en el sector de la aviación o de los transportes, etc.

3. La inteligencia artificial optimiza al máximo

De tal forma que una máquina aprovecha al máximo el rendimiento, siendo capaz de llevar a cabo varias tareas al mismo tiempo, y dejando de lado las funciones innecesarias. Por ejemplo, los coches autónomos.

Desventajas de la Inteligencia Artificial
1. El aumento del desempleo
Tengamos en cuenta que si las máquinas son capaces de realizar las mismas tareas que los humanos, provocarán que los niveles de desempleo suban.

2. Tiene un coste elevado.
La inversión en inteligencia artificial requiere de una inversión elevada, por lo que son las organizaciones más grandes quienes primero están implantándola en sus procesos y gestión.

3. Al fin y al cabo carece de sentimientos y de valores.
Por muy eficaz que sea esta tecnología, no es un ser humano, y carece de sentimientos. Así, como comentábamos anteriormente, no tiene límites y desconoce la barrera moral. 

Circunstancia a la que si no se pone freno puede resultar muy peligrosa.



Usos comunes de la IA en la vida diaria

1. ASISTENTES DE VOZ
En los hogares actuales, a la gente le encanta tener altavoces inteligentes y asistentes de voz. Según un reciente estudio de Nielsen, ya solo analizando el caso en los Estados Unidos, el 24 % de los hogares cuentan con un altavoz inteligente como Google Home o Amazon Echo. Estos asistentes, que utilizan el procesamiento de lenguajes naturales (PLN) para interpretar las órdenes por voz y responder a ellas, te permiten reproducir música con una orden, te recuerdan que tires la basura o que les leas a tus hijos un cuento de buenas noches.

2. SMARTPHONES
Los smartphones utilizan la IA de muchas maneras, así que seguro que la utilizas unas cuantas veces al día con solo un dedo. Siri y el Asistente de Google ya son funciones conocidas de los teléfonos móviles que te permiten realizar búsquedas y peticiones por voz. Además, las mejoras inteligentes realizadas en los “selfies”, es decir, lo que ocurre cuando utilizas el modo retrato de tu iPhone, se efectúan gracias a la inteligencia artificial, que identifica el enfoque adecuado.

3. CONTENIDO EN REDES SOCIALES
Tanto si adoras tuitear como si eres adicto a Instagram o un superusuario de Facebook, la mayoría de las notificaciones y los contenidos que recibes a través de las redes sociales los selecciona la inteligencia artificial. Tu experiencia de usuario está hecha totalmente a tu medida. Cada plataforma te ofrece la información que cree que buscas, para que así vuelvas a menudo, así que la próxima vez que te pases horas leyendo novedades, ya sabrás por qué es.

4. PREDICTIVO DE GOOGLE
Si utilizas Google como buscador, seguramente te hayas percatado de que te ofrece recomendaciones para completar la consulta en función del texto que hayas escrito. Los datos de esta búsqueda predictiva se presentan en base a los datos que Google recopila sobre ti (y sobre otros usuarios) cuando navegas por internet como, por ejemplo, tu edad, ubicación y otros datos personales. El buscador utiliza la IA para adivinar lo que puedes estar buscando, y así poder ofrecerte mejor información.

5. RECOMENDACIONES DE PRODUCTO
Los vendedores como Amazon utilizan la inteligencia artificial para recopilar información sobre tus hábitos y preferencias de compra, de modo que puedan personalizar tu experiencia online. Estos productos se recomiendan específicamente en función de tus hábitos y gustos, para que sientas que estás comprando con la ayuda de un asistente personal online. No es de extrañar que volvamos a repetir la experiencia una y otra vez.

6. ATENCIÓN AL CLIENTE
Los chatbots ayudan a miles de clientes de todo tipo de sectores a obtener respuesta a sencillas preguntas de soporte técnico o ayuda. Por ejemplo, el chatbot de una entidad bancaria puede gestionar solicitudes y peticiones sencillas, como pueden ser mostrar el saldo disponible, la transferencia de fondos y el cierre de cuentas. Los bots utilizan la IA para ayudar a los clientes a buscar datos, pero también ofrecen ventajas, ya que pueden guardar los datos de uso de los clientes y ofrecer productos en función de sus necesidades específicas.

7. RECOMENDACIONES MUSICALES
¿A quién no le gusta tener listas de reproducción específicas según sus preferencias musicales? La inteligencia artificial de servicios como Spotify y Alexa aprenden los diversos gustos y preferencias musicales de los usuarios de estas plataformas para desarrollar mejores listas de reproducción. Datos como la duración de una canción, el tono o el género ayudan a estas plataformas a sugerir canciones y artistas similares a sus usuarios.

8. MAPAS E INDICACIONES
La IA también juega un papel importante en los sistemas de navegación. Tanto si utilizas Google como Apple Maps para obtener indicaciones, la inteligencia artificial lee muchos puntos de datos para poder proporcionar información actualizada y en tiempo real sobre el estado del tráfico a los usuarios. La navegación por voz ayuda a los conductores a seguir la ruta mas eficiente, e incluso algunas interfaces de navegación proponen rutas a ubicaciones habituales.

9. AUTOMATIZACIÓN DEL HOGAR
Entrar en casa sin llaves y encender las luces con tan solo usar la voz son situaciones que se están generalizando en los hogares actuales, y todo gracias a la inteligencia artificial. Ahora existen protocolos enteros como Z-Wave que permiten a los propietarios diseñar su propio Internet de las cosas (IoT, por sus siglas en inglés). Con el uso de “un tipo de ondas radio de baja frecuencia”, los dispositivos inteligentes para el hogar Z-Wave, pueden comunicarse entre sí y con otras aplicaciones para automatizar los procesos que antes necesitaban un toque humano. Ya no hay necesidad de seguir peleándose con un confuso termostato programable: ¡deja que se programe solo!

10. FILTROS DE SPAM
La inteligencia artificial es de cada vez mayor utilidad a los proveedores de servicios de correo electrónico para filtrar el correo basura, y los usuarios están encantados. Ahora, en lugar de tener hacer clic en un botón para informar acerca del correo basura, Gmail y otros servicios de correo electrónico emplean el aprendizaje automático para distinguir entre los correos electrónicos que son legítimos y aquellos que no lo son. Y, además, cada individuo tiene preferencias distintas, de modo que la IA le ayudará a personalizar su bandeja de correo.


lunes, 12 de octubre de 2020

¿Que es formatear?

Se llama “formateo de disco”, o simplemente “formateo”, a la serie de operaciones realizadas con el fin de restablecer un disco duro, una memoria USB o cualquier dispositivo que albergue datos, a su estado original, borrando, de forma no definitiva, los datos que este contiene. Generalmente, esto permite que la memoria del dispositivo sea reescrita con nueva información. En algunas ocasiones, se puede proceder a realizar una partición del disco duro; esto es crear diversas divisiones independientes, dentro del disco duro, que puedan soportar diversos formatos de archivos.



Características de los principales sistemas de archivos

Sistema de archivos FAT32

Habiéndose establecido en 1996, es uno de los viejos rockeros del mundo de los sistemas de archivo, robusto pero anticuado. Eso sí, es tremendamente versátil gracias a su enorme compatibilidad con prácticamente todos los dispositivos y sistemas operativos, razón por la que la mayoría de unidades USB que te compres estarán formateadas con él.

Su mayor y más popular limitación es que sólo permite guardar archivos de hasta 4 GB, por lo que si quieres guardar un único archivo que ocupe más que eso no te va a quedar más remedio que formatear con otro sistema de archivos. Su lado positivo es que es perfectamente compatible con Windows, macOS y GNU/Linux, y funciona sin problemas en los viejos USB 2.0.


Sistema de archivos exFAT

Podríamos referirnos al sistema exFAT como una actualización al FAT32 introducida por Microsoft en Windows Vista con la intención de acabar con los quebraderos de cabeza que provoca la limitación de 4 GB de su hermano mayor.

En cuestión de compatibilidad puedes usarlo en Windows, macOS o GNU/Linux, aunque sólo en las versiones más recientes como a partir de Windows XP SP3 u OS X 10.6.5 Snow leopard. Es un sistema de archivos muy recomendado para unidades externas como un USB o tarjeta SD donde vayas a guardar archivos de más de 4 GB y no quieras tener problemas de compatibilidad.



Sistema de archivos NTFS

Se trata de otra alternativa al sistema FAT32 promovida por Microsoft, de hecho es el sistema de archivos que Windows utiliza por defecto. Sin los límites del tamaño máximo de archivo del FAT32, el NTFS se convierte en una muy buena opción para discos duros y otras unidades externas, por lo menos si eres usuario de Windows.

Y es que su mayor desventaja es que no es totalmente compatible con todos los sistemas operativos. Por ejemplo, de forma nativa macOS puede leer las unidades formateadas con él, pero no puede escribir en ellas. Esto quiere decir que si tienes un disco duro con NTFS no podrás guardar nada de tu Mac a no ser que lo formatees con otro sistema de archivos.


Sistema de archivos HFS+

De la misma manera que el NTFS es uno de los actuales sistemas de archivo de referencia en Windows, Apple creó el sistema HFS+ a su medida. Se da la casualidad de que mientras los sistemas GNU/Linux pueden trabajar con él sin problemas, en Windows sólo podrás leer el contenido de los discos formateados con él, pero no escribir en ellos.

Eso hace de este sistema de archivos uno perfecto si estamos dentro del ecosistema de Apple utilizando sus dispositivos. Pero si eres usuario de Windows vas a necesitar utilizar cualquiera de los otros.}


Sistema de archivos Ext2, ext3 y ext4

Y terminamos con esta última familia de sistemas de archivos. Así como Apple y Microsoft tienen sus propios sistemas, estos tres (cada uno evolución del anterior) son los utilizados por las distribuciones GNU/Linux. El principal inconveniente es que sólo puede ser utilizado en esta familia de sistemas operativos.



viernes, 9 de octubre de 2020

Medios de Transmisión en redes informaticas

Los medios de transmisión son las vías por las cuales se comunican los datos. Dependiendo de la forma de conducir la señal a través del medio o soporte físico, se pueden clasificar en dos grandes grupos:

  • Medios de transmisión guiados o alámbricos.
  • Medios de transmisión no guiados o inalámbricos.

Las tecnologías actuales de transmisión usan ondas electromagnéticas o pulsos de luz. En el caso de los medios guiados los datos se conducen a través de cables o “alambres”. En los medios inalámbricos, se utiliza el aire como medio de transmisión, a través de radiofrecuencias, microondas y luz (infrarrojos, láser); por ejemplo: puerto IrDA (Infrared Data Association), Bluetooth o Wi-Fi.




Medios de Transmisión Guiados

Los medios de transmisión guiados están constituidos por cables que se encargan de la conducción (o guiado) de las señales desde un extremo al otro. Las principales características de los medios guiados son el tipo de conductor utilizado, la velocidad máxima de transmisión, las distancias máximas que puede ofrecer entre repetidores, la inmunidad frente a interferencias electromagnéticas, la facilidad de instalación y la capacidad de soportar diferentes tecnologías de nivel de enlace. La velocidad de transmisión depende directamente de la distancia entre los terminales, y de si el medio se utiliza para realizar un enlace punto a punto o un enlace multipunto. Debido a esto, los diferentes medios de transmisión tendrán diferentes velocidades de conexión que se adaptarán a utilizaciones dispares.



Medios de Transmisión No Guiados

Los medios de transmisión no guiados son aquellos que su característica principal es no usar cables, es decir usan un medio no físico, y esta se transmite por medio de ondas electromagnéticas.

La configuración para las transmisiones no guiadas puede ser direccional y omnidireccional

En la direccional, la antena transmisora emite la energía electromagnética concentrándola en un haz, por lo que las antenas emisora y receptora deben estar alineadas.

En la omnidireccional, la radiación se hace de manera dispersa, emitiendo en todas direcciones, pudiendo la señal ser recibida por varias antenas. Generalmente, cuanto mayor es la frecuencia de la señal transmitida es más factible confinar la energía en un haz direccional.



Diferencias Entre Medios Guiados Y No Guiados

  • La diferencia clave entre los medios guiados y no guiados es que los medios guiados utilizan un camino físico o conductor para transmitir las señales, mientras que los medios no guiados transmiten la señal a través del aire.
  • Los medios guiados también se denominan comunicación por cable o medios de transmisión acotados. Sin embargo, los medios no guiados también se denominan comunicación inalámbrica o medios de transmisión ilimitados.
  • Los medios guiados proporcionan dirección a la señal, mientras que los medios no guiados no dirigen la señal.
  • Las categorías de medios guiados son cable de par trenzado, cable coaxial y fibra óptica. Por otro lado, las categorías de medios no guiados son ondas de radio, microondas y señales infrarrojas.


viernes, 2 de octubre de 2020

Normalización de Bases de Datos

La normalización de bases de datos es un proceso que consiste en designar y aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional. Con objeto de minimizar la redundancia de datos, facilitando su gestión posterior. Este proceso es utilizado para ayudar a eliminar los datos redundantes.



Dependencia Funcional

Decimos que un atributo Y de una relación depende funcionalmente de otro atributo X de la relación si a todo valor de X le corresponde siempre el mismo valor de Y. Por ejemplo, si un atributo de la relación es el nombre de pila y otro es el NIF, podemos asegurar que a un valor concreto de NIF, corresponde siempre el mismo nombre de pila (salvo que admitamos cambios de nombre). Entonces, decimos que «el NIF determina el nombre» o que «nombre depende funcionalmente de NIF».






Primera Forma Normal

Una tabla está en Primera Forma Normal si:

  • Todos los atributos son «atómicos». Por ejemplo, en el campo teléfono no tenemos varios teléfonos.
  • La tabla contiene una clave primaria única. Por ejemplo el NIF para personas, la matrícula para vehículos o un simple id autoincremental. Si no tiene clave, no es 1FN.
  • La clave primaria no contiene atributos nulos. No podemos tener filas para las que no haya clave (por ejemplo, personas sin NIF o vehículos sin matrícula).
  • No debe existir variación en el número de columnas. Si algunas filas tienen 8 columnas y otras 3, pues no estamos en 1FN.
  • Los campos no clave deben identificarse por la clave. Es decir, que los campos no clave dependen funcionalmente de la clave. Esto es prácticamente lo mismo que decir que existe clave primaria.
  • Debe Existir una independencia del orden tanto de las filas como de las columnas, es decir, si los datos cambian de orden no deben cambiar sus significados. Por ejemplo, si en la columna 1 tenemos el primer apellido y en la columna 2 tenemos el segundo, pues no estamos en 1FN. Igualmente si en la tercera fila tenemos el tercer mejor expediente y en la quinta fila el quinto, no estamos en 1FN.


Segunda Forma Normal

Dependencia Funcional. Una relación está en 2FN si está en 1FN y si los atributos que no forman parte de ninguna clave dependen de forma completa de la clave principal. Es decir que no existen dependencias parciales. 

En otras palabras podríamos decir que la segunda forma normal está basada en el concepto de dependencia completamente funcional. Una dependencia funcional x \rightarrow y es completamente funcional si al eliminar los atributos A de X significa que la dependencia no es mantenida, esto es que A Є X, (X – {A}) -x-> Y. Una dependencia funcional x \rightarrow y es una dependencia parcial si hay algunos atributos A \in X que pueden ser eliminados de X y la dependencia todavía se mantiene, esto es A Є X, (X – {A}) -> Y. 

Por ejemplo {DNI, ID_PROYECTO} \rightarrow HORAS_TRABAJO (con el DNI de un empleado y el ID de un proyecto sabemos cuántas horas de trabajo por semana trabaja un empleado en dicho proyecto) es completamente dependiente dado que ni DNI \rightarrow HORAS_TRABAJO ni ID_PROYECTO \rightarrow HORAS_TRABAJO mantienen la dependencia. Sin embargo {DNI, ID_PROYECTO} \rightarrow NOMBRE_EMPLEADO es parcialmente dependiente dado que DNI \rightarrow NOMBRE_EMPLEADO mantiene la dependencia.





Tercera forma normal

La tabla se encuentra en 3FN si es 2FN y si no existe ninguna dependencia funcional transitiva entre los atributos que no son clave. 

Un ejemplo de este concepto sería que, una dependencia funcional X->Y en un esquema de relación R es una dependencia transitiva si hay un conjunto de atributos Z que no es un subconjunto de alguna clave de R, donde se mantiene X->Z y Z->Y. 

Por ejemplo, la dependencia SSN->DMGRSSN es una dependencia transitiva en EMP_DEPT de la siguiente figura. Decimos que la dependencia de DMGRSSN el atributo clave SSN es transitiva vía DNUMBER porque las dependencias SSN→DNUMBER y DNUMBER→DMGRSSN son mantenidas, y DNUMBER no es un subconjunto de la clave de EMP_DEPT. Intuitivamente, podemos ver que la dependencia de DMGRSSN sobre DNUMBER es indeseable en EMP_DEPT dado que DNUMBER no es una clave de EMP_DEPT.




Clave Principal