SlideShare una empresa de Scribd logo
Pycones 2015
Python
Comparing ORM
José manuel ortega |@jmortegac
Pycones 2015
https://speakerdeck.com/jmortega
https://medium.com/@jmortegac
Pycones 2015
• Introducción a ORM
• ORM en Python
• SqlAlchemy/SQLObject/PonyORM/Peewee/Django-ORM
• Comparativa
• Seguridad
Agenda
Pycones 2015
Introducción a ORM
• Object Relational Mapping
• Mapear objetos en tablas
• Crea una BD orientada a objetos virtual
• Es necesario saber cómo funcionan
las base de datos a nivel relacional
Pycones 2015
Introducción a ORM
• Mapeo:
• ClaseTabla
• AtributoColumna
• ObjetoFila
Pycones 2015
Ventajas
• Evitar escribir código SQL
• Independizar la fuente de datos
• Mismo código puedo cambiar
base de datos
• Fácil modelado de datos
Pycones 2015
Patrones ORM
• Unit of Work
Pycones 2015
Patrones ORM
• Identity Map
• Caché de objetos
Objetos en
BD
Objetos en
memoria
Pycones 2015
Introducción a ORM
• Patrones:
• Active Record Pattern
• Relacion 1:1
Object Table /row
Pycones 2015
Introducción a ORM
• Patrones:
• Data Mapper Pattern
Object DataMaper Database
Pycones 2015
ORM en python
SELECT * FROM USERS WHERE zip_code=94107;
users = Users.objects.filter(zip_code=94107)
Pycones 2015
Soporte Bases datos
Pycones 2015
Soporte web FrameWorks
Pycones 2015
Modelo de datos
Pycones 2015
SQLiteBrowser
Pycones 2015
SQLiteBrowser
Pycones 2015
Muchos a muchos
Pycones 2015
SQLalchemy
• Es de los más avanzados
• Más flexible para el programador
• Patrón unit of Work
Pycones 2015
SQLalchemy
• Objeto session para persistir los objetos
• session.commit()
Pycones 2015
SQLalchemy Many to many
Pycones 2015
SQLalchemy
Query objects
Pycones 2015
SQLObject
http://sqlobject.org
• No es necesario commit
• Soporta joins
• Relaciones uno-muchos,
muchos-muchos
Pycones 2015
SQLObject
event = Event(type="workshop",
description="Usando contenedores para Big Data",
date=date1,
track = track4);
event.addSpeaker(speaker1);
class Event(SQLObject):
type = StringCol(length=255) #workshop /talk
description = StringCol(length=255)
date = DateCol(default=None)
track = ForeignKey('Track')
speakers = RelatedJoin('Speaker',
intermediateTable="speaker_event",
joinColumn="eventID",
otherColumn="speakerID")
Pycones 2015
SQLObject
<Nombre_clase>.connection.debug=True
Pycones 2015
SQLObject Many to Many
Pycones 2015
Expresiones SQL
SQLObject
event = Event.select(Event.q.description==description)
Pycones 2015
SQLBuilder
from sqlobject.sqlbuilder import *
Pycones 2015
Generación dinámica
A partir de un xml o esquema
Pycones 2015
PonyORM
• Funciona de forma similar a
SQLalchemy,mejorando algunas cosas
• Puede trabajar a la vez con varias BD
• Relaciones bidireccionales
https://ponyorm.com
Pycones 2015
PonyORM
db_session
• Realiza un commit si detecta cualquier cambio
y no se ha producido ninguna excepción
• Realiza un rollback de la transacción si se
produce una excepción
• Gestiona el pool de conexiones con la BD
• Gestiona caché de sesión de forma automática
Pycones 2015
PonyORM
db_session decorator
Pycones 2015
PonyORM
Lambda function
Pycones 2015
PonyORM
Many to Many
Pycones 2015
PonyORM ventajas
• Optimización automática de consultas(Automatic
query optimization)
• Gestión automática de transacciones
• Almacenamiento en caché automático de consultas
y objetos
• Soporte completo de claves primarias compuestas
• La capacidad de escribir con facilidad consultas
utilizando LEFT JOIN, VISTA y otras características
de SQL
Pycones 2015
Django ORM
Pycones 2015
Peewee
https://github.com/coleifer/peewee
• Definición de modelos similar a
Django
• Patrón ActiveRecord
Pycones 2015
Soporte python 3
SQLObject
Pycones 2015
Primary key
• All create it automatically except
SQLAlchemy
id = Column(Integer, primary_key=True)
Pycones 2015
Autocommit=true
db_session
SQLObject
Pycones 2015
Transacciones
try:
with db.atomic() as nested_txn:
object = Entity.create()
return 'Success'
except peewee.IntegrityError:
# This will roll back the above create() query.
nested_txn.rollback()
return 'Failure'
Pycones 2015
Transacciones
@db.atomic()
def create_entity():
# This statement will run in a transaction. If the
caller is already
# running in an `atomic` block, then a savepoint
will be used instead.
return Entity.create()
Pycones 2015
Performance
# Faster
with db.atomic():
for data_dict in data_source:
Model.create(**data_dict)
# Fastest
with db.atomic():
Model.insert_many(data_source).execute()
Pycones 2015
Cache
• Minimizar número de llamadas a BD
• Optimizar consultas
• Identity Map
object = Entity[primary_key]
obj = Entity.objects.get(pk=the_id)]
Pycones 2015
Get Data from Caché
object = Entity.get(Entity.pk == 'value')
object = session.query(Entity).get(pk='value')
Pycones 2015
Generating tables
• PeeWee
db.create_tables([Entity1,Entity2,...,Entityn],True)
try:
<Entity>.create_table()
except peewee.OperationalError:
print “Table already exists!”
Pycones 2015
Generating tables
SQLObject
Base.metadata.create_all(engine)
for each Entity:
Entity.createTable(ifNotExists=True)
Pycones 2015
Generating tables
db = Database("sqlite", "ponyORM_pycon.sqlite",
create_db=True)
class Entity(db.Entity):
db.generate_mapping(create_tables=True)
Pycones 2015
Herencia
• Todas soportan herencia para crear las
entidades
Pycones 2015
Herencia
Pycones 2015
Herencia
Pycones 2015
Comparativa
SQLAlchemy SQLObject PonyORM Peewee Django ORM
Soporte sesión
en Base de
datos
Automatic
Schema
Migrations
Many-to-many
relations intuitive
Automatic query
optimization
Unit of Work
Pycones 2015
Soporte BD
ORM BD
SQLAlchemy MySQL, Postgres, SQLite, Oracle,
MSSQLServer,Sybase,FireBird
SQLObject MySQL, Postgres, SQLite, Sybase, Maxdb,
MSSQLServer
PonyORM MySQL, Postgres, SQLite, Oracle
Peewee MySQL, Postgres, SQLite
Django ORM MySQL, Postgres, SQLite,Oracle
Pycones 2015
Seguridad
query = MyModel.select().where(SQL('Some SQL
expression %s' % user_data))
query = MyModel.select().where(SQL('Some SQL
expression %s' , user_data))
Pycones 2015
Django security
• Binding parameters
Pycones 2015
GitHub examples
https://github.com/jmortega/pycon-comparing_ORM
Pycones 2015
Testing examples
http://code.runnable.com/Vk8C1Vkf2dAQGrrc/python-comparing-
orm-for-sqlobject-sqlalchemy-ponyorm-and-peewee
http://bit.ly/1O9gDn5
Pycones 2015
Thank you!
?

Más contenido relacionado

Destacado

The end of_business_as_usual_–_rapport (3)
The end of_business_as_usual_–_rapport (3)The end of_business_as_usual_–_rapport (3)
The end of_business_as_usual_–_rapport (3)
Piet van den Boer
 
Jabón casero
Jabón caseroJabón casero
Jabón casero
Victor Serrano Tejada
 
Respuesta direccion mipymes sr gomez 2015
Respuesta direccion mipymes sr gomez 2015Respuesta direccion mipymes sr gomez 2015
Respuesta direccion mipymes sr gomez 2015damarismontealegre
 
COMCO_Oldtimer_Leasing
COMCO_Oldtimer_LeasingCOMCO_Oldtimer_Leasing
COMCO_Oldtimer_LeasingMarcus Keller
 
OFERTA TÉCNICO DE SELECCIÓN MADRID
OFERTA TÉCNICO DE SELECCIÓN MADRIDOFERTA TÉCNICO DE SELECCIÓN MADRID
OFERTA TÉCNICO DE SELECCIÓN MADRID
B4work B4work
 
Ingeniero Petrolero_Carlos Saravia_CV_2016_19 años Experiencia
Ingeniero Petrolero_Carlos Saravia_CV_2016_19 años ExperienciaIngeniero Petrolero_Carlos Saravia_CV_2016_19 años Experiencia
Ingeniero Petrolero_Carlos Saravia_CV_2016_19 años ExperienciaCarlos Iver Saravia Vidal
 
San jose 2011
San jose 2011San jose 2011
San jose 2011
Marcelo Langleib
 
Propaganda médica probertan
Propaganda médica probertanPropaganda médica probertan
Propaganda médica probertanDeysy del Rosario
 
Samcom portfolio
Samcom portfolioSamcom portfolio
Samcom portfolio
Jitendra Sadhu
 
Canada; Rainwater Collection System: A Feasibility Study for Dalhousie Univ...
Canada;  Rainwater Collection System:  A Feasibility Study for Dalhousie Univ...Canada;  Rainwater Collection System:  A Feasibility Study for Dalhousie Univ...
Canada; Rainwater Collection System: A Feasibility Study for Dalhousie Univ...
D5Z
 
Trabajo de power point Cancer de seno angiel lorena martinez (2) (2)
Trabajo de power point Cancer de seno angiel lorena martinez (2) (2)Trabajo de power point Cancer de seno angiel lorena martinez (2) (2)
Trabajo de power point Cancer de seno angiel lorena martinez (2) (2)
L4R3N4
 
Up encriptacion publica v1.2
Up encriptacion publica v1.2Up encriptacion publica v1.2
Up encriptacion publica v1.2
Meme delaTower
 
Presentacion final vida amorosa de Cleopatra
Presentacion final vida amorosa de CleopatraPresentacion final vida amorosa de Cleopatra
Presentacion final vida amorosa de Cleopatra
profenoris
 
Aparato respiratorio
Aparato respiratorioAparato respiratorio
Aparato respiratorio
erquimicoloco
 

Destacado (15)

The end of_business_as_usual_–_rapport (3)
The end of_business_as_usual_–_rapport (3)The end of_business_as_usual_–_rapport (3)
The end of_business_as_usual_–_rapport (3)
 
Jabón casero
Jabón caseroJabón casero
Jabón casero
 
Respuesta direccion mipymes sr gomez 2015
Respuesta direccion mipymes sr gomez 2015Respuesta direccion mipymes sr gomez 2015
Respuesta direccion mipymes sr gomez 2015
 
COMCO_Oldtimer_Leasing
COMCO_Oldtimer_LeasingCOMCO_Oldtimer_Leasing
COMCO_Oldtimer_Leasing
 
OFERTA TÉCNICO DE SELECCIÓN MADRID
OFERTA TÉCNICO DE SELECCIÓN MADRIDOFERTA TÉCNICO DE SELECCIÓN MADRID
OFERTA TÉCNICO DE SELECCIÓN MADRID
 
Ingeniero Petrolero_Carlos Saravia_CV_2016_19 años Experiencia
Ingeniero Petrolero_Carlos Saravia_CV_2016_19 años ExperienciaIngeniero Petrolero_Carlos Saravia_CV_2016_19 años Experiencia
Ingeniero Petrolero_Carlos Saravia_CV_2016_19 años Experiencia
 
San jose 2011
San jose 2011San jose 2011
San jose 2011
 
Propaganda médica probertan
Propaganda médica probertanPropaganda médica probertan
Propaganda médica probertan
 
Samcom portfolio
Samcom portfolioSamcom portfolio
Samcom portfolio
 
Monumentos de países europeos
Monumentos de países europeosMonumentos de países europeos
Monumentos de países europeos
 
Canada; Rainwater Collection System: A Feasibility Study for Dalhousie Univ...
Canada;  Rainwater Collection System:  A Feasibility Study for Dalhousie Univ...Canada;  Rainwater Collection System:  A Feasibility Study for Dalhousie Univ...
Canada; Rainwater Collection System: A Feasibility Study for Dalhousie Univ...
 
Trabajo de power point Cancer de seno angiel lorena martinez (2) (2)
Trabajo de power point Cancer de seno angiel lorena martinez (2) (2)Trabajo de power point Cancer de seno angiel lorena martinez (2) (2)
Trabajo de power point Cancer de seno angiel lorena martinez (2) (2)
 
Up encriptacion publica v1.2
Up encriptacion publica v1.2Up encriptacion publica v1.2
Up encriptacion publica v1.2
 
Presentacion final vida amorosa de Cleopatra
Presentacion final vida amorosa de CleopatraPresentacion final vida amorosa de Cleopatra
Presentacion final vida amorosa de Cleopatra
 
Aparato respiratorio
Aparato respiratorioAparato respiratorio
Aparato respiratorio
 

Similar a Python Comparing ORM

Introducción a Python / Django
Introducción a Python / DjangoIntroducción a Python / Django
Introducción a Python / Djangobetabeers
 
Campus Party 2019 - Programando el testing
Campus Party 2019 - Programando el testing Campus Party 2019 - Programando el testing
Campus Party 2019 - Programando el testing
Centro de Ensayos de Software
 
Combinación ganadora: Plone como CMS, tu framework preferido como frontend
Combinación ganadora: Plone como CMS, tu framework preferido como frontendCombinación ganadora: Plone como CMS, tu framework preferido como frontend
Combinación ganadora: Plone como CMS, tu framework preferido como frontend
menttes
 
Crear una red de Blogs no penalizados - Elblogdelseo.com
Crear una red de Blogs no penalizados - Elblogdelseo.comCrear una red de Blogs no penalizados - Elblogdelseo.com
Crear una red de Blogs no penalizados - Elblogdelseo.com
ElBlogdelSEO y SEOStar
 
Django - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales ConceptosDjango - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales Conceptos
George Navarro Gomez
 
Django - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales ConceptosDjango - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales Conceptos
George Navarro Gomez
 
Integración de Oracle Data Integrator con Oracle GoldenGate 12c
Integración de Oracle Data Integrator  con Oracle GoldenGate 12cIntegración de Oracle Data Integrator  con Oracle GoldenGate 12c
Integración de Oracle Data Integrator con Oracle GoldenGate 12c
Edelweiss Kammermann
 
Jornadas Odoo 2015 - Buenas prácticas en el desarrollo de Odoo
Jornadas Odoo 2015 - Buenas prácticas en el desarrollo de OdooJornadas Odoo 2015 - Buenas prácticas en el desarrollo de Odoo
Jornadas Odoo 2015 - Buenas prácticas en el desarrollo de Odoo
Pedro Manuel Baeza Romero
 
PowerShell para SharePoint OnPremises y Online, la herramienta compartida por...
PowerShell para SharePoint OnPremises y Online, la herramienta compartida por...PowerShell para SharePoint OnPremises y Online, la herramienta compartida por...
PowerShell para SharePoint OnPremises y Online, la herramienta compartida por...
Juan Carlos Gonzalez
 
Java script para desarrolladores SharePoint
Java script para desarrolladores SharePointJava script para desarrolladores SharePoint
Java script para desarrolladores SharePoint
Adrian Diaz Cervera
 
Dia2
Dia2Dia2
Búsqueda Empresarial en SharePoint 2013 - Iberian SharePoint Conference - Jos...
Búsqueda Empresarial en SharePoint 2013 - Iberian SharePoint Conference - Jos...Búsqueda Empresarial en SharePoint 2013 - Iberian SharePoint Conference - Jos...
Búsqueda Empresarial en SharePoint 2013 - Iberian SharePoint Conference - Jos...
José Quinto Zamora
 
Screencast aprende python - parte 1
Screencast   aprende python - parte 1Screencast   aprende python - parte 1
Screencast aprende python - parte 1Noe Nieto
 
Python
PythonPython
Futuro de Desarrollo en SharePoint
Futuro de Desarrollo en SharePointFuturo de Desarrollo en SharePoint
Futuro de Desarrollo en SharePoint
Haaron Gonzalez
 
.NET UY Meetup 4 - AOP & PostSharp by Bruno Bologna & Fabian Fernandez
.NET UY Meetup 4 - AOP & PostSharp by Bruno Bologna & Fabian Fernandez.NET UY Meetup 4 - AOP & PostSharp by Bruno Bologna & Fabian Fernandez
.NET UY Meetup 4 - AOP & PostSharp by Bruno Bologna & Fabian Fernandez.NET UY Meetup
 
Seo para prestashop
Seo para prestashopSeo para prestashop
Seo para prestashop
Raúl Carrión
 
Introducción a Django
Introducción a DjangoIntroducción a Django
Introducción a Django
Julio Gálvez
 
Introducción a Django
Introducción a DjangoIntroducción a Django
Introducción a Django
Paradigma Digital
 

Similar a Python Comparing ORM (20)

Introducción a Python / Django
Introducción a Python / DjangoIntroducción a Python / Django
Introducción a Python / Django
 
Campus Party 2019 - Programando el testing
Campus Party 2019 - Programando el testing Campus Party 2019 - Programando el testing
Campus Party 2019 - Programando el testing
 
Combinación ganadora: Plone como CMS, tu framework preferido como frontend
Combinación ganadora: Plone como CMS, tu framework preferido como frontendCombinación ganadora: Plone como CMS, tu framework preferido como frontend
Combinación ganadora: Plone como CMS, tu framework preferido como frontend
 
Crear una red de Blogs no penalizados - Elblogdelseo.com
Crear una red de Blogs no penalizados - Elblogdelseo.comCrear una red de Blogs no penalizados - Elblogdelseo.com
Crear una red de Blogs no penalizados - Elblogdelseo.com
 
Django - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales ConceptosDjango - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales Conceptos
 
Django - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales ConceptosDjango - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales Conceptos
 
Integración de Oracle Data Integrator con Oracle GoldenGate 12c
Integración de Oracle Data Integrator  con Oracle GoldenGate 12cIntegración de Oracle Data Integrator  con Oracle GoldenGate 12c
Integración de Oracle Data Integrator con Oracle GoldenGate 12c
 
Jornadas Odoo 2015 - Buenas prácticas en el desarrollo de Odoo
Jornadas Odoo 2015 - Buenas prácticas en el desarrollo de OdooJornadas Odoo 2015 - Buenas prácticas en el desarrollo de Odoo
Jornadas Odoo 2015 - Buenas prácticas en el desarrollo de Odoo
 
PowerShell para SharePoint OnPremises y Online, la herramienta compartida por...
PowerShell para SharePoint OnPremises y Online, la herramienta compartida por...PowerShell para SharePoint OnPremises y Online, la herramienta compartida por...
PowerShell para SharePoint OnPremises y Online, la herramienta compartida por...
 
Java script para desarrolladores SharePoint
Java script para desarrolladores SharePointJava script para desarrolladores SharePoint
Java script para desarrolladores SharePoint
 
Dia2
Dia2Dia2
Dia2
 
Introducción a html5
Introducción a html5Introducción a html5
Introducción a html5
 
Búsqueda Empresarial en SharePoint 2013 - Iberian SharePoint Conference - Jos...
Búsqueda Empresarial en SharePoint 2013 - Iberian SharePoint Conference - Jos...Búsqueda Empresarial en SharePoint 2013 - Iberian SharePoint Conference - Jos...
Búsqueda Empresarial en SharePoint 2013 - Iberian SharePoint Conference - Jos...
 
Screencast aprende python - parte 1
Screencast   aprende python - parte 1Screencast   aprende python - parte 1
Screencast aprende python - parte 1
 
Python
PythonPython
Python
 
Futuro de Desarrollo en SharePoint
Futuro de Desarrollo en SharePointFuturo de Desarrollo en SharePoint
Futuro de Desarrollo en SharePoint
 
.NET UY Meetup 4 - AOP & PostSharp by Bruno Bologna & Fabian Fernandez
.NET UY Meetup 4 - AOP & PostSharp by Bruno Bologna & Fabian Fernandez.NET UY Meetup 4 - AOP & PostSharp by Bruno Bologna & Fabian Fernandez
.NET UY Meetup 4 - AOP & PostSharp by Bruno Bologna & Fabian Fernandez
 
Seo para prestashop
Seo para prestashopSeo para prestashop
Seo para prestashop
 
Introducción a Django
Introducción a DjangoIntroducción a Django
Introducción a Django
 
Introducción a Django
Introducción a DjangoIntroducción a Django
Introducción a Django
 

Más de Jose Manuel Ortega Candel

Herramientas de benchmarks para evaluar el rendimiento en máquinas y aplicaci...
Herramientas de benchmarks para evaluar el rendimiento en máquinas y aplicaci...Herramientas de benchmarks para evaluar el rendimiento en máquinas y aplicaci...
Herramientas de benchmarks para evaluar el rendimiento en máquinas y aplicaci...
Jose Manuel Ortega Candel
 
Asegurando tus APIs Explorando el OWASP Top 10 de Seguridad en APIs.pdf
Asegurando tus APIs Explorando el OWASP Top 10 de Seguridad en APIs.pdfAsegurando tus APIs Explorando el OWASP Top 10 de Seguridad en APIs.pdf
Asegurando tus APIs Explorando el OWASP Top 10 de Seguridad en APIs.pdf
Jose Manuel Ortega Candel
 
PyGoat Analizando la seguridad en aplicaciones Django.pdf
PyGoat Analizando la seguridad en aplicaciones Django.pdfPyGoat Analizando la seguridad en aplicaciones Django.pdf
PyGoat Analizando la seguridad en aplicaciones Django.pdf
Jose Manuel Ortega Candel
 
Ciberseguridad en Blockchain y Smart Contracts: Explorando los Desafíos y Sol...
Ciberseguridad en Blockchain y Smart Contracts: Explorando los Desafíos y Sol...Ciberseguridad en Blockchain y Smart Contracts: Explorando los Desafíos y Sol...
Ciberseguridad en Blockchain y Smart Contracts: Explorando los Desafíos y Sol...
Jose Manuel Ortega Candel
 
Evolution of security strategies in K8s environments- All day devops
Evolution of security strategies in K8s environments- All day devops Evolution of security strategies in K8s environments- All day devops
Evolution of security strategies in K8s environments- All day devops
Jose Manuel Ortega Candel
 
Evolution of security strategies in K8s environments.pdf
Evolution of security strategies in K8s environments.pdfEvolution of security strategies in K8s environments.pdf
Evolution of security strategies in K8s environments.pdf
Jose Manuel Ortega Candel
 
Implementing Observability for Kubernetes.pdf
Implementing Observability for Kubernetes.pdfImplementing Observability for Kubernetes.pdf
Implementing Observability for Kubernetes.pdf
Jose Manuel Ortega Candel
 
Computación distribuida usando Python
Computación distribuida usando PythonComputación distribuida usando Python
Computación distribuida usando Python
Jose Manuel Ortega Candel
 
Seguridad en arquitecturas serverless y entornos cloud
Seguridad en arquitecturas serverless y entornos cloudSeguridad en arquitecturas serverless y entornos cloud
Seguridad en arquitecturas serverless y entornos cloud
Jose Manuel Ortega Candel
 
Construyendo arquitecturas zero trust sobre entornos cloud
Construyendo arquitecturas zero trust sobre entornos cloud Construyendo arquitecturas zero trust sobre entornos cloud
Construyendo arquitecturas zero trust sobre entornos cloud
Jose Manuel Ortega Candel
 
Tips and tricks for data science projects with Python
Tips and tricks for data science projects with Python Tips and tricks for data science projects with Python
Tips and tricks for data science projects with Python
Jose Manuel Ortega Candel
 
Sharing secret keys in Docker containers and K8s
Sharing secret keys in Docker containers and K8sSharing secret keys in Docker containers and K8s
Sharing secret keys in Docker containers and K8s
Jose Manuel Ortega Candel
 
Implementing cert-manager in K8s
Implementing cert-manager in K8sImplementing cert-manager in K8s
Implementing cert-manager in K8s
Jose Manuel Ortega Candel
 
Python para equipos de ciberseguridad(pycones)
Python para equipos de ciberseguridad(pycones)Python para equipos de ciberseguridad(pycones)
Python para equipos de ciberseguridad(pycones)
Jose Manuel Ortega Candel
 
Python para equipos de ciberseguridad
Python para equipos de ciberseguridad Python para equipos de ciberseguridad
Python para equipos de ciberseguridad
Jose Manuel Ortega Candel
 
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodan
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodanShodan Tips and tricks. Automatiza y maximiza las búsquedas shodan
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodan
Jose Manuel Ortega Candel
 
ELK para analistas de seguridad y equipos Blue Team
ELK para analistas de seguridad y equipos Blue TeamELK para analistas de seguridad y equipos Blue Team
ELK para analistas de seguridad y equipos Blue Team
Jose Manuel Ortega Candel
 
Monitoring and managing Containers using Open Source tools
Monitoring and managing Containers using Open Source toolsMonitoring and managing Containers using Open Source tools
Monitoring and managing Containers using Open Source tools
Jose Manuel Ortega Candel
 
Python Memory Management 101(Europython)
Python Memory Management 101(Europython)Python Memory Management 101(Europython)
Python Memory Management 101(Europython)
Jose Manuel Ortega Candel
 
SecDevOps containers
SecDevOps containersSecDevOps containers
SecDevOps containers
Jose Manuel Ortega Candel
 

Más de Jose Manuel Ortega Candel (20)

Herramientas de benchmarks para evaluar el rendimiento en máquinas y aplicaci...
Herramientas de benchmarks para evaluar el rendimiento en máquinas y aplicaci...Herramientas de benchmarks para evaluar el rendimiento en máquinas y aplicaci...
Herramientas de benchmarks para evaluar el rendimiento en máquinas y aplicaci...
 
Asegurando tus APIs Explorando el OWASP Top 10 de Seguridad en APIs.pdf
Asegurando tus APIs Explorando el OWASP Top 10 de Seguridad en APIs.pdfAsegurando tus APIs Explorando el OWASP Top 10 de Seguridad en APIs.pdf
Asegurando tus APIs Explorando el OWASP Top 10 de Seguridad en APIs.pdf
 
PyGoat Analizando la seguridad en aplicaciones Django.pdf
PyGoat Analizando la seguridad en aplicaciones Django.pdfPyGoat Analizando la seguridad en aplicaciones Django.pdf
PyGoat Analizando la seguridad en aplicaciones Django.pdf
 
Ciberseguridad en Blockchain y Smart Contracts: Explorando los Desafíos y Sol...
Ciberseguridad en Blockchain y Smart Contracts: Explorando los Desafíos y Sol...Ciberseguridad en Blockchain y Smart Contracts: Explorando los Desafíos y Sol...
Ciberseguridad en Blockchain y Smart Contracts: Explorando los Desafíos y Sol...
 
Evolution of security strategies in K8s environments- All day devops
Evolution of security strategies in K8s environments- All day devops Evolution of security strategies in K8s environments- All day devops
Evolution of security strategies in K8s environments- All day devops
 
Evolution of security strategies in K8s environments.pdf
Evolution of security strategies in K8s environments.pdfEvolution of security strategies in K8s environments.pdf
Evolution of security strategies in K8s environments.pdf
 
Implementing Observability for Kubernetes.pdf
Implementing Observability for Kubernetes.pdfImplementing Observability for Kubernetes.pdf
Implementing Observability for Kubernetes.pdf
 
Computación distribuida usando Python
Computación distribuida usando PythonComputación distribuida usando Python
Computación distribuida usando Python
 
Seguridad en arquitecturas serverless y entornos cloud
Seguridad en arquitecturas serverless y entornos cloudSeguridad en arquitecturas serverless y entornos cloud
Seguridad en arquitecturas serverless y entornos cloud
 
Construyendo arquitecturas zero trust sobre entornos cloud
Construyendo arquitecturas zero trust sobre entornos cloud Construyendo arquitecturas zero trust sobre entornos cloud
Construyendo arquitecturas zero trust sobre entornos cloud
 
Tips and tricks for data science projects with Python
Tips and tricks for data science projects with Python Tips and tricks for data science projects with Python
Tips and tricks for data science projects with Python
 
Sharing secret keys in Docker containers and K8s
Sharing secret keys in Docker containers and K8sSharing secret keys in Docker containers and K8s
Sharing secret keys in Docker containers and K8s
 
Implementing cert-manager in K8s
Implementing cert-manager in K8sImplementing cert-manager in K8s
Implementing cert-manager in K8s
 
Python para equipos de ciberseguridad(pycones)
Python para equipos de ciberseguridad(pycones)Python para equipos de ciberseguridad(pycones)
Python para equipos de ciberseguridad(pycones)
 
Python para equipos de ciberseguridad
Python para equipos de ciberseguridad Python para equipos de ciberseguridad
Python para equipos de ciberseguridad
 
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodan
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodanShodan Tips and tricks. Automatiza y maximiza las búsquedas shodan
Shodan Tips and tricks. Automatiza y maximiza las búsquedas shodan
 
ELK para analistas de seguridad y equipos Blue Team
ELK para analistas de seguridad y equipos Blue TeamELK para analistas de seguridad y equipos Blue Team
ELK para analistas de seguridad y equipos Blue Team
 
Monitoring and managing Containers using Open Source tools
Monitoring and managing Containers using Open Source toolsMonitoring and managing Containers using Open Source tools
Monitoring and managing Containers using Open Source tools
 
Python Memory Management 101(Europython)
Python Memory Management 101(Europython)Python Memory Management 101(Europython)
Python Memory Management 101(Europython)
 
SecDevOps containers
SecDevOps containersSecDevOps containers
SecDevOps containers
 

Último

1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
EliseoLuisRamrez
 
Instituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdfInstituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdf
JC Díaz Herrera
 
Claves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdfClaves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdf
Emisor Digital
 
RESPUESTAS A PREGUNTAS FRECUENTES SOBRE LA VITIVINICULTURA ARGENTINA.pdf
RESPUESTAS A PREGUNTAS FRECUENTES SOBRE LA VITIVINICULTURA ARGENTINA.pdfRESPUESTAS A PREGUNTAS FRECUENTES SOBRE LA VITIVINICULTURA ARGENTINA.pdf
RESPUESTAS A PREGUNTAS FRECUENTES SOBRE LA VITIVINICULTURA ARGENTINA.pdf
Observatorio Vitivinícola Argentino
 
MATERIAS PRIMAS DE ORIGEN ORGÁNICO.pdf
MATERIAS PRIMAS DE ORIGEN   ORGÁNICO.pdfMATERIAS PRIMAS DE ORIGEN   ORGÁNICO.pdf
MATERIAS PRIMAS DE ORIGEN ORGÁNICO.pdf
uriel132
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
ManuelaReina3
 
Diagnóstico Institucional en psicologia.docx
Diagnóstico  Institucional en psicologia.docxDiagnóstico  Institucional en psicologia.docx
Diagnóstico Institucional en psicologia.docx
cabreraelian69
 
Presentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramasPresentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramas
JosMuoz943377
 
Ojiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datosOjiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datos
JaimeYael
 
PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.
MELANYANELKACRUZLEON
 
TABla de detracciones 123456 antonela tirado 653266666666666
TABla de detracciones 123456 antonela tirado 653266666666666TABla de detracciones 123456 antonela tirado 653266666666666
TABla de detracciones 123456 antonela tirado 653266666666666
LizetTiradoRodriguez
 
Análisis Datos imprecisos con lógica difusa.pdf
Análisis Datos imprecisos con lógica difusa.pdfAnálisis Datos imprecisos con lógica difusa.pdf
Análisis Datos imprecisos con lógica difusa.pdf
ReAViILICo
 
Flujograma: Reserva de habitación en un hotel
Flujograma: Reserva de habitación en un hotelFlujograma: Reserva de habitación en un hotel
Flujograma: Reserva de habitación en un hotel
f4llenangel345
 
Presentación diagrama de flujo del desarrollo aronautico.pptx
Presentación diagrama de flujo del desarrollo aronautico.pptxPresentación diagrama de flujo del desarrollo aronautico.pptx
Presentación diagrama de flujo del desarrollo aronautico.pptx
cmrodriguezortiz1103
 
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdfREPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
IrapuatoCmovamos
 
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdfPaíses_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
JC Díaz Herrera
 
Desarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento InformaticaDesarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento Informatica
floralbaortega88
 
Tecnologia de materiales T01- Agregados.docx (1).pdf
Tecnologia de materiales T01- Agregados.docx (1).pdfTecnologia de materiales T01- Agregados.docx (1).pdf
Tecnologia de materiales T01- Agregados.docx (1).pdf
uriel132
 
Pobreza en el Perú en 2023.pdf practicag
Pobreza en el Perú en 2023.pdf practicagPobreza en el Perú en 2023.pdf practicag
Pobreza en el Perú en 2023.pdf practicag
jairoperezjpnazca
 
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en HonduraspptxDiapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
WalterOrdoez22
 

Último (20)

1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
1- PRESENTACION DE ORIENTACIONES DE LA ORDENANZA 04-2023.11.04.24.pptx
 
Instituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdfInstituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdf
 
Claves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdfClaves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdf
 
RESPUESTAS A PREGUNTAS FRECUENTES SOBRE LA VITIVINICULTURA ARGENTINA.pdf
RESPUESTAS A PREGUNTAS FRECUENTES SOBRE LA VITIVINICULTURA ARGENTINA.pdfRESPUESTAS A PREGUNTAS FRECUENTES SOBRE LA VITIVINICULTURA ARGENTINA.pdf
RESPUESTAS A PREGUNTAS FRECUENTES SOBRE LA VITIVINICULTURA ARGENTINA.pdf
 
MATERIAS PRIMAS DE ORIGEN ORGÁNICO.pdf
MATERIAS PRIMAS DE ORIGEN   ORGÁNICO.pdfMATERIAS PRIMAS DE ORIGEN   ORGÁNICO.pdf
MATERIAS PRIMAS DE ORIGEN ORGÁNICO.pdf
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
 
Diagnóstico Institucional en psicologia.docx
Diagnóstico  Institucional en psicologia.docxDiagnóstico  Institucional en psicologia.docx
Diagnóstico Institucional en psicologia.docx
 
Presentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramasPresentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramas
 
Ojiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datosOjiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datos
 
PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.
 
TABla de detracciones 123456 antonela tirado 653266666666666
TABla de detracciones 123456 antonela tirado 653266666666666TABla de detracciones 123456 antonela tirado 653266666666666
TABla de detracciones 123456 antonela tirado 653266666666666
 
Análisis Datos imprecisos con lógica difusa.pdf
Análisis Datos imprecisos con lógica difusa.pdfAnálisis Datos imprecisos con lógica difusa.pdf
Análisis Datos imprecisos con lógica difusa.pdf
 
Flujograma: Reserva de habitación en un hotel
Flujograma: Reserva de habitación en un hotelFlujograma: Reserva de habitación en un hotel
Flujograma: Reserva de habitación en un hotel
 
Presentación diagrama de flujo del desarrollo aronautico.pptx
Presentación diagrama de flujo del desarrollo aronautico.pptxPresentación diagrama de flujo del desarrollo aronautico.pptx
Presentación diagrama de flujo del desarrollo aronautico.pptx
 
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdfREPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
 
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdfPaíses_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
 
Desarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento InformaticaDesarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento Informatica
 
Tecnologia de materiales T01- Agregados.docx (1).pdf
Tecnologia de materiales T01- Agregados.docx (1).pdfTecnologia de materiales T01- Agregados.docx (1).pdf
Tecnologia de materiales T01- Agregados.docx (1).pdf
 
Pobreza en el Perú en 2023.pdf practicag
Pobreza en el Perú en 2023.pdf practicagPobreza en el Perú en 2023.pdf practicag
Pobreza en el Perú en 2023.pdf practicag
 
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en HonduraspptxDiapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
Diapositivas D.I.P.. sobre la importancia que tiene la interpol en Honduraspptx
 

Python Comparing ORM