Παρακαλώ χρησιμοποιήστε αυτό το αναγνωριστικό για να παραπέμψετε ή να δημιουργήσετε σύνδεσμο προς αυτό το τεκμήριο:
http://elartu.tntu.edu.ua/handle/lib/47067
Title: | Аналіз стратегій покращення продуктивності реляційних систем керування базами даних на прикладі PostgreSQL |
Other Titles: | Analysis of strategies for the Performance Improving of Relational Database Management Systems Using PostgreSQL as an Example |
Authors: | Чекановський, Андрій Богданович Chekanovskyi, Andrii |
Affiliation: | Тернопільський національний технічний університет імені Івана Пулюя, факультет комп’ютерно-інформаційних систем і програмної інженерії, кафедра комп’ютерних наук, м. Тернопіль, Україна |
Bibliographic description (Ukraine): | Чекановський А. Б. Аналіз стратегій покращення продуктивності реляційних систем керування базами даних на прикладі PostgreSQL : робота на здобуття кваліфікаційного ступеня магістра : спец. 122 - комп’ютерні науки / наук. кер. І. О. Боднарчук. Тернопіль : Тернопільський національний технічний університет імені Івана Пулюя, 2024. 65 с. |
Issue Date: | 27-Δεκ-2024 |
Submitted date: | 13-Δεκ-2024 |
Date of entry: | 3-Ιαν-2025 |
Publisher: | Тернопільський національний технічний університет імені Івана Пулюя |
Country (code): | UA |
Place of the edition/event: | ТНТУ ім. І.Пулюя, ФІС, м. Тернопіль, Україна |
Supervisor: | Боднарчук, Ігор Орестович Bodnarchuk, Ihor |
UDC: | 004.65 |
Keywords: | комп’ютерні науки аналіз база даних конфігурація метрика оптимізація продуктивність ресурс analysis configuration database metric optimization performance resource |
Page range: | 65 |
Abstract: | Кваліфікаційна робота присвячена аналізу стратегій покращення продуктивності реляційних СКБД на прикладі PostgreSQL.
У першому розділі кваліфікаційної роботи описані значення продуктивності баз даних у сучасних інформаційних системах, ключові показники продуктивності, а також фактори, що впливають на неї.
У другому розділі кваліфікаційної роботи розглянуто архітектуру PostgreSQL, життєвий цикл виконання запитів, ключові елементи плану запиту. Проаналізовано проектування схеми бази даних, детально описано індексацію та її типи. Описано нормалізацію та денормалізацію, а також наведено ефективність матеріалізованих представлень. Описано управління ключами, роль реплікації та шардингу. Проаналізовано вплив конфігураційних параметрів, а також ефективність використання апаратних ресурсів і RAID рівнів.
У третьому розділі кваліфікаційної роботи описано тестове середовище, конфігурацію бази даних і використані інструменти для аналізу продуктивності. Проаналізовано результати впровадження різних типів індексів на продуктивність запитів, оптимізацію ключів, а також вплив змін конфігураційних параметрів на загальну ефективність роботи системи. Проведено відповідні експерименти. The thesis is devoted to analyzing strategies for improving the performance of relational database management systems (RDBMS), with PostgreSQL as a case study. The first chapter describes the significance of database performance in modern information systems, key performance indicators, and the factors influencing them. The second chapter examines the architecture of PostgreSQL, the lifecycle of query execution, and the essential components of query plans. It analyzes database schema design, provides detailed insights into indexing and its types, and describes normalization, denormalization, and the efficiency of materialized views. Key management, the role of replication, and sharding are also explored. The chapter further evaluates the impact of configuration parameters and the effectiveness of utilizing hardware resources and RAID levels. The third chapter presents the test environment, database configuration, and tools used for performance analysis. It assesses the impact of implementing various types of indexes on query performance, key optimization, and the influence of changes to configuration parameters on overall system efficiency. Corresponding experiments were conducted. |
Description: | Роботу виконано на кафедрі комп'ютерних наук Тернопільського національного технічного університету імені Івана Пулюя. Захист відбудеться 27.12.2024 р. о 10 год. на засіданні екзаменаційної комісії №35 у Тернопільському національному технічному університеті імені Івана Пулюя |
Content: | ВСТУП 8 1 АНАЛІЗ ПРЕДМЕТНОЇ ОБЛАСТІ 10 1.1 Значення продуктивності баз даних у сучасних інформаційних системах 10 1.2 Показники продуктивності баз даних 11 1.3 Фактори, що впливають на продуктивність баз даних 14 1.4 Висновок до першого розділу 15 2 СТРАТЕГІЇ ПОКРАЩЕННЯ ПРОДУКТИВНОСТІ СИСТЕМ КЕРУВАННЯ БАЗАМИ ДАНИХ 16 2.1 Внутрішня структура та механізми PostgreSQL 16 2.1.1 Ключові аспекти архітектури PostgreSQL 16 2.1.2 Життєвий цикл запиту 17 2.1.3 План запиту 19 2.1.4 Роль команди «EXPLAIN» 21 2.2 Проектування ефективної схеми бази даних 21 2.3 Індексація 22 2.1.1 Індекс B-дерева 23 2.1.2 Хеш-індекс 25 2.1.3 GIST-індекс 26 2.1.4 GIN-індекс 26 2.1.5 BRIN-індекс 27 2.4 Оптимізація запитів 28 2.5 Нормалізація та денормалізація бази даних 30 2.6 Матеріалізовані представлення 30 2.7 Управління ключами 31 2.8 Реплікація та шардинг 32 2.9 Конфігурація бази даних 33 2.10 Оптимізація апаратних ресурсів 36 2.11 Використання RAID рівнів 37 2.12 Висновок до другого розділу 38 3 ПРАКТИЧНЕ ДОСЛІДЖЕННЯ СТРАТЕГІЙ ОПТИМІЗАЦІЇ 39 3.1 Опис експерименту та тестового середовища 39 3.1.2 Структура БД та конфігураційні параметри СУБД 39 3.1.3 Наповнення таблиць даними 43 3.1.4 Інструменти та засоби для аналізу продуктивності 44 3.2 Заходи для забезпечення достовірності результатів 45 3.3 Вплив індексування на продуктивність запитів 46 3.4 Управління ключами 58 3.5 Конфігурація бази даних 62 3.6 Висновок до третього розділу 66 4 ОХОРОНА ПРАЦІ ТА БЕЗПЕКА В НАДЗВИЧАЙНИХ СИТУАЦІЯХ 67 4.1 Охорона праці 67 4.1.1 Вимоги безпеки щодо організації робочих місць 67 4.1.2 Вимоги до профілактичних медичних оглядів для працівників за ПК 70 4.2 Безпека в надзвичайних ситуаціях 72 4.2.1 Проведення рятувальних та інших невідкладних робіт на об’єкті господарської діяльності в осередку ураження 72 4.2.2 Вплив виробничого середовища на працездатність та здоров’я користувачів комп’ютерів 74 4.3 Висновок до четвертого розділу 75 ВИСНОВКИ 76 ПЕРЕЛІК ВИКОРИСТАНИХ ДЖЕРЕЛ 77 ДОДАТКИ 85 |
URI: | http://elartu.tntu.edu.ua/handle/lib/47067 |
Copyright owner: | © Чекановський Андрій Богданович, 2024 |
References (Ukraine): | 1. Римарчук О. Підвищення продуктивності системи баз даних в середовищі обчислювального кластеру / Римарчук О. // Матеріали Ⅵ всеукраїнської студентської науково-технічної конференції „Природничі та гуманітарні науки. Актуальні питання.“, 25-26 квітня 2013 року — Т. : ТНТУ, 2013 — Том 1. — С. 108 2. Дерень А. Дослідження якості систем керування базами даних / Дерень А. // Матеріали Ⅲ Всеукраїнської студентської науково-технічної конференції „Природничі та гуманітарні науки. Актуальні питання“, 22-23 квітня 2010 року — Т. : ТНТУ, 2010 — Том 1. — С. 68. 3. Шаряк В. Методи дослідження системних характеристик моделей бази даних / В. Шаряк // Вісник ТДТУ. — Т. : ТДТУ, 2008. — Том 13. — № 2. — С. 116–121 4. What Is a Database?. Oracle | Cloud Applications and Cloud Platform. URL: https://www.oracle.com/database/what-is-database/ (дата звернення: 07.06.2024) 5. How Databases Can Help Improve Business Performance - The European Business Review. The European Business Review. URL: https://www.europeanbusinessreview.com/how-databases-can-help-improve-business-performance/ (дата звернення: 09.06.2024) 6. Team O. The Importance of Databases in Today's Digital World. OptimizDBA. URL: https://optimizdba.com/the-importance-of-databases-in-todays-digital-world/ (дата звернення: 10.06.2024) 7. Scalability and Performance: Different but Crucial Database Management Capabilities. Database Trends and Applications. URL: https://www.dbta.com/Editorial/Think-About-It/Scalability-and-Performance-Different-but-Crucial-Database-Management-Capabilities-161866.aspx (дата звернення: 11.06.2024) 8. The Most Important Database Performance Metrics - DBPLUS Better Performance. DBPLUS Better Performance. URL: https://dbplus.tech/en/2024/06/06/the-most-important-database-performance-metrics/ (дата звернення: 11.06.2024) 9. Database Performance Metrics to Know for Intro to Database Systems. Focused study guides for every class | Fiveable. URL: https://library.fiveable.me/lists/database-performance-metrics (дата звернення: 13.06.2024) 10. Cache Hit Ratio Metric | DigitalOcean Documentation. Docs Home :: DigitalOcean Documentation. URL: https://docs.digitalocean.com/glossary/cache-hit-ratio (дата звернення: 15.06.2024) 11. Understanding PostgreSQL's Cache Hit Ratio | Redgate. Redgate. URL: https://www.red-gate.com/hub/product-learning/redgate-monitor/understanding-postgresqls-cache-hit-ratio (дата звернення: 16.06.2024) 12. Key Metrics and Tools for Effective PostgreSQL Monitoring. Percona Database Performance Blog. URL: https://www.percona.com/blog/key-metrics-and-tools-for-effective-postgresql-monitoring (дата звернення: 25.06.2024) 13. What factors affect database performance?. Dragonfly - The Fastest In-Memory Data Store. URL: https://www.dragonflydb.io/faq/what-factors-affect-database-performance (дата звернення: 28.06.2024) 14. Team O. Ways to Optimize Your Database Performance. OptimizDBA.com. URL: https://optimizdba.com/ways-to-optimize-your-database-performance/ (дата звернення: 30.06.2024) 15. Contributors to Wikimedia projects. PostgreSQL - Wikipedia. Wikipedia, the free encyclopedia. URL: https://en.wikipedia.org/wiki/PostgreSQL (дата звернення: 01.07.2024) 16. Understanding PostgreSQL architecture and attributes. Prisma's Data Guide. URL: https://www.prisma.io/dataguide/postgresql/getting-to-know-postgresql (дата звернення: 03.07.2024) 17. Instaclustr. Understanding the Fundamentals of PostgreSQL® Architecture. Medium. URL: https://instaclustr.medium.com/understanding-the-fundamentals-of-postgresql-architecture-98ce3672376f (дата звернення: 04.07.2024) 18. Ferrari L., Pirozzi E. Learn PostgreSQL - Second Edition: Use, manage and build secure and scalable databases with PostgreSQL 16 : Навчальний посібник. 2nd ed. Birmingham : Packt Publishing, 2023. 745 c. 19. PostgreSQL: ANALYZE and optimizer statistics. CYBERTEC PostgreSQL | Services & Support. URL: https://www.cybertec-postgresql.com/en/postgresql-analyze-and-optimizer-statistics/ (дата звернення: 07.07.2024) 20. The Basics of Postgres Query Planning • pganalyze. Postgres performance at any scale | PostgreSQL Tuning - pganalyze. URL: https://pganalyze.com/docs/explain/basics-of-postgres-query-planning (дата звернення: 12.07.2024) 21. Monitoring Postgres EXPLAIN plans • pganalyze. Postgres performance at any scale | PostgreSQL Tuning - pganalyze. URL: https://pganalyze.com/docs/explain (дата звернення: 15.07.2024) 22. An Overview of the Various Scan Methods in PostgreSQL. Severalnines. URL: https://severalnines.com/blog/overview-various-scan-methods-postgresql (дата звернення: 18.07.2024) 23. Kelkar S. Understanding a Postgres query plan. Medium. URL: https://sskelkar.medium.com/understanding-a-postgres-query-plan-75e8e1dc7d35 (дата звернення: 19.07.2024) 24. One Index, Three Different PostgreSQL Scan Types: Bitmap, Index, and Index Only. Percona Database Performance Blog. URL: https://www.percona.com/blog/one-index-three-different-postgresql-scan-types-bitmap-index-and-index-only (дата звернення: 21.07.2024) 25. Rogov E. PostgreSQL 14 Internals : Навчальний посібник. Moscow : ДМК Пресс, 2023. 548 c. 26. Explaining PostgreSQL EXPLAIN | Timescale. PostgreSQL ++ for time series and events | Timescale. URL: https://www.timescale.com/learn/explaining-postgresql-explain (дата звернення: 31.07.2024) 27. The Importance of Database Performance for Developers | MySQL Database Performance | performed without giving any access to your production data. MySQL CONSULTANT DBA CANADA. URL: https://ericvanier.com/the-importance-of-database-performance-for-developers (дата звернення: 04.08.2024) 28. Contributors to Wikimedia projects. Database index - Wikipedia. Wikipedia, the free encyclopedia. URL: https://en.wikipedia.org/wiki/Database_index (дата звернення: 06.08.2024) 29. Smith G. PostgreSQL 9.0 High Performance: Accelerate your PostgreSQL system and avoid the common pitfalls that can slow it down : Навчальний посібник. Birmingham : Packt Publishing, 2010. 468 с. 30. Indexes in PostgreSQL – 1. Postgres Professional. URL: https://postgrespro.com/blog/pgsql/3994098 (дата звернення: 12.08.2024) 31. Contributors to Wikimedia projects. B-tree - Wikipedia. Wikipedia, the free encyclopedia. URL: https://en.wikipedia.org/wiki/B-tree (дата звернення: 13.08.2024) 32. Indexes in PostgreSQL – 4 (Btree). Postgres Professional. URL: https://postgrespro.com/blog/pgsql/4161516 (дата звернення: 17.08.2024) 33. Index Types. PostgreSQL Documentation. URL: https://www.postgresql.org/docs/current/indexes-types.html (дата звернення: 21.08.2024) 34. An Introduction to B-Tree and Hash Indexes in PostgreSQL. SolarWinds THWACK Community. URL: https://thwack.solarwinds.com/groups/data-driven/b/blog/posts/an-introduction-to-b-tree-and-hash-indexes-in-postgresql (дата звернення: 22.08.2024) 35. Indexes in PostgreSQL – 5 (GiST). Postgres Professional. URL: https://postgrespro.com/blog/pgsql/4175817 (дата звернення: 24.08.2024) 36. Full Text Search in Milliseconds with Rails and PostgreSQL. pganalyze. URL: https://pganalyze.com/blog/full-text-search-ruby-rails-postgres (дата звернення: 29.08.2024) 37. Holt D. Database Indexes: Trigram. Dan The Engineer. URL: https://dantheengineer.com/database-indexes-trigram/ (дата звернення: 30.08.2024) 38. Fast Search Using PostgreSQL Trigram Text Indexes. The most-comprehensive AI-powered DevSecOps platform | GitLab. URL: https://about.gitlab.com/blog/2016/03/18/fast-search-using-postgresql-trigram-indexes (дата звернення: 01.09.2024) 39. Postgres Indexing: When Does BRIN Win? | Crunchy Data Blog. Crunchy Data. URL: https://www.crunchydata.com/blog/postgres-indexing-when-does-brin-win (дата звернення: 03.09.2024) 40. Query Optimization. Dremio. URL: https://www.dremio.com/wiki/query-optimization (дата звернення: 05.09.2024) 41. Guide to PostgreSQL Performance | Timescale. PostgreSQL ++ for time series and events | Timescale. URL: https://www.timescale.com/learn/guide-to-postgresql-performance (дата звернення: 06.09.2024) 42. Blaze V. Maximizing PostgreSQL: Advanced Techniques for Better Performance. Medium. URL: https://blog.devgenius.io/maximizing-postgresql-advanced-techniques-for-better-performance-5ff46f3f982c (дата звернення: 07.09.2024) 43. Нормалізація СУБД: приклад бази даних 1NF, 2NF, 3NF. Guru99. URL: https://www.guru99.com/uk/database-normalization.html (дата звернення: 10.09.2024) 44. Kumar Rath M., Kumar Mishra S. Denormalisation : Towards Improved Performance. Srusti Management Review. 2012. Т. 5, № 2. С. 145–152 45. Gratas B. Denormalization in Databases: Pros, Cons, and Techniques. InvGate ITSM. URL: https://blog.invgate.com/denormalization-in-databases (дата звернення: 14.09.2024) 46. Materialized Views: Precompute with Postgres | Hydra. Hydra. URL: https://www.hydra.so/blog-posts/2023-05-30-materialized-views-precompute-with-postgres (дата звернення: 17.09.2024) 47. Svojanovsky T. Unlocking PostgreSQL’s Potential: Exploring Views vs. Materialized Views. Medium. URL: https://blog.stackademic.com/unlocking-postgresqls-potential-exploring-views-vs-materialized-views-8ef1ef76d14f (дата звернення: 25.09.2024) 48. UUID Insecurities. HackTricks. URL: https://book.hacktricks.xyz/ua/pentesting-web/uuid-insecurities (дата звернення: 29.09.2024) 49. Jonathan N. What is ULID and why should you start using it?. DEV Community. URL: https://dev.to/nejos97/what-is-ulid-and-why-should-you-start-using-it-14j9 (дата звернення: 30.09.2024) 50. Advantages of Sharding vs Replication. Double Cloud. URL: https://double.cloud/blog/posts/2022/09/advantages-of-sharding-vs-replication/ (дата звернення: 04.10.2024) 51. How to Benchmark PostgreSQL Performance. Severalnines. URL: https://severalnines.com/blog/benchmarking-postgresql-performance/ (дата звернення: 09.10.2024) 52. Li C. How to Boost PostgreSQL Cache Performance. Medium. URL: https://redfin.engineering/how-to-boost-postgresql-cache-performance-8db383dc2d8f (дата звернення: 10.10.2024) 53. PostgreSQL Performance Tuning: Optimizing Database Parameters for Maximum Efficiency. Percona Database Performance Blog. URL: https://www.percona.com/blog/tuning-postgresql-database-parameters-to-optimize-performance (дата звернення: 11.10.2024) 54. Drljaca B. Hardware Optimization: Best Practices for Database Performance Boost. dzone.com. URL: https://dzone.com/articles/hardware-optimization-best-practices-for-database (дата звернення: 12.10.2024) 55. PostgreSQL Performance Tuning: Optimize Your Database Server. EDB. URL: https://www.enterprisedb.com/postgres-tutorials/introduction-postgresql-performance-tuning-and-optimization (дата звернення: 14.10.2024) 56. What is Docker?. Docker Documentation. URL: https://docs.docker.com/get-started/docker-overview (дата звернення: 15.10.2024) 57. psql. PostgreSQL Documentation. URL: https://www.postgresql.org/docs/9.0/app-psql.html (дата звернення: 17.10.2024) 58. How To Benchmark PostgreSQL Queries Well. Tangram Vision | Sensor Tools & Perception Infrastructure. URL: https://www.tangramvision.com/blog/how-to-benchmark-postgresql-queries-well (дата звернення: 18.10.2024) 59. Організація праці на робочому місці. Вимоги безпеки щодо організації робочих місць. Vseosvita. URL: https://vseosvita.ua/lesson/orhanizatsiia-pratsi-na-robochomu-mistsivymohy-bezpeky-shchodo-orhanizatsii-robochykh-mists-341443.html (дата звернення: 21.10.2024) 60. Голінько В. І. Охорона праці в галузі інформаційних технологій: навч. посіб. / В. І. Голінько, М. Ю. Іконніков, Я. Я. Лебедєв; М-во освіти і науки України, Держ. вищий навч. закл. "Нац. гірн. ун-т". - Дніпропетровськ: НГУ, 2015. - 246 с. 61. Вимоги безпеки щодо організації робочих місць. Buklib. URL: https://buklib.net/books/31185/ (дата звернення: 21.10.2024) 62. Гандзюк М.П. Основи охорони праці: Підручник. 4-е вид./Гандзюк М.П., Желібо Є.П., Халімовський М.О. - Київ: Каревела, 2008. – 384с. 63. Техноекологія та цивільна безпека. Частина «Цивільна безпека»: Навчальний посібник; укл.: Стручок В. С. Тернопіль: ФОП Паляниця В.А., 2022. 150 с. 64. Безпека в надзвичайних ситуаціях. Методичний посібник для здобувачів освітнього ступеня «магістр» всіх спеціальностей денної та заочної (дистанційної) форм навчання / укл.: Стручок В. С. Тернопіль: ФОП Паляниця В. А., 2022. 156 с. 65. Умови праці працівників, які використовують у роботі персональні комп'ютери. Zolochiv.Net. URL: https://zolochiv.net/umovy-pratsi-pratsivnykiv-iaki-vykorystovuiut-u-roboti-personal-ni-komp-iutery/ (дата звернення: 25.10.2024) |
Content type: | Master Thesis |
Εμφανίζεται στις συλλογές: | 122 — комп’ютерні науки |
Αρχεία σε αυτό το τεκμήριο:
Αρχείο | Περιγραφή | Μέγεθος | Μορφότυπος | |
---|---|---|---|---|
Mag_2024_SNm_61_Chekanovskyi_A_B_v11.pdf | Дипломна робота | 1,84 MB | Adobe PDF | Δείτε/ Ανοίξτε |
Όλα τα τεκμήρια του δικτυακού τόπου προστατεύονται από πνευματικά δικαιώματα
Εργαλεία διαχειριστή