Категорії
Електронні книги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комп'ютер в офісі
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Мультимедійне навчання
- Нерухомість
- Переконання та НЛП
- Податки
- Соціальна політика
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Звіти, аналізи
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Електронна преса
- Architektura i wnętrza
- Biznes i Ekonomia
- Будинок та сад
- Електронний бізнес
- Фінанси
- Особисті фінанси
- Бізнес
- Фотографія
- Інформатика
- Відділ кадрів та оплата праці
- Комп'ютери, Excel
- Бухгалтерія
- Культура та література
- Наукові та академічні
- Охорона навколишнього середовища
- Впливові
- Освіта
- Податки
- Подорожі
- Психологія
- Релігія
- Сільське господарство
- Ринок книг і преси
- Транспорт та спедиція
- Здоров'я та краса
-
Історія
-
Інформатика
- Офісні застосунки
- Бази даних
- Біоінформатика
- Бізнес ІТ
- CAD/CAM
- Digital Lifestyle
- DTP
- Електроніка
- Цифрова фотографія
- Комп'ютерна графіка
- Ігри
- Хакування
- Hardware
- IT w ekonomii
- Наукові пакети
- Шкільні підручники
- Основи комп'ютера
- Програмування
- Мобільне програмування
- Інтернет-сервери
- Комп'ютерні мережі
- Стартап
- Операційні системи
- Штучний інтелект
- Технологія для дітей
- Вебмайстерність
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Оповідна поезія
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Шкільні підручники
-
Науково-популярна та академічна
- Археологія
- Bibliotekoznawstwo
- Кінознавство / Теорія кіно
- Філологія
- Польська філологія
- Філософія
- Finanse i bankowość
- Географія
- Економіка
- Торгівля. Світова економіка
- Історія та археологія
- Історія мистецтва і архітектури
- Культурологія
- Мовознавство
- літературні студії
- Логістика
- Математика
- Ліки
- Гуманітарні науки
- Педагогіка
- Навчальні засоби
- Науково-популярна
- Інше
- Психологія
- Соціологія
- Театральні студії
- Богослов’я
- Економічні теорії та науки
- Transport i spedycja
- Фізичне виховання
- Zarządzanie i marketing
-
Порадники
-
Ігрові посібники
-
Професійні та спеціальні порадники
-
Юридична
- Безпека життєдіяльності
- Історія
- Дорожній кодекс. Водійські права
- Юридичні науки
- Охорона здоров'я
- Загальне, компендіум
- Академічні підручники
- Інше
- Закон про будівництво і житло
- Цивільне право
- Фінансове право
- Господарське право
- Господарське та комерційне право
- Кримінальний закон
- Кримінальне право. Кримінальні злочини. Кримінологія
- Міжнародне право
- Міжнародне та іноземне право
- Закон про охорону здоров'я
- Закон про освіту
- Податкове право
- Трудове право та законодавство про соціальне забезпечення
- Громадське, конституційне та адміністративне право
- Кодекс про шлюб і сім'ю
- Аграрне право
- Соціальне право, трудове право
- Законодавство Євросоюзу
- Промисловість
- Сільське господарство та захист навколишнього середовища
- Словники та енциклопедії
- Державні закупівлі
- Управління
-
Путівники та подорожі
- Африка
- Альбоми
- Південна Америка
- Центральна та Північна Америка
- Австралія, Нова Зеландія, Океанія
- Австрія
- Азії
- Балкани
- Близький Схід
- Болгарія
- Китай
- Хорватія
- Чеська Республіка
- Данія
- Єгипет
- Естонія
- Європа
- Франція
- Гори
- Греція
- Іспанія
- Нідерланди
- Ісландія
- Литва
- Латвія
- Mapy, Plany miast, Atlasy
- Мініпутівники
- Німеччина
- Норвегія
- Активні подорожі
- Польща
- Португалія
- Інше
- Росія
- Румунія
- Словаччина
- Словенія
- Швейцарія
- Швеція
- Світ
- Туреччина
- Україна
- Угорщина
- Велика Британія
- Італія
-
Психологія
- Філософія життя
- Kompetencje psychospołeczne
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Аудіокниги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Нерухомість
- Переконання та НЛП
- Податки
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Історія
-
Інформатика
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Науково-популярна та академічна
-
Порадники
-
Професійні та спеціальні порадники
-
Юридична
-
Путівники та подорожі
-
Психологія
- Філософія життя
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Відеокурси
-
Бази даних
-
Big Data
-
Biznes, ekonomia i marketing
-
Кібербезпека
-
Data Science
-
DevOps
-
Для дітей
-
Електроніка
-
Графіка / Відео / CAX
-
Ігри
-
Microsoft Office
-
Інструменти розробки
-
Програмування
-
Особистісний розвиток
-
Комп'ютерні мережі
-
Операційні системи
-
Тестування програмного забезпечення
-
Мобільні пристрої
-
UX/UI
-
Веброзробка, Web development
-
Управління
Подкасти
- Електронні книги
- Бази даних
- SQL
- PostgreSQL 9.0 High Performance. If you’re an intermediate to advanced database administrator, this book is the shortcut to optimizing and troubleshooting your PostgreSQL database. With a balanced mix of theory and practice, it will quickly hone your expertise
Деталі електронної книги
Увійти, Якщо вас цікавить зміст видання.
PostgreSQL 9.0 High Performance. If you’re an intermediate to advanced database administrator, this book is the shortcut to optimizing and troubleshooting your PostgreSQL database. With a balanced mix of theory and practice, it will quickly hone your expertise
Gregory Smith, David Page Postgre Group
Eлектронна книга
PostgreSQL database servers have a common set of problems they encounter as their usage gets heavier and requirements more demanding. You could spend years discovering solutions to them all, step by step as you encounter them. Or you can just look in here.All successful database applications are destined to eventually run into issues scaling up their performance. Peek into the future of your PostgreSQL database's problems today. Know the warning signs to look for, and how to avoid the most common issues before they even happen.Surprisingly, most PostgreSQL database applications evolve in the same way: Choose the right hardware. Tune the operating system and server memory use. Optimize queries against the database, with the right indexes. Monitor every layer, from hardware to queries, using some tools that are inside PostgreSQL and others that are external.
Using monitoring insight, continuously rework the design and configuration. On reaching the limits of a single server, break things up; connection pooling, caching, partitioning, and replication can all help handle increasing database workloads.
The path to a high performance database system isn't always easy. But it doesn't have to be mysterious with the right guide.
Using monitoring insight, continuously rework the design and configuration. On reaching the limits of a single server, break things up; connection pooling, caching, partitioning, and replication can all help handle increasing database workloads.
The path to a high performance database system isn't always easy. But it doesn't have to be mysterious with the right guide.
- PostgreSQL 9.0 High Performance
- PostgreSQL 9.0 High Performance
- Credits
- About the Author
- About the Reviewers
- Preface
- What this book covers
- What you need for this book
- Who this book is for
- Conventions
- Reader feedback
- Customer support
- Errata
- Piracy
- Questions
- 1. PostgreSQL Versions
- Performance of historical PostgreSQL releases
- Choosing a version to deploy
- Upgrading to a newer major version
- Upgrades to PostgreSQL 8.3+ from earlier ones
- Minor version upgrades
- PostgreSQL or another database?
- PostgreSQL tools
- PostgreSQL contrib
- Finding contrib modules on your system
- Installing a contrib module from source
- Using a contrib module
- pgFoundry
- Additional PostgreSQL-related software
- PostgreSQL contrib
- PostgreSQL application scaling lifecycle
- Performance tuning as a practice
- Summary
- Performance of historical PostgreSQL releases
- 2. Database Hardware
- Balancing hardware spending
- CPUs
- Memory
- Disks
- RAID
- Drive error handling
- Hard drive reliability studies
- Drive firmware and RAID
- SSDs
- Disk controllers
- Hardware and Software RAID
- Recommended disk controllers
- Attached storageSAN and NAS
- Reliable controller and disk setup
- Write-back caches
- Sources of write-back caching
- Disk controller monitoring
- Disabling drive write caches
- Performance impact of write-through caching
- Write-back caches
- Summary
- Balancing hardware spending
- 3. Database Hardware Benchmarking
- CPU and memory benchmarking
- memtest86+
- STREAM memory testing
- STREAM and Intel vs. AMD
- CPU benchmarking
- Sources of slow memory and processors
- Physical disk performance
- Random access and I/Os Per Second
- Sequential access and ZCAV
- Short stroking
- Commit rate
- PostgreSQL test_fsync
- INSERT rate
- Windows commit rate
- Disk benchmarking tools
- hdtune
- Short stroking tests
- IOPS
- Unpredictable performance and Windows
- dd
- bonnie++
- bonnie++ 2.0
- bonnie++ ZCAV
- sysbench
- Seek rate
- fsync commit rate
- Complicated disk benchmarks
- hdtune
- Sample disk results
- Disk performance expectations
- Sources of slow disk and array performance
- Disk performance expectations
- Summary
- CPU and memory benchmarking
- 4. Disk Setup
- Maximum filesystem sizes
- Filesystem crash recovery
- Journaling filesystems
- Linux filesystems
- ext2
- ext3
- ext4
- XFS
- Other Linux filesystems
- Write barriers
- Drive support for barriers
- Filesystem support for barriers
- General Linux filesystem tuning
- Read-ahead
- File access times
- Read caching and swapping
- Write cache sizing
- I/O scheduler elevator
- Solaris and FreeBSD filesystems
- Solaris UFS
- FreeBSD UFS2
- ZFS
- Windows filesystems
- FAT32
- NTFS
- Adjusting mounting behaviour
- Disk layout for PostgreSQL
- Symbolic links
- Tablespaces
- Database directory tree
- Temporary files
- Disk arrays, RAID, and disk layout
- Disk layout guidelines
- Summary
- 5. Memory for Database Caching
- Memory units in the postgresql.conf
- Increasing UNIX shared memory parameters for larger buffer sizes
- Kernel semaphores
- Estimating shared memory allocation
- Inspecting the database cache
- Installing pg_buffercache into a database
- Database disk layout
- Creating a new block in a database
- Writing dirty blocks to disk
- Crash recovery and the buffer cache
- Checkpoint processing basics
- Write-ahead log and recovery processing
- Checkpoint timing
- Checkpoint spikes
- Spread checkpoints
- Database block lifecycle
- Dirty block write paths
- Database buffer cache versus operating system cache
- Doubly cached data
- Inspecting the OS cache
- Checkpoint overhead
- Starting size guidelines
- Platform, version, and workload limitations
- Doubly cached data
- Analyzing buffer cache contents
- Inspection of the buffer cache queries
- Top relations in the cache
- Summary by usage count
- Buffer contents summary, with percentages
- Buffer usage count distribution
- Using buffer cache inspection for sizing feedback
- Inspection of the buffer cache queries
- Summary
- 6. Server Configuration Tuning
- Interacting with the live configuration
- Defaults and reset values
- Allowed change context
- Reloading the configuration file
- Commented out settings
- Server-wide settings
- Database connections
- listen_addresses
- max_connections
- Shared memory
- shared_buffers
- Free space map (FSM) settings
- Logging
- log_line_prefix
- log_statement
- log_min_duration_statement
- Vacuuming and statistics
- autovacuum
- Enabling autovacuum on older versions
- maintainance_work_mem
- default_statistics_target
- Checkpoints
- checkpoint_segments
- checkpoint_timeout
- checkpoint_completion_target
- WAL settings
- wal_buffers
- wal_sync_method
- PITR and WAL Replication
- Database connections
- Per-client settings
- effective_cache_size
- synchronous_commit
- work_mem
- random_page_cost
- constraint_exclusion
- Tunables to avoid
- fsync
- full_page_writes
- commit_delay and commit_siblings
- max_prepared_transactions
- Query enable parameters
- New server tuning
- Dedicated server guidelines
- Shared server guidelines
- pgtune
- Summary
- Interacting with the live configuration
- 7. Routine Maintenance
- Transaction visibility with multiversion concurrency control
- Visibility computation internals
- Updates
- Row lock conflicts
- Serialization
- Deletions
- Advantages of MVCC
- Disadvantages of MVCC
- Transaction ID wraparound
- Vacuum
- Vacuum Implementation
- Regular vacuum
- Returning free disk space
- Full vacuum
- HOT
- Cost-based vacuuming
- autovacuum
- autovacuum logging
- autovacuum monitoring
- autovacuum triggering
- Per-table adjustments
- Common vacuum and autovacuum problems
- autovacuum is running even though it was turned off
- autovacuum is constantly running
- Out of memory errors
- Not keeping up on a busy server
- autovacuum is too disruptive
- Long running transactions
- Free Space Map exhaustion
- Recovering from major problems
- Vacuum Implementation
- Autoanalyze
- Index bloat
- Measuring index bloat
- Detailed data and index page monitoring
- Monitoring query logs
- Basic PostgreSQL log setup
- Log collection
- log_line_prefix
- Multi-line queries
- Using syslog for log messages
- CSV logging
- Logging difficult queries
- auto_explain
- Log file analysis
- Normalized query fingerprints
- pg_stat_statements
- pgFouine
- PQA
- EPQA
- pgsi
- mk-query-digest
- Basic PostgreSQL log setup
- Summary
- Transaction visibility with multiversion concurrency control
- 8. Database Benchmarking
- pgbench default tests
- Table definition
- Scale detection
- Query script definition
- Configuring the database server for pgbench
- Sample server configuration
- Running pgbench manually
- Graphing results with pgbench-tools
- Configuring pgbench-tools
- Customizing for 8.3
- Configuring pgbench-tools
- Sample pgbench test results
- SELECT-only test
- TPC-B-like test
- Latency analysis
- Sources for bad results and variation
- Developer PostgreSQL builds
- Worker threads and pgbench program limitations
- pgbench custom tests
- Insert speed test
- Transaction Processing Performance Council benchmarks
- Summary
- pgbench default tests
- 9. Database Indexing
- Indexing example walkthrough
- Measuring query disk and index block statistics
- Running the example
- Sample data setup
- Simple index lookups
- Full table scans
- Index creation
- Lookup with an inefficient index
- Combining indexes
- Switching from indexed to sequential scans
- Planning for plan changes
- Clustering against an index
- Explain with buffer counts
- Index creation and maintenance
- Unique indexes
- Concurrent index creation
- Clustering an index
- Fill factor
- Reindexing
- Index types
- B-tree
- Text operator classes
- Hash
- GIN
- GiST
- B-tree
- Advanced index use
- Multicolumn indexes
- Indexes for sorting
- Partial indexes
- Expression-based indexes
- Indexing for full-text search
- Summary
- Indexing example walkthrough
- 10. Query Optimization
- Sample data sets
- Pagila
- Dell Store 2
- EXPLAIN basics
- Timing overhead
- Hot and cold cache behavior
- Clearing the cache
- Query plan node structure
- Basic cost computation
- Estimated costs and real world costs
- Basic cost computation
- Explain analysis tools
- Visual explain
- Verbose output
- Machine readable explain output
- Plan analysis tools
- Assembling row sets
- Tuple id
- Object id
- Sequential scan
- Index scan
- Bitmap heap and index scans
- Tuple id
- Processing nodes
- Sort
- Limit
- Offsets
- Aggregate
- HashAggregate
- Unique
- WindowAgg
- Result
- Append
- Group
- Subquery Scan and Subplan
- Subquery conversion and IN lists
- Set operations
- Materialize
- CTE Scan
- Joins
- Nested loop
- Nested loop with inner Index Scan
- Merge Join
- Nested loop and Merge Join materialization
- Hash Joins
- Hash semi and anti joins
- Join ordering
- Forcing join order
- Join removal
- Genetic query optimizer
- Nested loop
- Statistics
- Viewing and estimating with statistics
- Statistics targets
- Adjusting a column target
- Distinct values
- Difficult areas to estimate
- Other query planning parameters
- effective_cache_size
- work_mem
- constraint_exclusion
- cursor_tuple_fraction
- Executing other statement types
- Improving queries
- Optimizing for fully cached data sets
- Testing for query equivalence
- Disabling optimizer features
- Working around optimizer bugs
- Avoiding plan restructuring with OFFSET
- External trouble spots
- SQL Limitations
- Numbering rows in SQL
- Using Window functions for numbering
- Using Window functions for cumulatives
- Summary
- Sample data sets
- 11. Database Activity and Statistics
- Statistics views
- Cumulative and live views
- Table statistics
- Table I/O
- Index statistics
- Index I/O
- Database wide totals
- Connections and activity
- Locks
- Virtual transactions
- Decoding lock information
- Transaction lock waits
- Table lock waits
- Logging lock information
- Deadlocks
- Disk usage
- Buffer, background writer, and checkpoint activity
- Saving pg_stat_bgwriter snapshots
- Tuning using background writer statistics
- Summary
- 12. Monitoring and Trending
- UNIX monitoring tools
- Sample setup
- vmstat
- iostat
- iotop for Linux
- Examples of good performance
- Overloaded system samples
- top
- Solaris top replacements
- htop for Linux
- sysstat and sar
- Enabling sysstat and its optional features
- Graphing with kSar
- Windows monitoring tools
- Task Manager
- Sysinternals tools
- Windows System Monitor
- Saving Windows System Monitor data
- Task Manager
- Trending software
- Types of monitoring and trending software
- Storing historical trend data
- Nagios
- Nagios and PostgreSQL
- Nagios and Windows
- Cacti
- Cacti and PostgreSQL
- Cacti and Windows
- Munin
- Other trending packages
- pgstatspack
- Zenoss
- Hyperic HQ
- Reconnoiter
- Staplr
- SNMP tools
- Types of monitoring and trending software
- Summary
- UNIX monitoring tools
- 13. Pooling and Caching
- Connection pooling
- Pooling connection counts
- pgpool-II
- pgpool-II load balancing for replication scaling
- pgBouncer
- Application server pooling
- Database caching
- memcached
- pgmemcache
- Summary
- Connection pooling
- 14. Scaling with Replication
- Hot Standby
- Terminology
- Setting up WAL shipping
- Streaming Replication
- Tuning Hot Standby
- Replication queue managers
- Slony
- Londiste
- Read scaling with replication queue software
- Special application requirements
- Bucardo
- pgpool-II
- Other interesting replication projects
- Summary
- Hot Standby
- 15. Partitioning Data
- Table range partitioning
- Determining a key field to partition over
- Sizing the partitions
- List partitioning
- Creating the partitions
- Redirecting INSERT statements to the partitions
- Dynamic trigger functions
- Partition rules
- Empty partition query plans
- Date change update trigger
- Live migration of a partitioned table
- Partitioned queries
- Creating new partitions
- Scheduled creation
- Dynamic creation
- Partitioning advantages
- Common partitioning mistakes
- Horizontal partitioning with PL/Proxy
- Hash generation
- Scaling with PL/Proxy
- Sharding
- Scaling with GridSQL
- Summary
- Table range partitioning
- 16. Avoiding Common Problems
- Bulk loading
- Loading methods
- External loading programs
- Tuning for bulk loads
- Skipping WAL acceleration
- Recreating indexes and adding constraints
- Parallel restore
- Post load cleanup
- Loading methods
- Common performance issues
- Counting rows
- Unexplained writes
- Slow function and prepared statement execution
- PL/pgSQL benchmarking
- High foreign key overhead
- Trigger memory use
- Heavy statistics collector overhead
- Targeted statistics resets
- Materialized views
- Profiling the database
- gprof
- OProfile
- Visual Studio
- DTrace
- DTrace on FreeBSD
- Linux SystemTap emulation of DTrace
- Performance related features by version
- Aggressive PostgreSQL version upgrades
- 8.1
- 8.2
- 8.3
- 8.4
- 9.0
- Replication
- Queries and EXPLAIN
- Database development
- Configuration and monitoring
- Tools
- Internals
- Summary
- Bulk loading
- Назва: PostgreSQL 9.0 High Performance. If you‚Äôre an intermediate to advanced database administrator, this book is the shortcut to optimizing and troubleshooting your PostgreSQL database. With a balanced mix of theory and practice, it will quickly hone your expertise
- Автор: Gregory Smith, David Page Postgre Group
- Оригінальна назва: PostgreSQL 9.0 High Performance. If you‚Äôre an intermediate to advanced database administrator, this book is the shortcut to optimizing and troubleshooting your PostgreSQL database. With a balanced mix of theory and practice, it will quickly hone your expertise.
- ISBN: 9781849510318, 9781849510318
- Дата видання: 2010-10-20
- Формат: Eлектронна книга
- Ідентифікатор видання: e_31mx
- Видавець: Packt Publishing