#ottertune #rdbms #tuning
Внезапно, есть сервис, который тюнит с помощь МЛ настройки ваших СУБД (postgres,mysql). Оказывается, 40% облачных инстансов overprovisioned. Достигнутые метрики точности, как обычно, никогда не уточняются. На Хабре давно видел статью от Postgres Pro о динамическом ML-планировщике, так и не знаю, пошел ли он в прод.
https://www.youtube.com/watch?v=J_3NHB5bQgM&ab_channel=MicrosoftDeveloper
Внезапно, есть сервис, который тюнит с помощь МЛ настройки ваших СУБД (postgres,mysql). Оказывается, 40% облачных инстансов overprovisioned. Достигнутые метрики точности, как обычно, никогда не уточняются. На Хабре давно видел статью от Postgres Pro о динамическом ML-планировщике, так и не знаю, пошел ли он в прод.
https://www.youtube.com/watch?v=J_3NHB5bQgM&ab_channel=MicrosoftDeveloper
YouTube
Why Postgres Is Better Than MySQL for Automated Knob Tuning | Citus Con: An Event for Postgres 2022
Video of a talk by Dana Van Aken at Citus Con: An Event for Postgres. Abstract: Database management systems (DBMS) expose dozens of configurable knobs that control runtime behavior. Setting these knobs correctly for an application's workload can improve the…
#db #tuning #postgres
Любопытная ситуация. За много лет DBA-шное сообщество, кажется, ничего так и не придумало для оптимизации параметров СУБД. Уж на примере Постгре точно. Разрабам ядра PG положить с прибором на это, они слишком старомодны и консервативны, до сих пор считают, что рабочую память, да и все остальные параметры, сисадмин должен ручками прописывать. Есть pg_bench, но неясно, как его толком применить к настройке. Ведь параметры СУБД взаимодействуют с настройками ОС и ФС, причем зачастую нелинейно. А есть же ещё параметры железа. А еще версии ОС, ФС, СУБД. А еще разные запросы и разное распределение данных в таблицах, поэтому универсальные рекомендации дать трудно. Надо или брутфорсить сотни тысяч комбинаций pgbench-ем (на сервере близком к боевому), или оверпровижинить, или забивать на оптимальность. Почему я один в этом вижу проблему? PostgresPro, возможно, как-то над этим работают, но с их ценником в миллион за ядро я их даже не рассматриваю.
Любопытная ситуация. За много лет DBA-шное сообщество, кажется, ничего так и не придумало для оптимизации параметров СУБД. Уж на примере Постгре точно. Разрабам ядра PG положить с прибором на это, они слишком старомодны и консервативны, до сих пор считают, что рабочую память, да и все остальные параметры, сисадмин должен ручками прописывать. Есть pg_bench, но неясно, как его толком применить к настройке. Ведь параметры СУБД взаимодействуют с настройками ОС и ФС, причем зачастую нелинейно. А есть же ещё параметры железа. А еще версии ОС, ФС, СУБД. А еще разные запросы и разное распределение данных в таблицах, поэтому универсальные рекомендации дать трудно. Надо или брутфорсить сотни тысяч комбинаций pgbench-ем (на сервере близком к боевому), или оверпровижинить, или забивать на оптимальность. Почему я один в этом вижу проблему? PostgresPro, возможно, как-то над этим работают, но с их ценником в миллион за ядро я их даже не рассматриваю.
#postgres #tuning
Отличное руководство по параметрам постгре, в логической разбивке по группам (память, планировщик, безопасность, подключения, репликация, итд.)
https://www.youtube.com/watch?v=13d4BDYSYyM&ab_channel=EDB
Отличное руководство по параметрам постгре, в логической разбивке по группам (память, планировщик, безопасность, подключения, репликация, итд.)
https://www.youtube.com/watch?v=13d4BDYSYyM&ab_channel=EDB
YouTube
How to use postgresql.conf to configure and tune the PostgreSQL server
Tuning your PostgreSQL server plays an important role in making sure you get the most out of your server resources, and running with default parameters is not always enough. Using the PostgreSQL server configuration file postgresql.conf, we can tune the right…
#postgres #tuning
Отличный рассказ про тюнинг параметров СУБД.
https://www.youtube.com/watch?v=IFIXpm73qtk&ab_channel=HighLoadChannel
Отличный рассказ про тюнинг параметров СУБД.
https://www.youtube.com/watch?v=IFIXpm73qtk&ab_channel=HighLoadChannel
YouTube
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
HighLoad++ 2017
Тезисы:
http://www.highload.ru/2017/abstracts/3096.html
PostgreSQL is the world’s most advanced open source database. Indeed! With around 270 configuration parameters in postgresql.conf, plus all the knobs in pg_hba.conf, it is definitely…
Тезисы:
http://www.highload.ru/2017/abstracts/3096.html
PostgreSQL is the world’s most advanced open source database. Indeed! With around 270 configuration parameters in postgresql.conf, plus all the knobs in pg_hba.conf, it is definitely…
#cloud #aws #tuning
Оказывается, некоторые облачные машины можно затюнить под конкретную вычислительную задачу по P- и C- состояниям.
"In this example, vCPUs 21 and 28 are running at their maximum Turbo Boost frequency because the other cores have entered the C6 sleep state to save power and provide both power and thermal headroom for the working cores. vCPUs 3 and 10 (each sharing a processor core with vCPUs 21 and 28) are in the C1 state, waiting for instruction.
In the following example, all 18 cores are actively performing work, so there is no headroom for maximum Turbo Boost, but they are all running at the "all core Turbo Boost" speed of 3.2 GHz.
You can reduce the variability of processor frequency with P-states. P-states control the desired performance (in CPU frequency) from a core. Most workloads perform better in P0, which requests Turbo Boost. But you may want to tune your system for consistent performance rather than bursty performance that can happen when Turbo Boost frequencies are enabled.
Intel Advanced Vector Extensions (AVX or AVX2) workloads can perform well at lower frequencies, and AVX instructions can use more power. Running the processor at a lower frequency, by disabling Turbo Boost, can reduce the amount of power used and keep the speed more consistent. For more information about optimizing your instance configuration and workload for AVX."
https://docs.aws.amazon.com/linux/al2/ug/processor_state_control.html
Оказывается, некоторые облачные машины можно затюнить под конкретную вычислительную задачу по P- и C- состояниям.
"In this example, vCPUs 21 and 28 are running at their maximum Turbo Boost frequency because the other cores have entered the C6 sleep state to save power and provide both power and thermal headroom for the working cores. vCPUs 3 and 10 (each sharing a processor core with vCPUs 21 and 28) are in the C1 state, waiting for instruction.
In the following example, all 18 cores are actively performing work, so there is no headroom for maximum Turbo Boost, but they are all running at the "all core Turbo Boost" speed of 3.2 GHz.
You can reduce the variability of processor frequency with P-states. P-states control the desired performance (in CPU frequency) from a core. Most workloads perform better in P0, which requests Turbo Boost. But you may want to tune your system for consistent performance rather than bursty performance that can happen when Turbo Boost frequencies are enabled.
Intel Advanced Vector Extensions (AVX or AVX2) workloads can perform well at lower frequencies, and AVX instructions can use more power. Running the processor at a lower frequency, by disabling Turbo Boost, can reduce the amount of power used and keep the speed more consistent. For more information about optimizing your instance configuration and workload for AVX."
https://docs.aws.amazon.com/linux/al2/ug/processor_state_control.html
Amazon
Processor state control for your Amazon EC2 AL2 instance - Amazon Linux 2
Some EC2 instance types provide the ability for an operating system to control processor C-states and P-states.