Нужен Postgresql гуру
Цена договорная
•
безналичный расчёт, электронные деньги
Нам нужно сделать так, чтобы explain (или может есть какой-то другой способ) на всех серверах показывал одну и туже стоимость запроса, если в таблицах одинаковые данные. При этом производительность не должна пострадать.
Сейчас показывает вот такое:
eg2=# EXPLAIN (FORMAT JSON) select * from "3_keys";
QUERY PLAN
----------------------------------
[ +
{ +
"Plan": { +
"Node Type": "Seq Scan", +
"Parallel Aware": false, +
"Relation Name": "3_keys",+
"Alias": "3_keys", +
"Startup Cost": 0.00, +
"Total Cost": 18.60, +
"Plan Rows": 860, +
"Plan Width": 66 +
} +
} +
]
(1 row)
eg2=# EXPLAIN (FORMAT JSON) select * from "1_keys";
QUERY PLAN
----------------------------------
[ +
{ +
"Plan": { +
"Node Type": "Seq Scan", +
"Parallel Aware": false, +
"Relation Name": "1_keys",+
"Alias": "1_keys", +
"Startup Cost": 0.00, +
"Total Cost": 186.02, +
"Plan Rows": 2, +
"Plan Width": 54 +
} +
} +
]
(1 row)
eg2=# SELECT * FROM pg_indexes WHERE tablename = '3_keys';
schemaname | tablename | indexname | tablespace | indexdef
------------+-----------+-------------+------------+----------------------------------------------------------------
public | 3_keys | 3_keys_pkey | | CREATE UNIQUE INDEX "3_keys_pkey" ON "3_keys" USING btree (id)
(1 row)
eg2=# SELECT * FROM pg_indexes WHERE tablename = '1_keys';
schemaname | tablename | indexname | tablespace | indexdef
------------+-----------+-------------+------------+----------------------------------------------------------------
public | 1_keys | 1_keys_pkey | | CREATE UNIQUE INDEX "1_keys_pkey" ON "1_keys" USING btree (id)
(1 row)
eg2=# select * from "1_keys";
id | pub | amount
----+-----+--------
(0 rows)
eg2=# select * from "3_keys";
id | pub | amount
----+-----+--------
(0 rows)
eg2=# \d "1_keys"
Table "public.1_keys"
Column | Type | Modifiers
--------+---------------+-------------------------------
id | bigint | not null default '0'::bigint
pub | bytea | not null default '\x'::bytea
amount | numeric(30,0) | not null default '0'::numeric
Indexes:
"1_keys_pkey" PRIMARY KEY, btree (id)
eg2=# \d "3_keys"
Table "public.3_keys"
Column | Type | Modifiers
--------+---------------+-------------------------------
id | bigint | not null default '0'::bigint
pub | bytea | not null default '\x'::bytea
amount | numeric(30,0) | not null default '0'::numeric
Indexes:
"3_keys_pkey" PRIMARY KEY, btree (id)
Сейчас показывает вот такое:
eg2=# EXPLAIN (FORMAT JSON) select * from "3_keys";
QUERY PLAN
----------------------------------
[ +
{ +
"Plan": { +
"Node Type": "Seq Scan", +
"Parallel Aware": false, +
"Relation Name": "3_keys",+
"Alias": "3_keys", +
"Startup Cost": 0.00, +
"Total Cost": 18.60, +
"Plan Rows": 860, +
"Plan Width": 66 +
} +
} +
]
(1 row)
eg2=# EXPLAIN (FORMAT JSON) select * from "1_keys";
QUERY PLAN
----------------------------------
[ +
{ +
"Plan": { +
"Node Type": "Seq Scan", +
"Parallel Aware": false, +
"Relation Name": "1_keys",+
"Alias": "1_keys", +
"Startup Cost": 0.00, +
"Total Cost": 186.02, +
"Plan Rows": 2, +
"Plan Width": 54 +
} +
} +
]
(1 row)
eg2=# SELECT * FROM pg_indexes WHERE tablename = '3_keys';
schemaname | tablename | indexname | tablespace | indexdef
------------+-----------+-------------+------------+----------------------------------------------------------------
public | 3_keys | 3_keys_pkey | | CREATE UNIQUE INDEX "3_keys_pkey" ON "3_keys" USING btree (id)
(1 row)
eg2=# SELECT * FROM pg_indexes WHERE tablename = '1_keys';
schemaname | tablename | indexname | tablespace | indexdef
------------+-----------+-------------+------------+----------------------------------------------------------------
public | 1_keys | 1_keys_pkey | | CREATE UNIQUE INDEX "1_keys_pkey" ON "1_keys" USING btree (id)
(1 row)
eg2=# select * from "1_keys";
id | pub | amount
----+-----+--------
(0 rows)
eg2=# select * from "3_keys";
id | pub | amount
----+-----+--------
(0 rows)
eg2=# \d "1_keys"
Table "public.1_keys"
Column | Type | Modifiers
--------+---------------+-------------------------------
id | bigint | not null default '0'::bigint
pub | bytea | not null default '\x'::bytea
amount | numeric(30,0) | not null default '0'::numeric
Indexes:
"1_keys_pkey" PRIMARY KEY, btree (id)
eg2=# \d "3_keys"
Table "public.3_keys"
Column | Type | Modifiers
--------+---------------+-------------------------------
id | bigint | not null default '0'::bigint
pub | bytea | not null default '\x'::bytea
amount | numeric(30,0) | not null default '0'::numeric
Indexes:
"3_keys_pkey" PRIMARY KEY, btree (id)
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.