powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Хочу заразиться свинкой / i want to pick up MUMPS
34 сообщений из 34, показаны все 2 страниц
Хочу заразиться свинкой / i want to pick up MUMPS
    #37632482
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я хочу освоить программирование на MUMPS/M (в подверсии GT.M). И если синтаксис языка и основные его конструкции понятны из книг (Очень понравилась M programming A comprehensive Guide), то типичные паттерны или шаблоны проектирования систем я ещё не смог найти. Например, насколько оправданно вместо склеивания значений полей для записи и последующего P() создавать на следующем индексе(имя поля) значения? Как лучше организовывать индексы.

Где лучше искать такое?
Какие есть актуальные сайты?
Есть ли сайт с набором библиотек?
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37632655
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monsterнасколько оправданно вместо склеивания значений полей для записи и последующего P() создавать на следующем индексе(имя поля) значения?
Ты про такое?

Код: vbnet
1.
2.
3.
4.
s ^data(1)="11/01/2012|1234|Вася"
// или
s ^data(1,"Name")="Вася"
s ^data(1,"Date")="11/01/2012"



4d_monsterКак лучше организовывать индексы.
Например так

Код: vbnet
1.
s ^indData(<ключевое_выражение>,<Id>)=""



Или вообще всё в одном глобале

Код: vbnet
1.
s ^ind("data",<ключевое_выражение>,<Id>)=""
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37632873
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, про такое. Почему так или эдак ?

В идеале книгу именно по разработке программ на MUMPS
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37632904
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37632905
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monsterПочему так или эдак?
ИС всё хранит в строке - де так кеш обеспечивает быстрое чтение/запись... Визуально же лучше смотрится второй вариант... Да и данных так запишется больше в одну запись.
У нас используется второй вариант.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37632914
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, буду читать/изучать.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633235
doublefint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monster, еще тут
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633247
doublefint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monster, и тут
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633323
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за Каратаева, а "A Universal NoSQL Engine, Using a Tried and Tested Technology" - читал, как вводная годится.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633378
Александр GAGADDDOC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день !
M классный язык УСПЕХОВ...

Из опыта работы по проектированию Базы (организации глобалов, если Вы сами программируете прямым способом COS), то лучше в индксы не писать большие значения , а заносить в значение глобали
Например ^A(область,район,город,улица,дом,квартира)=данные о квартире

можно и так
^a(индекс,улица,дом)=область,район,город,улица,дом,данные о квартире
"," через какой-то символ. ТАК лучше.

Очень большие глобали лучше не делать.
Например разбивать по годам.
Тут есть сылочки на доку
http://www.docadd.narod.ru/indexM.htm

Удачи..
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633417
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А такая калька с SQL подойдёт ?
^A(код области,код района,код города,код улицы,дом,квартира)=данные о квартире

Ссылку изучаю, спасибо. Жаль что там тоже присутствуют мёртвые уже ссылки :(.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633438
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЯ хочу освоить программирование на MUMPS/M (в подверсии GT.M).

авторА такая калька с SQL подойдёт ?

GT.M это самая что есть NoSQL database
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633445
Александр GAGADDDOC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sql + глобали , классы в Каше организовали и поэтому сейчас программируют не на COS, а начинали еще все на COS под MSM
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633449
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValeriuGT.M это самая что есть NoSQL database
Я это отлично понимаю просто чтобы прояснить :
Александр GAGADDDOCто лучше в индксы не писать большие значения , а заносить в значение глобали
Есть ли выгоды в том, чтобы для индексов использовать значения кодов справочника а не значения наименований справочника, ведь сам справочник будет существовать в любом случае.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633453
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL совсем не интересует. Именно глобали, поэтому ( ну и из-за чрезмерной стоимости) Каше мне не подходит ( да и не нравиться особо) мне интересно GT.M и чистый M.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633543
Александр GAGADDDOC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извините за битые ссылки ВРЕМЯ ИДЕТ...

при организации глобалов индксы делать не длинными
^A("индекс")=длинная строка

http://lusindane.at.tut.by/download/Globals.pdf

Интерсистемс просто уничтожит М в Каше
то что оно ДОРОГОЕ, но еще и не дают право на выбор
Например нужна только база и М язык (как было в MSM) тогда МОЖНО сделать на много ниже в цыне , так нет берите все, а зачем брать ZEN если оно не нужно...
или для рекламы Каше сделать на 5 мест безплатно...

Не по теме
А где делась подписка на Cache InterSystems News ?
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633706
doublefint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monster^A(код области,код района,код города,код улицы,дом,квартира)=данные о квартире

Из наблюдений за организацией хранения в различных системах на Cache(M):
1. Интерсистемс: s ^Global(id)=$lb(p1,p2,p3,p4,....) ;описание смысла позиций вынесено в отдельную глобаль (словарь)
2. ИнформИкс: s ^Global(id,1)=value1, ^Global(id,2)=value2 ;где 1,2 - коды свойств, соответствие тоже вынесено в отдельную глобаль
3. Часто в коде: s ^Global(id,"prop1")=value1, ^Global(id,"prop2")=value2 ;универсально, наглядно,расширяемо, избыточно, медленней
4. Ну и приведенный выше пример. Только данные (где словарь?), обработка пустых значений и нужно помнить об ограничениях на количество и длину ключей.
С индексами похожая ситуация, их еще можно назвать инвертированной (перевернутой) глобалью
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633787
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Александр GAGADDDOCОчень большие глобали лучше не делать.
Чем чревато?
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37633872
zdi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
zdi
Гость
авторЧем чревато
1. Если база разрушится - концов не найти (оч.редко, но бывает).
2. Хранение "небольших" глобалей более эфффективно в смысле физ.хранения.
Т.е. ВСЕ данные в ОДНОЙ глобали хранить не следует.
Ну, и - выборочное сохранение отдельными глобалями - проще, если мельче.
Но, конечно, нужна разумная середина.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37634001
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zdi2. Хранение "небольших" глобалей более эфффективно в смысле физ.хранения.
В чем собственно эфективность?

zdiНу, и - выборочное сохранение отдельными глобалями - проще, если мельче.
В чём именно простота?


Что-то пока одни лозунги...
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37634501
MX-9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monsterА такая калька с SQL подойдёт ?
^A(код области,код района,код города,код улицы,дом,квартира)=данные о квартире

Ссылку изучаю, спасибо. Жаль что там тоже присутствуют мёртвые уже ссылки :(.

В принципе все генераторы отчетов в М-системах это и делают - каждый немножко по своему

Например, мы вписываем эту формулу в ячейку EXCEL листа на клиенте

EXCEL клиента по tcp соединяется с "серверным многопользовательским Виртуальным EXCEL",
встроенном в M-систему, и передает ему эту формулу с некоторыми дополнительными указаниями

Виртуальный быстро поднимает все нужные архивы-глобали, находит данные и возвращает клиенту,
в ту ячейку, откуда шел запрос, (а также пишет данные в ^A(...) )
или - если ответ - это целый отчет - возвращает весь сформированный двумерный отчет
в указанную клиентом зону его EXCEL-листа (данные по всем квартирам этого дома)

результат нашего запроса и соответствующего SQL-запроса в принципе одинаковы
но скорость на порядок выше - особенности прямого глобального доступа

если ^A(...) уже была до запроса - то результат возвращается мгновенно

==========
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37634527
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MX-9, А вы не думали ещё о смене EXCEL на web браузеры ?
А как обрабатываете в M TCP соединение?
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37635264
MX-9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monsterMX-9, (1) А вы не думали ещё о смене EXCEL на web браузеры ?
(2) А как обрабатываете в M TCP соединение?

1 -- до конца года планируем начать работать и через WEB тоже,
но пока что народ не рвется из EXCEL в WEB - привык к комфорту

2 -- без шума и без пыли
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37635292
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Команды какие :) ?
чтобы в хелпе навестись
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37635344
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monster,

лучший способ научится, напросится работать в компанию которая уже работает например с Cache/Ensemble. Самому за эти продукты платить не придется. а за освоение еще платить будут.

GlobalsDB все же может выступать как бесплатная альтернатива платной Cache, хотя бы для тех кто не знает M, и пишет на других языках программирования. Хотя я не пробовал работать с другими NoSQL БД, и сравнить не могу.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37635394
Фотография 4d_monster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Совершенно согласен DAiMor , но к сожалению, стажёру не будут платить столько сколько я получаю за свои текущие обязанности.

ГлобалсДБ - кажется полная лажа. Писали, что там вообще нету М, только w, s, g, k операции над глобалями.
Практически любая key-value NoSQL лучше.

Поэтому себя я ориентирую на GT.M, но если есть что лучше - я последую совету.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37635534
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monster Поэтому себя я ориентирую на GT.M, но если есть что лучше - я последую совету

Пока из бесплатных, лучше GT.M нету.
Я Вам говорю это со 100%-ой уверенности.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37635580
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мы например на базе продукта M/Wire ( http://gradvs1.mgateway.com/main/)
для GT.M создали не плохой TCP Binding Client/Server .
Можно организовать клиент через socket на стороне Windows и не только.
Очень просто и интуитивно описано у него на страницы.
Немножко допилить и можно получить очень неплохой результат.
Мы на стороне клиента получаем\передаем очень большие обьемы за очень
короткие промежутки времени. Т.е. скорость очень высокая.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37635588
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что-то ссылка не работает в том виде в котором написал выше ...

http://gradvs1.mgateway.com/main/
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37635900
Фотография DirksDR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>>А как обрабатываете в M TCP соединение?

Я пОстил выше ссылку, там и код сервера ТСР, и коды клиента на 5-и языках.
Правда мне для VBA код клиента не подошел, т.к. WINSOK.OCX под VBA не пошел, пришлось для WINSOK32.dll примеры искать.
И код сервера "допиливал" на свой вкус.

M/Wire тоже хорошая штука, с него начинал разбираться что и как.
На Каше он сразу заработал. А GT.M ему вообще родной.

Хотел посмотреть, что такое PIP для GT.M.
FIS пишет, что это объектная надстройка над глобалями, и с недавнего времени бесплатная, но не дает ссылок на описание.
Не нашел ни документацию, ни примеров, ни скачать.
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37636223
MX-9
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4d_monsterКоманды какие :) ?
чтобы в хелпе навестись

Read

документация CACHE по работе TCP

Dirks приводит ссылки на разные варианты построения
связи
M-клиенты <<----->> M-сервер
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37636311
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DirksDR Хотел посмотреть, что такое PIP для GT.M.
FIS пишет, что это объектная надстройка над глобалями, и с недавнего времени бесплатная, но не дает ссылок на описание.
Не нашел ни документацию, ни примеров, ни скачать.

http://sourceforge.net/projects/pip/
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37636319
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Хочу заразиться свинкой / i want to pick up MUMPS
    #37636336
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для GT.M, на основе M/Wire у нас работает из Windows окружения (клиент)


http://eltranssoft.ucoz.ru/news/valeriu_gontia/2011-08-25-18
http://s2.ipicture.ru/uploads/20110903/aET8Kcr4.jpg
...
Рейтинг: 0 / 0
34 сообщений из 34, показаны все 2 страниц
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Хочу заразиться свинкой / i want to pick up MUMPS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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