|
Использование индексов
|
|||
---|---|---|---|
#18+
Доброго времени суток. Прошу поделиться опытом. Создаю базу по продажам в Access для последующего формирования отчетов в Excel. Таблиц будет много, но все сводится к тому, что есть "главная таблица" и очень много справочников к полям главной таблицы. Весь вопрос можно продемонстрировать на простом примере. Поля "главной" таблицы (поля 1-6 являются составным первичным ключом): 1. номер документа 2. дата документа 3. сбытовая организация 4. клиент 5. номер позиции в документе 6. артикул 7. количество 8. деньги и т.д. Справочник по артикулам: 1. артикул (первичный ключ) 2. бренд 3. продуктовая иерархия 4. наименование артикула и т.д. Стоит ли индексировать поля бренд и продуктовая иерархия (с точки зрения скорости выполнения запросов / в "главной" таблице будет несколько миллионов записей) "Да, совпадения допускаются" если задача будет совместить все справочники с "главной" таблицей для построения отчетов в различных разрезах? При этом в порядке следования артикулов по возрастанию (в справочнике) нет системы в назначении бренда. Т.е. артикул 1 - бренд 1 артикул 2 - бренд 2 артикул 3 - бренд 1 артикул 4 - бренд 2 Много пытался читать про индексы, но однозначного решения нет, поэтому прошу поделиться мыслями и опытом. Скрин части базы прикрепил. Буду благодарен за любую помощь. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2015, 01:17 |
|
Использование индексов
|
|||
---|---|---|---|
#18+
скрин части базы ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2015, 01:19 |
|
Использование индексов
|
|||
---|---|---|---|
#18+
interspb, автор"главной" таблице будет несколько миллионов записей) может нужен не аксесс, а что то более мощное ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2015, 07:03 |
|
Использование индексов
|
|||
---|---|---|---|
#18+
interspbПоля "главной" таблицы (поля 1-6 являются составным первичным ключом): Ну ну. Отпишитесь как оно у вас работает. Судя по всему вы начинающий. И составной ключ из 6 полей :)) Ню Ню. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2015, 07:57 |
|
Использование индексов
|
|||
---|---|---|---|
#18+
interspbСтоит ли индексировать поля бренд и продуктовая иерархия (с точки зрения скорости выполнения запросов / в "главной" таблице будет несколько миллионов записей) "Да, совпадения допускаются" если задача будет совместить все справочники с "главной" таблицей для построения отчетов в различных разрезах? Дык это делается на втором этапе. С начала действующая ваша схема базы данных. А уж потом оптимизация (Сиреч индексы). Все с разу не получиться. Не потянете судя по вопросам. Без обид. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2015, 08:07 |
|
Использование индексов
|
|||
---|---|---|---|
#18+
ROI, вечер добрый. Конечно, не могу назвать себя опытным пользователем, но данную базу использую уже 2 года, просто раньше итак все быстро работало и у меня не возникало мыслей что-то делать с индексами. Не совсем понятен ваш комментарий по поводу составного ключа из 6 полей. В эту таблицу вносится выгрузка из учетной системы и составной ключ необходим, чтобы избежать двойной вставки данных. "С начала действующая ваша схема базы данных" - так я вам и привел действующую базу данных, урезанную, но это не меняет сути вопроса. "Не потянете судя по вопросам" - так вы попробуйте дать совет, а там уже я сам попробую и решу для себя, стоит ли этим заниматься или сразу перейти на sql server. База у меня не сложная и запросы все довольно простые, поэтому и не думал о переходе на другую платформу. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2015, 21:48 |
|
Использование индексов
|
|||
---|---|---|---|
#18+
interspbROI, вечер добрый. Конечно, не могу назвать себя опытным пользователем, но данную базу использую уже 2 года, просто раньше итак все быстро работало и у меня не возникало мыслей что-то делать с индексами. Не совсем понятен ваш комментарий по поводу составного ключа из 6 полей. В эту таблицу вносится выгрузка из учетной системы и составной ключ необходим, чтобы избежать двойной вставки данных. "С начала действующая ваша схема базы данных" - так я вам и привел действующую базу данных, урезанную, но это не меняет сути вопроса. "Не потянете судя по вопросам" - так вы попробуйте дать совет, а там уже я сам попробую и решу для себя, стоит ли этим заниматься или сразу перейти на sql server. База у меня не сложная и запросы все довольно простые, поэтому и не думал о переходе на другую платформу. По поводу составного ключа из 6 полей. Смею предположить вы знать не знаете что это? А че вас на индексы потянуло. База работала, а потом вас на индексы потянуло. К стати совет такой. Могу дать: учите матчасть. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2015, 06:35 |
|
Использование индексов
|
|||
---|---|---|---|
#18+
interspbно данную базу использую уже 2 года, просто раньше итак все быстро работало и у меня не возникало мыслей что-то делать с индексами - имхо у вас только одна полноценная связь на схеме (самая правая), попробуйте остальные доделать по подобию - миллионы записей в главной таблице это многовато, и для "программы продаж" это ни к чему, вопрос "что делать, если начнет тормозить" нужно было ставить ещё на этапе разработки (это хорошие манеры), а не через 2 года эксплуатации - для абсолютно любой базы по продажам (кем бы и как она ни была написана, рано или поздно это аукнется) гарантом её быстродействия является отсутствие избыточной информации..., на носу новый год - придумайте механизм который 1 января удалит из вашей базы все данные о продажах, все данные о проданном товаре и сделает сжатие БД, ну или сделайте это руками, предварительно сохранив текущую полную копию БД для просмотра и анализа... ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2015, 08:42 |
|
|
start [/forum/topic.php?fid=45&fpage=122&tid=1614295]: |
0ms |
get settings: |
12ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
3ms |
others: | 15ms |
total: | 148ms |
0 / 0 |