No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso de PostgreSQL

Curso de PostgreSQL

Oswaldo Rodríguez González

Oswaldo Rodríguez González

Otras Extensiones para Postgres

26/32
Recursos

Aportes 46

Preguntas 2

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

Lastima no poder darle LIKE al video. Por que se lo merece!

Una extensión que me pareció muy interesante es passwordcheck la cual verifica el nivel de fortaleza de un password cuando un usuario/rol es creado en la base de datos. Esto, brinda una capa de seguridad adicional protegiéndonos de ataques de fuerza bruta ya que garantiza que tenemos una contraseña segura.

Puedes listar todas las extensiones disponibles en postgres y visualizar una pequeña descripción de su funcionamiento con este comando.

SELECT * FROM pg_available_extensions;

Hola a todos, en el siguiente ejemplo usé la extensión de encriptación y use dos parámetros para el hash md5, en los cuales uso las funciones salt (la cual aplica valores aleatorios) y **md5 básico ** para evidenciar las diferencias en los casos de usuarios con las mismas contraseñas:

En mi caso usaría con frecuencia la extensión PostGIS que habilita **análisis espacial **y manejo de geometrías, todo lo necesario para un Sistema de información geográfica.

Excelente

CREATE EXTENSION fuzzystrmatch;
SELECT levenshtein('oswaldo', 'osvaldo')
SELECT difference('oswaldo', 'osvaldo');
SELECT difference('beard', 'bird');

create extension earthdistance cascade;

select
(
point(-81.3927381, 30.2918842)<@>point(-87.6473133, 41.8853881)
) as distance;

el resultado

873.203527399339

me hubiera servido para cuando trabajé en un sistema de geolocalización.

Información resumida de esta clase
#EstudiantesDePlatzi

  • Existen algunas extensiones instaladas más no activas dentro de PgAdmin que nos ayudan a ejecutar ciertos comandos

  • Con levelnshtein encontramos el número de diferencias que tienen dos palabras en su escritura.

  • Es importante crear la extensión para usar las funciones normalmente

  • Con difference encontramos que tan similares suenan dos palabras

CREATE EXTENSION pgcrypto;

SELECT crypt('123456789', 'md5');
-- Esta función nos permite encriptar un password
-- segun la forma de encriptación

Hace unos años hubiera sido interesante haber conocido esta extensión

--CREATE EXTENSION unaccent;
SELECT unaccent('Última acción en la academia española')

--Retorna sin acentos
Ultima accion en la academia espanola

Me encontré este caso con Unicode y quise probar

SELECT CONCAT(E'\u4f60', E'\u597d', E'\uff0c', E'\u4e16', E'\u754c')

SELECT unaccent(CONCAT(E'\u4f60', E'\u597d', E'\uff0c', E'\u4e16', E'\u754c'))

-- A este nivel no llega, por buena razón creo
<code>

Acá una muy buena lista de algunas de las extenciones más útiles

Estaba revisando Soundex, que está dentro de fuzzystrmach, y ya me ayuda entender como funcionan aplicaciones como Duolingo.

jjajajaja yo pensé que iba a sonar algo ajajajaja

Encontre la funcion earth() que devuelve el radio supuesto de la Tierra. Util en la construcción de aplicaciones de geolocalizacion, distancias y de mas.

Excelente característica, no sabia de estas capacidades de postgres

hola creo que uno bueno para implementar es : ¨passwordcheck¨

No tenia ni idea que en SQL habia este tipo de funcionalidades.

Interesante, revise otras extensiones muy interesantes:
https://www.timescale.com/blog/top-5-postgresql-extensions/

**QUE CHIMBA DE CLASEEEE, AMO PLATZI **

Bastante interesante los diferentes usos que se le pueden dar a postgres, y que n solo sirva para bases de datos.

Excelente clase.

beard y bird se pronuncian parecido pero NO IGUALES, la primera lleva una i muy parecida a la del español y la 2da tiene una vocal que es como una combinacion entre una “i” y una “e”

Una clase MUY interesante y util !!

Me pareció interesante la extensión earthdistance.
https://www.postgresql.org/docs/11/earthdistance.html
En realidad son 2 extensiones. En el link explica la forma de instalarla.
Se pueden realizar diferentes cálculos sobre la superficie terrestre (distancias, coordenadas, distancia secante, etc) asumiendo que la tierra es perfectamente esférica.
Por ejemplo: de esta manera podemos tomar estos cálculos como referencia para compararlos con los realizados en Postgis usando algún geom específico. De esta manera podemos tener una idea de cómo los distintos supuestos de la deformación de la tierra (geom) afectan estos cálculos.

SELECT levenshtein('oswaldo','Osvaldo');
-- Funcion que retorna el número de letras
-- que hay que cambiar para que las palabras
-- sean iguales.

SELECT difference('oswaldo','osvaldo');
-- Esta función nos retorna de 0 a  4 que tan
-- iguales suenan las dos palabras.```

Wow esta extensión me gusto mucho.

😉

SELECT levenshtein('beer', 'bear');
SELECT difference('son', sun');

La mas interesante para mi caso son dblink y postgis,

Por si trabajan con geología: Earth distance

PostGis, no lo conocía. Pero ahora se en que puedo usarlo justo.

CREATE EXTENSION fuzzystrmatch;

Select levenshtein(‘Oswaldo’, ‘osvaldo’);
Select difference(‘Oswaldo’, ‘osvaldo’);
Select difference(‘Beard’, ‘Bird’);

la que me parece mas interesante el la le SELECT levenshtein, ya que la comparación de caracteres si se aplica muy bien a una base de datos y por supuesto dblink es indispensable

CREATE EXTENSION name_extension; activamos la extensión;

Alguien me podria ayudar porque si puedo instalar la extencion pero no la puedo ejecutar, aclaro que si la pude instalar.

Ya casi te tengo Data Tree Gardener 😂

Uffff me sorprendo todos los días con pequeñas-grandes cosas. Gracias Platzi, gracias Porfe.

Extensiones
-- Creamos la extenxion
CREATE EXTENSION fuzzystrmatch;
-- Funcion que retorna el numero de letras que hay que cambiar para las palabras iguales. 1: True, 0: False.
SELECT levenshtein('oswaldo', 'osvaldo');
-- Funcion para saber que tan iguales suenan, manda valores de 0 a 4, 0: Nada parecido, 4: Muy parecido.
SELECT difference('oswaldo', 'osvaldo');
SELECT difference('beard', 'bird');

Funciones de extensiones para instalar.

Activar la extensión fuzzystrmach

Función levenshtein

Función difference

Appendix F. Additional Supplied Modules
Podemos ver la información de extensiones

Me encantó esta clase mostranos otras funciones que nos pueden ayudar

--Creando la extensión
CREATE EXTENSION fuzzystrmatch;

--Grado de Diferencia de palabras
SELECT levenshtein ('Mario','Maria');

--Grado de pronunciación de palabras
SELECT difference ('date','bite');
SELECT difference ('java','python');```