Вход | Регистрация

  1  2

Прямые запросы в 1С что почитать?

Прямые запросы в 1С что почитать?
Я
   НоваяВолна
 
17.10.17 - 21:58
Доброго времени суток всем.
Моё обращение к форуму в сабж. Не хватает знаний применения прямых запросов к базе из 1С. Умею строить запросы на встроенном языке 1С, а  так же SQL запросы. Но как то одно с другим у меня плохо складывается по синтаксису и в понимании как запрос написанный средствами 1С преобразовывается в SQL. Знаю, тут есть много профессионалов и специалистов по платформе. Отсюда и вопрос. что можно почитать, чтобы разобраться в этом вопросе?
 
 
   Египтянин
 
101 - 18.10.17 - 00:06
Ты то со своим экспертом каких успехов добился кроме понтов? Я конкретно ни одну базу из ховна вытащил, а ты?
   Египтянин
 
102 - 18.10.17 - 00:09
+(101) Я на конкретных предприятиях, на конкретных базах в 100-200 пользователей, добился конкретных успехов. А от вас вообще никакой пользы, кроме ну мы бы наоптимизировали, но это будет стоить 100500тыщ руб, так что сидите и терпите.
   Про100Филя
 
103 - 18.10.17 - 00:09
(100) А ты точно 1Сник? Чем номер строки в таблице документа, отличается от индекса?
   Египтянин
 
104 - 18.10.17 - 00:13
(103) Объясняю для идиотов. я понимаю, что ты в лесу без библиотек жил. Но представь ситуацию простую есть у тебя книжка, где написано что статья ВасяПупкин лежит в томе, 5. Ты идешь к стелажу а там 1,2, 3,4,5 , о вот пятый том. или ты ищель к стелажу за 5тым томом,  а там 10, 50,34,12,1,52,5. В каком случае ты найдешь свою статью быстрее?
А ты точно не умственно отсталый?
   MrStomak
 
105 - 18.10.17 - 00:13
(100)
Если бы ты хоть заглянул в эти свои бессчисленные энциклопедии, ты бы понял, что индекс - это и есть отдельная таблица с указателями, отсортированными по полям индекса. Мы, конечно, говорим не про кластерный, т.к. речь про ТЗ.
Ну и специально разжую вывод - когда поиск идет по индексу, сортировка основной таблицы уже не имеет значения.
   H A D G E H O G s
 
106 - 18.10.17 - 00:14
(103) Он - самый настоящий, классический 1Сник. Не сомневайся.
   Египтянин
 
107 - 18.10.17 - 00:15
(106) А вы типа голубых кровей? Ну подумаешь, с сортировкой это лишнее было. Зато тз.индексы.добавить вполне себе рабочее решение.
   MrStomak
 
108 - 18.10.17 - 00:19
(102)
Сынок. Вопрос нужно ставить так: "А ты сколько баз вытащмл после таких как я гениальных оптимизаторов?"
Вам по рукам бить надо и клавиатуру больше не давать, с таким сочетанием гонора и некомпетентности нельзя подпускать к живым базам
   H A D G E H O G s
 
109 - 18.10.17 - 00:20
(107) "Ну подумаешь, с сортировкой"
Херня случается. Даже красным цветом выделять не пришлось.

Потом дойдешь до того, что и в ВТ индексирование не нужно.
   Египтянин
 
110 - 18.10.17 - 00:24
(108)  вопрос для голубых кровей.
1) Дает ли прирост в поиске по ТЗ.Найти("код") по таблице ТЗ.Индексы.Добавить("код"); ТЗ.Найти("Код")?

Дает ли прирост при объединении 
Или ВЫБРАТЬ ЧегоТо
ПОМЕСТИТЬ ВремТЧ
ИЗ
Траливали
ИНДЕКСИРОВАТЬ ПО ЧегоТо

////

ВЫБРАТЬ ЧегоТО 
Из ВремТЧ 
   ВНУТРЕННЕЕ СОЕДИНЕНИЕ Таблица2 КаК Таблица2 
        ПО ВремТч.ЧегоТо = Таблица2 .ЧегоТо

Дает ли здесь прирост Индексировать если таблицы огромные или нет?
 
 Рекламное место пустует
   Adilgeriy
 
111 - 18.10.17 - 00:26
а сейчас уже не банят за оскорбления на форуме?
   MrStomak
 
112 - 18.10.17 - 00:31
(107)
Да рабочее.
Но неплохо бы помнить, что переход от курсора к тз приводит к совсем другому расходу памяти. Возможно, станет понятно, что иногда разработчики вынуждены были экономить память, потому что х64 серверов не было и себестоимость в принципе могла не рассчитаться на больших базах.
   Про100Филя
 
113 - 18.10.17 - 00:31
(106) Это тот который от ста тыщ, не меньше.
(110) А почему "Траливали" сразу не соединить внутреннем? Меньше кода => быстрее работает
(111) Так я же простофиля, все норм
   H A D G E H O G s
 
114 - 18.10.17 - 00:35
(110) "Дает ли здесь прирост Индексировать если таблицы огромные или нет?"

нет, не даст.
   Египтянин
 
115 - 18.10.17 - 00:35
(113) Я не достоин отвечать на такие вопросы, вон пусть эксперты отвечают. Но, есть мнение, что sql при каждом соединении будет циклом всю таблицу перебирать
   MrStomak
 
116 - 18.10.17 - 00:37
(110) Да вот представь себе, что без индекса в таблице2 по полю ЧегоТо, толку от всего этого не будет.
   MrStomak
 
117 - 18.10.17 - 00:43
(115)
Ну да.
ВТ с индексом это вообще гарантия успеха.
У тебя таблица с 30 000 000 строк и нужно найти 2 строки по неиндексированному реквизиту?
Помести ее всю в ВТ, проиндексируй это поле и потом дерзко и эффектно отбери из нее 2 строки!
   Египтянин
 
118 - 18.10.17 - 00:43
(116) а теперь представь, что ВремТЧ  - это ТаблицаРегистраОстатков, а Таблица2  это табличная часть документа из 10 строк. Будет прирост?
   H A D G E H O G s
 
119 - 18.10.17 - 00:48
(118) Начнем с того, что карачун настанет на момент помещения большой таблицы в ВТ. На этом и закончим. Если ты имеешь намерения поместить Остатки без фильтра, что еще более дичь.
   H A D G E H O G s
 
120 - 18.10.17 - 00:50
Индексация ВТ имеет смысл только в одном случае:
В ВТ помещается таблица результата неетического запроса после аггрегации (группировки), по которой потом будет производиться связывание более чем с 1 таблицей.
Спорно, но иногда - можно.
   Египтянин
 
121 - 18.10.17 - 00:52
(119) а зачем мне вся таблица остатков? Я х.з. как вам там мозги выносят на ваших экспертах, но 1С пишет в типовых вот так. И я просто повторяю. А чего там как это уже не важно.
   H A D G E H O G s
 
122 - 18.10.17 - 00:52
(118) Без индексов sql построит hash-join и даже не почешется.
   MrStomak
 
123 - 18.10.17 - 00:53
(118)
Прирост относительно чего?
Относительно таких же действий, но без индексирования?
При большой таблице остатков и высокой селективности индекса прирост будет.
При малой селективности и большой таблице будет деградация из-за увеличенных накладных расходов на создание кластерного индекса, который не будет использован.

И все это в итоге окажется ерундой, потому что создавать вт с огромным числом записей - это почти всегда архитектурная ошибка что с индексом, что без.
   Про100Филя
 
124 - 18.10.17 - 00:54
(115)
Для каждого ... по

А ваще скуль не перебором кареток работает.
(120) Имеет смыл в некоторых местах индексировать когда условие состоит из нескольких полей, где есть условие = и <>, или что то похуже
   MrStomak
 
125 - 18.10.17 - 01:00
(121)
Я не знаю, зачем тебе вся таблица остатков.
Но это именно ты описывал кейс, обозначил таблицу остатков и сказал, что в ней много записей
   Злопчинский
 
126 - 18.10.17 - 01:23
Понятно что здорово, но здорово непонятно
   H A D G E H O G s
 
127 - 18.10.17 - 01:26
Посмотрим, как ребятки-зверятки марочки будут учитывать. Будет интересно, не переключайтесь.
   Adilgeriy
 
128 - 18.10.17 - 01:27
а упп на каком скуле быстрей работает?
   VladZ
 
129 - 18.10.17 - 03:59
(0) Зачем так сразу? Сначала нужно провести анализ: что тормозит и почему.  Возможно, у тебя кривая структура данных. Или алгоритмы "кривые".
   rphosts
 
130 - 18.10.17 - 04:10
(0) тут даже эксперты по технологическим вопросам встречаются (минимум 2 в 1 сотне постов отписались)... вопрос "как ускорить" - это к ним.
Чтение мимо сервера 1С - нао=рушение лицензионного соглашения, начтите с того что-бы прочитать именно его.
   mehfk
 
131 - 18.10.17 - 04:33
   impulse9
 
132 - 18.10.17 - 05:29
(0) какие прямые запросы? Почитай хотя бы последовательность при решении вопросов производительности. Настрой мониторинг, определи список ключевых операций и т.д.
   d4rkmesa
 
133 - 18.10.17 - 08:27
(0) Хехе, вы не с того начали, если проблемы с производительностью. Ну вам тут уже все рассказали. ) Запросы 1С обычно преобразуются в более-менее прямые запросы в SQL. Если по каким-то причинам этого не происходит, план запроса не оптимальный и выполняется долго, нужно каждый случай рассматривать отдельно. В УТ10 куча стандартных отчетов на универсальном отчете, которые можно загнать в **пу некорректной настройкой, к примеру, взять ведомость по партиям товаров и навыбирать условий по документу расчетов или регистратору, через "несколько точек". Тогда, конечно, он будет выполняться по 40 минут, особенно если не настроен план обслуживания в SQL. В общем, почитайте на предмет производительности Мисту и Инфостарт, много любопытного откроете. )
 
 
   DrShad
 
134 - 18.10.17 - 08:39
все не читал, но осуждаю, если отчеты тормозят, то дело в самих отчетах, а не в СУБД или серванте 1С
   Филиал-msk
 
135 - 18.10.17 - 08:44
(134) В космосе хаос все люди грешники так спасемся
   Cyberhawk
 
136 - 18.10.17 - 09:14
Что-то ветка превратилась в индексо-срач какой-то :)
   Лефмихалыч
 
137 - 18.10.17 - 09:19
(0) как минимум, вот это: http://v8.1c.ru/metod/books/book.jsp?id=499

(39) для этого прямые запросы не нужны.
   Лефмихалыч
 
138 - 18.10.17 - 09:23
(136) а разве так не всегда бывает, когда в ветке появляется слово sql?
   MrStomak
 
139 - 18.10.17 - 10:15
(138)
Тут началось с вброса "все эти ваши эксперты-шмексперты фигня, я тут давеча узнал, что ТЗ можно индексировать!"
  1  2

Список тем форума
Рекламное место пустует  Рекламное место пустует
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует