postgres in a world of devops move fast, or...container/kubernetes/opens hift) dbaas •stop...
TRANSCRIPT
![Page 1: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/1.jpg)
Postgres in a world of DevOps
MOVE FAST, OR …
MARC LINSTERSVP, PRODUCT DEVELOPMENT AND SUPPORT
![Page 2: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/2.jpg)
As every company becomes a software company,DevOps is the new lean manufacturing.
PaaS
CICD
Microservices
Containers
![Page 3: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/3.jpg)
What does it
mean for the
database?
DEVELOPER FRIENDLY
VERSATILE DATA MODEL
POLYGLOT FRIENDLY
RAPID DEPLOYMENT
![Page 4: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/4.jpg)
What does it
mean for the
database?
DEVELOPER FRIENDLY
VERSATILE DATA MODEL
POLYGLOT FRIENDLY
RAPID DEPLOYMENT
![Page 5: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/5.jpg)
Popularity trend driven by cost and flexibility
![Page 6: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/6.jpg)
MOST USED
MOST LOVED
![Page 7: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/7.jpg)
Industry recognition of skill proficiency
7
Postgres Certification
![Page 8: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/8.jpg)
What does it
mean for the
database?
DEVELOPER FRIENDLY
VERSATILE DATA MODEL
POLYGLOT FRIENDLY
RAPID DEPLOYMENT
![Page 9: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/9.jpg)
Postgres: The most versatile
DBMSRuns on all platforms
Speaks every language
Not only SQL
Scales in both directions
![Page 10: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/10.jpg)
No need for programmatic logic to combine SQL and NoSQL in the application.Postgres does it all.
Why choose between NoSQL and Relational?
SELECT DISTINCT product_type,data->>'brand' as Brand,data->>'available' as Availability
FROM json_dataJOIN productsON (products.product_type=json_data.data->>'name')WHERE json_data.data->>'available'=true;
product_type | brand | availability---------------------------+-----------+--------------AC3 Phone | ACME | true
ANSI SQL
JSON
![Page 11: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/11.jpg)
Why not just SQL?
START SCHEMALESS
• Leverage structure as it emerges
• Support agile, iterative development
• Create data models where they provide value
LEVERAGE JSONB
• Leverage JSONB for rapidly changing data models• Example: address
data records• Conventional
columns: First Name, Last Name
• JSONB: Contact Information
• Phone numbers (home, cell, car, weekend, boyfriend… )
• Email (work, private, spam …)
AVOID PENALTY
• Avoid the DDL penalty for adding columns
![Page 12: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/12.jpg)
What does it
mean for the
database?
DEVELOPER FRIENDLY
VERSATILE DATA MODEL
POLYGLOT FRIENDLY
RAPID DEPLOYMENT
![Page 13: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/13.jpg)
Postgres in the Polyglot EcosystemEvent Capture Legacy Systems
Data WarehouseBig Data
Open Source ODBMS
![Page 14: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/14.jpg)
Foreign Data Wrappers – Making Polyglot Happen
FDW IMPLEMENTS SQL/MED ("SQL MANAGEMENT OF EXTERNAL DATA")
PostgreSQL 9.1 - read-only support
PostgreSQL 9.3 – read/write support
PostgreSQL 9.6 – pushdown joins, sorts, UPDATE, DELETE
PostgreSQL 10 - aggregate pushdown
FDW: Makes data on other servers (or services) look like tables in Postgres. Available for many data sources (MongoDB, MySQL, HDFS, Spark, …)
![Page 15: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/15.jpg)
What does it
mean for the
database?
DEVELOPER FRIENDLY
VERSATILE DATA MODEL
POLYGLOT FRIENDLY
RAPID DEPLOYMENT
![Page 16: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/16.jpg)
Rapid Deployment
CLOUD
• Public (AWS, Google, Azure, Aliyun, …)
• Private (OpenStack, VCloud, Puppet/Chef on Virtualization, Pivotal Cloud Foundry, Container/Kubernetes/OpenShift)
DBaaS
• Stop deploying databases • Deploy clusters w. HA, DR,
self healing, scaling, etc.• provide services, not
databases
Micro Services
• Large monolithic databases refactored into transaction sets
• Applications get refactored into micro-services
• Deployment models move from VM/Bare Metal to DBaaS and Containers
![Page 17: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/17.jpg)
SUPPORTING DevOps WITH DBaaSAddress the tension between developers and operations
DEVELOPERS WANT | Agility | Speed to deploy | Flow through tool chain
OPERATIONS WANTS | Visibility | Control –budgeted resources – cost –data models | Efficient use of resources
![Page 18: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/18.jpg)
18
Dev & Ops Interaction Challenges
“I only need it for a couple of weeks…”
“I’ll just use AWS…”
“I need my environment NOW!”
“I need a NoSQL DB for my app to
scale…”
“I have to release it next
month or else…”
“I JUST DON’T UNDERSTAND THESE DEVELOPERS...”
![Page 19: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/19.jpg)
19
Dev & Ops Interaction Challenges
“THESE OPS PEOPLE JUST DON’T GET IT...”
“I know that they are putting our customer data at risk…”
“My budget and my team are not getting
any bigger..”
“We need time to do it right…”
““We have no idea what they are putting on the public cloud..”
Why can’t they just use Oracle?”
![Page 20: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/20.jpg)
Micro Services and Containers
20
Customer Transactions
Inventory Transactions
Shipping Transactions
Sales Transactions
Monolithic DBSystem of Record
Refactored by transactions
sets
Employee Transactions
Compensation Transactions
Salary Transactions
Payroll Transactions
Key to DevOps
MAJOR TRENDS
• Large monolithic databases refactored into transaction sets
• Applications get refactored into micro-services
• Deployment models move from VM/Bare Metal to DBaaS and Containers
![Page 21: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/21.jpg)
What does it
mean for the
database?• Open co-existence
with HDFS, Mongo, Kafka, ...
• Rich FDW library
• Cloud friendly• Micro/Mini services
database refactoring• DBaaS focus
• Multi model database• Rich set of data types
and extensions (JSONB, Hstore, PostGIS, ...)
• Easy to use• High adoption rate• Readily available skill
set• Training and
certification
DEVELOPER FRIENDLY
VERSATILE DATA MODEL
POLYGLOT FRIENDLY
RAPID DEPLOYMENT
![Page 22: Postgres in a world of DevOps MOVE FAST, OR...Container/Kubernetes/OpenS hift) DBaaS •Stop deploying databases •Deploy clusters w. HA, DR, self healing, scaling, etc. •provide](https://reader035.vdocument.in/reader035/viewer/2022081410/609df47d9ffffc1d0c55aaf2/html5/thumbnails/22.jpg)
THANK YOU