|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Dorosh, Я не про 1С-овский псевдоязык. Я про реальный скрипт запросов, который соответствует всевдозапросу, что идет в БД MS SQL. Обычно запускают профайлер на БД и там видна вся картина. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 20:53 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
МодальноеОкно от людей зависит. кто-то стонет про теплоту и ламповость а кому-то новая бухгалтерия очень даже нравится Я с этим и не спорю, но к сожалению, чаще у меня складывалось, что бухгалтерам реально лень, либо квалификации не хватает. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2019, 20:57 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Troglodit Dorosh, Я не про 1С-овский псевдоязык. Я про реальный скрипт запросов, который соответствует всевдозапросу, что идет в БД MS SQL. Обычно запускают профайлер на БД и там видна вся картина. лучше туда не смотреть... особенно если RLS включен ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 10:20 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Troglodit что бухгалтерам реально лень, либо квалификации не хватает. есть такой момент профессия бухгалтер сейчас стала "неблагодарная". кто по-умнее сваливают. самые вменяемые имхо остались в финансовых организациях - там средний уровень повыше. остальных низводят до уровня оператор машинного доения, с соответствующей оплатой ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 10:23 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Troglodit Я не про 1С-овский псевдоязык. Я про реальный скрипт запросов, который соответствует всевдозапросу, что идет в БД MS SQL. Обычно запускают профайлер на БД и там видна вся картина. Мне лень спецом собирать трассу. Для спеца SQL в запросе 1С и так должно быть почти все понятно. Достаточно заменить русские операторы на их англ. эквивалент. Да и зачем тебе трасса? У твоего заказчика файловая 8-ка, в ней свои погремушки. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 17:52 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Dorosh Мне лень спецом собирать трассу. Для спеца SQL в запросе 1С и так должно быть почти все понятно. Достаточно заменить русские операторы на их англ. эквивалент. Да и зачем тебе трасса? У твоего заказчика файловая 8-ка, в ней свои погремушки. У заказчика еще не 8. Я пока думаю по лицензиям, чтобы дешево и сердито. Но судя по первичке файловая БД 10-20ГБ не потянет для начала для нормальной работы, поэтому и смотрю в сторону 3-х звенки. Я надеюсь хоть сервер 1с будет процессы параллелить или нургалиев так и не открыл для себя чудо concurrency. А вы уверенны, что 1С просто заменяет имена с ижицы на освященную латинницу? Я выше писал, что делал профиль запроса в 7-й , это просто ахтунг, в скрипте набор курсоров, отдельные запросы, на 2 листа скрипт. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 22:37 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Troglodit Но судя по первичке файловая БД 10-20ГБ не потянет для начала для нормальной работы, поэтому и смотрю в сторону 3-х звенки. Не потянет. Хотя бы тупо по предельному размеру файла 1cd. Troglodit А вы уверенны, что 1С просто заменяет имена с ижицы на освященную латинницу? Я выше писал, что делал профиль запроса в 7-й , это просто ахтунг, в скрипте набор курсоров, отдельные запросы, на 2 листа скрипт. Забудьте про 7-ку. Ничего общего. С заменой, в общем случае, похитрее. Есть RLS, есть автоматические джоины для полей "через точку", есть иерархия, которой нет в SQL. Но для тривиальных выборок транслируется практически один в один ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2019, 13:08 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Dorosh Забудьте про 7-ку. Ничего общего. С заменой, в общем случае, похитрее. Есть RLS, есть автоматические джоины для полей "через точку", есть иерархия, которой нет в SQL. Но для тривиальных выборок транслируется практически один в один Ничего хитрого профайл и в африке профайл, только честный sql без 1с-прослойки. RLS мне не нужен, он и в СУБД недешев, а уж в 1С то и подавно наверно верные нургалиевцы начудили. А можно про иерархию, которой нет в SQL, но есть в 1С поподробнее? Я потому и просил профайл чего-нибудь комбинированного с фильтрами,отборами и разными документами, просто с трудом верится, что все работает как вы написали, но я надеюсь, что не прав. Через пару-тройки месяцев своими глазами увижу. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.11.2019, 23:47 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Иерархия - придуманный в 1с оператор языка запросов, дабы кодеры не ломали мозг рекурсивными запросами. В скуле превращается в пачки селектов, за счет чего работает быстрее аналогичного cte ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 11:10 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Dorosh Иерархия - придуманный в 1с оператор языка запросов, дабы кодеры не ломали мозг рекурсивными запросами. В скуле превращается в пачки селектов, за счет чего работает быстрее аналогичного cte зато не считается на клиенте как в 7.7 успiх ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 11:46 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
МодальноеОкно зато не считается на клиенте как в 7.7 Я тоже раньше плевался на иерархию. Тормоз, тупизна и. т. д. Пока не попытался заменить на cte. Попытка ускорить привела к обратному результату. При включенном MAX_DOP ессно. Не так уж плох этот оператор оказался. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 13:21 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Dorosh Иерархия - придуманный в 1с оператор языка запросов, дабы кодеры не ломали мозг рекурсивными запросами. В скуле превращается в пачки селектов, за счет чего работает быстрее аналогичного cte Я бы на вашем месте не стал так огульно говорить про cte. Да и с древовидными структурами есть и другие способы работы в SQL, без рекурсий и ломания мозга. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 22:39 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Dorosh Я тоже раньше плевался на иерархию. Тормоз, тупизна и. т. д. Пока не попытался заменить на cte. Попытка ускорить привела к обратному результату. При включенном MAX_DOP ессно. Не так уж плох этот оператор оказался. Дело не в cte, а вашей СУБД и ее версии. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.11.2019, 22:40 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Troglodit Да и с древовидными структурами есть и другие способы работы в SQL, без рекурсий и ломания мозга. для 1с их нет. она же по заветам предков должна одинаково работать на ворохе субд. а умноженное на "доступно и всерьез" = одинаково хреново ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2019, 10:29 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Troglodit Я бы на вашем месте не стал так огульно говорить про cte. Прежде чем писать подобное, я потрудился проверить на практике. Написал и протестил аналогичные по смыслу запросы в 1с и sql. Замерил время выполнения. Посмотрел трассы. Причина различия в производительности была тривиальной. 1с транслирует оператор В ИЕРАРХИИ в последовательный обход дерева. Для каждого узла дерева создается отдельный селект и они прекрасно выполняются параллельно. CTE на такой фокус не способен по определению, там всегда однопоточное выполнение. Что (в случае если ресурсов достаточно) по скорости будет проигрывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2019, 11:29 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Dorosh Прежде чем писать подобное, я потрудился проверить на практике. Написал и протестил аналогичные по смыслу запросы в 1с и sql. Замерил время выполнения. Посмотрел трассы. Причина различия в производительности была тривиальной. 1с транслирует оператор В ИЕРАРХИИ в последовательный обход дерева. Для каждого узла дерева создается отдельный селект и они прекрасно выполняются параллельно. CTE на такой фокус не способен по определению, там всегда однопоточное выполнение. Что (в случае если ресурсов достаточно) по скорости будет проигрывать. Дело не в практике, а теории. Нематериализованные CTE-это реальность. То, что ваша СУБД-это не поддерживает/пока не поддерживает тоже реальность, проблема не в потоках, а в том, что для оптимизатора вашей СУБД cte черный ящик, только и всего. Это как в Postgres до 9.6.* какой то версии, пока не выпустили патч, который специально оптимизирует SELF JOIN для 1с, все было уныло, секта свидетелей Гилева усиленно топила за MS SQL. Для нормальных людей это и не нужно в обычных проектах насколько я знаю, только для нургалиевских староверов. Куча селектов редко когда сравнятся с cte по скорости , просто потому что вы вряд ли напишете код лучше, чем оптимизатор. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2019, 20:24 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Troglodit То, что ваша СУБД-это не поддерживает/пока не поддерживает тоже реальность, проблема не в потоках, а в том, что для оптимизатора вашей СУБД cte черный ящик, только и всего. "Моя СУБД" это MS SQL 2014. Но ты можешь попытаться поучить мелкософт щи варить. Уверен, ты разбираешься в теме лучше разрабов ядра скуля. Troglodit Куча селектов редко когда сравнятся с cte по скорости , просто потому что вы вряд ли напишете код лучше, чем оптимизатор. Оптимизировать cte можно, распараллелить выполнение нет. В принципе нет. Поскольку каждый следующий виток рекурсии зависит от результатов предыдущего прохода. Проблема не в "нургалиевских староверах" и их ересях. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2019, 11:37 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Dorosh Troglodit То, что ваша СУБД-это не поддерживает/пока не поддерживает тоже реальность, проблема не в потоках, а в том, что для оптимизатора вашей СУБД cte черный ящик, только и всего. "Моя СУБД" это MS SQL 2014. Но ты можешь попытаться поучить мелкософт щи варить. Уверен, ты разбираешься в теме лучше разрабов ядра скуля. Troglodit Куча селектов редко когда сравнятся с cte по скорости , просто потому что вы вряд ли напишете код лучше, чем оптимизатор. Оптимизировать cte можно, распараллелить выполнение нет. В принципе нет. Поскольку каждый следующий виток рекурсии зависит от результатов предыдущего прохода. Проблема не в "нургалиевских староверах" и их ересях. Вы слишком повышаете градус общения, не переходя на детали, а в гумманитарную плоскость CTE и рекурсия не одно и тоже-это раз. Я все время писал про CTE-это два. ну и если вам это что то скажет, то вот разница в плане, где умеют готовить cte. Почему нельзя в несколько тредов варить CTE для меня не понятно. автор-- Plan with Postgres 11 =# EXPLAIN (COSTS OFF) WITH large_scan AS (SELECT * FROM very_large_tab) SELECT * FROM large_scan WHERE id = 1; QUERY PLAN ------------------------------------ CTE Scan on large_scan Filter: (id = 1) CTE large_scan -> Seq Scan on very_large_tab (4 rows) -- Plan with Postgres 12 QUERY PLAN ------------------------------------------- Gather Workers Planned: 2 -> Parallel Seq Scan on very_large_tab Filter: (id = 1) (4 rows) Почему план разный я пояснил ранее. Специально для вас выделю " Parallel Seq Scan" MS SQL актуальная версия если не ошибаюсь уже 2019, они не просто циферки в релизе переставляют. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2019, 18:20 |
|
1С в качестве центрального хранилища данных
|
|||
---|---|---|---|
#18+
Troglodit MS SQL актуальная версия если не ошибаюсь уже 2019, они не просто циферки в релизе переставляют. для 1с пофигу на чем тормозить по сути ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2019, 18:34 |
|
|
start [/forum/topic.php?fid=29&msg=39895018&tid=1525690]: |
0ms |
get settings: |
8ms |
get forum list: |
6ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
39ms |
get topic data: |
2ms |
get forum data: |
0ms |
get page messages: |
330ms |
get tp. blocked users: |
0ms |
others: | 2488ms |
total: | 2875ms |
0 / 0 |