| Функция | PostgreSQL 14+ | MySQL 8+ |
|---|---|---|
| CTE | Есть | Есть |
| Декларативное секционирование | Есть | Есть |
| Полнотекстовый поиск | Есть | Есть |
| GIS и SRS | Есть | Есть |
| JSON | Есть | Есть |
| Логическая репликация | Есть | Есть |
| Полусинхронная репликация | Есть | Есть |
| Оконные функции | Есть | Есть |
| Транзакционный DDL | Есть | Есть |
| PostgreSQL | MySQL |
|---|---|
| PGPool или PgBouncer | Сlient-side connection pool |
| MySQL | PostgreSQL |
|---|---|
| Размер кластерного индекса | Размер таблицы |
| Количество строк | Количество строк |
| Количество страниц в памяти |
| MySQL | PostgreSQL |
|---|---|
| Распределение данных, в том числе доля NULL-значений | Распределение данных, в том числе доля NULL-значений |
| Средний размер колонки в байтах | |
| Количество уникальных значений | |
| Статистическая корреляция между физическим порядком строк и логическим порядком значений столбца | |
| Наиболее часто встречаемые значения и их частота |
| MySQL | PostgreSQL |
|---|---|
| Функциональные зависимости | |
| Количество уникальных значений |
ACID описывает требования к транзакционной системе, обеспечивающие наиболее надёжную и предсказуемую её работу.
| id | name | notes |
|---|---|---|
| 1 | Alice | Great at programming |
| 2 | Bob | Always talking to alice |
| 3 | Eve | Listens to everyone's conversations |
| id | name | notes |
|---|---|---|
| 1 | Alice |
read
Great at programming
|
| 2 | Bob | Always talking to alice |
| 3 | Eve | Listens to everyone's conversations |
| id | name | notes |
|---|---|---|
| 1 | Alice | Great at programming |
|
~ update
2
|
Bob | Always talking to alice |
| 3 | Eve | Listens to everyone's conversations |
| id | name | notes |
|---|---|---|
| 1 | Alice | Great at programming |
|
~ update
2
|
Bob | Working very hard |
| 3 | Eve | Listens to everyone's conversations |
| id | name | notes |
|---|---|---|
| 1 | Alice | Great at programming |
| 2 | Bob | Working very hard |
| 3 | Eve | Listens to everyone's conversations |
|
+ insert
4
|
Dave | Very promising new-hire |
| id | name | notes |
|---|---|---|
| 1 | Alice | Great at programming |
| 2 | Bob | Working very hard |
|
- delete
3
|
Eve | Listens to everyone's conversations |
| 4 | Dave | Very promising new-hire |
| id | name | notes |
|---|---|---|
| 1 | Alice | Great at programming |
| 2 | Bob | Working very hard |
| 4 | Dave | Very promising new-hire |
| id | name | notes |
|---|---|---|
| 1 | Alice |
read
Great at programming
|
|
+ update
2
|
Bob | Working very hard |
|
- delete
3
|
Eve | Listens to everyone's conversations |
|
+ insert
4
|
Dave | Very promising new-hire |
Два основных типа архитектур индекса
Связанные понятия
Все индексы являются некластерными (вторичными), так как хранятся в отдельной структуре в табличной куче
Есть поддержка составных, частичных, функциональных
Большой выбор встроенных типов индексов:
В табличке может быть 1 кластерный и несколько некластерных индексов
Есть поддержка составных, частичных, но нет поддержки функциональных
Большой выбор встроенных типов индексов: