elephant roads
TRANSCRIPT
-
7/31/2019 Elephant Roads
1/53
-
7/31/2019 Elephant Roads
2/53
-
7/31/2019 Elephant Roads
3/53
-
7/31/2019 Elephant Roads
4/53
E.F. CoddRelational Theory
The First Day(1970)
-
7/31/2019 Elephant Roads
5/53
Michael Stonebraker
INteractive Graphics REtrievalSystem
-
7/31/2019 Elephant Roads
6/53
Michael Stonebraker
INGRESThe Second Day
(1974)
-
7/31/2019 Elephant Roads
7/53
-
7/31/2019 Elephant Roads
8/53
Stonebraker Marches On ...
Fourth Day: Cohera
Fifth Day: Streambase
Sixth Day: Vertica
Seventh Day: SciDB
Eighth Day: VoltDB
?
-
7/31/2019 Elephant Roads
9/53
Illustra: The First Fork
Stonebraker and a team from UC Berkeleyforked POSTGRES in 1992
added SQL support
added new object-relational features Started a new company called Mir
Mir became Montage
Montage became Illustra
-
7/31/2019 Elephant Roads
10/53
Informix Swallows Illustra
1997: Informix buys Illustra
Illustra features added to Informix OnLine
and DataBlades ran Illustra
2000: Informix Universal Server 9
2001: IBM Eats Informix
-
7/31/2019 Elephant Roads
11/53
PostgreSQL: The Second Fork
1995: a rag-tag band of POSTGRES users andstudents decided to save the DBMS by taking itoff-campus.
It became: Postgres95 1996: they put it on a public CVS server
ported it to SQL
It became: PostgreSQL you know the rest from here ...
-
7/31/2019 Elephant Roads
12/53
Postgres Begat Many More Forks
Because of thelicense
Because there's a
history of forks
Because our code isclean and easy tomodify
Because Postgres ismodular and easy tobreak up or add to
Because thecommunity is OK withforks and variants
-
7/31/2019 Elephant Roads
13/53
Why Change PostgreSQL?
To experiment with new DB technology
To commercialize it
To bundle it with useful tools
To specialize it for specific tasks
To add features the community doesn't want
or that aren't ready for OSS yet
Because you can!
-
7/31/2019 Elephant Roads
14/53
But Aren't Forks Bad?
No.
-
7/31/2019 Elephant Roads
15/53
Forks Are Good
Open source means freedom to fork If nobody forks a project, then it's not
widely used or actively developed.
Most forks and their ownerscontribute to core PostgreSQL
money, code, ideas
Some forks develop code to beintegrated into main Postgres
best way to try out really challengingideas
-
7/31/2019 Elephant Roads
16/53
4 Types of Postgres Variants
Forks: incompatible or proprietary majorchanges to the core code.
Patches: compatible, open source major
changes to the core code. Add-Ons: major middleware or plugins which
greatly enhance or change Postgres'sfunctionality
Redistributions: repackaging Postgres under adifferent name and/or license
-
7/31/2019 Elephant Roads
17/53
Expired Forks
-
7/31/2019 Elephant Roads
18/53
Great Bridge PostgreSQL
What: PostgreSQL plus some advance patchesand support.
Type: Redistribution
Licensing: BSD
Versions: Forked from 7.0, merged to 7.1
R.I.P.: Great Bridge LLC died in 2001
Contributed: lots of code in 1999-2001
most of Core worked for Great Bridge
-
7/31/2019 Elephant Roads
19/53
Red Hat Database
What: PostgreSQL redistribution withmanagement tools by Red Hat Inc.
Type: Re-distribution
Licensing: BSD & GPL
Versions: 7.2 to 7.3
R.I.P.: Abandoned by Red Hat in 2003
Contributed: Tom Lane's salary
plus visual query analyzer to pgAdmin
-
7/31/2019 Elephant Roads
20/53
NuSphere UltraSQL
What: Native Windows Port of PostgreSQL
Type: Fork
Licensing: Proprietary
Versions: 7.2 and 7.3
R.I.P.: Lost relevance with release ofPostgreSQL 8.0
still technically available
Contributed: code to PostgreSQL 8.0
-
7/31/2019 Elephant Roads
21/53
PowerGres & PowerGres Plus
What: Native Windows Port of PostgreSQL bySRA Inc., with optional custom storage
Type: Fork
Licensing: Proprietary
Versions: 7.3, maybe 7.4
R.I.P.: Lost relevance with release of
PostgreSQL 8.0, HA version still around Contributed: code to PostgreSQL 8.0
-
7/31/2019 Elephant Roads
22/53
Pervasive Postgres
What: Regular PostgreSQL with support.
Type: Re-distribution
Licensing: BSD
Versions: 8.0
R.I.P.: Pervasive dropped Postgres in 2006
Contributed: money to the community, mainlyfor events
-
7/31/2019 Elephant Roads
23/53
Bizgres
What: PostgreSQL plus BI and large databasefeatures.
Type: Fork
Licensing: BSD Versions: 8.1, 8.2
R.I.P.: Project died out in 2008
Greenplum stopped merging code
Contributed: code, money (Greenplum's)
-
7/31/2019 Elephant Roads
24/53
Core Forks & Redistributions
-
7/31/2019 Elephant Roads
25/53
Mammoth PostgreSQL
What: PostgreSQL with Mammoth Replicator
Owner: CommandPrompt Inc.
Type: Fork
Licensing: open source
Compatibility: High, merges with main code
Status: current production & development
Contributes: money & code
Used to be a proprietary fork
-
7/31/2019 Elephant Roads
26/53
Postgres Plus
What: PostgreSQL with open source add-ons
Owner: EnterpriseDB
Type: Redistribution
Licensing: open source (varies)
Compatibility: High, merges with main code
Status: current production & development
Contributes: money & code
-
7/31/2019 Elephant Roads
27/53
Postgres Plus Advanced Server
What: PostgreSQL with Oracle Compatibilityand proprietary tools
Owner: EnterpriseDB
Type: Fork Licensing: Proprietary
Compatibility: High, merges with main code
Status: current production & development
Contributes: money & code
Formerly EnterpriseDB Advanced Server
-
7/31/2019 Elephant Roads
28/53
Fujitsu Supported PostgreSQL
What: PostgreSQL with custom storage engine
Owner: Fujitsu Australia
Type: Fork
Licensing: Proprietary
Compatibility: High with 8.2
Status: current production
Contributes: money, occasionally
-
7/31/2019 Elephant Roads
29/53
PostgreSQL for Solaris
What: PostgreSQL packaged for Solaris withtools and support
Owner: Sun Microsystems
Type: Redistribution Licensing: open source (varies)
Compatibility: High, 8.3
Status: current production
Contributes: code
Likely to be terminated when Oracle deal completes
-
7/31/2019 Elephant Roads
30/53
Exotic Features
-
7/31/2019 Elephant Roads
31/53
PostGIS
What: PostgreSQL plus Geographic support #1 open source geo database
Type: Add-On
Licensing: BSD & GPL
Compatibility: High, 8.4
Status: current production & development
Contributes: code, users
Used to be a package under GPL, now an add-on
-
7/31/2019 Elephant Roads
32/53
Fork: Truviso
2000: TelegraphCQ Project started at UCBerkeley
Continuous Query processing for PostgreSQL
2006: UCB Profs. launch startup AmalgamatedInsight
commercialize TelegraphCQ
re-merged with current PostgreSQL code
2008: Amalgamated Insight renamed Truviso
first commercial releases
-
7/31/2019 Elephant Roads
33/53
Truviso
What: PostgreSQL plus Streaming Database good for high-volume data streams where you don't
care about old data
Type: Fork Licensing: Proprietary
Compatibility: High
Version: Forked from 7.1, merged to 8.4 Status: current production & development
Contributes: money & code
-
7/31/2019 Elephant Roads
34/53
SEPostgres
What: PostgreSQL integrated with SELinuxlabel-based access control
Type: Patch
Owner: SEPostgres project / NEC Licensing: BSD
Compatibility: High, 8.4
Status: production, working on merge with core
Contributes: code
-
7/31/2019 Elephant Roads
35/53
Clustering Forks & Add-Ons
-
7/31/2019 Elephant Roads
36/53
Postgres-R
What: PostgreSQL with Group Communicationsupport for clustering.
Owner: Postgres-R project
Type: Patch Licensing: open source (BSD)
Compatibility: High, merges
Status: alpha, current development
Contributes: code
-
7/31/2019 Elephant Roads
37/53
pgCluster (and CyberCluster)
What: PostgreSQL with Statement Replicationand controller support for clustering.
Owner: pgCluster project, Cybertech.AT
Type: Fork Licensing: open source (BSD)
Compatibility: High, 8.0
Status: beta, development halted
Contributes: not anymore
-
7/31/2019 Elephant Roads
38/53
-
7/31/2019 Elephant Roads
39/53
PostgresForest
What: PostgreSQL with middleware-basedstatement replication clustering
Owner: NTT (I think)
Type:Add-On Licensing: open source
Compatibility: Not sure
Status: beta, development halted
Contributes: code
P l II
-
7/31/2019 Elephant Roads
40/53
pgPool-II
What: statement-replication and partitioningmiddleware for PostgreSQL
Owner: pgPool project, SRA
Type:Add-On Licensing: open source
Compatibility: High, 8.4
Status: beta, active development
Contributes: code, money (SRA)
C ti t
-
7/31/2019 Elephant Roads
41/53
Continuent
What: statement-replication, mangagement andpartitioning middleware for PostgreSQL
Owner: Continuent corporation
Type:Add-On Licensing: part open source, part proprietary
Compatibility: High, 8.4
Status: old version production, Tungsten RSN
Contributes: code, money
G idSQL
-
7/31/2019 Elephant Roads
42/53
GridSQL
What: statement-replication, mangagement andpartitioning middleware for PostgreSQL
Owner: EnterpriseDB
Type:Add-On Licensing: GPL
Compatibility: High, 8.4
Status: production, active development
Contributes: code, money
Used to be ExtenDB, integrated into Postgres Plus
D t W h i / BI
-
7/31/2019 Elephant Roads
43/53
Data Warehousing / BI
N t
-
7/31/2019 Elephant Roads
44/53
Netezza
What: Some PostgreSQL code (30-50%) plusproprietary code and hardware package
Type: Fork
Owner: Netezza Co. Licensing: Proprietary
Compatibility: Low
Forked from 7.2, no longer compatible
Status: current production
Contributes: nothing
G l
-
7/31/2019 Elephant Roads
45/53
Greenplum What: Mostly PostgreSQL with proprietary MPP
plus BI and VLDB tools great for huge data mining
Owner: Greenplum
Type: Fork
Licensing: Proprietary
Compatibility: Medium, 8.2
Status: production, active development
Contributes: code, money
used to be Bizgres MPP
Vertica
-
7/31/2019 Elephant Roads
46/53
Vertica
What: Proprietary code with a few PostgreSQLlibraries for multi-TB column store database
great for OLAP
Owner: Vertica Co. Type: Fork (sort of)
Licensing: Proprietary
Compatibility: Low Status: production, active development
Stonebraker project (no contributions)
Paraccel
-
7/31/2019 Elephant Roads
47/53
Paraccel
What: Part-Postgres, part-proprietary in-memory clustered pseudo-column store.
made for online data analysis
Owner: Paraccel Co. Type: Fork
Licensing: Proprietary
Compatibility: Medium Status: production, active development
Contributions: none to date
AsterDB
-
7/31/2019 Elephant Roads
48/53
AsterDB
What: Patches and proprietary middleware formap/reduce queries on many Postgres servers.
Owner: Aster Data Co.
including former Continuent developer Type: Patch, Add-On
Licensing: Proprietary
Compatibility: High, 8.4 Status: production, active development
Contributions: code, money
Everest
-
7/31/2019 Elephant Roads
49/53
Everest
What: PostgreSQL with proprietary storage,MPP and column store
scales to 10's of petabytes
Owner: Yahoo! Type: Fork
Licensing: Not available to public
Compatibility: N/A Status: production
Contributions: threw a nice party for us
HadoopDB
-
7/31/2019 Elephant Roads
50/53
HadoopDB
What: Middleware for running map/reducequeries over many Postgres instances.
brand-new
Owner: Yale University Type:Add-On
Licensing: unclear
Compatibility: High, 8.4 Status: alpha, active development
Contributions: none yet
List of Variants
-
7/31/2019 Elephant Roads
51/53
List of Variants
Exotic Truviso
PostGIS
SEPostgres
Core Variants Mammoth
Postgres Plus
P.P. Advanced Server
Fujistu Supported PG
PostgreSQL for Solaris
BI/DW Netezza
Greenplum
Vertica
Paraccel
AsterDB
HadoopDB
Everest
Clustering Postgres-R pgCluster pgCluster-II PostgresForest pgPool-II Continuent GridSQL
So what are you waiting for?
-
7/31/2019 Elephant Roads
52/53
So, what are you waiting for?
Go make your own fork!
Contact
-
7/31/2019 Elephant Roads
53/53
Contact
Josh Berkus: [email protected] blog: it.toolbox.com/blogs/database-soup
www.pgexperts.com/presentations.html
PostgreSQL: www.postgresql.org
PostgreSQL Experts Inc.:www.pgexperts.com
This talk is copyright 2009 Josh Berkus, and is licensed under the Creative Commons Attribution License.Most images are the property of their respective copyright holders. All images are used here forpurposes of satire or reference to trademarked products.