SlideShare una empresa de Scribd logo
Anthony R. Sotolongo
    León(asotolongo@uci.cu)
Dpto. PostgreSQL- Universidad
      de Ciencias Informáticas
•   Introducción a NoSQL.

•   Características de mongoDB y couchDB.

•   PostgreSQL y las NoSQL.

•   Extensiones en PostgreSQL.

•   Pgpymongo y Pgpycouch.
 Como     se clasifican




NOSQL tendencias actuales en el uso de TI (Qcon,2012)
 Clasificación          *




 * Von der Weth. (2012) C.; Datta, A. Multiterm Keyword Search in NoSQL
 Systems, Internet Computing, IEEE
BIGTABLE
            Cassandra
                        Redis y Hbase




CouchDB
                                mongoDB
Documentos en
formato JSON
•   Tipo de dato Hstore
•   Tipo de dato Hstore


audit_log-> Jaime Casanova
•   Tipo de dato Hstore


audit_log-> Jaime Casanova

•   FDW para Redis y couchDB
    (extensiones).
•   Tipo de dato Hstore


audit_log-> Jaime Casanova

• FDW para Redis y couchDB
  (extensiones).
Descargar de www.pgxn.org
93 Extensiones
9 extensiones de FDW
•Multicorn (python extension)
Permite crear FDW desde python
• Permiten agregar al gestor nuevas
  funcionalidades, suelen incluir múltiples
  objetos de SQL, por ejemplo, un nuevo
  tipo de datos o nuevas funciones. 35.15.
  Packaging Related Objects into an
  Extension
• Dos archivos como mínimo
          .control .SQL
• Incluirlas en directorio extension.
CREATE EXTESION nombre_de_extensión
• pgmongo.control
 # extension
comment = 'extension …postgresql'
default_version = '0.1‘
superuser = true

•pgmongo--0.1.SQL
Clásicos comandos SQL(DDL, DCL, DML)
App gestión de        App
 información


                 ¿?
App gestión de   App
 información




    Pgpymongo.
App gestión de               App
 información




    Pgpymongo y Pgpycouch.
Lenguaje Plpython.

Funcionalidades de las extensiones.
 Gestión de una Base de datos (creación,
  eliminación, obtención).
 Gestión de documentos (creación,
  eliminación, modificación y obtención).
 Ejecución de funciones Map/Reduce.
Listado de funciones.
• collectionfind: Buscar documentos en una
  colección.
• collectionfindone: Buscar un documentos
  específico en una colección.
• collectioninsert: Insertar un documento en una
  colección.
• createcolleccion: Crear una colección.
• createdb: Crear una base de datos.
• getdatabases: Obtener las bases de datos.
CREATE OR REPLACE FUNCTION
    pgpymongo.createdb(pserver text, pport integer,
    pname text)
    RETURNS text AS $$
from pymongo import Connection
#servidor puerto
servidor=Connection(pserver,pport)
for bd in servidor.database_names():
  if bd == pname:
     return ""“La BDs ya existe!!!"""
servidor[pname].collection_names()
return 'Base de datos creada : '+ str(servidor[pname])
$$ LANGUAGE plpythonu VOLATILE;
Ejemplos:
select pgpymongo.createdb('localhost', 27017, 'nueva')
Resultado- "Base de datos creada: -
  Database(Connection('localhost', 27017), u'nueva')“

select pgpymongo.collectionfindone('localhost', 27017,
  'nueva', 'micoleccion','{"valor2":"prueba"}')
Resultado-"{u'valor1': 1, u'valor2': u'prueba', u'_id':
  ObjectId('5027cbf32229710460000002')}"

select pgpymongo.collectioninsert('localhost', 27017,
  'nueva', 'micoleccion', '{"valor1":2,"valor2":"prueba2"}')
Resultado- "5027cbf32229710460000003"
•   Existe un uso creciente de las bases de datos
    NoSQL.

•   Se evidenció la capacidad de extensibilidad
    que tiene PostgreSQL incluso en otros
    lenguajes diferentes al que fue creado.

•   Pgpymongo y Pgpycouch ejemplos de
    extensiones para PostgreSQL.
Anthony R. Sotolongo
    León(asotolongo@uci.cu)
Dpto. PostgreSQL- Universidad
      de Ciencias Informáticas

Más contenido relacionado

PPTX
NoSQL, Mongo DB & Google Maps
PPTX
NOSQL: Primeros Pasos en MongoDB
PPTX
Elastic search
PPTX
PPTX
Jean piere sarumo mongodb
PDF
Instalacion nosql "mongodb"
PDF
Curso completo de Elasticsearch
ODP
ElasticSearch: la tenés atroden Google
NoSQL, Mongo DB & Google Maps
NOSQL: Primeros Pasos en MongoDB
Elastic search
Jean piere sarumo mongodb
Instalacion nosql "mongodb"
Curso completo de Elasticsearch
ElasticSearch: la tenés atroden Google

La actualidad más candente (20)

PDF
Características Adminsitración SQL Server 2012 Parte 3
PDF
Operadores para json en pg 9.2
PDF
Rendimiento del sistema Tryton
PDF
Características nosql de postgresql
PDF
Postgres como base de datos NoSQL. Codemotion 2015
DOC
Crear unidades organizativas
PPTX
Mongo bd michael landeo vargas
PDF
Aprende a montar tu propio servidor Web con Linux & LAMP stack
PDF
Sobreviviendo commando style
PPT
Primeros pasos con Neo4j
PDF
MongoDB (Conceptos Básicos) - Junio 2010
PPTX
Elasticsearch
PDF
trabajo en PDF de almacenamiento virtual
PPTX
los 5 mejores de almacenamiento virtual
ODT
Ftp
PPTX
Serializacion Objetos
ODP
Introducción a MongoDB
PDF
Introducción al mundo NoSQL
PPTX
PPTX
Características Adminsitración SQL Server 2012 Parte 3
Operadores para json en pg 9.2
Rendimiento del sistema Tryton
Características nosql de postgresql
Postgres como base de datos NoSQL. Codemotion 2015
Crear unidades organizativas
Mongo bd michael landeo vargas
Aprende a montar tu propio servidor Web con Linux & LAMP stack
Sobreviviendo commando style
Primeros pasos con Neo4j
MongoDB (Conceptos Básicos) - Junio 2010
Elasticsearch
trabajo en PDF de almacenamiento virtual
los 5 mejores de almacenamiento virtual
Ftp
Serializacion Objetos
Introducción a MongoDB
Introducción al mundo NoSQL
Publicidad

Destacado (17)

PDF
Evolución y avances del Gestor PostgreSQL
PDF
Mongodb vs couchdb
PDF
Manual de instalacion de Mongo db
PDF
The law of contract research as a route to sustainable
DOCX
PPT
Rails engines
DOCX
Jak zbudować profesjonalny system crm?
PDF
IMG_20150929_0004
PDF
Micro i pnfeo2013
PPTX
Behaviorchange
PPTX
áLbum de fotografías easter day in enrique n
PPT
Mongo db course administration
DOC
Analisis de riesgos
PPTX
Práctica 2 - Estequiometría
PDF
Bases de datos NoSQL orientadas a documentos
PPTX
MongoDB Avanzado
PDF
Evolucion de PostgreSQL hasta 9.4
Evolución y avances del Gestor PostgreSQL
Mongodb vs couchdb
Manual de instalacion de Mongo db
The law of contract research as a route to sustainable
Rails engines
Jak zbudować profesjonalny system crm?
IMG_20150929_0004
Micro i pnfeo2013
Behaviorchange
áLbum de fotografías easter day in enrique n
Mongo db course administration
Analisis de riesgos
Práctica 2 - Estequiometría
Bases de datos NoSQL orientadas a documentos
MongoDB Avanzado
Evolucion de PostgreSQL hasta 9.4
Publicidad

Similar a Pgpymongo y pgpycouch (20)

PDF
Semana 3 MONGODB conceptos básicos NOSQL
PDF
Análisis de Datos con MongoDB
PPTX
Mallorca MUG: Introducción a MongoDB
PPTX
Mongodb administración
PPTX
Evolucion de big data @ mercadolibre.com
PDF
mini-taller de Base de Datos y PostgreSQL
PDF
58517228 postgre sql-desarrolladoresbasico
PDF
6. Utilización del modelo de objetos del documento (DOM)
PDF
Seminario mongo db springdata 10-11-2011
PDF
Tema principal de Mongodb y sus beneficios
PDF
PPTX
Base de Datos
PDF
Dinamic area formación mongodb
PPTX
CLASE03_TEMA02_2.pptx
PDF
Wilver mongo db
PDF
Combinación ganadora: Plone como CMS, tu framework preferido como frontend
PPTX
Trabajo de sistemas de informacion
KEY
Mongo Mapper
PPTX
1 tutorial de mongo db
PDF
No-SQL Databases
Semana 3 MONGODB conceptos básicos NOSQL
Análisis de Datos con MongoDB
Mallorca MUG: Introducción a MongoDB
Mongodb administración
Evolucion de big data @ mercadolibre.com
mini-taller de Base de Datos y PostgreSQL
58517228 postgre sql-desarrolladoresbasico
6. Utilización del modelo de objetos del documento (DOM)
Seminario mongo db springdata 10-11-2011
Tema principal de Mongodb y sus beneficios
Base de Datos
Dinamic area formación mongodb
CLASE03_TEMA02_2.pptx
Wilver mongo db
Combinación ganadora: Plone como CMS, tu framework preferido como frontend
Trabajo de sistemas de informacion
Mongo Mapper
1 tutorial de mongo db
No-SQL Databases

Último (20)

PPT
introduccion a las_web en el 2025_mejoras.ppt
PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
PDF
Plantilla para Diseño de Narrativas Transmedia.pdf
PDF
Calidad desde el Docente y la mejora continua .pdf
PPTX
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
PDF
Influencia-del-uso-de-redes-sociales.pdf
PDF
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
PPTX
Sesion 1 de microsoft power point - Clase 1
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
PDF
CyberOps Associate - Cisco Networking Academy
PDF
Diapositiva proyecto de vida, materia catedra
PPTX
Propuesta BKP servidores con Acronis1.pptx
PPT
Que son las redes de computadores y sus partes
PPTX
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
PDF
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
PPTX
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
PPTX
Power Point Nicolás Carrasco (disertación Roblox).pptx
PPT
El-Gobierno-Electrónico-En-El-Estado-Bolivia
PDF
clase auditoria informatica 2025.........
introduccion a las_web en el 2025_mejoras.ppt
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
historia_web de la creacion de un navegador_presentacion.pptx
Plantilla para Diseño de Narrativas Transmedia.pdf
Calidad desde el Docente y la mejora continua .pdf
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
Influencia-del-uso-de-redes-sociales.pdf
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
Sesion 1 de microsoft power point - Clase 1
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
CyberOps Associate - Cisco Networking Academy
Diapositiva proyecto de vida, materia catedra
Propuesta BKP servidores con Acronis1.pptx
Que son las redes de computadores y sus partes
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
Power Point Nicolás Carrasco (disertación Roblox).pptx
El-Gobierno-Electrónico-En-El-Estado-Bolivia
clase auditoria informatica 2025.........

Pgpymongo y pgpycouch

  • 1. Anthony R. Sotolongo León(asotolongo@uci.cu) Dpto. PostgreSQL- Universidad de Ciencias Informáticas
  • 2. Introducción a NoSQL. • Características de mongoDB y couchDB. • PostgreSQL y las NoSQL. • Extensiones en PostgreSQL. • Pgpymongo y Pgpycouch.
  • 3.  Como se clasifican NOSQL tendencias actuales en el uso de TI (Qcon,2012)
  • 4.  Clasificación * * Von der Weth. (2012) C.; Datta, A. Multiterm Keyword Search in NoSQL Systems, Internet Computing, IEEE
  • 5. BIGTABLE Cassandra Redis y Hbase CouchDB mongoDB
  • 7. Tipo de dato Hstore
  • 8. Tipo de dato Hstore audit_log-> Jaime Casanova
  • 9. Tipo de dato Hstore audit_log-> Jaime Casanova • FDW para Redis y couchDB (extensiones).
  • 10. Tipo de dato Hstore audit_log-> Jaime Casanova • FDW para Redis y couchDB (extensiones). Descargar de www.pgxn.org 93 Extensiones 9 extensiones de FDW
  • 11. •Multicorn (python extension) Permite crear FDW desde python
  • 12. • Permiten agregar al gestor nuevas funcionalidades, suelen incluir múltiples objetos de SQL, por ejemplo, un nuevo tipo de datos o nuevas funciones. 35.15. Packaging Related Objects into an Extension • Dos archivos como mínimo .control .SQL • Incluirlas en directorio extension. CREATE EXTESION nombre_de_extensión
  • 13. • pgmongo.control  # extension comment = 'extension …postgresql' default_version = '0.1‘ superuser = true •pgmongo--0.1.SQL Clásicos comandos SQL(DDL, DCL, DML)
  • 14. App gestión de App información ¿?
  • 15. App gestión de App información Pgpymongo.
  • 16. App gestión de App información Pgpymongo y Pgpycouch.
  • 17. Lenguaje Plpython. Funcionalidades de las extensiones.  Gestión de una Base de datos (creación, eliminación, obtención).  Gestión de documentos (creación, eliminación, modificación y obtención).  Ejecución de funciones Map/Reduce.
  • 18. Listado de funciones. • collectionfind: Buscar documentos en una colección. • collectionfindone: Buscar un documentos específico en una colección. • collectioninsert: Insertar un documento en una colección. • createcolleccion: Crear una colección. • createdb: Crear una base de datos. • getdatabases: Obtener las bases de datos.
  • 19. CREATE OR REPLACE FUNCTION pgpymongo.createdb(pserver text, pport integer, pname text) RETURNS text AS $$ from pymongo import Connection #servidor puerto servidor=Connection(pserver,pport) for bd in servidor.database_names(): if bd == pname: return ""“La BDs ya existe!!!""" servidor[pname].collection_names() return 'Base de datos creada : '+ str(servidor[pname]) $$ LANGUAGE plpythonu VOLATILE;
  • 20. Ejemplos: select pgpymongo.createdb('localhost', 27017, 'nueva') Resultado- "Base de datos creada: - Database(Connection('localhost', 27017), u'nueva')“ select pgpymongo.collectionfindone('localhost', 27017, 'nueva', 'micoleccion','{"valor2":"prueba"}') Resultado-"{u'valor1': 1, u'valor2': u'prueba', u'_id': ObjectId('5027cbf32229710460000002')}" select pgpymongo.collectioninsert('localhost', 27017, 'nueva', 'micoleccion', '{"valor1":2,"valor2":"prueba2"}') Resultado- "5027cbf32229710460000003"
  • 21. Existe un uso creciente de las bases de datos NoSQL. • Se evidenció la capacidad de extensibilidad que tiene PostgreSQL incluso en otros lenguajes diferentes al que fue creado. • Pgpymongo y Pgpycouch ejemplos de extensiones para PostgreSQL.
  • 22. Anthony R. Sotolongo León(asotolongo@uci.cu) Dpto. PostgreSQL- Universidad de Ciencias Informáticas