Присоединение таблиц с помощью Envision
Когда речь идет об оптимизации цепи поставок, важно учитывать вызовы, минимизируя количество искажений реальности, вносимых в процесс. Инструменты должны принимать вызов таким, каков он есть, вместо искажения вызова, чтобы он соответствовал инструментам.
Два года назад мы представили Envision, язык специального назначения, предназначенный для адаптации к невероятно разнообразному спектру ситуаций, встречающихся в цепи поставок. С первого дня Envision предлагал программную выразительность, которая была значительным шагом вперед по сравнению с традиционными инструментами управления цепями поставок. Однако эта гибкость все еще была ограничена фактической точкой зрения, занятой самим Envision на данных цепи поставок.
Несколько месяцев назад мы внедрили в Envision общий механизм JOIN. Envision больше не ограничивается естественными соединениями, как это было изначально, и предлагает возможность обработки гораздо более широкого спектра табличных данных. В цепи поставок произвольные соединения таблиц особенно полезны для адаптации сложных сценариев, таких как мультипоставка, односторонняя совместимость, мультиканал и т. д.
Для читателей, которые уже знакомы с SQL, присоединение таблиц кажется довольно элементарной операцией; однако в SQL комбинирование сложных числовых вычислений с присоединением таблиц быстро приводит к исходному коду, который выглядит неясным и громоздким. Более того, присоединение больших таблиц также вызывает несколько проблем с производительностью, которые необходимо тщательно решать, либо путем настройки самих SQL-запросов, либо путем настройки самой базы данных с помощью введения индексов таблиц.
Одной из ключевых целей проектирования Envision было отказаться от некоторых возможностей SQL в обмен на значительное снижение накладных расходов на кодирование при решении задач оптимизации цепи поставок. В результате исходный Envision был основан исключительно на естественных соединениях, что практически полностью устраняло накладные расходы на кодирование, связанные с операциями JOIN, как это обычно делается в SQL.
Естественные соединения имеют свои ограничения, и мы сняли эти ограничения, введя синтаксис left-by в Envision. С помощью операторов left-by становится возможным присоединять произвольные таблицы в Envision. Внутри Envision заботится о создании оптимизированных индексов, чтобы вычисления оставались быстрыми, даже при работе с гигантскими файлами данных.
С точки зрения синтаксиса left-by - это незначительное дополнение к языку Envision, однако с точки зрения цепи поставок это одна функция значительно увеличила возможности Lokad для адаптации к самым сложным ситуациям.
_Если у вас нет внутреннего специалиста по данным, который также является экспертом по цепи поставок, у нас есть. Lokad может предоставить услугу от начала до конца, где мы заботимся о внедрении вашего решения для цепи поставок.