SlideShare a Scribd company logo
/
Scaling Postgres
Denish Patel
Database Architect
https://twitter.com/DenishPatel
Wednesday, September 18, 13
1
Wednesday, September 18, 13
OmniTI
1
Wednesday, September 18, 13
OmniTI
1
• Helping customers
navigate explosive growth
with technology.
Wednesday, September 18, 13
OmniTI
1
• Helping customers
navigate explosive growth
with technology.
100MM+ users
$1B+ gross online sales
Wednesday, September 18, 13
OmniTI
1
• Helping customers
navigate explosive growth
with technology.
100MM+ users
$1B+ gross online sales
Open and closed source thought leaders,
experts and authors
Wednesday, September 18, 13
OmniTI
1
• Helping customers
navigate explosive growth
with technology.
100MM+ users
$1B+ gross online sales
Open and closed source thought leaders,
experts and authors
Wednesday, September 18, 13
2
Wednesday, September 18, 13
Talk Outline
2
Wednesday, September 18, 13
Talk Outline
• Scalability
• Database Scaling needs, costs, methods
• Scaling Postgres
• Vertically
• Horizontally
• Obstacles to Scalability
• Beyond Postgres
2
Wednesday, September 18, 13
3
Wednesday, September 18, 13
What is Scalability?
3
Wednesday, September 18, 13
What is Scalability?
3
A service is said to be scalable if when we
increase the resources in a system, it results in
increased performance in a manner proportional
to resources added.
Wednesday, September 18, 13
4
Wednesday, September 18, 13
Why to scale databases?
4
Wednesday, September 18, 13
Why to scale databases?
• Support a higher volume of users
4
Wednesday, September 18, 13
Why to scale databases?
• Support a higher volume of users
4
Wednesday, September 18, 13
Why to scale databases?
• Support a higher volume of users
4
Wednesday, September 18, 13
Why to scale databases?
• Support a higher volume of users
4
Wednesday, September 18, 13
Why to scale databases?
• Provide better performance for existing users
• Support a higher volume of users
4
Wednesday, September 18, 13
Why to scale databases?
• Provide better performance for existing users
• Store a larger volume of data
• Support a higher volume of users
4
Wednesday, September 18, 13
Why to scale databases?
• Provide better performance for existing users
• Store a larger volume of data
• Improve system availability
• Support a higher volume of users
4
Wednesday, September 18, 13
Why to scale databases?
• Provide better performance for existing users
• Store a larger volume of data
• Improve system availability
• Geographic dispersion
• Support a higher volume of users
4
Wednesday, September 18, 13
5
Wednesday, September 18, 13
Why is database scalability so hard?
5
Wednesday, September 18, 13
Why is database scalability so hard?
5
Wednesday, September 18, 13
Why is database scalability so hard?
• Search
5
Wednesday, September 18, 13
Why is database scalability so hard?
• Search
• Concurrency
5
Wednesday, September 18, 13
Why is database scalability so hard?
• Search
• Concurrency
• Consistency
5
Wednesday, September 18, 13
Why is database scalability so hard?
• Search
• Concurrency
• Consistency
• Speed
5
Wednesday, September 18, 13
Why is database scalability so hard?
• Search
• Concurrency
• Consistency
• Speed
• Cost
5
Wednesday, September 18, 13
Why is database scalability so hard?
• Search
• Concurrency
• Consistency
• Speed
• Cost
• Cost of hardware
5
Wednesday, September 18, 13
Why is database scalability so hard?
• Search
• Concurrency
• Consistency
• Speed
• Cost
• Cost of hardware
• Cost deployment effort
5
Wednesday, September 18, 13
Why is database scalability so hard?
• Search
• Concurrency
• Consistency
• Speed
• Cost
• Cost of hardware
• Cost deployment effort
• Cost Ongoing maintenance
5
Wednesday, September 18, 13
6
Wednesday, September 18, 13
Scaling Needs & Methods
6
Wednesday, September 18, 13
Scaling Needs & Methods
6
Wednesday, September 18, 13
Scaling Needs & Methods
• Data growth
6
Wednesday, September 18, 13
Scaling Needs & Methods
• Data growth
• Read requests
6
Wednesday, September 18, 13
Scaling Needs & Methods
• Data growth
• Read requests
• Write requests
6
Wednesday, September 18, 13
Scaling Needs & Methods
• Data growth
• Read requests
• Write requests
• Vertical Scaling
• Horizontal Scaling
6
Wednesday, September 18, 13
Scaling Needs & Methods
• Data growth
• Read requests
• Write requests
• Vertical Scaling
• Horizontal Scaling
6
Wednesday, September 18, 13
Scaling Needs & Methods
• Data growth
• Read requests
• Write requests
• Vertical Scaling
• Horizontal Scaling
6
Wednesday, September 18, 13
7
Wednesday, September 18, 13
Vertical Scaling (Scale up)
7
Wednesday, September 18, 13
Vertical Scaling (Scale up)
7
Wednesday, September 18, 13
Vertical Scaling (Scale up)
• Pros
7
Wednesday, September 18, 13
Vertical Scaling (Scale up)
• Pros
• Simple to implement
7
Wednesday, September 18, 13
Vertical Scaling (Scale up)
• Pros
• Simple to implement
• Ease of maintenance
7
Wednesday, September 18, 13
Vertical Scaling (Scale up)
• Pros
• Simple to implement
• Ease of maintenance
• Cons
7
Wednesday, September 18, 13
Vertical Scaling (Scale up)
• Pros
• Simple to implement
• Ease of maintenance
• Cons
• Cost of hardware
7
Wednesday, September 18, 13
Vertical Scaling (Scale up)
• Pros
• Simple to implement
• Ease of maintenance
• Cons
• Cost of hardware
• Sometimes SPOFs
7
Wednesday, September 18, 13
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
• Pros
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
• Pros
• Cheaper in hardware cost
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
• Pros
• Cheaper in hardware cost
• Flexibility
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
• Pros
• Cheaper in hardware cost
• Flexibility
• Higher fault tolerance
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
• Pros
• Cheaper in hardware cost
• Flexibility
• Higher fault tolerance
• Cons
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
• Pros
• Cheaper in hardware cost
• Flexibility
• Higher fault tolerance
• Cons
• Complex to implement
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
• Pros
• Cheaper in hardware cost
• Flexibility
• Higher fault tolerance
• Cons
• Complex to implement
• Expensive to maintain
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
• Pros
• Cheaper in hardware cost
• Flexibility
• Higher fault tolerance
• Cons
• Complex to implement
• Expensive to maintain
• Bigger footprint in the Data Center
8
Wednesday, September 18, 13
Horizontal Scaling (Scale Out)
• Pros
• Cheaper in hardware cost
• Flexibility
• Higher fault tolerance
• Cons
• Complex to implement
• Expensive to maintain
• Bigger footprint in the Data Center
• No built in support in databases
8
Wednesday, September 18, 13
9
Wednesday, September 18, 13
Spec’ing Hardware
9
Wednesday, September 18, 13
Spec’ing Hardware
• CPU
9
Wednesday, September 18, 13
Spec’ing Hardware
• CPU
• 8+ cores
9
Wednesday, September 18, 13
Spec’ing Hardware
• CPU
• 8+ cores
• RAM
9
Wednesday, September 18, 13
Spec’ing Hardware
• CPU
• 8+ cores
• RAM
• 64GB+
9
Wednesday, September 18, 13
Spec’ing Hardware
• CPU
• 8+ cores
• RAM
• 64GB+
• Disks
9
Wednesday, September 18, 13
Spec’ing Hardware
• CPU
• 8+ cores
• RAM
• 64GB+
• Disks
• SSDs
9
Wednesday, September 18, 13
Spec’ing Hardware
• CPU
• 8+ cores
• RAM
• 64GB+
• Disks
• SSDs
• RAID 10
9
Wednesday, September 18, 13
Spec’ing Hardware
• CPU
• 8+ cores
• RAM
• 64GB+
• Disks
• SSDs
• RAID 10
• Network
9
Wednesday, September 18, 13
Spec’ing Hardware
• CPU
• 8+ cores
• RAM
• 64GB+
• Disks
• SSDs
• RAID 10
• Network
• min Gigbit, 10Gigbit
9
Wednesday, September 18, 13
10
Wednesday, September 18, 13
Tune Postgres/memory parameters
10
Wednesday, September 18, 13
Tune Postgres/memory parameters
• shared_buffers
10
Wednesday, September 18, 13
Tune Postgres/memory parameters
• shared_buffers
• effective_cache_size
10
Wednesday, September 18, 13
Tune Postgres/memory parameters
• shared_buffers
• effective_cache_size
• checkpoint_completion_target
10
Wednesday, September 18, 13
Tune Postgres/memory parameters
• shared_buffers
• effective_cache_size
• checkpoint_completion_target
• checkpoint_segments
10
Wednesday, September 18, 13
Tune Postgres/memory parameters
• shared_buffers
• effective_cache_size
• checkpoint_completion_target
• checkpoint_segments
• max_connections
10
Wednesday, September 18, 13
Tune Postgres/memory parameters
• shared_buffers
• effective_cache_size
• checkpoint_completion_target
• checkpoint_segments
• max_connections
• work_mem
10
Wednesday, September 18, 13
Tune Postgres/memory parameters
• shared_buffers
• effective_cache_size
• checkpoint_completion_target
• checkpoint_segments
• max_connections
• work_mem
• maintenance_work_mem
10
Wednesday, September 18, 13
Tune Postgres/memory parameters
• shared_buffers
• effective_cache_size
• checkpoint_completion_target
• checkpoint_segments
• max_connections
• work_mem
• maintenance_work_mem
http://wiki.postgresql.org/wiki/Tuning_Your_PostgreSQL_Server
10
Wednesday, September 18, 13
11
Wednesday, September 18, 13
Tune Postgres/logging parameters
11
Wednesday, September 18, 13
Tune Postgres/logging parameters
11
Wednesday, September 18, 13
Tune Postgres/logging parameters
11
Wednesday, September 18, 13
Tune Postgres/logging parameters
• logging_collector => 'on'
11
Wednesday, September 18, 13
Tune Postgres/logging parameters
• logging_collector => 'on'
• log_destination => 'stderr'
11
Wednesday, September 18, 13
Tune Postgres/logging parameters
• logging_collector => 'on'
• log_destination => 'stderr'
• log_filename => 'postgresql-%Y-%m-%d_%H%M%S.log'
11
Wednesday, September 18, 13
Tune Postgres/logging parameters
• logging_collector => 'on'
• log_destination => 'stderr'
• log_filename => 'postgresql-%Y-%m-%d_%H%M%S.log'
• log_line_prefix => '%m [%r] [%p]: [%l-1] user=%u,db=%d,e=%e '
11
Wednesday, September 18, 13
Tune Postgres/logging parameters
• logging_collector => 'on'
• log_destination => 'stderr'
• log_filename => 'postgresql-%Y-%m-%d_%H%M%S.log'
• log_line_prefix => '%m [%r] [%p]: [%l-1] user=%u,db=%d,e=%e '
• log_min_duration_statement => 1000ms
11
Wednesday, September 18, 13
Tune Postgres/logging parameters
• logging_collector => 'on'
• log_destination => 'stderr'
• log_filename => 'postgresql-%Y-%m-%d_%H%M%S.log'
• log_line_prefix => '%m [%r] [%p]: [%l-1] user=%u,db=%d,e=%e '
• log_min_duration_statement => 1000ms
• log_autovacuum_min_duration => '0'
11
Wednesday, September 18, 13
12
Wednesday, September 18, 13
Tune Postgres/logging parameters
12
Wednesday, September 18, 13
Tune Postgres/logging parameters
12
Wednesday, September 18, 13
Tune Postgres/logging parameters
12
Wednesday, September 18, 13
Tune Postgres/logging parameters
• log_lock_waits => 'on'
12
Wednesday, September 18, 13
Tune Postgres/logging parameters
• log_lock_waits => 'on'
• log_temp_files => '0'
12
Wednesday, September 18, 13
Tune Postgres/logging parameters
• log_lock_waits => 'on'
• log_temp_files => '0'
• log_checkpoints => 'on'
12
Wednesday, September 18, 13
Tune Postgres/logging parameters
• log_lock_waits => 'on'
• log_temp_files => '0'
• log_checkpoints => 'on'
• log_connections => 'on'
12
Wednesday, September 18, 13
Tune Postgres/logging parameters
• log_lock_waits => 'on'
• log_temp_files => '0'
• log_checkpoints => 'on'
• log_connections => 'on'
• log_disconnections => 'on'
12
Wednesday, September 18, 13
Tune Postgres/logging parameters
• log_lock_waits => 'on'
• log_temp_files => '0'
• log_checkpoints => 'on'
• log_connections => 'on'
• log_disconnections => 'on'
• log_min_error_statement => 'warning'
12
Wednesday, September 18, 13
Tune Postgres/logging parameters
• log_lock_waits => 'on'
• log_temp_files => '0'
• log_checkpoints => 'on'
• log_connections => 'on'
• log_disconnections => 'on'
• log_min_error_statement => 'warning'
• log_min_messages => 'warning'
12
Wednesday, September 18, 13
Tune Postgres/logging parameters
• log_lock_waits => 'on'
• log_temp_files => '0'
• log_checkpoints => 'on'
• log_connections => 'on'
• log_disconnections => 'on'
• log_min_error_statement => 'warning'
• log_min_messages => 'warning'
• log_statement => 'ddl'
12
Wednesday, September 18, 13
13
Wednesday, September 18, 13
Optimize Queries/report slow queries
13
Wednesday, September 18, 13
Optimize Queries/report slow queries
13
Wednesday, September 18, 13
Optimize Queries/report slow queries
13
Wednesday, September 18, 13
14
Wednesday, September 18, 13
Optimize Queries/Extensive monitoring
14
Wednesday, September 18, 13
Optimize Queries/Extensive monitoring
14
Wednesday, September 18, 13
15
Wednesday, September 18, 13
Optimize Queries /Explain Analyze
15
Wednesday, September 18, 13
Optimize Queries /Explain Analyze
explain (analyze,buffers) select col1,col2 from demo_ios where col2 between 0.01 and 0.02;
QUERY PLAN
-----------------------------------------------------------------------------------------------------------------------------------------------
Index Only Scan using idx_demo_ios on demo_ios (cost=0.00..35330.93 rows=993633 width=16) (actual time=58.100..3250.589
rows=1000392 loops=1)
Index Cond: ((col2 >= 0.01::double precision) AND (col2 <= 0.02::double precision))
Heap Fetches: 0
Buffers: shared hit=923073 read=3848
Total runtime: 4297.405 ms
15
Wednesday, September 18, 13
Optimize Queries /Explain Analyze
explain (analyze,buffers) select col1,col2 from demo_ios where col2 between 0.01 and 0.02;
QUERY PLAN
-----------------------------------------------------------------------------------------------------------------------------------------------
Index Only Scan using idx_demo_ios on demo_ios (cost=0.00..35330.93 rows=993633 width=16) (actual time=58.100..3250.589
rows=1000392 loops=1)
Index Cond: ((col2 >= 0.01::double precision) AND (col2 <= 0.02::double precision))
Heap Fetches: 0
Buffers: shared hit=923073 read=3848
Total runtime: 4297.405 ms
15
Wednesday, September 18, 13
16
Wednesday, September 18, 13
Optimize Queries /track functions
16
Wednesday, September 18, 13
Optimize Queries /track functions
16
Wednesday, September 18, 13
Optimize Queries /track functions
• track_functions = pl # none, pl, all
16
Wednesday, September 18, 13
Optimize Queries /track functions
• track_functions = pl # none, pl, all
• reload online
16
Wednesday, September 18, 13
Optimize Queries /track functions
• track_functions = pl # none, pl, all
• reload online
• select * from pg_stat_user_functions;
16
Wednesday, September 18, 13
Optimize Queries /track functions
• track_functions = pl # none, pl, all
• reload online
• select * from pg_stat_user_functions;
16
Wednesday, September 18, 13
Optimize Queries /track functions
• track_functions = pl # none, pl, all
• reload online
• select * from pg_stat_user_functions;
funcid | schemaname | funcname | calls | total_time | self_time
16
Wednesday, September 18, 13
Optimize Queries /track functions
• track_functions = pl # none, pl, all
• reload online
• select * from pg_stat_user_functions;
funcid | schemaname | funcname | calls | total_time | self_time
16
Wednesday, September 18, 13
17
Wednesday, September 18, 13
Partitioning
17
Wednesday, September 18, 13
Partitioning
• As table size grows, queries eventually slows down, even with indexing
17
Wednesday, September 18, 13
Partitioning
• As table size grows, queries eventually slows down, even with indexing
• Allows data added, removed and queried fast
17
Wednesday, September 18, 13
Partitioning
• As table size grows, queries eventually slows down, even with indexing
• Allows data added, removed and queried fast
• Partitioning pruning queries
17
Wednesday, September 18, 13
Partitioning
• As table size grows, queries eventually slows down, even with indexing
• Allows data added, removed and queried fast
• Partitioning pruning queries
• Manage partitions
17
Wednesday, September 18, 13
18
Wednesday, September 18, 13
Partitioning /Postgres
18
Wednesday, September 18, 13
Partitioning /Postgres
18
Wednesday, September 18, 13
Partitioning /Postgres
• Postgres partitioning
18
Wednesday, September 18, 13
Partitioning /Postgres
• Postgres partitioning
• Trigger based
18
Wednesday, September 18, 13
Partitioning /Postgres
• Postgres partitioning
• Trigger based
• Rule based
18
Wednesday, September 18, 13
Partitioning /Postgres
• Postgres partitioning
• Trigger based
• Rule based
• Lack of built-in Postgres partition management
18
Wednesday, September 18, 13
Partitioning /Postgres
• Postgres partitioning
• Trigger based
• Rule based
• Lack of built-in Postgres partition management
• Postgres partition management extension: pg_partman
18
Wednesday, September 18, 13
Partitioning /Postgres
• Postgres partitioning
• Trigger based
• Rule based
• Lack of built-in Postgres partition management
• Postgres partition management extension: pg_partman
• http://pgxn.org/dist/pg_partman/doc/pg_partman.html
18
Wednesday, September 18, 13
Partitioning /Postgres
• Postgres partitioning
• Trigger based
• Rule based
• Lack of built-in Postgres partition management
• Postgres partition management extension: pg_partman
• http://pgxn.org/dist/pg_partman/doc/pg_partman.html
• Tomorrow’s session at 11:30AM (When Postgres can’t....)
18
Wednesday, September 18, 13
19
Wednesday, September 18, 13
Partitioning /functional
19
Wednesday, September 18, 13
Partitioning /functional
Configuration Data Transaction data Session data
Configuration Tools Reporting Tools Monitoring Tools
Web Applications Other Applications
19
Wednesday, September 18, 13
Partitioning /functional
Configuration Data Transaction data Session data
Configuration Tools Reporting Tools Monitoring Tools
Web Applications Other Applications
• Partition data based on functionality
19
Wednesday, September 18, 13
Partitioning /functional
Configuration Data Transaction data Session data
Configuration Tools Reporting Tools Monitoring Tools
Web Applications Other Applications
• Partition data based on functionality
• Separate Postgres clusters
19
Wednesday, September 18, 13
Partitioning /functional
Configuration Data Transaction data Session data
Configuration Tools Reporting Tools Monitoring Tools
Web Applications Other Applications
• Partition data based on functionality
• Separate Postgres clusters
• Start with Separate schemas
19
Wednesday, September 18, 13
Partitioning /functional
Configuration Data Transaction data Session data
Configuration Tools Reporting Tools Monitoring Tools
Web Applications Other Applications
• Partition data based on functionality
• Separate Postgres clusters
• Start with Separate schemas
• No relationship between data
19
Wednesday, September 18, 13
Partitioning /functional
Configuration Data Transaction data Session data
Configuration Tools Reporting Tools Monitoring Tools
Web Applications Other Applications
• Partition data based on functionality
• Separate Postgres clusters
• Start with Separate schemas
• No relationship between data
• Help to spread the load across server
19
Wednesday, September 18, 13
Partitioning /functional
Configuration Data Transaction data Session data
Configuration Tools Reporting Tools Monitoring Tools
Web Applications Other Applications
• Partition data based on functionality
• Separate Postgres clusters
• Start with Separate schemas
• No relationship between data
• Help to spread the load across server
• Less complex compare to sharding!
19
Wednesday, September 18, 13
20
Wednesday, September 18, 13
pgbouncer
20
Wednesday, September 18, 13
pgbouncer
20
Wednesday, September 18, 13
pgbouncer
20
Wednesday, September 18, 13
pgbouncer
20
Wednesday, September 18, 13
pgbouncer
• A lightweight connection pooler
20
Wednesday, September 18, 13
pgbouncer
• A lightweight connection pooler
• Helps to reduce # of newly created connections on DB server
20
Wednesday, September 18, 13
pgbouncer
• A lightweight connection pooler
• Helps to reduce # of newly created connections on DB server
• Abstracts DBs from App
20
Wednesday, September 18, 13
pgbouncer
• A lightweight connection pooler
• Helps to reduce # of newly created connections on DB server
• Abstracts DBs from App
• Helps to instrument smooth and easy failover
20
Wednesday, September 18, 13
pgbouncer
• A lightweight connection pooler
• Helps to reduce # of newly created connections on DB server
• Abstracts DBs from App
• Helps to instrument smooth and easy failover
• Connection pooling Options
20
Wednesday, September 18, 13
pgbouncer
• A lightweight connection pooler
• Helps to reduce # of newly created connections on DB server
• Abstracts DBs from App
• Helps to instrument smooth and easy failover
• Connection pooling Options
• Session, Transaction, Statement pooling options
20
Wednesday, September 18, 13
pgbouncer
• A lightweight connection pooler
• Helps to reduce # of newly created connections on DB server
• Abstracts DBs from App
• Helps to instrument smooth and easy failover
• Connection pooling Options
• Session, Transaction, Statement pooling options
• Beware! Transaction pooling doesn’t support prepared transactions
20
Wednesday, September 18, 13
21
Wednesday, September 18, 13
Caching
21
Wednesday, September 18, 13
Caching
21
Wednesday, September 18, 13
Caching
• Memcached
21
Wednesday, September 18, 13
Caching
• Memcached
• Open source, High-performance distributed memory object
caching system
21
Wednesday, September 18, 13
Caching
• Memcached
• Open source, High-performance distributed memory object
caching system
• Speeds up dynamic web applications by alleviating database load.
21
Wednesday, September 18, 13
Caching
• Memcached
• Open source, High-performance distributed memory object
caching system
• Speeds up dynamic web applications by alleviating database load.
• An in-memory key-value store for small chunks of arbitrary data
21
Wednesday, September 18, 13
Caching
• Memcached
• Open source, High-performance distributed memory object
caching system
• Speeds up dynamic web applications by alleviating database load.
• An in-memory key-value store for small chunks of arbitrary data
• Redis
21
Wednesday, September 18, 13
Caching
• Memcached
• Open source, High-performance distributed memory object
caching system
• Speeds up dynamic web applications by alleviating database load.
• An in-memory key-value store for small chunks of arbitrary data
• Redis
• Open source, advanced key-value store.
21
Wednesday, September 18, 13
Caching
• Memcached
• Open source, High-performance distributed memory object
caching system
• Speeds up dynamic web applications by alleviating database load.
• An in-memory key-value store for small chunks of arbitrary data
• Redis
• Open source, advanced key-value store.
• Works with an in-memory & persistent dataset
21
Wednesday, September 18, 13
22
Wednesday, September 18, 13
Replication /built-in
22
Wednesday, September 18, 13
Replication /built-in
• Cluster Level Replication (Binary)
22
Wednesday, September 18, 13
Replication /built-in
• Cluster Level Replication (Binary)
• Streaming Replication
22
Wednesday, September 18, 13
Replication /built-in
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
22
Wednesday, September 18, 13
Replication /built-in
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
Master
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
Master
Failover• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
Master
Failover
Read
Salve 1
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
Master
Failover
Read
Salve 1
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
Master
Failover
Read
Salve 1
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
Master
Failover
Read
Salve 1
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
Master
Failover
Read
Salve 1
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
Master
Failover
Read
Salve 1
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
• Pros:
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
• Pros:
• Built-in
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
• Pros:
• Built-in
• Allows to open replicated database in read-only mode
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
• Pros:
• Built-in
• Allows to open replicated database in read-only mode
• Cons:
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
• Pros:
• Built-in
• Allows to open replicated database in read-only mode
• Cons:
• All or none
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
• Pros:
• Built-in
• Allows to open replicated database in read-only mode
• Cons:
• All or none
• Doesn’t allow write on replicated database
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
• Pros:
• Built-in
• Allows to open replicated database in read-only mode
• Cons:
• All or none
• Doesn’t allow write on replicated database
• Doesn’t work across major version
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
• Pros:
• Built-in
• Allows to open replicated database in read-only mode
• Cons:
• All or none
• Doesn’t allow write on replicated database
• Doesn’t work across major version
• Postgres 9.2 (primary) does NOT replicate to 9.3 (secondary)
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
• Pros:
• Built-in
• Allows to open replicated database in read-only mode
• Cons:
• All or none
• Doesn’t allow write on replicated database
• Doesn’t work across major version
• Postgres 9.2 (primary) does NOT replicate to 9.3 (secondary)
• Postgres 9.2.1 (primary) can replicate to 9.2.4 (secondary)
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
Replication /built-in
• Pros:
• Built-in
• Allows to open replicated database in read-only mode
• Cons:
• All or none
• Doesn’t allow write on replicated database
• Doesn’t work across major version
• Postgres 9.2 (primary) does NOT replicate to 9.3 (secondary)
• Postgres 9.2.1 (primary) can replicate to 9.2.4 (secondary)
Master
Failover
Read
Salve 1
PITR!
PITR!
PITR!
Streaming Replication
https://wiki.postgresql.org/wiki/Binary_Replication_Tools
• Cluster Level Replication (Binary)
• Streaming Replication
• WAL-only replication
• Hybrid replication
22
Wednesday, September 18, 13
23
Wednesday, September 18, 13
Replication /built-in
23
Wednesday, September 18, 13
Replication /built-in
Read
Salve 1
23
Wednesday, September 18, 13
Replication /built-in
Read
Salve 1
DW
System
23
Wednesday, September 18, 13
Replication /built-in
Read
Salve 1
DW
System
23
Wednesday, September 18, 13
Replication /built-in
Read
Salve 1
DW
System
postgres_fdw
23
Wednesday, September 18, 13
Replication /built-in
Read
Salve 1
DW
System
postgres_fdw
23
Wednesday, September 18, 13
Replication /built-in
Read
Salve 1
DW
System
postgres_fdw
23
Wednesday, September 18, 13
Replication /built-in
• postgres_fdw
Read
Salve 1
DW
System
postgres_fdw
23
Wednesday, September 18, 13
Replication /built-in
• postgres_fdw
• Postgres 9.3 feature
Read
Salve 1
DW
System
postgres_fdw
23
Wednesday, September 18, 13
Replication /built-in
• postgres_fdw
• Postgres 9.3 feature
• Allows to access data stored in external PostgreSQL
servers
Read
Salve 1
DW
System
postgres_fdw
23
Wednesday, September 18, 13
Replication /built-in
• postgres_fdw
• Postgres 9.3 feature
• Allows to access data stored in external PostgreSQL
servers
• cross version queries
Read
Salve 1
DW
System
postgres_fdw
23
Wednesday, September 18, 13
Replication /built-in
• postgres_fdw
• Postgres 9.3 feature
• Allows to access data stored in external PostgreSQL
servers
• cross version queries
• Postgres 9.3 could query Postgres 9.1
Read
Salve 1
DW
System
postgres_fdw
23
Wednesday, September 18, 13
Replication /built-in
• postgres_fdw
• Postgres 9.3 feature
• Allows to access data stored in external PostgreSQL
servers
• cross version queries
• Postgres 9.3 could query Postgres 9.1
• Application
Read
Salve 1
DW
System
postgres_fdw
23
Wednesday, September 18, 13
Replication /built-in
• postgres_fdw
• Postgres 9.3 feature
• Allows to access data stored in external PostgreSQL
servers
• cross version queries
• Postgres 9.3 could query Postgres 9.1
• Application
• Run query remotely on slave db
Read
Salve 1
DW
System
postgres_fdw
23
Wednesday, September 18, 13
Replication /built-in
• postgres_fdw
• Postgres 9.3 feature
• Allows to access data stored in external PostgreSQL
servers
• cross version queries
• Postgres 9.3 could query Postgres 9.1
• Application
• Run query remotely on slave db
• Data warehouse data refreshes
Read
Salve 1
DW
System
postgres_fdw
23
Wednesday, September 18, 13
24
Wednesday, September 18, 13
Replication /third-party tools
24
Wednesday, September 18, 13
Replication /third-party tools
24
Wednesday, September 18, 13
Replication /third-party tools
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
• Bucardo
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
• Bucardo
• Mimeo: http://pgxn.org/dist/mimeo/
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
• Bucardo
• Mimeo: http://pgxn.org/dist/mimeo/
• Pros:
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
• Bucardo
• Mimeo: http://pgxn.org/dist/mimeo/
• Pros:
• Allows to open replicated database in read-
write mode
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
• Bucardo
• Mimeo: http://pgxn.org/dist/mimeo/
• Pros:
• Allows to open replicated database in read-
write mode
• Allows table/database level replication
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
• Bucardo
• Mimeo: http://pgxn.org/dist/mimeo/
• Pros:
• Allows to open replicated database in read-
write mode
• Allows table/database level replication
• Allows rolling upgrade
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
• Bucardo
• Mimeo: http://pgxn.org/dist/mimeo/
• Pros:
• Allows to open replicated database in read-
write mode
• Allows table/database level replication
• Allows rolling upgrade
• cross version replication is allowed
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
• Bucardo
• Mimeo: http://pgxn.org/dist/mimeo/
• Pros:
• Allows to open replicated database in read-
write mode
• Allows table/database level replication
• Allows rolling upgrade
• cross version replication is allowed
• Multi-master replication
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
• Bucardo
• Mimeo: http://pgxn.org/dist/mimeo/
• Pros:
• Allows to open replicated database in read-
write mode
• Allows table/database level replication
• Allows rolling upgrade
• cross version replication is allowed
• Multi-master replication
• Cons:
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
• Bucardo
• Mimeo: http://pgxn.org/dist/mimeo/
• Pros:
• Allows to open replicated database in read-
write mode
• Allows table/database level replication
• Allows rolling upgrade
• cross version replication is allowed
• Multi-master replication
• Cons:
• Complicated to setup
24
Wednesday, September 18, 13
Replication /third-party tools
• Table level Replication Tools (Trigger based)
• Slony
• Bucardo
• Mimeo: http://pgxn.org/dist/mimeo/
• Pros:
• Allows to open replicated database in read-
write mode
• Allows table/database level replication
• Allows rolling upgrade
• cross version replication is allowed
• Multi-master replication
• Cons:
• Complicated to setup
• Unknown territory
24
Wednesday, September 18, 13
25
Wednesday, September 18, 13
Sharding
25
Wednesday, September 18, 13
Sharding
25
Wednesday, September 18, 13
Sharding
25
Wednesday, September 18, 13
Sharding
• Sharding is the process of splitting up your data so it resides in
different tables or often different physical databases.
25
Wednesday, September 18, 13
Sharding
• Sharding is the process of splitting up your data so it resides in
different tables or often different physical databases.
• Application aware sharding
25
Wednesday, September 18, 13
Sharding
• Sharding is the process of splitting up your data so it resides in
different tables or often different physical databases.
• Application aware sharding
• Application transparent sharding
25
Wednesday, September 18, 13
26
Wednesday, September 18, 13
Application aware sharding
26
Wednesday, September 18, 13
Application aware sharding
26
Wednesday, September 18, 13
Application aware sharding
26
Wednesday, September 18, 13
Application aware sharding
• http://instagram-engineering.tumblr.com/
post/10853187575/sharding-ids-at-
instagram
26
Wednesday, September 18, 13
Application aware sharding
• http://instagram-engineering.tumblr.com/
post/10853187575/sharding-ids-at-
instagram
• Postgres allows “logical” shards through
Schema
26
Wednesday, September 18, 13
Application aware sharding
• http://instagram-engineering.tumblr.com/
post/10853187575/sharding-ids-at-
instagram
• Postgres allows “logical” shards through
Schema
• Easy to move to “physical” shard later
26
Wednesday, September 18, 13
27
Wednesday, September 18, 13
Application transparent sharding
27
Wednesday, September 18, 13
Application transparent sharding
27
Wednesday, September 18, 13
28
Wednesday, September 18, 13
Sharding Challenges
28
Wednesday, September 18, 13
Sharding Challenges
• Reliability
28
Wednesday, September 18, 13
Sharding Challenges
• Reliability
• Distributed queries
28
Wednesday, September 18, 13
Sharding Challenges
• Reliability
• Distributed queries
• Cross-shard join
28
Wednesday, September 18, 13
Sharding Challenges
• Reliability
• Distributed queries
• Cross-shard join
• Auto-increment key management
28
Wednesday, September 18, 13
Sharding Challenges
• Reliability
• Distributed queries
• Cross-shard join
• Auto-increment key management
• Choosing shard key
28
Wednesday, September 18, 13
Sharding Challenges
• Reliability
• Distributed queries
• Cross-shard join
• Auto-increment key management
• Choosing shard key
• Shard schemes
28
Wednesday, September 18, 13
29
Wednesday, September 18, 13
Obstacles for Scaling Postgres
29
Wednesday, September 18, 13
Obstacles for Scaling Postgres
29
Wednesday, September 18, 13
Obstacles for Scaling Postgres
• Postgres table bloat
29
Wednesday, September 18, 13
Obstacles for Scaling Postgres
• Postgres table bloat
• FKs relationships
29
Wednesday, September 18, 13
Obstacles for Scaling Postgres
• Postgres table bloat
• FKs relationships
• Insufficient logging
29
Wednesday, September 18, 13
Obstacles for Scaling Postgres
• Postgres table bloat
• FKs relationships
• Insufficient logging
• Insufficient Caching
29
Wednesday, September 18, 13
Obstacles for Scaling Postgres
• Postgres table bloat
• FKs relationships
• Insufficient logging
• Insufficient Caching
• Insufficient Monitoring and Metrics
29
Wednesday, September 18, 13
Obstacles for Scaling Postgres
• Postgres table bloat
• FKs relationships
• Insufficient logging
• Insufficient Caching
• Insufficient Monitoring and Metrics
• ORMs
29
Wednesday, September 18, 13
Obstacles for Scaling Postgres
• Postgres table bloat
• FKs relationships
• Insufficient logging
• Insufficient Caching
• Insufficient Monitoring and Metrics
• ORMs
• Single Point of Failure
29
Wednesday, September 18, 13
Obstacles for Scaling Postgres
• Postgres table bloat
• FKs relationships
• Insufficient logging
• Insufficient Caching
• Insufficient Monitoring and Metrics
• ORMs
• Single Point of Failure
• Lack of communications between teams
29
Wednesday, September 18, 13
30
Wednesday, September 18, 13
Beyond Postgres
30
Wednesday, September 18, 13
Beyond Postgres
30
Wednesday, September 18, 13
Beyond Postgres
• Avoid serialization in application code
30
Wednesday, September 18, 13
Beyond Postgres
• Avoid serialization in application code
• Feature Flags
30
Wednesday, September 18, 13
Beyond Postgres
• Avoid serialization in application code
• Feature Flags
• Browse only mode (Read only mode)
30
Wednesday, September 18, 13
Beyond Postgres
• Avoid serialization in application code
• Feature Flags
• Browse only mode (Read only mode)
• Don’t use database for Queuing
30
Wednesday, September 18, 13
Beyond Postgres
• Avoid serialization in application code
• Feature Flags
• Browse only mode (Read only mode)
• Don’t use database for Queuing
• RabbitMQ
30
Wednesday, September 18, 13
Beyond Postgres
• Avoid serialization in application code
• Feature Flags
• Browse only mode (Read only mode)
• Don’t use database for Queuing
• RabbitMQ
• Reconsider options for Full Text Search
30
Wednesday, September 18, 13
Beyond Postgres
• Avoid serialization in application code
• Feature Flags
• Browse only mode (Read only mode)
• Don’t use database for Queuing
• RabbitMQ
• Reconsider options for Full Text Search
• tsearch provided by Postgres
30
Wednesday, September 18, 13
Beyond Postgres
• Avoid serialization in application code
• Feature Flags
• Browse only mode (Read only mode)
• Don’t use database for Queuing
• RabbitMQ
• Reconsider options for Full Text Search
• tsearch provided by Postgres
• Solr, Lucene
30
Wednesday, September 18, 13
31
Wednesday, September 18, 13
Further reading . . .
31
Wednesday, September 18, 13
Further reading . . .
• Scalable Internet Architectures - Theo Schlossnagle
• Web Operations: Keeping the Data On Time - John Allspaw , Jesse
Robbins
• PostgreSQL 9.0 High Performance - Greg Smith
31
Wednesday, September 18, 13
32
Wednesday, September 18, 13
References
32
Wednesday, September 18, 13
References
32
Wednesday, September 18, 13
References
• http://www.postgresql.org/docs/
• http://www.circonus.com
• http://pgbouncer.projects.pgfoundry.org/doc/usage.html
• http://pgxn.org/dist/pg_partman/doc/pg_partman.html
• http://dalibo.github.io/pgbadger/
• https://github.com/omniti-labs/omnipitr
• http://instagram-engineering.tumblr.com/post/10853187575/
sharding-ids-at-instagram
• http://memcached.org
• http://redis.io
• http://postgres-xc.sourceforge.net/docs/1_1/
32
Wednesday, September 18, 13
Thanks
• PostgresOpen Conference Committee
• OmniTI
• You!!
33
Wednesday, September 18, 13

More Related Content

Viewers also liked

PostgreSQL Scaling And Failover
PostgreSQL Scaling And FailoverPostgreSQL Scaling And Failover
PostgreSQL Scaling And Failover
John Paulett
 
plProxy, pgBouncer, pgBalancer
plProxy, pgBouncer, pgBalancerplProxy, pgBouncer, pgBalancer
plProxy, pgBouncer, pgBalancerelliando dias
 
Pro Postgres 9
Pro Postgres 9Pro Postgres 9
Pro Postgres 9
Robert Treat
 
Postgres-XC Write Scalable PostgreSQL Cluster
Postgres-XC Write Scalable PostgreSQL ClusterPostgres-XC Write Scalable PostgreSQL Cluster
Postgres-XC Write Scalable PostgreSQL Cluster
Mason Sharp
 
Advanced WAL File Management With OmniPITR
Advanced WAL File Management With OmniPITRAdvanced WAL File Management With OmniPITR
Advanced WAL File Management With OmniPITR
Robert Treat
 
Think_your_Postgres_backups_and_recovery_are_safe_lets_talk.pptx
Think_your_Postgres_backups_and_recovery_are_safe_lets_talk.pptxThink_your_Postgres_backups_and_recovery_are_safe_lets_talk.pptx
Think_your_Postgres_backups_and_recovery_are_safe_lets_talk.pptx
Payal Singh
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
Seth Familian
 
Backups
BackupsBackups
Backups
Payal Singh
 
Inaugural Addresses
Inaugural AddressesInaugural Addresses
Inaugural Addresses
Booz Allen Hamilton
 
Teaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & TextspeakTeaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & Textspeak
Shelly Sanchez Terrell
 
UX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and ArchivesUX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and Archives
Ned Potter
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
Luminary Labs
 
Designing Teams for Emerging Challenges
Designing Teams for Emerging ChallengesDesigning Teams for Emerging Challenges
Designing Teams for Emerging Challenges
Aaron Irizarry
 
Deploying Maximum HA Architecture With PostgreSQL
Deploying Maximum HA Architecture With PostgreSQLDeploying Maximum HA Architecture With PostgreSQL
Deploying Maximum HA Architecture With PostgreSQL
Denish Patel
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
Drift
 
Why PostgreSQL for Analytics Infrastructure (DW)?
Why PostgreSQL for Analytics Infrastructure (DW)?Why PostgreSQL for Analytics Infrastructure (DW)?
Why PostgreSQL for Analytics Infrastructure (DW)?
Huy Nguyen
 
7 Ways To Crash Postgres
7 Ways To Crash Postgres7 Ways To Crash Postgres
7 Ways To Crash Postgres
PostgreSQL Experts, Inc.
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
Leslie Samuel
 
Fancy pants
Fancy pantsFancy pants
Fancy pants
Jan Schaumann
 
Demystifying PostgreSQL
Demystifying PostgreSQLDemystifying PostgreSQL
Demystifying PostgreSQL
NOLOH LLC.
 

Viewers also liked (20)

PostgreSQL Scaling And Failover
PostgreSQL Scaling And FailoverPostgreSQL Scaling And Failover
PostgreSQL Scaling And Failover
 
plProxy, pgBouncer, pgBalancer
plProxy, pgBouncer, pgBalancerplProxy, pgBouncer, pgBalancer
plProxy, pgBouncer, pgBalancer
 
Pro Postgres 9
Pro Postgres 9Pro Postgres 9
Pro Postgres 9
 
Postgres-XC Write Scalable PostgreSQL Cluster
Postgres-XC Write Scalable PostgreSQL ClusterPostgres-XC Write Scalable PostgreSQL Cluster
Postgres-XC Write Scalable PostgreSQL Cluster
 
Advanced WAL File Management With OmniPITR
Advanced WAL File Management With OmniPITRAdvanced WAL File Management With OmniPITR
Advanced WAL File Management With OmniPITR
 
Think_your_Postgres_backups_and_recovery_are_safe_lets_talk.pptx
Think_your_Postgres_backups_and_recovery_are_safe_lets_talk.pptxThink_your_Postgres_backups_and_recovery_are_safe_lets_talk.pptx
Think_your_Postgres_backups_and_recovery_are_safe_lets_talk.pptx
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
Backups
BackupsBackups
Backups
 
Inaugural Addresses
Inaugural AddressesInaugural Addresses
Inaugural Addresses
 
Teaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & TextspeakTeaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & Textspeak
 
UX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and ArchivesUX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and Archives
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 
Designing Teams for Emerging Challenges
Designing Teams for Emerging ChallengesDesigning Teams for Emerging Challenges
Designing Teams for Emerging Challenges
 
Deploying Maximum HA Architecture With PostgreSQL
Deploying Maximum HA Architecture With PostgreSQLDeploying Maximum HA Architecture With PostgreSQL
Deploying Maximum HA Architecture With PostgreSQL
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
 
Why PostgreSQL for Analytics Infrastructure (DW)?
Why PostgreSQL for Analytics Infrastructure (DW)?Why PostgreSQL for Analytics Infrastructure (DW)?
Why PostgreSQL for Analytics Infrastructure (DW)?
 
7 Ways To Crash Postgres
7 Ways To Crash Postgres7 Ways To Crash Postgres
7 Ways To Crash Postgres
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 
Fancy pants
Fancy pantsFancy pants
Fancy pants
 
Demystifying PostgreSQL
Demystifying PostgreSQLDemystifying PostgreSQL
Demystifying PostgreSQL
 

Similar to Scaling postgres

Real-time Analytics with Cassandra, Spark, and Shark
Real-time Analytics with Cassandra, Spark, and SharkReal-time Analytics with Cassandra, Spark, and Shark
Real-time Analytics with Cassandra, Spark, and Shark
Evan Chan
 
Bankers Association Communications Conference Deck
 Bankers Association Communications Conference Deck Bankers Association Communications Conference Deck
Bankers Association Communications Conference DeckHodges_Digital
 
Cassandra at scale
Cassandra at scaleCassandra at scale
Cassandra at scale
Patrick McFadin
 
"Unlocked: The Hybrid Cloud" Business Track
"Unlocked: The Hybrid Cloud" Business Track"Unlocked: The Hybrid Cloud" Business Track
"Unlocked: The Hybrid Cloud" Business Track
Hart Hoover
 
Responsive Design & the Business Analyst
Responsive Design & the Business AnalystResponsive Design & the Business Analyst
Responsive Design & the Business Analyst
Ted Hardy, MBA, CBAP
 
Value-based Pricing - summary
Value-based Pricing - summaryValue-based Pricing - summary
Value-based Pricing - summaryCore Elevation
 
Trending with Purpose
Trending with PurposeTrending with Purpose
Trending with Purpose
Jason Dixon
 
Angular js, Yeomon & Grunt
Angular js, Yeomon & GruntAngular js, Yeomon & Grunt
Angular js, Yeomon & Grunt
Richard Powell
 
Value-Based Pricing: Guide for Digital Agency-Summary
Value-Based Pricing: Guide for Digital Agency-SummaryValue-Based Pricing: Guide for Digital Agency-Summary
Value-Based Pricing: Guide for Digital Agency-Summary
Core Elevation
 
Off Site Backup Strategies
Off Site Backup Strategies Off Site Backup Strategies
Off Site Backup Strategies
Steven Aiello
 
Devopsdays NYC Oct 2013 - SOTU - The Widgets Dilemma
Devopsdays NYC Oct 2013 - SOTU - The Widgets DilemmaDevopsdays NYC Oct 2013 - SOTU - The Widgets Dilemma
Devopsdays NYC Oct 2013 - SOTU - The Widgets DilemmaJohn Willis
 
Making Happy Users: The Science Behind Great User Experiences
Making Happy Users: The Science Behind Great User ExperiencesMaking Happy Users: The Science Behind Great User Experiences
Making Happy Users: The Science Behind Great User Experiences
Hilary Little
 
Optiq: A dynamic data management framework
Optiq: A dynamic data management frameworkOptiq: A dynamic data management framework
Optiq: A dynamic data management framework
Julian Hyde
 
Escalando una PHP App con DB sharding - PHP Conference
Escalando una PHP App con DB sharding - PHP ConferenceEscalando una PHP App con DB sharding - PHP Conference
Escalando una PHP App con DB sharding - PHP Conference
Matias Paterlini
 
2013 - Matías Paterlini: Escalando PHP con sharding y Amazon Web Services
2013 - Matías Paterlini: Escalando PHP con sharding y Amazon Web Services 2013 - Matías Paterlini: Escalando PHP con sharding y Amazon Web Services
2013 - Matías Paterlini: Escalando PHP con sharding y Amazon Web Services
PHP Conference Argentina
 
Cooking an Omelette with Chef
Cooking an Omelette with ChefCooking an Omelette with Chef
Cooking an Omelette with Chef
ctaintor
 
Phpday - Automated acceptance testing with Behat and Mink
Phpday - Automated acceptance testing with Behat and MinkPhpday - Automated acceptance testing with Behat and Mink
Phpday - Automated acceptance testing with Behat and MinkRichard Tuin
 
Pinot: Realtime Distributed OLAP datastore
Pinot: Realtime Distributed OLAP datastorePinot: Realtime Distributed OLAP datastore
Pinot: Realtime Distributed OLAP datastore
Kishore Gopalakrishna
 
Pinotcoursera 151103183418-lva1-app6892 (1)
Pinotcoursera 151103183418-lva1-app6892 (1)Pinotcoursera 151103183418-lva1-app6892 (1)
Pinotcoursera 151103183418-lva1-app6892 (1)
Nayeli Bonilla
 
DataStax Enterprise in the Field – 20160920
DataStax Enterprise in the Field – 20160920DataStax Enterprise in the Field – 20160920
DataStax Enterprise in the Field – 20160920
Daniel Cohen
 

Similar to Scaling postgres (20)

Real-time Analytics with Cassandra, Spark, and Shark
Real-time Analytics with Cassandra, Spark, and SharkReal-time Analytics with Cassandra, Spark, and Shark
Real-time Analytics with Cassandra, Spark, and Shark
 
Bankers Association Communications Conference Deck
 Bankers Association Communications Conference Deck Bankers Association Communications Conference Deck
Bankers Association Communications Conference Deck
 
Cassandra at scale
Cassandra at scaleCassandra at scale
Cassandra at scale
 
"Unlocked: The Hybrid Cloud" Business Track
"Unlocked: The Hybrid Cloud" Business Track"Unlocked: The Hybrid Cloud" Business Track
"Unlocked: The Hybrid Cloud" Business Track
 
Responsive Design & the Business Analyst
Responsive Design & the Business AnalystResponsive Design & the Business Analyst
Responsive Design & the Business Analyst
 
Value-based Pricing - summary
Value-based Pricing - summaryValue-based Pricing - summary
Value-based Pricing - summary
 
Trending with Purpose
Trending with PurposeTrending with Purpose
Trending with Purpose
 
Angular js, Yeomon & Grunt
Angular js, Yeomon & GruntAngular js, Yeomon & Grunt
Angular js, Yeomon & Grunt
 
Value-Based Pricing: Guide for Digital Agency-Summary
Value-Based Pricing: Guide for Digital Agency-SummaryValue-Based Pricing: Guide for Digital Agency-Summary
Value-Based Pricing: Guide for Digital Agency-Summary
 
Off Site Backup Strategies
Off Site Backup Strategies Off Site Backup Strategies
Off Site Backup Strategies
 
Devopsdays NYC Oct 2013 - SOTU - The Widgets Dilemma
Devopsdays NYC Oct 2013 - SOTU - The Widgets DilemmaDevopsdays NYC Oct 2013 - SOTU - The Widgets Dilemma
Devopsdays NYC Oct 2013 - SOTU - The Widgets Dilemma
 
Making Happy Users: The Science Behind Great User Experiences
Making Happy Users: The Science Behind Great User ExperiencesMaking Happy Users: The Science Behind Great User Experiences
Making Happy Users: The Science Behind Great User Experiences
 
Optiq: A dynamic data management framework
Optiq: A dynamic data management frameworkOptiq: A dynamic data management framework
Optiq: A dynamic data management framework
 
Escalando una PHP App con DB sharding - PHP Conference
Escalando una PHP App con DB sharding - PHP ConferenceEscalando una PHP App con DB sharding - PHP Conference
Escalando una PHP App con DB sharding - PHP Conference
 
2013 - Matías Paterlini: Escalando PHP con sharding y Amazon Web Services
2013 - Matías Paterlini: Escalando PHP con sharding y Amazon Web Services 2013 - Matías Paterlini: Escalando PHP con sharding y Amazon Web Services
2013 - Matías Paterlini: Escalando PHP con sharding y Amazon Web Services
 
Cooking an Omelette with Chef
Cooking an Omelette with ChefCooking an Omelette with Chef
Cooking an Omelette with Chef
 
Phpday - Automated acceptance testing with Behat and Mink
Phpday - Automated acceptance testing with Behat and MinkPhpday - Automated acceptance testing with Behat and Mink
Phpday - Automated acceptance testing with Behat and Mink
 
Pinot: Realtime Distributed OLAP datastore
Pinot: Realtime Distributed OLAP datastorePinot: Realtime Distributed OLAP datastore
Pinot: Realtime Distributed OLAP datastore
 
Pinotcoursera 151103183418-lva1-app6892 (1)
Pinotcoursera 151103183418-lva1-app6892 (1)Pinotcoursera 151103183418-lva1-app6892 (1)
Pinotcoursera 151103183418-lva1-app6892 (1)
 
DataStax Enterprise in the Field – 20160920
DataStax Enterprise in the Field – 20160920DataStax Enterprise in the Field – 20160920
DataStax Enterprise in the Field – 20160920
 

More from Denish Patel

Out of the Box Replication in Postgres 9.4(PgConfUS)
Out of the Box Replication in Postgres 9.4(PgConfUS)Out of the Box Replication in Postgres 9.4(PgConfUS)
Out of the Box Replication in Postgres 9.4(PgConfUS)Denish Patel
 
Out of the box replication in postgres 9.4(pg confus)
Out of the box replication in postgres 9.4(pg confus)Out of the box replication in postgres 9.4(pg confus)
Out of the box replication in postgres 9.4(pg confus)
Denish Patel
 
Out of the Box Replication in Postgres 9.4(pgconfsf)
Out of the Box Replication in Postgres 9.4(pgconfsf)Out of the Box Replication in Postgres 9.4(pgconfsf)
Out of the Box Replication in Postgres 9.4(pgconfsf)Denish Patel
 
Out of the Box Replication in Postgres 9.4(PgCon)
Out of the Box Replication in Postgres 9.4(PgCon)Out of the Box Replication in Postgres 9.4(PgCon)
Out of the Box Replication in Postgres 9.4(PgCon)Denish Patel
 
Choosing the "D" , Lightning talk
Choosing the "D" , Lightning talkChoosing the "D" , Lightning talk
Choosing the "D" , Lightning talkDenish Patel
 
Deploying postgre sql on amazon ec2
Deploying postgre sql on amazon ec2 Deploying postgre sql on amazon ec2
Deploying postgre sql on amazon ec2 Denish Patel
 
Two Elephants Inthe Room
Two Elephants Inthe RoomTwo Elephants Inthe Room
Two Elephants Inthe Room
Denish Patel
 
Deploying Maximum HA Architecture With PostgreSQL
Deploying Maximum HA Architecture With PostgreSQLDeploying Maximum HA Architecture With PostgreSQL
Deploying Maximum HA Architecture With PostgreSQLDenish Patel
 
P90 X Your Database!!
P90 X Your Database!!P90 X Your Database!!
P90 X Your Database!!Denish Patel
 
Achieving Pci Compliace
Achieving Pci CompliaceAchieving Pci Compliace
Achieving Pci Compliace
Denish Patel
 
Using SQL Standards? Database SQL comparition
Using SQL Standards? Database SQL comparitionUsing SQL Standards? Database SQL comparition
Using SQL Standards? Database SQL comparition
Denish Patel
 
Oracle10g New Features I
Oracle10g New Features IOracle10g New Features I
Oracle10g New Features IDenish Patel
 
Yet Another Replication Tool: RubyRep
Yet Another Replication Tool: RubyRepYet Another Replication Tool: RubyRep
Yet Another Replication Tool: RubyRep
Denish Patel
 

More from Denish Patel (13)

Out of the Box Replication in Postgres 9.4(PgConfUS)
Out of the Box Replication in Postgres 9.4(PgConfUS)Out of the Box Replication in Postgres 9.4(PgConfUS)
Out of the Box Replication in Postgres 9.4(PgConfUS)
 
Out of the box replication in postgres 9.4(pg confus)
Out of the box replication in postgres 9.4(pg confus)Out of the box replication in postgres 9.4(pg confus)
Out of the box replication in postgres 9.4(pg confus)
 
Out of the Box Replication in Postgres 9.4(pgconfsf)
Out of the Box Replication in Postgres 9.4(pgconfsf)Out of the Box Replication in Postgres 9.4(pgconfsf)
Out of the Box Replication in Postgres 9.4(pgconfsf)
 
Out of the Box Replication in Postgres 9.4(PgCon)
Out of the Box Replication in Postgres 9.4(PgCon)Out of the Box Replication in Postgres 9.4(PgCon)
Out of the Box Replication in Postgres 9.4(PgCon)
 
Choosing the "D" , Lightning talk
Choosing the "D" , Lightning talkChoosing the "D" , Lightning talk
Choosing the "D" , Lightning talk
 
Deploying postgre sql on amazon ec2
Deploying postgre sql on amazon ec2 Deploying postgre sql on amazon ec2
Deploying postgre sql on amazon ec2
 
Two Elephants Inthe Room
Two Elephants Inthe RoomTwo Elephants Inthe Room
Two Elephants Inthe Room
 
Deploying Maximum HA Architecture With PostgreSQL
Deploying Maximum HA Architecture With PostgreSQLDeploying Maximum HA Architecture With PostgreSQL
Deploying Maximum HA Architecture With PostgreSQL
 
P90 X Your Database!!
P90 X Your Database!!P90 X Your Database!!
P90 X Your Database!!
 
Achieving Pci Compliace
Achieving Pci CompliaceAchieving Pci Compliace
Achieving Pci Compliace
 
Using SQL Standards? Database SQL comparition
Using SQL Standards? Database SQL comparitionUsing SQL Standards? Database SQL comparition
Using SQL Standards? Database SQL comparition
 
Oracle10g New Features I
Oracle10g New Features IOracle10g New Features I
Oracle10g New Features I
 
Yet Another Replication Tool: RubyRep
Yet Another Replication Tool: RubyRepYet Another Replication Tool: RubyRep
Yet Another Replication Tool: RubyRep
 

Recently uploaded

JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 

Recently uploaded (20)

JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 

Scaling postgres