powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Индекс по полю DateTime
4 сообщений из 29, страница 2 из 2
Индекс по полю DateTime
    #39104813
dbname
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Maxim Boguk,

а можете подсказать еще с этим вопросом:
выполнение скрипта происходит очень длительно время. Более 10 минут
DECLARE @I;
SET @I = integer(1,1000);
SET @J = integer(1,9,1);
SET @CNT=0;
WHILE @CNT<100000
BEGIN
insert into dbo."Events" ("Type","Description","Timestamp","Request_Id","Service_Id","User_Id")
values (1,'Описание тестового события','2015-0@J-0@J',1,2,1);
SET @CNT=@CNT+1;
END
...
Рейтинг: 0 / 0
Индекс по полю DateTime
    #39104850
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbname,

про хеш индексы лучше вообще забыть. учитывая особенности их реализации в постгресе пользы от них не будет, а вред может быть.


all,

хочется новым пользователям донести информацию про составление вопросов о производительности, описанную тут , тем более что кто-то уже ее заботливо перевел. тема "MINI-FAQ по форуму" мягко говоря немного устарела. стоит запостить ссылки на официальный вики туда (там и faq тоже есть переведенный) или может обновленный faq по форуму наскребем?
...
Рейтинг: 0 / 0
Индекс по полю DateTime
    #39104860
Фотография grufos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbname,

Надо же, 1-й день и сразу взялись за PgScript :)
Да, такой вид выполнения работы (100 000 инсертов) будет долго.
Используйте язык plpgsql или sql.
Например так (sql):
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
create table dbo."Events" 
(
    "Type" integer,
    "Description" text,
    "Timestamp" date,
    "Request_Id" integer,
    "Service_Id" integer,
    "User_Id" integer
);

insert into dbo."Events" ("Type","Description","Timestamp","Request_Id","Service_Id","User_Id")
select 1, 'Описание тестового события', 
        ('2015-0'|| cast(coalesce(nullif(trunc(random()*9),0),1) as varchar) ||'-0'|| cast(coalesce(nullif(trunc(random ()*9),0),1) as varchar))::date, 
       1, 2, 1
from generate_series(1, 100000)


Query returned successfully: 100000 rows affected, 700 ms execution time.
...
Рейтинг: 0 / 0
Индекс по полю DateTime
    #39104974
ursido
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
grufos "Timestamp" date,


Ай-ай-ай! Автор заказывал другой тип: datetime или timestamp -- неразборчиво. Но точно не date.
Регистрозависимость - это сильно на любителя. Необходимость нужно объяснить дополнительно.

Не очень хороший пример для неофита.
...
Рейтинг: 0 / 0
4 сообщений из 29, страница 2 из 2
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Индекс по полю DateTime
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]