SlideShare a Scribd company logo
© 2014 EnterpriseDB Corporation. All rights reserved. 1
© 2014 EnterpriseDB Corporation. All rights reserved. 2
NoSQL on ACID: Meet Unstructured
Postgres
Marc Linster – SVP, Products and Services
© 2014 EnterpriseDB Corporation. All rights reserved. 3
• EDB Introduction
• NoSQL & ACID DBMS –
Common Misconceptions
• Postgres – NoSQL for the Enterprise
• Performance Evaluation
• FDW – Coexistence of NoSQL only and SQL
• Postgres as a NoSQL/SQL Integration Platform
Agenda
© 2014 EnterpriseDB Corporation. All rights reserved. 4
POSTGRES
innovation
ENTERPRISE
reliability
24/7
support
Services
& training
Enterprise-class
features & tools
Indemnification
Product
road-map
Control
Thousands
of developers
Fast
development
cycles
Low cost
No vendor
lock-in
Advanced
features
Enabling commercial
adoption of Postgres
© 2014 EnterpriseDB Corporation. All rights reserved. 5
Postgres Plus
Advanced Server Postgres Plus
Cloud Database
High Availability
PerformanceManagement
REMOTE
DBA 24x7
SUPPORT
PROFESSIONAL
SERVICES
TRAINING
EDB Serves
All Your Postgres Needs
PostgreSQL
Security
© 2014 EnterpriseDB Corporation. All rights reserved. 6
Why EDB?
More than 3,000 Enterprises and Governments
© 2014 EnterpriseDB Corporation. All rights reserved. 7
EnterpriseDB
is a Market
Leader
The Gartner report, Magic
Quadrant for Operational
Database Management
Systems, by Donald Feinberg,
Merv Adrian and Nick
Heudecker, was published
October 16, 2014.
© 2014 EnterpriseDB Corporation. All rights reserved. 8
EDB is an Open Source Community
Leader
Amit Kapila
Ashesh Vashi
Bruce Momjian
Dave Page
Devrim Gunduz
Jan Wieck
Kevin Grittner
Korry Douglas
Muhammad Usama
Robert M Haas
Thom Brown
© 2014 EnterpriseDB Corporation. All rights reserved. 9
NoSQL & ACID DBMS – Common
Misconceptions
• ACID Compliant DBMS don’t support JSON
and KVP
• Traditional DBMS can’t handle the volume or
the speed
• Web 2.0 Applications rely on JSON –
traditional DBMS focus on text, integer, etc.
• Traditional DBMS don’t work well with Web 2.0
development languages
© 2014 EnterpriseDB Corporation. All rights reserved. 10
• Data Types
− Postgres has JSON, JSONB, Key-Value Pair,
plus arrays, ranges, timezones, dates, integer,
floating point, etc.
• Performance Benchmarks
− Postgres is very fast and can handle huge
amounts of data
− Postgres can selectively relax key ACID features
to increase performance
• Proven track record
− ACID compliant
− Open source
− ANSI SQL
− Large developer and vendor community
Postgres –
NoSQL for the Enterprise
© 2014 EnterpriseDB Corporation. All rights reserved. 11
• HSTORE
− Key-value pair
− Simple, fast and easy
− Postgres v 8.2 – pre-dates many
NoSQL-only solutions
• JSON
− Hierarchical document model
− Introduced in Postgres 9.2, perfected in 9.3
• JSONB
− Binary version of JSON
− Faster, more operators and even more robust
− Postgres 9.4
NoSQL Data in Postgres
© 2014 EnterpriseDB Corporation. All rights reserved. 12
• JSON is the most popular
data-interchange format on the web
• Derived from the ECMAScript
Programming Language Standard
(European Computer Manufacturers
Association).
• Supported by virtually every
programming language
• New supporting technologies
continue to expand JSON’s utility
− PL/V8 JavaScript extension
− Node.js
• Postgres native JSON data type (v9.2) and a JSON parser and a variety
of JSON functions (v9.3)
• Postgres JSONB data type with binary storage and indexing (v9.4)
Postgres: Document Store
© 2014 EnterpriseDB Corporation. All rights reserved. 13
• Wherever there is JavaScript you will find JSON
• Most languages support it
• Node.Js is becoming popular.
• Lighter and more compact than XML.
• Most application don't need the rich structure of XML
• Flexible Structure
• Due to its flexible structure, JSON is a good fit for
NoSQL.
Why JSON
© 2014 EnterpriseDB Corporation. All rights reserved. 14
• Creating a table with a JSONB field
CREATE TABLE json_data (data JSONB);
• Simple JSON data element:
{"name": "Apple Phone", "type": "phone", "brand":
"ACME", "price": 200, "available": true,
"warranty_years": 1}
• Inserting this data element into the table json_data
INSERT INTO json_data (data) VALUES
(’ { "name": "Apple Phone",
"type": "phone",
"brand": "ACME",
"price": 200,
"available": true,
"warranty_years": 1
} ')
JSON Examples
© 2014 EnterpriseDB Corporation. All rights reserved. 15
SELECT DISTINCT
data->>'name' as products
FROM json_data;
products
------------------------------
Cable TV Basic Service Package
AC3 Case Black
Phone Service Basic Plan
AC3 Phone
AC3 Case Green
Phone Service Family Plan
AC3 Case Red
AC7 Phone
A simple query for JSON data
This query does not
return JSON data – it
returns text values
associated with the
key ‘name’
© 2014 EnterpriseDB Corporation. All rights reserved. 16
SELECT data FROM json_data;
data
------------------------------------------
{"name": "Apple Phone", "type": "phone",
"brand": "ACME", "price": 200,
"available": true, "warranty_years": 1}
A query that returns JSON data
This query returns the JSON data in its
original format
© 2014 EnterpriseDB Corporation. All rights reserved. 17
• 1. Number:
− Signed decimal number that may contain a fractional part and may use exponential
notation.
− No distinction between integer and floating-point
• 2. String
− A sequence of zero or more Unicode characters.
− Strings are delimited with double-quotation mark
− Supports a backslash escaping syntax.
• 3. Boolean
− Either of the values true or false.
• 4. Array
− An ordered list of zero or more values,
− Each values may be of any type.
− Arrays use square bracket notation with elements being comma-separated.
• 5. Object
− An unordered associative array (name/value pairs).
− Objects are delimited with curly brackets
− Commas to separate each pair
− Each pair the colon ':' character separates the key or name from its value.
− All keys must be strings and should be distinct from each other within that object.
• 6. null
− An empty value, using the word null
JSON Data Types
JSON is defined per RFC – 7159
For more detail please refer
http://tools.ietf.org/html/rfc7159
© 2014 EnterpriseDB Corporation. All rights reserved. 18
{
"firstName": "John", -- String Type
"lastName": "Smith", -- String Type
"isAlive": true, -- Boolean Type
"age": 25, -- Number Type
"height_cm": 167.6, -- Number Type
"address": { -- Object Type
"streetAddress": "21 2nd Street”,
"city": "New York”,
"state": "NY”,
"postalCode": "10021-3100”
}
"phoneNumbers": [ -- Object Array
{ -- Object
"type": "home”,
"number": "212 555-1234”
},
{
"type": "office”,
"number": "646 555-4567”
}
],
"children": [],
"spouse": null -- Null
}
JSON Data Type Example
© 2014 EnterpriseDB Corporation. All rights reserved. 19
• BSON – stands for
‘Binary JSON’
• BSON != JSONB
− BSON cannot represent an integer or
floating-point number with more than
64 bits of precision.
− JSONB can represent arbitrary JSON values.
• Caveat Emptor!
− This limitation will not be obvious during early
stages of a project!
JSON and BSON
© 2014 EnterpriseDB Corporation. All rights reserved. 20
JSONB and Node.js - Easy as π
• Simple Demo of Node.js to Postgres cnnection
© 2014 EnterpriseDB Corporation. All rights reserved. 21
• JSON is naturally integrated with
ANSI SQL in Postgres
• JSON and HSTORE are elegant and easy to
use extensions of the underlying object-
relational model
• JSON and SQL queries use the same
language, the same planner, and the same
ACID compliant transaction framework
JSON and ANSI SQL –
A Great Fit
© 2014 EnterpriseDB Corporation. All rights reserved. 22
SELECT DISTINCT
product_type,
data->>'brand' as Brand,
data->>'available' as Availability
FROM json_data
JOIN products
ON (products.product_type=json_data.data->>'name')
WHERE json_data.data->>'available'=true;
product_type | brand | availability
---------------------------+-----------+--------------
AC3 Phone | ACME | true
JSON and ANSI SQL Example
ANSI SQL
JSON
No need for programmatic logic to combine SQL and
NoSQL in the application – Postgres does it all
© 2014 EnterpriseDB Corporation. All rights reserved. 23
Bridging between SQL and NoSQL
Simple ANSI SQL Table Definition
CREATE TABLE products (id integer, product_name text );
Select query returning standard data set
SELECT * FROM products;
id | product_name
----+--------------
1 | iPhone
2 | Samsung
3 | Nokia
Select query returning the same result as a JSON data set
SELECT ROW_TO_JSON(products) FROM products;
{"id":1,"product_name":"iPhone"}
{"id":2,"product_name":"Samsung"}
{"id":3,"product_name":"Nokia”}
© 2014 EnterpriseDB Corporation. All rights reserved. 24
• Start unstructured, and become
structured as you learn more
− Use the quick-to-get-started capabilities of NoSQL
− Complete the initial sprints without a DBA
− Move data between unstructured and structured
− Embrace corporate data standards as you move
from the stand-alone application towards integrated
applications with a bigger value proposition
Postgres Provides Great Flexibility
By 2017, 50% of data stored in NoSQL DBMSs will be damaging to
the business due to lack of applied information governance policies
and programs.
Gartner, December 2013
© 2014 EnterpriseDB Corporation. All rights reserved. 25
• Goal
− Help our customers understand when to choose Postgres and
when to chose a specialty solution
− Help us understand where the NoSQL limits of Postgres are
• Setup
− Compare Postgres 9.4 to Mongo 2.6
− Single instance setup on AWS M3.2XLARGE (32GB)
• Test Focus
− Data ingestion (bulk and individual)
− Data retrieval
Postgres NoSQL Performance Evaluation
Load Generator
Postgres 9.4
MongoDB 2.6
© 2014 EnterpriseDB Corporation. All rights reserved. 26
Postgres NoSQL Performance Evaluation
Generate JSON Documents
10 M documents & 50 M documents
Load into MongoDB 2.6
(IMPORT)
Load into
Postgres 9.4
(COPY)
10 Million individual
INSERT commands
10 Million individual
INSERT commands
Multiple SELECT
statements
Multiple SELECT
statements
T1
T2
T3
© 2014 EnterpriseDB Corporation. All rights reserved. 27
NoSQL Performance Evaluation
276% 295%
465%
208%
0%
50%
100%
150%
200%
250%
300%
350%
400%
450%
500%
Data Load Insert Select Size
Mongo DB 2.4/Postgres 9.4 Relative Performance
Comparison (50 Million Documents)
Postgres
MongoDB
Postgres MongoDB
Data Load (s) 4,732 13,046
Insert (s) 29,236 86,253
Select (s) 594 2,763
Size (GB) 69 145
Correction to earlier versions:
MongoDB console does not allow for
INSERT of documents > 4K. This
lead to truncation of the MongoDB
size by approx. 25% of all records in
the benchmark.
© 2014 EnterpriseDB Corporation. All rights reserved. 28
• Tests confirm that Postgres can handle many NoSQL
workloads
• EDB is making the test scripts publically available
• EDB encourages community participation to
better define where Postgres should be used
and where specialty solutions are appropriate
• Download the source at
https://github.com/EnterpriseDB/pg_nosql_benchmark
Postgres NoSQL Performance Evaluation
© 2014 EnterpriseDB Corporation. All rights reserved. 29
• FDW implements SQL/MED ("SQL
Management of External Data")
• PostgreSQL 9.1 - read-only support
• PostgreSQL 9.3 – read/write support
• FDW
− Makes data on other servers (or services) look like tables in
Postgres
− available for databases (MongoDB, MySQL, Oracle, …), files,
services (Twitter, …)
• MongoDB FDW: https://github.com/EnterpriseDB
Foreign Data Wrappers –
Co-Existence Platform
© 2014 EnterpriseDB Corporation. All rights reserved. 30
CREATE EXTENSION mongo_fdw;
CREATE SERVER mongo_server
FOREIGN DATA WRAPPER mongo_fdw
OPTIONS (address '172.24.39.129', port '27017');
CREATE USER MAPPING FOR enterprisedb
SERVER mongo_server
OPTIONS (username 'mongo', password 'mongo');
CREATE FOREIGN TABLE mongo_data(
name text,
brand text,
type text)
SERVER mongo_server
OPTIONS (
database 'benchmark',
collection 'json_tables');
MongoDB FDW Example
© 2014 EnterpriseDB Corporation. All rights reserved. 31
SELECT * FROM mongo_data WHERE brand='ACME' limit 10;
name | brand | type
-------------+-------+-------
AC7553 Phone | ACME | phone
AC7551 Phone | ACME | phone
AC7519 Phone | ACME | phone
AC7565 Phone | ACME | phone
AC7555 Phone | ACME | phone
AC7529 Phone | ACME | phone
AC7528 Phone | ACME | phone
AC7547 Phone | ACME | phone
AC7587 Phone | ACME | phone
AC7541 Phone | ACME | phone
(10 rows)
MongoDB FDW Example
© 2014 EnterpriseDB Corporation. All rights reserved. 32
INSERT INTO mongo_data(name, brand, type)
VALUES('iphone6 phone','Apple Inc','phone');
SELECT* FROM mongo_data WHERE brand='Apple Inc';
_id | name | brand | type
--------------------------+----------------+-----------+-------
53ea4f59fe5586a15714881d | iphone6 phone | Apple Inc | phone
UPDATE mongo_data SET brand='Apple Product'
WHERE brand='Apple Inc’;
SELECT * FROM mongo_data WHERE brand='Apple Product’;
_id | name | brand | type
--------------------------+----------------+---------------+-------
53ea4f59fe5586a15714881d | iphone6 phone | Apple Product | phone
MongoDB FDW Example
© 2014 EnterpriseDB Corporation. All rights reserved. 33
• Structures and standards emerge!
• Data has references (products link to catalogues;
products have bills of material; components appear in
multiple products; storage locations link to ISO country
tables)
• When the database has duplicate data entries, then the
application has to manage updates in multiple places –
what happens when there is no ACID transactional
model?
“No SQL Only” or “Not Only SQL”?
© 2014 EnterpriseDB Corporation. All rights reserved. 34
• Postgres has many NoSQL features without
the drawbacks:
− Schema-less data combined with structured data
− High performance with predictable transaction
model
− Durable by default, but configurable per-table or
per-transaction
− Standards based with very low technology risk
− Foreign Data Wrappers (FDW) for co-existence
− Highly available skill set
Postgres: The Best of Both Worlds
© 2014 EnterpriseDB Corporation. All rights reserved. 35
• Postgres is Not Only SQL (NoSQL is No SQL only)
• Fully ACID compliant
• Proven track record
• Fully capable of handling the variety, velocity and
volume requirements of most applications
• Tackle NoSQL projects without leaving the capabilities
of the relational model behind you
• Combine Oracle compatibility, JSON and PostGIS to
migrate applications onto more cost-effective platforms,
make the app NoSQL capable and geo-location aware.
Say ‘Yes’ to ‘Not Only SQL’
© 2014 EnterpriseDB Corporation. All rights reserved. 36
© 2014 EnterpriseDB Corporation. All rights reserved. 37
Ad

More Related Content

What's hot (20)

EPAS + Cloud = Oracle Compatible Postgres in Minutes
EPAS + Cloud = Oracle Compatible Postgres in MinutesEPAS + Cloud = Oracle Compatible Postgres in Minutes
EPAS + Cloud = Oracle Compatible Postgres in Minutes
EDB
 
Expanding with EDB Postgres Advanced Server 9.5
Expanding with EDB Postgres Advanced Server 9.5Expanding with EDB Postgres Advanced Server 9.5
Expanding with EDB Postgres Advanced Server 9.5
EDB
 
Oracle Migration to Postgres in the Cloud
Oracle Migration to Postgres in the CloudOracle Migration to Postgres in the Cloud
Oracle Migration to Postgres in the Cloud
EDB
 
Active/Active Database Solutions with Log Based Replication in xDB 6.0
Active/Active Database Solutions with Log Based Replication in xDB 6.0Active/Active Database Solutions with Log Based Replication in xDB 6.0
Active/Active Database Solutions with Log Based Replication in xDB 6.0
EDB
 
Which Postgres is Right for You?
Which Postgres is Right for You? Which Postgres is Right for You?
Which Postgres is Right for You?
EDB
 
EDB Postgres Platform 11 Webinar
EDB Postgres Platform 11 WebinarEDB Postgres Platform 11 Webinar
EDB Postgres Platform 11 Webinar
EDB
 
Les nouveautés d'EDB Postgres 11
Les nouveautés d'EDB Postgres 11Les nouveautés d'EDB Postgres 11
Les nouveautés d'EDB Postgres 11
EDB
 
A Peek in the Elephant's Trunk
A Peek in the Elephant's TrunkA Peek in the Elephant's Trunk
A Peek in the Elephant's Trunk
EDB
 
PostgreSQL 12: What is coming up?, Enterprise Postgres Day
PostgreSQL 12: What is coming up?, Enterprise Postgres DayPostgreSQL 12: What is coming up?, Enterprise Postgres Day
PostgreSQL 12: What is coming up?, Enterprise Postgres Day
EDB
 
Minimize Headaches with Your Postgres Deployment
Minimize Headaches with Your Postgres DeploymentMinimize Headaches with Your Postgres Deployment
Minimize Headaches with Your Postgres Deployment
EDB
 
The Central View of your Data with Postgres
The Central View of your Data with PostgresThe Central View of your Data with Postgres
The Central View of your Data with Postgres
EDB
 
Optimize with Open Source
Optimize with Open SourceOptimize with Open Source
Optimize with Open Source
EDB
 
Hello World with EDB Postgres
Hello World with EDB PostgresHello World with EDB Postgres
Hello World with EDB Postgres
EDB
 
Introducing Postgres Plus Advanced Server 9.4
Introducing Postgres Plus Advanced Server 9.4Introducing Postgres Plus Advanced Server 9.4
Introducing Postgres Plus Advanced Server 9.4
EDB
 
Json and Jsonpath in Postgres 12
Json and Jsonpath in Postgres 12Json and Jsonpath in Postgres 12
Json and Jsonpath in Postgres 12
EDB
 
Transform DBMS to Drive Apps of Engagement Innovation
Transform DBMS to Drive Apps of Engagement InnovationTransform DBMS to Drive Apps of Engagement Innovation
Transform DBMS to Drive Apps of Engagement Innovation
EDB
 
Doing More With Less: The Economics of Open Source Database Adoption
Doing More With Less: The Economics of Open Source Database AdoptionDoing More With Less: The Economics of Open Source Database Adoption
Doing More With Less: The Economics of Open Source Database Adoption
EDB
 
Save money with Postgres on IBM PowerLinux
Save money with Postgres on IBM PowerLinuxSave money with Postgres on IBM PowerLinux
Save money with Postgres on IBM PowerLinux
EDB
 
Avoiding.the.pitfallsof.oracle.migration.2013
Avoiding.the.pitfallsof.oracle.migration.2013Avoiding.the.pitfallsof.oracle.migration.2013
Avoiding.the.pitfallsof.oracle.migration.2013
EDB
 
Reducing Database Pain & Costs with Postgres
Reducing Database Pain & Costs with PostgresReducing Database Pain & Costs with Postgres
Reducing Database Pain & Costs with Postgres
EDB
 
EPAS + Cloud = Oracle Compatible Postgres in Minutes
EPAS + Cloud = Oracle Compatible Postgres in MinutesEPAS + Cloud = Oracle Compatible Postgres in Minutes
EPAS + Cloud = Oracle Compatible Postgres in Minutes
EDB
 
Expanding with EDB Postgres Advanced Server 9.5
Expanding with EDB Postgres Advanced Server 9.5Expanding with EDB Postgres Advanced Server 9.5
Expanding with EDB Postgres Advanced Server 9.5
EDB
 
Oracle Migration to Postgres in the Cloud
Oracle Migration to Postgres in the CloudOracle Migration to Postgres in the Cloud
Oracle Migration to Postgres in the Cloud
EDB
 
Active/Active Database Solutions with Log Based Replication in xDB 6.0
Active/Active Database Solutions with Log Based Replication in xDB 6.0Active/Active Database Solutions with Log Based Replication in xDB 6.0
Active/Active Database Solutions with Log Based Replication in xDB 6.0
EDB
 
Which Postgres is Right for You?
Which Postgres is Right for You? Which Postgres is Right for You?
Which Postgres is Right for You?
EDB
 
EDB Postgres Platform 11 Webinar
EDB Postgres Platform 11 WebinarEDB Postgres Platform 11 Webinar
EDB Postgres Platform 11 Webinar
EDB
 
Les nouveautés d'EDB Postgres 11
Les nouveautés d'EDB Postgres 11Les nouveautés d'EDB Postgres 11
Les nouveautés d'EDB Postgres 11
EDB
 
A Peek in the Elephant's Trunk
A Peek in the Elephant's TrunkA Peek in the Elephant's Trunk
A Peek in the Elephant's Trunk
EDB
 
PostgreSQL 12: What is coming up?, Enterprise Postgres Day
PostgreSQL 12: What is coming up?, Enterprise Postgres DayPostgreSQL 12: What is coming up?, Enterprise Postgres Day
PostgreSQL 12: What is coming up?, Enterprise Postgres Day
EDB
 
Minimize Headaches with Your Postgres Deployment
Minimize Headaches with Your Postgres DeploymentMinimize Headaches with Your Postgres Deployment
Minimize Headaches with Your Postgres Deployment
EDB
 
The Central View of your Data with Postgres
The Central View of your Data with PostgresThe Central View of your Data with Postgres
The Central View of your Data with Postgres
EDB
 
Optimize with Open Source
Optimize with Open SourceOptimize with Open Source
Optimize with Open Source
EDB
 
Hello World with EDB Postgres
Hello World with EDB PostgresHello World with EDB Postgres
Hello World with EDB Postgres
EDB
 
Introducing Postgres Plus Advanced Server 9.4
Introducing Postgres Plus Advanced Server 9.4Introducing Postgres Plus Advanced Server 9.4
Introducing Postgres Plus Advanced Server 9.4
EDB
 
Json and Jsonpath in Postgres 12
Json and Jsonpath in Postgres 12Json and Jsonpath in Postgres 12
Json and Jsonpath in Postgres 12
EDB
 
Transform DBMS to Drive Apps of Engagement Innovation
Transform DBMS to Drive Apps of Engagement InnovationTransform DBMS to Drive Apps of Engagement Innovation
Transform DBMS to Drive Apps of Engagement Innovation
EDB
 
Doing More With Less: The Economics of Open Source Database Adoption
Doing More With Less: The Economics of Open Source Database AdoptionDoing More With Less: The Economics of Open Source Database Adoption
Doing More With Less: The Economics of Open Source Database Adoption
EDB
 
Save money with Postgres on IBM PowerLinux
Save money with Postgres on IBM PowerLinuxSave money with Postgres on IBM PowerLinux
Save money with Postgres on IBM PowerLinux
EDB
 
Avoiding.the.pitfallsof.oracle.migration.2013
Avoiding.the.pitfallsof.oracle.migration.2013Avoiding.the.pitfallsof.oracle.migration.2013
Avoiding.the.pitfallsof.oracle.migration.2013
EDB
 
Reducing Database Pain & Costs with Postgres
Reducing Database Pain & Costs with PostgresReducing Database Pain & Costs with Postgres
Reducing Database Pain & Costs with Postgres
EDB
 

Similar to NoSQL on ACID: Meet Unstructured Postgres (20)

Do More with Postgres- NoSQL Applications for the Enterprise
Do More with Postgres- NoSQL Applications for the EnterpriseDo More with Postgres- NoSQL Applications for the Enterprise
Do More with Postgres- NoSQL Applications for the Enterprise
EDB
 
NoSQL Now: Postgres - The NoSQL Cake You Can Eat
NoSQL Now: Postgres - The NoSQL Cake You Can EatNoSQL Now: Postgres - The NoSQL Cake You Can Eat
NoSQL Now: Postgres - The NoSQL Cake You Can Eat
DATAVERSITY
 
Postgres: The NoSQL Cake You Can Eat
Postgres: The NoSQL Cake You Can EatPostgres: The NoSQL Cake You Can Eat
Postgres: The NoSQL Cake You Can Eat
EDB
 
EDB NoSQL German Webinar 2015
EDB NoSQL German Webinar 2015EDB NoSQL German Webinar 2015
EDB NoSQL German Webinar 2015
EDB
 
Postgres NoSQL - Delivering Apps Faster
Postgres NoSQL - Delivering Apps FasterPostgres NoSQL - Delivering Apps Faster
Postgres NoSQL - Delivering Apps Faster
EDB
 
NoSQL on ACID - Meet Unstructured Postgres
NoSQL on ACID - Meet Unstructured PostgresNoSQL on ACID - Meet Unstructured Postgres
NoSQL on ACID - Meet Unstructured Postgres
EDB
 
Application Development & Database Choices: Postgres Support for non Relation...
Application Development & Database Choices: Postgres Support for non Relation...Application Development & Database Choices: Postgres Support for non Relation...
Application Development & Database Choices: Postgres Support for non Relation...
EDB
 
NoSQL and Spatial Database Capabilities using PostgreSQL
NoSQL and Spatial Database Capabilities using PostgreSQLNoSQL and Spatial Database Capabilities using PostgreSQL
NoSQL and Spatial Database Capabilities using PostgreSQL
EDB
 
The NoSQL Way in Postgres
The NoSQL Way in PostgresThe NoSQL Way in Postgres
The NoSQL Way in Postgres
EDB
 
No sql way_in_pg
No sql way_in_pgNo sql way_in_pg
No sql way_in_pg
Vibhor Kumar
 
Enterprise Postgres
Enterprise PostgresEnterprise Postgres
Enterprise Postgres
Oracle Korea
 
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB WorldNoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
Ajay Gupte
 
Eagle6 mongo dc revised
Eagle6 mongo dc revisedEagle6 mongo dc revised
Eagle6 mongo dc revised
MongoDB
 
Eagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational AwarenessEagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational Awareness
MongoDB
 
Application development with Oracle NoSQL Database 3.0
Application development with Oracle NoSQL Database 3.0Application development with Oracle NoSQL Database 3.0
Application development with Oracle NoSQL Database 3.0
Anuj Sahni
 
JSON Support in DB2 for z/OS
JSON Support in DB2 for z/OSJSON Support in DB2 for z/OS
JSON Support in DB2 for z/OS
Jane Man
 
Integration intervention: Get your apps and data up to speed
Integration intervention: Get your apps and data up to speedIntegration intervention: Get your apps and data up to speed
Integration intervention: Get your apps and data up to speed
Kenneth Peeples
 
Data Marketplace - Rethink the Data
Data Marketplace - Rethink the DataData Marketplace - Rethink the Data
Data Marketplace - Rethink the Data
Denodo
 
MySQL como Document Store PHP Conference 2017
MySQL como Document Store PHP Conference 2017MySQL como Document Store PHP Conference 2017
MySQL como Document Store PHP Conference 2017
MySQL Brasil
 
PgConf 2018 - Postgres in a World of DevOps
PgConf 2018 - Postgres in a World of DevOpsPgConf 2018 - Postgres in a World of DevOps
PgConf 2018 - Postgres in a World of DevOps
EDB
 
Do More with Postgres- NoSQL Applications for the Enterprise
Do More with Postgres- NoSQL Applications for the EnterpriseDo More with Postgres- NoSQL Applications for the Enterprise
Do More with Postgres- NoSQL Applications for the Enterprise
EDB
 
NoSQL Now: Postgres - The NoSQL Cake You Can Eat
NoSQL Now: Postgres - The NoSQL Cake You Can EatNoSQL Now: Postgres - The NoSQL Cake You Can Eat
NoSQL Now: Postgres - The NoSQL Cake You Can Eat
DATAVERSITY
 
Postgres: The NoSQL Cake You Can Eat
Postgres: The NoSQL Cake You Can EatPostgres: The NoSQL Cake You Can Eat
Postgres: The NoSQL Cake You Can Eat
EDB
 
EDB NoSQL German Webinar 2015
EDB NoSQL German Webinar 2015EDB NoSQL German Webinar 2015
EDB NoSQL German Webinar 2015
EDB
 
Postgres NoSQL - Delivering Apps Faster
Postgres NoSQL - Delivering Apps FasterPostgres NoSQL - Delivering Apps Faster
Postgres NoSQL - Delivering Apps Faster
EDB
 
NoSQL on ACID - Meet Unstructured Postgres
NoSQL on ACID - Meet Unstructured PostgresNoSQL on ACID - Meet Unstructured Postgres
NoSQL on ACID - Meet Unstructured Postgres
EDB
 
Application Development & Database Choices: Postgres Support for non Relation...
Application Development & Database Choices: Postgres Support for non Relation...Application Development & Database Choices: Postgres Support for non Relation...
Application Development & Database Choices: Postgres Support for non Relation...
EDB
 
NoSQL and Spatial Database Capabilities using PostgreSQL
NoSQL and Spatial Database Capabilities using PostgreSQLNoSQL and Spatial Database Capabilities using PostgreSQL
NoSQL and Spatial Database Capabilities using PostgreSQL
EDB
 
The NoSQL Way in Postgres
The NoSQL Way in PostgresThe NoSQL Way in Postgres
The NoSQL Way in Postgres
EDB
 
Enterprise Postgres
Enterprise PostgresEnterprise Postgres
Enterprise Postgres
Oracle Korea
 
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB WorldNoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
Ajay Gupte
 
Eagle6 mongo dc revised
Eagle6 mongo dc revisedEagle6 mongo dc revised
Eagle6 mongo dc revised
MongoDB
 
Eagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational AwarenessEagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational Awareness
MongoDB
 
Application development with Oracle NoSQL Database 3.0
Application development with Oracle NoSQL Database 3.0Application development with Oracle NoSQL Database 3.0
Application development with Oracle NoSQL Database 3.0
Anuj Sahni
 
JSON Support in DB2 for z/OS
JSON Support in DB2 for z/OSJSON Support in DB2 for z/OS
JSON Support in DB2 for z/OS
Jane Man
 
Integration intervention: Get your apps and data up to speed
Integration intervention: Get your apps and data up to speedIntegration intervention: Get your apps and data up to speed
Integration intervention: Get your apps and data up to speed
Kenneth Peeples
 
Data Marketplace - Rethink the Data
Data Marketplace - Rethink the DataData Marketplace - Rethink the Data
Data Marketplace - Rethink the Data
Denodo
 
MySQL como Document Store PHP Conference 2017
MySQL como Document Store PHP Conference 2017MySQL como Document Store PHP Conference 2017
MySQL como Document Store PHP Conference 2017
MySQL Brasil
 
PgConf 2018 - Postgres in a World of DevOps
PgConf 2018 - Postgres in a World of DevOpsPgConf 2018 - Postgres in a World of DevOps
PgConf 2018 - Postgres in a World of DevOps
EDB
 
Ad

More from EDB (20)

Cloud Migration Paths: Kubernetes, IaaS, or DBaaS
Cloud Migration Paths: Kubernetes, IaaS, or DBaaSCloud Migration Paths: Kubernetes, IaaS, or DBaaS
Cloud Migration Paths: Kubernetes, IaaS, or DBaaS
EDB
 
Die 10 besten PostgreSQL-Replikationsstrategien für Ihr Unternehmen
Die 10 besten PostgreSQL-Replikationsstrategien für Ihr UnternehmenDie 10 besten PostgreSQL-Replikationsstrategien für Ihr Unternehmen
Die 10 besten PostgreSQL-Replikationsstrategien für Ihr Unternehmen
EDB
 
Migre sus bases de datos Oracle a la nube
Migre sus bases de datos Oracle a la nube Migre sus bases de datos Oracle a la nube
Migre sus bases de datos Oracle a la nube
EDB
 
EFM Office Hours - APJ - July 29, 2021
EFM Office Hours - APJ - July 29, 2021EFM Office Hours - APJ - July 29, 2021
EFM Office Hours - APJ - July 29, 2021
EDB
 
Benchmarking Cloud Native PostgreSQL
Benchmarking Cloud Native PostgreSQLBenchmarking Cloud Native PostgreSQL
Benchmarking Cloud Native PostgreSQL
EDB
 
Las Variaciones de la Replicación de PostgreSQL
Las Variaciones de la Replicación de PostgreSQLLas Variaciones de la Replicación de PostgreSQL
Las Variaciones de la Replicación de PostgreSQL
EDB
 
Is There Anything PgBouncer Can’t Do?
Is There Anything PgBouncer Can’t Do?Is There Anything PgBouncer Can’t Do?
Is There Anything PgBouncer Can’t Do?
EDB
 
Data Analysis with TensorFlow in PostgreSQL
Data Analysis with TensorFlow in PostgreSQLData Analysis with TensorFlow in PostgreSQL
Data Analysis with TensorFlow in PostgreSQL
EDB
 
Practical Partitioning in Production with Postgres
Practical Partitioning in Production with PostgresPractical Partitioning in Production with Postgres
Practical Partitioning in Production with Postgres
EDB
 
A Deeper Dive into EXPLAIN
A Deeper Dive into EXPLAINA Deeper Dive into EXPLAIN
A Deeper Dive into EXPLAIN
EDB
 
IOT with PostgreSQL
IOT with PostgreSQLIOT with PostgreSQL
IOT with PostgreSQL
EDB
 
A Journey from Oracle to PostgreSQL
A Journey from Oracle to PostgreSQLA Journey from Oracle to PostgreSQL
A Journey from Oracle to PostgreSQL
EDB
 
Psql is awesome!
Psql is awesome!Psql is awesome!
Psql is awesome!
EDB
 
EDB 13 - New Enhancements for Security and Usability - APJ
EDB 13 - New Enhancements for Security and Usability - APJEDB 13 - New Enhancements for Security and Usability - APJ
EDB 13 - New Enhancements for Security and Usability - APJ
EDB
 
Comment sauvegarder correctement vos données
Comment sauvegarder correctement vos donnéesComment sauvegarder correctement vos données
Comment sauvegarder correctement vos données
EDB
 
Cloud Native PostgreSQL - Italiano
Cloud Native PostgreSQL - ItalianoCloud Native PostgreSQL - Italiano
Cloud Native PostgreSQL - Italiano
EDB
 
New enhancements for security and usability in EDB 13
New enhancements for security and usability in EDB 13New enhancements for security and usability in EDB 13
New enhancements for security and usability in EDB 13
EDB
 
Best Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQLBest Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQL
EDB
 
Cloud Native PostgreSQL - APJ
Cloud Native PostgreSQL - APJCloud Native PostgreSQL - APJ
Cloud Native PostgreSQL - APJ
EDB
 
Best Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQLBest Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQL
EDB
 
Cloud Migration Paths: Kubernetes, IaaS, or DBaaS
Cloud Migration Paths: Kubernetes, IaaS, or DBaaSCloud Migration Paths: Kubernetes, IaaS, or DBaaS
Cloud Migration Paths: Kubernetes, IaaS, or DBaaS
EDB
 
Die 10 besten PostgreSQL-Replikationsstrategien für Ihr Unternehmen
Die 10 besten PostgreSQL-Replikationsstrategien für Ihr UnternehmenDie 10 besten PostgreSQL-Replikationsstrategien für Ihr Unternehmen
Die 10 besten PostgreSQL-Replikationsstrategien für Ihr Unternehmen
EDB
 
Migre sus bases de datos Oracle a la nube
Migre sus bases de datos Oracle a la nube Migre sus bases de datos Oracle a la nube
Migre sus bases de datos Oracle a la nube
EDB
 
EFM Office Hours - APJ - July 29, 2021
EFM Office Hours - APJ - July 29, 2021EFM Office Hours - APJ - July 29, 2021
EFM Office Hours - APJ - July 29, 2021
EDB
 
Benchmarking Cloud Native PostgreSQL
Benchmarking Cloud Native PostgreSQLBenchmarking Cloud Native PostgreSQL
Benchmarking Cloud Native PostgreSQL
EDB
 
Las Variaciones de la Replicación de PostgreSQL
Las Variaciones de la Replicación de PostgreSQLLas Variaciones de la Replicación de PostgreSQL
Las Variaciones de la Replicación de PostgreSQL
EDB
 
Is There Anything PgBouncer Can’t Do?
Is There Anything PgBouncer Can’t Do?Is There Anything PgBouncer Can’t Do?
Is There Anything PgBouncer Can’t Do?
EDB
 
Data Analysis with TensorFlow in PostgreSQL
Data Analysis with TensorFlow in PostgreSQLData Analysis with TensorFlow in PostgreSQL
Data Analysis with TensorFlow in PostgreSQL
EDB
 
Practical Partitioning in Production with Postgres
Practical Partitioning in Production with PostgresPractical Partitioning in Production with Postgres
Practical Partitioning in Production with Postgres
EDB
 
A Deeper Dive into EXPLAIN
A Deeper Dive into EXPLAINA Deeper Dive into EXPLAIN
A Deeper Dive into EXPLAIN
EDB
 
IOT with PostgreSQL
IOT with PostgreSQLIOT with PostgreSQL
IOT with PostgreSQL
EDB
 
A Journey from Oracle to PostgreSQL
A Journey from Oracle to PostgreSQLA Journey from Oracle to PostgreSQL
A Journey from Oracle to PostgreSQL
EDB
 
Psql is awesome!
Psql is awesome!Psql is awesome!
Psql is awesome!
EDB
 
EDB 13 - New Enhancements for Security and Usability - APJ
EDB 13 - New Enhancements for Security and Usability - APJEDB 13 - New Enhancements for Security and Usability - APJ
EDB 13 - New Enhancements for Security and Usability - APJ
EDB
 
Comment sauvegarder correctement vos données
Comment sauvegarder correctement vos donnéesComment sauvegarder correctement vos données
Comment sauvegarder correctement vos données
EDB
 
Cloud Native PostgreSQL - Italiano
Cloud Native PostgreSQL - ItalianoCloud Native PostgreSQL - Italiano
Cloud Native PostgreSQL - Italiano
EDB
 
New enhancements for security and usability in EDB 13
New enhancements for security and usability in EDB 13New enhancements for security and usability in EDB 13
New enhancements for security and usability in EDB 13
EDB
 
Best Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQLBest Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQL
EDB
 
Cloud Native PostgreSQL - APJ
Cloud Native PostgreSQL - APJCloud Native PostgreSQL - APJ
Cloud Native PostgreSQL - APJ
EDB
 
Best Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQLBest Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQL
EDB
 
Ad

Recently uploaded (20)

Implementing promises with typescripts, step by step
Implementing promises with typescripts, step by stepImplementing promises with typescripts, step by step
Implementing promises with typescripts, step by step
Ran Wahle
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software DevelopmentSecure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Shubham Joshi
 
WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
Top 10 Data Cleansing Tools for 2025.pdf
Top 10 Data Cleansing Tools for 2025.pdfTop 10 Data Cleansing Tools for 2025.pdf
Top 10 Data Cleansing Tools for 2025.pdf
AffinityCore
 
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdfMicrosoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
TechSoup
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
Creating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdfCreating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdf
Applitools
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage DashboardsAdobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
BradBedford3
 
Microsoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptxMicrosoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptx
Mekonnen
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Full Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest VersionFull Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest Version
jonesmichealj2
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Implementing promises with typescripts, step by step
Implementing promises with typescripts, step by stepImplementing promises with typescripts, step by step
Implementing promises with typescripts, step by step
Ran Wahle
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software DevelopmentSecure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Shubham Joshi
 
WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
Top 10 Data Cleansing Tools for 2025.pdf
Top 10 Data Cleansing Tools for 2025.pdfTop 10 Data Cleansing Tools for 2025.pdf
Top 10 Data Cleansing Tools for 2025.pdf
AffinityCore
 
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdfMicrosoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
TechSoup
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
Creating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdfCreating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdf
Applitools
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage DashboardsAdobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
Adobe Marketo Engage Champion Deep Dive - SFDC CRM Synch V2 & Usage Dashboards
BradBedford3
 
Microsoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptxMicrosoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptx
Mekonnen
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Full Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest VersionFull Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest Version
jonesmichealj2
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 

NoSQL on ACID: Meet Unstructured Postgres

  • 1. © 2014 EnterpriseDB Corporation. All rights reserved. 1
  • 2. © 2014 EnterpriseDB Corporation. All rights reserved. 2 NoSQL on ACID: Meet Unstructured Postgres Marc Linster – SVP, Products and Services
  • 3. © 2014 EnterpriseDB Corporation. All rights reserved. 3 • EDB Introduction • NoSQL & ACID DBMS – Common Misconceptions • Postgres – NoSQL for the Enterprise • Performance Evaluation • FDW – Coexistence of NoSQL only and SQL • Postgres as a NoSQL/SQL Integration Platform Agenda
  • 4. © 2014 EnterpriseDB Corporation. All rights reserved. 4 POSTGRES innovation ENTERPRISE reliability 24/7 support Services & training Enterprise-class features & tools Indemnification Product road-map Control Thousands of developers Fast development cycles Low cost No vendor lock-in Advanced features Enabling commercial adoption of Postgres
  • 5. © 2014 EnterpriseDB Corporation. All rights reserved. 5 Postgres Plus Advanced Server Postgres Plus Cloud Database High Availability PerformanceManagement REMOTE DBA 24x7 SUPPORT PROFESSIONAL SERVICES TRAINING EDB Serves All Your Postgres Needs PostgreSQL Security
  • 6. © 2014 EnterpriseDB Corporation. All rights reserved. 6 Why EDB? More than 3,000 Enterprises and Governments
  • 7. © 2014 EnterpriseDB Corporation. All rights reserved. 7 EnterpriseDB is a Market Leader The Gartner report, Magic Quadrant for Operational Database Management Systems, by Donald Feinberg, Merv Adrian and Nick Heudecker, was published October 16, 2014.
  • 8. © 2014 EnterpriseDB Corporation. All rights reserved. 8 EDB is an Open Source Community Leader Amit Kapila Ashesh Vashi Bruce Momjian Dave Page Devrim Gunduz Jan Wieck Kevin Grittner Korry Douglas Muhammad Usama Robert M Haas Thom Brown
  • 9. © 2014 EnterpriseDB Corporation. All rights reserved. 9 NoSQL & ACID DBMS – Common Misconceptions • ACID Compliant DBMS don’t support JSON and KVP • Traditional DBMS can’t handle the volume or the speed • Web 2.0 Applications rely on JSON – traditional DBMS focus on text, integer, etc. • Traditional DBMS don’t work well with Web 2.0 development languages
  • 10. © 2014 EnterpriseDB Corporation. All rights reserved. 10 • Data Types − Postgres has JSON, JSONB, Key-Value Pair, plus arrays, ranges, timezones, dates, integer, floating point, etc. • Performance Benchmarks − Postgres is very fast and can handle huge amounts of data − Postgres can selectively relax key ACID features to increase performance • Proven track record − ACID compliant − Open source − ANSI SQL − Large developer and vendor community Postgres – NoSQL for the Enterprise
  • 11. © 2014 EnterpriseDB Corporation. All rights reserved. 11 • HSTORE − Key-value pair − Simple, fast and easy − Postgres v 8.2 – pre-dates many NoSQL-only solutions • JSON − Hierarchical document model − Introduced in Postgres 9.2, perfected in 9.3 • JSONB − Binary version of JSON − Faster, more operators and even more robust − Postgres 9.4 NoSQL Data in Postgres
  • 12. © 2014 EnterpriseDB Corporation. All rights reserved. 12 • JSON is the most popular data-interchange format on the web • Derived from the ECMAScript Programming Language Standard (European Computer Manufacturers Association). • Supported by virtually every programming language • New supporting technologies continue to expand JSON’s utility − PL/V8 JavaScript extension − Node.js • Postgres native JSON data type (v9.2) and a JSON parser and a variety of JSON functions (v9.3) • Postgres JSONB data type with binary storage and indexing (v9.4) Postgres: Document Store
  • 13. © 2014 EnterpriseDB Corporation. All rights reserved. 13 • Wherever there is JavaScript you will find JSON • Most languages support it • Node.Js is becoming popular. • Lighter and more compact than XML. • Most application don't need the rich structure of XML • Flexible Structure • Due to its flexible structure, JSON is a good fit for NoSQL. Why JSON
  • 14. © 2014 EnterpriseDB Corporation. All rights reserved. 14 • Creating a table with a JSONB field CREATE TABLE json_data (data JSONB); • Simple JSON data element: {"name": "Apple Phone", "type": "phone", "brand": "ACME", "price": 200, "available": true, "warranty_years": 1} • Inserting this data element into the table json_data INSERT INTO json_data (data) VALUES (’ { "name": "Apple Phone", "type": "phone", "brand": "ACME", "price": 200, "available": true, "warranty_years": 1 } ') JSON Examples
  • 15. © 2014 EnterpriseDB Corporation. All rights reserved. 15 SELECT DISTINCT data->>'name' as products FROM json_data; products ------------------------------ Cable TV Basic Service Package AC3 Case Black Phone Service Basic Plan AC3 Phone AC3 Case Green Phone Service Family Plan AC3 Case Red AC7 Phone A simple query for JSON data This query does not return JSON data – it returns text values associated with the key ‘name’
  • 16. © 2014 EnterpriseDB Corporation. All rights reserved. 16 SELECT data FROM json_data; data ------------------------------------------ {"name": "Apple Phone", "type": "phone", "brand": "ACME", "price": 200, "available": true, "warranty_years": 1} A query that returns JSON data This query returns the JSON data in its original format
  • 17. © 2014 EnterpriseDB Corporation. All rights reserved. 17 • 1. Number: − Signed decimal number that may contain a fractional part and may use exponential notation. − No distinction between integer and floating-point • 2. String − A sequence of zero or more Unicode characters. − Strings are delimited with double-quotation mark − Supports a backslash escaping syntax. • 3. Boolean − Either of the values true or false. • 4. Array − An ordered list of zero or more values, − Each values may be of any type. − Arrays use square bracket notation with elements being comma-separated. • 5. Object − An unordered associative array (name/value pairs). − Objects are delimited with curly brackets − Commas to separate each pair − Each pair the colon ':' character separates the key or name from its value. − All keys must be strings and should be distinct from each other within that object. • 6. null − An empty value, using the word null JSON Data Types JSON is defined per RFC – 7159 For more detail please refer http://tools.ietf.org/html/rfc7159
  • 18. © 2014 EnterpriseDB Corporation. All rights reserved. 18 { "firstName": "John", -- String Type "lastName": "Smith", -- String Type "isAlive": true, -- Boolean Type "age": 25, -- Number Type "height_cm": 167.6, -- Number Type "address": { -- Object Type "streetAddress": "21 2nd Street”, "city": "New York”, "state": "NY”, "postalCode": "10021-3100” } "phoneNumbers": [ -- Object Array { -- Object "type": "home”, "number": "212 555-1234” }, { "type": "office”, "number": "646 555-4567” } ], "children": [], "spouse": null -- Null } JSON Data Type Example
  • 19. © 2014 EnterpriseDB Corporation. All rights reserved. 19 • BSON – stands for ‘Binary JSON’ • BSON != JSONB − BSON cannot represent an integer or floating-point number with more than 64 bits of precision. − JSONB can represent arbitrary JSON values. • Caveat Emptor! − This limitation will not be obvious during early stages of a project! JSON and BSON
  • 20. © 2014 EnterpriseDB Corporation. All rights reserved. 20 JSONB and Node.js - Easy as π • Simple Demo of Node.js to Postgres cnnection
  • 21. © 2014 EnterpriseDB Corporation. All rights reserved. 21 • JSON is naturally integrated with ANSI SQL in Postgres • JSON and HSTORE are elegant and easy to use extensions of the underlying object- relational model • JSON and SQL queries use the same language, the same planner, and the same ACID compliant transaction framework JSON and ANSI SQL – A Great Fit
  • 22. © 2014 EnterpriseDB Corporation. All rights reserved. 22 SELECT DISTINCT product_type, data->>'brand' as Brand, data->>'available' as Availability FROM json_data JOIN products ON (products.product_type=json_data.data->>'name') WHERE json_data.data->>'available'=true; product_type | brand | availability ---------------------------+-----------+-------------- AC3 Phone | ACME | true JSON and ANSI SQL Example ANSI SQL JSON No need for programmatic logic to combine SQL and NoSQL in the application – Postgres does it all
  • 23. © 2014 EnterpriseDB Corporation. All rights reserved. 23 Bridging between SQL and NoSQL Simple ANSI SQL Table Definition CREATE TABLE products (id integer, product_name text ); Select query returning standard data set SELECT * FROM products; id | product_name ----+-------------- 1 | iPhone 2 | Samsung 3 | Nokia Select query returning the same result as a JSON data set SELECT ROW_TO_JSON(products) FROM products; {"id":1,"product_name":"iPhone"} {"id":2,"product_name":"Samsung"} {"id":3,"product_name":"Nokia”}
  • 24. © 2014 EnterpriseDB Corporation. All rights reserved. 24 • Start unstructured, and become structured as you learn more − Use the quick-to-get-started capabilities of NoSQL − Complete the initial sprints without a DBA − Move data between unstructured and structured − Embrace corporate data standards as you move from the stand-alone application towards integrated applications with a bigger value proposition Postgres Provides Great Flexibility By 2017, 50% of data stored in NoSQL DBMSs will be damaging to the business due to lack of applied information governance policies and programs. Gartner, December 2013
  • 25. © 2014 EnterpriseDB Corporation. All rights reserved. 25 • Goal − Help our customers understand when to choose Postgres and when to chose a specialty solution − Help us understand where the NoSQL limits of Postgres are • Setup − Compare Postgres 9.4 to Mongo 2.6 − Single instance setup on AWS M3.2XLARGE (32GB) • Test Focus − Data ingestion (bulk and individual) − Data retrieval Postgres NoSQL Performance Evaluation Load Generator Postgres 9.4 MongoDB 2.6
  • 26. © 2014 EnterpriseDB Corporation. All rights reserved. 26 Postgres NoSQL Performance Evaluation Generate JSON Documents 10 M documents & 50 M documents Load into MongoDB 2.6 (IMPORT) Load into Postgres 9.4 (COPY) 10 Million individual INSERT commands 10 Million individual INSERT commands Multiple SELECT statements Multiple SELECT statements T1 T2 T3
  • 27. © 2014 EnterpriseDB Corporation. All rights reserved. 27 NoSQL Performance Evaluation 276% 295% 465% 208% 0% 50% 100% 150% 200% 250% 300% 350% 400% 450% 500% Data Load Insert Select Size Mongo DB 2.4/Postgres 9.4 Relative Performance Comparison (50 Million Documents) Postgres MongoDB Postgres MongoDB Data Load (s) 4,732 13,046 Insert (s) 29,236 86,253 Select (s) 594 2,763 Size (GB) 69 145 Correction to earlier versions: MongoDB console does not allow for INSERT of documents > 4K. This lead to truncation of the MongoDB size by approx. 25% of all records in the benchmark.
  • 28. © 2014 EnterpriseDB Corporation. All rights reserved. 28 • Tests confirm that Postgres can handle many NoSQL workloads • EDB is making the test scripts publically available • EDB encourages community participation to better define where Postgres should be used and where specialty solutions are appropriate • Download the source at https://github.com/EnterpriseDB/pg_nosql_benchmark Postgres NoSQL Performance Evaluation
  • 29. © 2014 EnterpriseDB Corporation. All rights reserved. 29 • FDW implements SQL/MED ("SQL Management of External Data") • PostgreSQL 9.1 - read-only support • PostgreSQL 9.3 – read/write support • FDW − Makes data on other servers (or services) look like tables in Postgres − available for databases (MongoDB, MySQL, Oracle, …), files, services (Twitter, …) • MongoDB FDW: https://github.com/EnterpriseDB Foreign Data Wrappers – Co-Existence Platform
  • 30. © 2014 EnterpriseDB Corporation. All rights reserved. 30 CREATE EXTENSION mongo_fdw; CREATE SERVER mongo_server FOREIGN DATA WRAPPER mongo_fdw OPTIONS (address '172.24.39.129', port '27017'); CREATE USER MAPPING FOR enterprisedb SERVER mongo_server OPTIONS (username 'mongo', password 'mongo'); CREATE FOREIGN TABLE mongo_data( name text, brand text, type text) SERVER mongo_server OPTIONS ( database 'benchmark', collection 'json_tables'); MongoDB FDW Example
  • 31. © 2014 EnterpriseDB Corporation. All rights reserved. 31 SELECT * FROM mongo_data WHERE brand='ACME' limit 10; name | brand | type -------------+-------+------- AC7553 Phone | ACME | phone AC7551 Phone | ACME | phone AC7519 Phone | ACME | phone AC7565 Phone | ACME | phone AC7555 Phone | ACME | phone AC7529 Phone | ACME | phone AC7528 Phone | ACME | phone AC7547 Phone | ACME | phone AC7587 Phone | ACME | phone AC7541 Phone | ACME | phone (10 rows) MongoDB FDW Example
  • 32. © 2014 EnterpriseDB Corporation. All rights reserved. 32 INSERT INTO mongo_data(name, brand, type) VALUES('iphone6 phone','Apple Inc','phone'); SELECT* FROM mongo_data WHERE brand='Apple Inc'; _id | name | brand | type --------------------------+----------------+-----------+------- 53ea4f59fe5586a15714881d | iphone6 phone | Apple Inc | phone UPDATE mongo_data SET brand='Apple Product' WHERE brand='Apple Inc’; SELECT * FROM mongo_data WHERE brand='Apple Product’; _id | name | brand | type --------------------------+----------------+---------------+------- 53ea4f59fe5586a15714881d | iphone6 phone | Apple Product | phone MongoDB FDW Example
  • 33. © 2014 EnterpriseDB Corporation. All rights reserved. 33 • Structures and standards emerge! • Data has references (products link to catalogues; products have bills of material; components appear in multiple products; storage locations link to ISO country tables) • When the database has duplicate data entries, then the application has to manage updates in multiple places – what happens when there is no ACID transactional model? “No SQL Only” or “Not Only SQL”?
  • 34. © 2014 EnterpriseDB Corporation. All rights reserved. 34 • Postgres has many NoSQL features without the drawbacks: − Schema-less data combined with structured data − High performance with predictable transaction model − Durable by default, but configurable per-table or per-transaction − Standards based with very low technology risk − Foreign Data Wrappers (FDW) for co-existence − Highly available skill set Postgres: The Best of Both Worlds
  • 35. © 2014 EnterpriseDB Corporation. All rights reserved. 35 • Postgres is Not Only SQL (NoSQL is No SQL only) • Fully ACID compliant • Proven track record • Fully capable of handling the variety, velocity and volume requirements of most applications • Tackle NoSQL projects without leaving the capabilities of the relational model behind you • Combine Oracle compatibility, JSON and PostGIS to migrate applications onto more cost-effective platforms, make the app NoSQL capable and geo-location aware. Say ‘Yes’ to ‘Not Only SQL’
  • 36. © 2014 EnterpriseDB Corporation. All rights reserved. 36
  • 37. © 2014 EnterpriseDB Corporation. All rights reserved. 37

Editor's Notes

  • #3: Bruce
  • #4: Using JSON/JSONB and HSTORE to combine schema-less data with enterprise information Build on existing skillsets while using web 2.0 development technologies Reduce complexity that comes with using multiple heterogeneous platform and disparate application demands
  • #5: EDB provides enterprises and government agencies with the commercial support and reliability needed to take full advantage of open-source Postgres innovation and cost benefits: 24/7 Support Enterprise-class features & tools Packaged and professional services Wide array of classroom and on-demand training Clear visibility & influence over product road-map EDB gives you the responsiveness & dependability you need to be successful
  • #6: Overview of EDB products & Services NOTE: THIS SLIDE HAS BUILT-IN “JUMPING” SO YOU CAN CLICK ON ANY ICON TO DRILL DOWN THEN RETURN TO THE OVERVIEW; here’s how: Click on each icon (DBs and services) to drill down to details Once on detail page, click on the icon to move directly to the next icon detail, or Click on the area outside of the drill down detail to return back to the main product & services overview Main message: EDB is the BEST source for all your Postgres needs: EDB is a database internals product development company EDB creates add-on features, tools and cloud capabilities designed for enterprise-class workloads EDB’s deep technical expertise makes it your best source for support and professional services Sample script: “Just as you’d expect from any enterprise software company, EDB provides various products and services to ensure our customers make the most out of their Postgres deployments. From our standard edition which includes support for the open source PostgreSQL to PPAS and PPCD, we have the right database for your application. We back that up with global follow the sun support, packaged services and training along with RDBA services. Many of customers run PostgreSQL and come to us for support and to take advantage of our add-on functionality, such as PEM and xDB replication server. For lots of workloads this is a fine solution. The majority of our customers do run PPAS, though. The combination of its low cost--$6,900 per year per socket, along with a ton of additional features and functionality above the Standard Edition, it’s a great fit for workloads with lots of concurrent users and lots of transactions. Of course, PPCD gives customers the ability to run either PostgreSQL or PPAS, but in a cloud environment.”
  • #7: More than 3,000 enterprises and governments are using EnterpriseDB Postgres products and services to deliver robust data management and services to their enterprise applications. Our customer range across many industries including financial, healthcare, government, retail, telco and insurance. PUT IN SOME STORIES HERE.
  • #8: EnterpriseDB is the leading OSS RDBMS and NoSQL DBMS in the Gartner Operational DBMS MQ of 2014. Gartner Comments “EnterpriseDB is responsible for many features of PostgreSQL, contributing to JSON, materialized views and partitioning.” “Clients report that the functionality of EnterpriseDB's Postgres Plus Oracle Compatibility Feature is now more than sufficient to run both mission-critical and non- mission-critical applications.” “Customers commend the compatibility with Oracle, the stability of the DBMS and the product support.”
  • #13: Bruce
  • #14: This is the roadmap for content of the meeting Adjust as necessary based on previous discussions on objectives and areas of interest Goal is to set expectations for content to be discussed Agree on specific meeting objectives/outcomes up front Inquire about any specific areas of interest or current needs that should be emphasized
  • #18: Note: 1. JSON generally ignores any whitespace around or between syntactic elements (values and punctuation, but not within a string value). 2. JSON only recognizes four specific whitespace characters: i. the space ii. horizontal tab, iii. line feed, and carriage return. 3. JSON does not provide or allow any sort of comment syntax.
  • #35: Marc
  • #36: Marc