Гость
Map
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Dinamyc hard coding / 25 сообщений из 88, страница 1 из 4
22.09.2021, 12:25
    #40099240
artemana
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
Привет, Всем!

Наверно, тут будет интересно https://www.youtube.com/watch?v=gemRHJ2cDAQ&t=10817s
...
Рейтинг: 0 / 0
23.09.2021, 10:37
    #40099476
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
artemana,

после слова dinamic на слайде смотреть не стал.
...
Рейтинг: 0 / 0
23.09.2021, 12:21
    #40099488
softwarer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
kdv,

в топике всё равно прикольнее написано.
...
Рейтинг: 0 / 0
23.09.2021, 12:37
    #40099494
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
artemana,

я может чего недопонял, но не уловил какой-то новизны идеи.
В бытность работы с ДИАМС 3 на СМ1420 (1990-92) некоторые наши программисты делали "динамические отчеты" - запихивали куски кода в глобали, а программа потом в зависимости от данных вытаскивала тот или иной кусок кода, который потом интерпретировался на ходу. И это был не просто какой-то "хранимый кусок отчета", а там прям код конструировался мелкими кусками, по частям.

И вот отлаживать ЭТО был полный звездец, нихрена непонятно.
...
Рейтинг: 0 / 0
23.09.2021, 13:03
    #40099504
artemana
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
kdv, спасибо за указанную ошибку в грамматике. Обязательно исправлю.

kdv
artemana,
И вот отлаживать ЭТО был полный звездец, нихрена непонятно.

Наоборот, это намного легче отлаживать. Об этом говориться после неправильного слова dynamic, и как ты написал, было тобой пропущено. ))

В проекте есть два режима работы, в первом режиме программа динамически генерирует и компилирует код непосредственно в Runtime под каждую пришедшую SQL команду. Это ее основной рабочий режим, в нем при необходимости целесообразно отлаживать только сам процесс кода генерации.

Если же необходимо отладить или проанализировать с точки зрения производительности тот или иной участок сгенерированного кода, то программ запускается в так называемом статическом режиме.
В нем участки кода (файлы на C#) сгенерированные ранее включаются, в программу как обычные.
В этом случае сервер становиться жестким (hard coding program), как бы замирает в своем развитии, и не может воспринимать новых SQL команд, только старые, к которым он создал код находясь в рабочем режиме.

Что может быть проще отладки программы написанной в стиле hard coding?
...
Рейтинг: 0 / 0
23.09.2021, 13:14
    #40099507
artemana
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
kdv
artemana,

я может чего недопонял, но не уловил какой-то новизны идеи.
...интерпретировался на ходу. .....

Может отличие в этом.
Нет никакой интрепритации на ходу. Никакого промежуточного языка между SQL и C# .
Есть SQL команда, под нее создается код (такой же файл cs, как будто его написал руками программист).
В нем реализуется SQL команда, только не с нуля, а отталкиваясь от библиотеки базовых классов.
Этот файл компилируется в dll и исполняется.

Если такая SQL команда приходит повторно, используется ранее созданная dll.
...
Рейтинг: 0 / 0
23.09.2021, 13:48
    #40099513
Бумбараш
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
kdv
artemana,

после слова dinamic на слайде смотреть не стал.

dinamic - это болельщик одесского Динамо
...
Рейтинг: 0 / 0
23.09.2021, 14:45
    #40099526
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
softwarer,

там еще дальше на слайдах - "data leek". "Данные лук-порей"? Я не понял.
...
Рейтинг: 0 / 0
23.09.2021, 15:35
    #40099545
Alexander A. Sak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
artemana

Может отличие в этом.
Нет никакой интрепритации на ходу. Никакого промежуточного языка между SQL и C# .
Есть SQL команда, под нее создается код (такой же файл cs, как будто его написал руками программист).
В нем реализуется SQL команда, только не с нуля, а отталкиваясь от библиотеки базовых классов.
Этот файл компилируется в dll и исполняется.

Если такая SQL команда приходит повторно, используется ранее созданная dll.


Вы изобрели универсальный построитель плана SQL-запроса с прибитием его гвоздями в DLL?

Видос не смотрел, бо мову не розумию.
...
Рейтинг: 0 / 0
23.09.2021, 15:43
    #40099550
artemana
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
Alexander A. Sak, там на русском (с надписями на неправильном английском))). я думаю поймете. попробуйте.
...
Рейтинг: 0 / 0
24.09.2021, 10:58
    #40099698
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
artemana
kdv
artemana,
И вот отлаживать ЭТО был полный звездец, нихрена непонятно.
Наоборот, это намного легче отлаживать. Об этом говориться после неправильного слова dynamic, и как ты написал, было тобой пропущено. ))

Что может быть проще отладки программы написанной в стиле hard coding?

kdv писал про вполне определённую систему, а не про Вашу, и вот именно в ней разбираться, и в частности отлаживать код, было непросто.

На рынке уже давно есть как минимум одна система, в которой классы, SQL команды и т.д. компилируются в промежуточный код на встроенном языке этой системы (ObjectScript), который в свою очередь - в P-code (байт-код), а уже этот p-code выполняется виртуальной машиной этой СУБД. Конечно, никто не мешает разработчику написать код сразу на ObjectScript (а скоро и на Python), если возможности/производительность SQL-автокода его не устраивают.
Ещё там есть методы-генераторы, цель которых состоит в генерации другого кода, который и будет в итоге выполняться.
...
Рейтинг: 0 / 0
24.09.2021, 11:39
    #40099706
artemana
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
servit

kdv писал про вполне определённую систему, а не про Вашу, и вот именно в ней разбираться, и в частности отлаживать код, было непросто.

Он поставил их рядом, сказав что ничего нового, и соответственно его критика относилась к подходу в целом. И если не смотреть в детали, она может показаться справедливой.
Мой ответ, как мне кажется, просто отвечает на вопрос, почему к нашей конкретной системе этот недостаток не относиться.
А то, что в той системе было сложно, я и не сомневаюсь. ;)
servit

На рынке уже давно есть как минимум одна система, в которой классы, SQL команды и т.д. компилируются

Отлично! Значит мы не одиноки. Как называется система? Какие прикладные продукты на ней сделаны?
Как Вы лично оцениваете такой подход в принципе?
Мне это очень интересно!
servit

в промежуточный код на встроенном языке этой системы (ObjectScript), который в свою очередь - в P-code (байт-код), а уже этот p-code выполняется виртуальной машиной этой СУБД.

Наше отличие заключается в том, что нет промежуточного языка, SQL сразу превращается в код на C#. То есть в язык на котором и написана сама система. Этот промежуточный язык нам не нужен!
C# и VS со всеми своими возможностями, покрывают все потребности(производительность и наглядность кода, удобство отладки)
я не языковед, и тут не место для священных войн по языкам и средам, но лично оцениваю их очень высоко.
servit

Конечно, никто не мешает разработчику написать код сразу на ObjectScript (а скоро и на Python), если возможности/производительность SQL-автокода его не устраивают.
Ещё там есть методы-генераторы, цель которых состоит в генерации другого кода, который и будет в итоге выполняться.

У нас тоже есть аналогичные механизмы.
То что мы не первые, с одной стороны огорчает, а с другой стороны радует, так указывает на то, что мы не сделали нечто с квадратными колесами, а вполне себе с овальными ;)
Но для нашей конечной задачи (BI-система), это штука подходит идеально.
...
Рейтинг: 0 / 0
24.09.2021, 12:04
    #40099718
artemana
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
Наше отличие заключается в том...,

servit, я наверно не правильно понял Вас, меня смутило слово "встроенный".
Если та система написана на ObjectScript и SQL команду она превращает в программу ObjectScript, то отличия нет.
Разница только в языке.
...
Рейтинг: 0 / 0
24.09.2021, 12:12
    #40099719
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
artemana
Как называется система? Какие прикладные продукты на ней сделаны?
InterSystems IRIS Data Platform, потомок Ensemble, Caché и вообще систем MUMPS.
Много каких, в частности в области здравоохранения.
artemana
Наше отличие заключается в том, что нет промежуточного языка, SQL сразу превращается в код на C#. То есть в язык на котором и написана сама система. Этот промежуточный язык нам не нужен!
Считайте ObjectScript аналогом Вашего C#. Промежуточным он назван лишь потому, что служит звеном между SQL и байт-кодом и в целях отладки отдельных элементов SQL-запроса.
...
Рейтинг: 0 / 0
24.09.2021, 12:16
    #40099720
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
artemana
Если та система написана на ObjectScript и SQL команду она превращает в программу ObjectScript, то отличия нет.
Та система написана на С/С++. Предположу, что С# - тоже.
...
Рейтинг: 0 / 0
24.09.2021, 12:30
    #40099723
artemana
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
artemana

Разница только в языке.

В сравнении производительности программ, написанных на С# и ObjectScript.
Есть, как мне кажеться, непреодолимый барьер - байт код, исполняемый на виртуальной машине, проиграет нативному коду.
Для big data разница может быть заметной.

И еще, в ObjectScript есть многопоточность? Нам она позволяет разделить отдельные фазы в исполнения
одной команды на несколько потоков, тем самым добиться ускорении ее выполнения в разы.
...
Рейтинг: 0 / 0
24.09.2021, 12:43
    #40099726
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
Такое ощущение что он объяснял схему разделения секрета Шамира школьникам 1-го класса.

Кто вообще аудитория? Кто вообще пойдет на лекции с такой агендой?
...
Рейтинг: 0 / 0
24.09.2021, 12:50
    #40099728
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
А это - вообще фейерия. Я позволю
себе процитировать.

...программа донаписывается...

...и программа от этого только выиграет...

...например доступ к значению поля всегда
сопряжен с вычислением его адреса исходя
из адреса записи смещения поля относительно
предшествующих полей с полседующим жостким
приведением содержимого памяти по этому адресу
к нужному типу данных...

...при НАШЕМ подходе :)....


Но при чем здесь черт возьми базы данных и безопасность?
...
Рейтинг: 0 / 0
24.09.2021, 12:50
    #40099729
artemana
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
servit
artemana
Если та система написана на ObjectScript и SQL команду она превращает в программу ObjectScript, то отличия нет.
Та система написана на С/С++. Предположу, что С# - тоже.

На чем написан C# не так важно.
Значимым в данной вопросе является то, что мы превращаем SQL команду в программу на родном языке системы,
а там, в программу на суррогатном. А он априори бедней. Или вообще представляет собой ад, как в воспоминаниях kdv.

Этому, как мне кажется, есть простое историческое объяснение. Раньше не было выхода.
Средства кода генерации во время исполнения появились недавно. В С# это рослин, что в С++ не знаю, наверно что то тоже есть, но появилось скорее всего недавно. В тоже время в языках со слабой типизацией, JavaScript, ObjectScript они были намного раньше, если не изначально.
...
Рейтинг: 0 / 0
24.09.2021, 12:54
    #40099730
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
artemana
В сравнении производительности программ, написанных на С# и ObjectScript.
Есть, как мне кажеться, непреодолимый барьер - байт код, исполняемый на виртуальной машине, проиграет нативному коду.
Для big data разница может быть заметной.
Если речь про доступ к низкоуровневым структурам, в которых лежат данные, то нет - байт код здесь не проигрывает. По крайней мере в IRIS.
Можно, конечно, код вместо ObjectScript/Python написать на С/С++ или вообще на ассемблере, но вряд ли скорость существенно возрастёт.
artemana
И еще, в ObjectScript есть многопоточность?
:)
Конечно есть.
...
Рейтинг: 0 / 0
24.09.2021, 13:08
    #40099734
artemana
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
mayton

Но при чем здесь черт возьми базы данных и безо?

1. Что Вы означает "безо"?
2. В ролике, в том месте куда дана ссылка, рассматривается отличительный от классического подход к созданию движка базы данных. Тем специалистам, которые представляют как устроен движок РСУБД, управляемой посредством SQL, вроде все должно быть понятно, черт возьми! ;)
...
Рейтинг: 0 / 0
24.09.2021, 13:25
    #40099740
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
artemana
Значимым в данной вопросе является то, что мы превращаем SQL команду в программу на родном языке системы,
а там, в программу на суррогатном. А он априори бедней. Или вообще представляет собой ад, как в воспоминаниях kdv.
Для процессора все языки суррогатны, кроме машинных кодов.
Дело не в языке, а в алгоритмах, оптимизации библиотек и драйверов под ОС и железо, и кривизне рук тех, кто всё это использует.
Например, здесь Python и Fortran "почему-то" уделали C++.
Недавно на нашем форуме тоже попытались сравнить скорости чтения CSV-файла на Python и ObjectScript. Результат плачевный. Для автора плачевный..
...
Рейтинг: 0 / 0
24.09.2021, 13:42
    #40099744
artemana
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
servit, конечно, все нужно сравнивать на реальных экспериментах, но у Вас же не BI, а у меня не медицина.
Плюс надо помнить, что у нас не совсем SQL, а язык только принципиально на него похожий.
Сравнить на одинаковом примере не получиться. Жаль, но еще не вечер. Может судя заглянут люди из раздела OLAP и DWH и предложат посоревноваться.

Вы не сказали свое отношение к такому подходу в принципе. Какая Ваше оценка?
Мы сразу приступили к жесткой внутривидовой конкуренции (детали внутри одной концепции), в то время как некоторые вообще не поняли о чем речь! :)
...
Рейтинг: 0 / 0
24.09.2021, 14:10
    #40099750
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
artemana
servit, конечно, все нужно сравнивать на реальных экспериментах, но у Вас же не BI, а у меня не медицина.
Если открыть страницу продукта , то можно найти и про BI, и про машинное обучение и про многое другое.
artemana
Может судя заглянут люди из раздела OLAP и DWH и предложат посоревноваться.
Здесь уже было много соревнований всего со всем, которые ни к чему хорошему не привели, не приводят и вряд ли приведут. А технически грамотные сравнения весьма затратны.
artemana
Вы не сказали свое отношение к такому подходу в принципе. Какая Ваше оценка?
Моё отношение простое - это уже было и есть. Оценка положительная.
...
Рейтинг: 0 / 0
24.09.2021, 14:47
    #40099756
artemana
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Dinamyc hard coding
servit
Здесь уже было много соревнований всего со всем, которые ни к чему хорошему не привели, не приводят и вряд ли приведут. ...

Это пять!
servit
Моё отношение простое - это уже было и есть. Оценка положительная.

Спасибо, если что, буду на это ссылаться.
...
Рейтинг: 0 / 0
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Dinamyc hard coding / 25 сообщений из 88, страница 1 из 4
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]