Поиск соответсвия распознанного текста и элементов справочника происходит на стороне клиента, в прикладном решении. Реализован вариант нечеткого поиска, который позволяет подобрать наиболее "похожие" товарные позиции из тех, которые есть в базе пользователя. Если таких нет(или уверенность слишком мала) пользователю предлагается создать новую позицию на основе распознанного текста.
Мы планируем ещё одну статью по этой тематике - уже с деталями (алгоритмы, фильтры по данным и структура федеративных и агрегирующих узлов (адаптация с высокой нагрузке)). В эту сатью детали решили не вставлять чтобы не перегрузить читателей.
И дело не только в DSL - просто проекты действительно бывают очень большие.
Понятие "бизнес-проекта" сейчас для 1С достаточно большое - так как сейчас на 1С существуют очень крупные проекты.
Например, полнофункциональная ERP с очень широким спектром решаемых задач (в финальной части статьи про это написано - 1 Гб собственно кода, 8 000 экранных форм, 800 отчётов и т.д.).
Если бы это все было только на императивном языке, то объем кода был бы еще больше.
То есть я правильно понимаю, что Дата акселератор умеет выполнять все запросы, которые можно выполнить в 1С ?
Дата акселератор умеет выполнять все отчеты, разработанные на платформе 1С:Предприятие.
А на платформе 1С можно делать рекурсивные запросы и оконные функции ?
Такая возможность не предоставляется.
И можно уточнить, что насчет предагрегаций ? То есть одно дело суммировать что-то на таблице в миллиард записей (пусть и in-memory), а другое дело, когда данные уже преподсчитаны, и расчет идет уже от них, что делает выполнение гораздо быстрее (собственно в чем и смысл OLAP).
Дата акселератор имеет преимущесто в том, что позволяет делать аналитику на часто обновляемых данных, приближенных к реальным (данные в Дата акселераторе периодически обновляются из "боевой" базы данных через механизм копий БД ), и тут предагрегации не очень работают.
Нам была нужна СУБД, на которой отчеты, разработанные на платформе 1С:Предприятие, исполнялись бы быстро. Перед тем, как начать разработку, мы рассмотрели несколько вариантов реализации требований проекта. Оптимальным с точки зрения нескольких важных для нас критериев (время реализации решения, поддерживаемость кода, производительность конечного решения и т.д.) было выбрано написание написание собственной In-memory СУБД, "совместимой" с отчетами, разработанными на платформе 1С:Предприятие.
Поскольку Дата акселератор не является продуктом, предназначенным для использования вне плафтормы 1С:Предприятие, мы не декларируем совместимость с каким-либо конкретным стандартом SQL. Одно из основных требований к Дата акселератору - уметь испольнять все отчеты, которые работают на поддерживаемых платформой 1С:Предприятие СУБД. Дата акселератор этому требованию соответствует.
В статье дан минимальный пример для понимания нашего подхода к кодогенерации. Из алгоритмов джойна у нас есть nested loop (в примере), hash join, merge join.
Алгоритмы выбирает оптимизатор, но такие вещи в двух словах тяжело описать. Возможно, со временем напишем отдельную статью на эту тему.
По поводу сравнения с другими решениями - попробую узнать у коллег.
Да. Есть внедрения в Австрии, Германии, Италии, Румынии, Польше, Испании, США, Канаде, Турции, Латинской Америке, ОАЭ, Англии, Швеции, Болгарии, Чехии, Китае и других странах. Список партнеров 1С за рубежом.
Да, пользователь на телефоне не может быть «залогинен» под свой доменной учеткой.
Но в если мобильной платформе если в конструктор
Новый HTTPСоединение(<Сервер>, <Порт>, <Пользователь>, <Пароль>, <Прокси>, <Таймаут>, <ЗащищенноеСоединение>, <ИспользоватьАутентификациюОС>)
передать ИспользоватьАутентификациюОС = Истина
и доменные Пользователь и Пароль, то аутентификация пройдет.
Также если с мобильного клиента зайти в конфигурацию, использующую аутентификацию ОС, и ввести доменные пользователь и пароль — аутентификация пройдет.
Начиная с версии 8.3.12: «Для мобильной версии «1С: Предприятия» реализована поддержка аутентификации ОС.
Для конструктора объекта HTTPСоединение реализована поддержка параметра ИспользоватьАутентификациюОС.
Поиск соответсвия распознанного текста и элементов справочника происходит на стороне клиента, в прикладном решении. Реализован вариант нечеткого поиска, который позволяет подобрать наиболее "похожие" товарные позиции из тех, которые есть в базе пользователя. Если таких нет(или уверенность слишком мала) пользователю предлагается создать новую позицию на основе распознанного текста.
Мы планируем ещё одну статью по этой тематике - уже с деталями (алгоритмы, фильтры по данным и структура федеративных и агрегирующих узлов (адаптация с высокой нагрузке)).
В эту сатью детали решили не вставлять чтобы не перегрузить читателей.
И дело не только в DSL - просто проекты действительно бывают очень большие.
Понятие "бизнес-проекта" сейчас для 1С достаточно большое - так как сейчас на 1С существуют очень крупные проекты.
Например, полнофункциональная ERP с очень широким спектром решаемых задач (в финальной части статьи про это написано - 1 Гб собственно кода, 8 000 экранных форм, 800 отчётов и т.д.).
Если бы это все было только на императивном языке, то объем кода был бы еще больше.
this
Здесь есть информация (но, наверное, не вся): https://www.youtube.com/watch?v=HjXmFeOcx_A&list=PLaf6kEnNhxlpyAbdO_KfI-yMVtY5PCbPK&index=4
За счет чего достигается ускорение на порядок:
другой способ обработки запросов, отказ от итерационной модели Volcano (например, тут https://habr.com/ru/company/badoo/blog/461699/)
компиляция кода для крупных блоков исполнения, т.е. большего количества вложеных циклов - предмет данной статьи
поколоночная модель хранения данных
Про целостность данных - насколько знаю, копируются только закоммиченые данные. Уточню у коллег.
Дата акселератор умеет выполнять все отчеты, разработанные на платформе 1С:Предприятие.
Такая возможность не предоставляется.
Дата акселератор имеет преимущесто в том, что позволяет делать аналитику на часто обновляемых данных, приближенных к реальным (данные в Дата акселераторе периодически обновляются из "боевой" базы данных через механизм копий БД ), и тут предагрегации не очень работают.
Нам была нужна СУБД, на которой отчеты, разработанные на платформе 1С:Предприятие, исполнялись бы быстро. Перед тем, как начать разработку, мы рассмотрели несколько вариантов реализации требований проекта. Оптимальным с точки зрения нескольких важных для нас критериев (время реализации решения, поддерживаемость кода, производительность конечного решения и т.д.) было выбрано написание написание собственной In-memory СУБД, "совместимой" с отчетами, разработанными на платформе 1С:Предприятие.
Поскольку Дата акселератор не является продуктом, предназначенным для использования вне плафтормы 1С:Предприятие, мы не декларируем совместимость с каким-либо конкретным стандартом SQL.
Одно из основных требований к Дата акселератору - уметь испольнять все отчеты, которые работают на поддерживаемых платформой 1С:Предприятие СУБД. Дата акселератор этому требованию соответствует.
В статье дан минимальный пример для понимания нашего подхода к кодогенерации.
Из алгоритмов джойна у нас есть nested loop (в примере), hash join, merge join.
Алгоритмы выбирает оптимизатор, но такие вещи в двух словах тяжело описать. Возможно, со временем напишем отдельную статью на эту тему.
По поводу сравнения с другими решениями - попробую узнать у коллег.
Да, пишем свою, Дата акселератор, SQL-совместимая in-memory база данных в третьем абзаце статьи написано.
Да, для ограничения прав используется платформенный механизм ограничения прав на уровне записей (RLS).
Список партнеров 1С за рубежом.
Релиз 1С: ДО 2.1.10 вышел в марте 2017-го, больше трех лет назад.
Меню «Взаимодействие с контрагентами» в 1С: ДО нет и сейчас. Уточните пожалуйста — может быть имеется в виду «Система взаимодействия»?
в этой части изменений также нет.
Тут, боюсь, не понял вас.
Поясните пожалуйста, что вы имеете в виду.
И используем OpenID.
Но в если мобильной платформе если в конструктор
Новый HTTPСоединение(<Сервер>, <Порт>, <Пользователь>, <Пароль>, <Прокси>, <Таймаут>, <ЗащищенноеСоединение>, <ИспользоватьАутентификациюОС>)
передать ИспользоватьАутентификациюОС = Истина
и доменные Пользователь и Пароль, то аутентификация пройдет.
Также если с мобильного клиента зайти в конфигурацию, использующую аутентификацию ОС, и ввести доменные пользователь и пароль — аутентификация пройдет.
Для конструктора объекта HTTPСоединение реализована поддержка параметра ИспользоватьАутентификациюОС.
Источник: https://dl05.1c.ru/content/Platform/8_3_12_1855/1cv8upd_8_3_12_1855.htm#7aaf07df-52a3-11e8-a3f7-0050569f678a»
А в принципе мобильный клиент поддерживает доменную аутентификацию.