Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Передо мной встала задача выбора СУБД для проекта: Есть существующий проект, использующий PostgreSQL в качестве СУБД. На сегодняшний день не удовлетворяет именно скорость работы. Идея заключается в том, чтобы написать свой транслятор SQL (используется только часть SQL-функционала, поэтому встроенные "тяжелые" реализации использовать неохота, да плюс еще хочется избежать ODBC). В качестве базовой платформы хотелось бы использовать Pick или MUMPS базу данных (например, D3 или Cache') и самописный транслятор SQL<->M или SQL<->FlashBasic. Возникают следующие вопросы: 0. Опишите, если вы знаете, основные преимущества Cache' над Pick. 1. Возможно ли в Cache' получение данных на порт TCP и их дальнейшая интерпретация? 2. Насколько вообще описанный подход, с вашей точки зрения, имеет право на существование (клиентскую части изменять нельзя)? 3. Какова средняя "цена" Cache'-девелопера в вашем регионе (Москвичей и Питерцев попрошу воздержаться от ответа :) )? 4. Есть ли разработчики из Вологды/Вологодской области? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 16:25 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
а можно ссылочку на Pick, а то что то не найду о чем вы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 16:28 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
DAiMor, да, конечно. Сайт производителя: http://tigerlogic.com/tigerlogic/pick/database/pickdatabase.jsp Немного документации от представителя в РФ: http://d3doc.ru/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 16:30 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Sergey Goncharuk, 0. Пока незнаю что такое Pick, нет возможности сравнить 1. cache может открыть любой TCP порт и слушать отдавать любые данные, как запрограммируешь 2. при большом желании реализация думаю возможна, но только между клиентской частью и Cache все же что то должно быть. 4. маловерятно что такие есть, наверняка есть много регионов страны в которых нет вообще программистов Cache. но в Вологде есть пара наших клиентов с нашим приложением на Ensemble. но у них нет программистов. да и не требуются они им. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 16:34 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
DAiMor, то есть схема Cache' <-> Транслятор (например, на C) <-> Приложение клиент? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 16:39 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
DAiMorSergey Goncharuk, 0. Пока незнаю что такое Pick, нет возможности сравнить Тоже постреляционная база данных, MVDB. Основана на бывшей PickOS - http://en.wikipedia.org/wiki/Pick_operating_system Использует с Cache' практически одинаковую модель данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 16:41 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Sergey GoncharukDAiMor, то есть схема Cache' <-> Транслятор (например, на C) <-> Приложение клиент? да полагаю что так, опять же интересно на чем сейчас написано ваше приложение ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 16:44 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
DAiMor, клиентская часть написана на Visual C. Приложение не наше. Задача сделать что то вроде вот этого http://etersoft.ru/products/selta , но в направлении от Postgres к Cache'/D3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 16:46 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Sergey Goncharuk, прочитайте в документации про импорт MultiValue приложений в Cache - может это подойдет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 17:16 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Sergey Goncharuk, http://docs.intersystems.com/cache20111/csp/docbook/DocBook.UI.Page.cls ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 17:18 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Sergey Goncharuk, извините, я подумал у Вас приложение на Pick. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 17:20 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
ser_shu, ничего страшного. Хотелось бы конечно обойтись без "прокладки" между приложением и Cache' - то есть прокладка могла бы быть реализована средствами ObjectScript. Вот в чем основной вопрос - реально ли это? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 17:31 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Sergey Goncharuk, все зависит от того что вы сразу хотите реализовать на Cache без "прокладки". вы скажите какой именно компонент вы хотите заменить. если у вас там есть какая то серверная часть которая сама общается с СУБД, и есть какой то протокол с клиентом, то вам только нужно повторить этот протокол, что может быть сложно, эмулировать Postgres будет еще сложнее. поэтому важно найти наиболее удобное место между вашим приложением и субд куда можно будет вставить адаптер который будет работать уже с другой субд. и в зависимости от выбранного места, можно будет решить на чем его реализовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 18:11 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
DAiMor, сформулирую задачу еще более локально: насколько на М тяжело реализовать семантический анализ бинарного (в смысле, не ASCII) потока данных с разделителями символом \0. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 20:51 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Sergey Goncharuk, 1. Возможно ли в Cache' получение данных на порт TCP и их дальнейшая интерпретация? Да, возможно. И проще, чем где бы то ни было. Можно написать свой сервер, сидящий на ТСР- порту и обслуживающий запросы пользователей. Недавно сам этим занимался:). Есть очень хороший пример самопального сервера: http://karataev.nm.ru/cache/mdapi.html. Самодельные псевдо-реляционные настройки поверх М ,наверное, писали все разработчики в свое время (до Каше). Но чтобы транслировать SQL в М код - я знаю только Интерсистемз, да был еще кажется KB-SQL. Эта трансляция съест весь возможный выигрыш в производительности. А если запрограммировать оптимизатор запросов, то он может съесть выигрыш от оптимизации. Все-таки это не откомпилированный С-код, а интерпретация Р-кода. Упрощенные языки типа QBE могут дать приличную скорость. Но местами придется заниматься ручной оптимизацией. 2. Насколько вообще описанный подход, с вашей точки зрения, имеет право на существование (клиентскую части изменять нельзя)? Этот вопрос я понимаю так: "Насколько вообще описанный подход, с вашей точки зрения, имеет право на существование? (клиентскую части изменять нельзя!)" В свете вышесказанного, возможно сделать "быстрый" компилятор, который каждому оператору "Select" вашего приложения поставит в соответствие вызов нужной программы с параметрами. Правильно написанные программы будут работать быстро. Если разновидностей селектов слишком много, тогда луше заняться оптимизацией PostgreSQL. Или использовать SQL от Cache, а критические участки приложения перепрограммировать с использованием прямого доступа к данным. Но в отличие от PostgreSQL, Cache далеко не бесплатна. Или использовать бесплатный GT-M, но там нет SQL. Или все-таки переписать клиентскую часть. Неблагодарное это дело, давать советы не имея достаточно информации. (Сколько клиентов? Это люди или программы? Сколько таблиц? Какой размер таблиц, базы? Какие данные, какие запросы?) Ну, раз уж мы родились в стране советов, то не взыщите :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2012, 21:52 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
DirksDR, спасибо. В принципе выбор пока не сделан, так как я еще не нашел команды разработчиков, но склоняюсь пока к Cache' по следующим причинам: - более низкая цена (почти в 3 раза) по сравнению с D3 - возможность напрямую работать с портами TCP - в D3 все же придется делать внешнюю прокладку в виде Unix-программы, которая будет работать с сетью и обмениваться с D3 по OSFI. С другой стороны, меня пока смущают такие вещи: - смогу ли я собрать команду разработчиков под MUMPS - команда разработчиков под D3 есть в Вологде; - будет ли действительно получен выхлоп в быстродействии без изменения клиентской части. Если для получения большего быстродействия часть обработки данных, выполняемых клиентом, необходимо будет переносить на сервер с Cache'/D3 (что даст 100%-й выхлоп по скорости обработки), то команда разработчиков увеличится еще и на тех, кто будет изменять клиентскую часть. Но если C-кодеры в нашей деревне стоят около 20 т.р./месяц, то сколько будет стоить квалифицированный М-щик мне пока неизвестно. Всем, кто принимал участие в дискуссии - огромное спасибо - вы для меня многое прояснили. Хотелось бы все же услышать от тех, кто живет не в Москве и Питере среднюю з/п для квалифицированного М-щика, чтобы определится с бюджетом проекта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2012, 09:25 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
DirksDR, извините, но указанная вами ссылка не работает. Может быть у вас есть этот пример где-то в другом месте? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2012, 09:26 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Sergey Goncharuk- смогу ли я собрать команду разработчиков под MUMPS Можешь нам заказать... Заключим договор, сделаем нормально... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2012, 09:27 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Sergey Goncharuk, Попробуйте скопировать текст ссылки в броузер, или набрать вручную. http://karataev.nm.ru/cache/mdapi.html - скопированный адрес у меня сработал. По поводу насколько на М тяжело реализовать семантический анализ бинарного (в смысле, не ASCII) потока данных с разделителями символом \0. . Семантический анализ можно по разному понимать, а вот строки с разделителями в М используются очень широко, есть набор эффективных функций для работы со строками. Даже с разделителем 0: USER>s sep=$c(0) USER>s str="" USER>s $p(str,sep,10)="12345" USER>zw str str=$c(0,0,0,0,0,0,0,0,0)_"12345" USER> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2012, 09:48 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Sergey Goncharuk0. Опишите, если вы знаете, основные преимущества Cache' над Pick.Caché поддерживает эмуляцию для D3, PICK и др., обратное под вопросом: Available Flavors / Emulations ; Поищите на этом форуме по "D3 Pick" ; Sergey Goncharuk1. Возможно ли в Cache' получение данных на порт TCP и их дальнейшая интерпретация?Можно: TCP Client/Server Communication Sergey Goncharuk2. Насколько вообще описанный подход, с вашей точки зрения, имеет право на существование (клиентскую части изменять нельзя)?Имеет: АРМ-трафик АРМ-трафик Sergey GoncharukDirksDR, извините, но указанная вами ссылка не работает. Может быть у вас есть этот пример где-то в другом месте?Точку в конце ссылки уберите. PS: все ли возможности по оптимизации PostgreSQL были использованы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2012, 10:26 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
krvsaSergey Goncharuk- смогу ли я собрать команду разработчиков под MUMPS Можешь нам заказать... Заключим договор, сделаем нормально... Приложение потребует постоянной пддержки, так что в любом случае команду нужно искать на месте и свою. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2012, 10:56 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Ребята, всем огромное спасибо. В любом случае, сейчас все зависит от того, смогу ли я собрать команду разработчиков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2012, 11:01 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
Sergey GoncharukПриложение потребует постоянной пддержки Таки постоянно поддерживаем ПО для 5-ти областей, уже более 10-ти лет. Т.ч. опыт в длительной и удалённой разработке и поддержке имеем. Да и в командировки ездили не мало... В любом случае решать тебе. Если з/п будет достойная (квартиру у вас можно будет купить) - могу приехать и всё организовать/обучить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2012, 13:28 |
|
||
|
Консультация
|
|||
|---|---|---|---|
|
#18+
krvsaквартиру у вас можно будет купить С первой зарплаты ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2012, 13:56 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=37628782&tid=1557561]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
83ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 404ms |

| 0 / 0 |
