Гость
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / [gt.m] "Архитектура" / 25 сообщений из 41, страница 1 из 2
19.05.2015, 09:01
    #38962215
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
Просветите про "архитектуру" gt.m...

В мамсе были тома и кипы, суть тома - файл. А кип это некое логическое разделение... В кип нужно было перейти используя команду
VIEW...

В Кащее есть БД и области... Как дальше, все вкурсе...

Как какова архитектура в gt.m?
----------
Cache for Windows (x86-64) 2012.2.2 (Build 801) Fri Dec 7 2012 12:08:23 EST
...
Рейтинг: 0 / 0
19.05.2015, 09:48
    #38962253
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
...
Рейтинг: 0 / 0
19.05.2015, 10:01
    #38962273
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
Valeriukrvsa,
Тема была
http://www.sql.ru/forum/1033138/gt-m-nastroyka-direktoriy-i-baz-dannyh?hl=
В этой теме не написано про саму архитектуру... Вот про нее-то и хочется узнать с самого начала.

Там звучит понятие "глобальная директория" это аналог кащейской области? Это просто некая папка линуксовая?
...
Рейтинг: 0 / 0
19.05.2015, 10:30
    #38962315
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
Вот картинка "описывающая" архитектуру ГТ.М



Т.е. есть какие-то файлы... Они разбиты на сегменты... Которые потом собраны в какие-то Regions.
Кто такой Regions?
...
Рейтинг: 0 / 0
19.05.2015, 10:57
    #38962363
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
Кто такой Segments?

Файлы *.dat это базы данных?

Что за файлы *.mjl?
...
Рейтинг: 0 / 0
19.05.2015, 11:11
    #38962385
DAiMor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
krvsaЧто за файлы *.mjl?журналирование
...
Рейтинг: 0 / 0
19.05.2015, 11:43
    #38962451
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
DAiMorkrvsaЧто за файлы *.mjl?журналирование
Одно прояснили.

Интересно узнать про остальное...
...
Рейтинг: 0 / 0
19.05.2015, 12:07
    #38962504
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
krvsa,
Можно пойти по этому адресу и скачать AcculturationWorkshop.zip
Там более детально описаны процедуры создания глобальных директорий.
И не только.

http://sourceforge.net/projects/fis-gtm/files/GT.M Acculturation Workshop/0.9/
...
Рейтинг: 0 / 0
19.05.2015, 12:45
    #38962577
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
Если короче.
Каждой области где находятся наши Глобалы соответствует Regions
Regions-это все что касается свойств Глобалов(длина строки, размер ключа итд...) (смотрите show -region )
Эти параметры можно менять(change -region ... итд)
change -segment
Каждому региону соответствует Segments
Segments -это все что касается файловой системе (размер блока, итд) (смотрите show -segment )
Эти параметры можно менять (change -segment ... итд)

.dat - это база данных (только Глобалы !)
.mjl - журналы баз.
...
Рейтинг: 0 / 0
19.05.2015, 12:46
    #38962578
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
ValeriuМожно пойти по этому адресу и скачать AcculturationWorkshop.zip
Если поговорить про это (архитектуру) нет желающих, остается только "пойти"...
...
Рейтинг: 0 / 0
19.05.2015, 12:54
    #38962593
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
ValeriuRegions-это все что касается свойств Глобалов(длина строки, размер ключа итд...)
Каждому региону соответствует Segments
Segments -это все что касается файловой системе (размер блока, итд)
Т.е. Regions и Segments физически (в файловой системе Линукса) никак не представлены? Это просто некие "сущности" отвечающие за детальные настройки или описания?

Valeriu.dat - это база данных (только Глобалы !)
.mjl - журналы баз.
Тут понял.
...
Рейтинг: 0 / 0
19.05.2015, 12:59
    #38962600
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
Если перейти к файловой системе...

Что есть "Глобальная директория"? Это линуксовая папка?

Если папка - что будет внутри нее?

С какой целью могут быть созданы те Сегменты и регионы? Т.е. вообще с этим стоит заморачиваться или нет?
...
Рейтинг: 0 / 0
19.05.2015, 14:02
    #38962688
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
krvsa,
Т.е. Regions и Segments физически (в файловой системе Линукса) никак не представлены? Это просто некие "сущности" отвечающие за детальные настройки или описания? Выходит так.
Что есть "Глобальная директория"? Это линуксовая папка?да
Если папка - что будет внутри нее?
Например папка: /home/test
baza.dat -
baza.mjl -
baza.gld -
Еще две папки в этой же папки для рутин:
1. /home/test/r - текст самих рутин (routine.m)
2. /home/test/o - обьектные модули рутин (routine.o)
Все это настраиваем в переменные окружения.
...
Рейтинг: 0 / 0
19.05.2015, 14:05
    #38962694
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
ValeriuНапример папка: /home/test
Это и будет глобальная директория?

Valeriu baza.gld
А это кто?
На картинке таких файлов нет...
...
Рейтинг: 0 / 0
19.05.2015, 14:09
    #38962700
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
krvsa,
:) это просто пример

.gld а это информация о директории где находится база(Global Directory)
...
Рейтинг: 0 / 0
19.05.2015, 14:36
    #38962751
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
Valeriuэто просто пример
Так если нет теоретического курса на русском, тогда и примеры могут дать хоть какое-то понятие о изучаемом "объекте"...
...
Рейтинг: 0 / 0
20.05.2015, 00:02
    #38963403
andrew000999
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
krvsa,
может что-то изменилось - но три года назад было именно так
файл /что-то там.gld - это описание базы данных
(ну там где именно находится собственно база, и ее параметры - размер ключа, размер собственно данных и т.д) - он небольшой 1024 байт
соответствующий ему файл
/что-то там.dat - это собственно база данных
остальные расширения типа \что-то там.log \что-то там.mjl - в общем-то совершенно никому не нужная ахинея требуемая стандартом MUMPS - на них не стоит заморачиваться

С уровнями NAMES, REGIONS, SEGMENTS заморачиваться тоже не стоит -
тут товарищ Blashkar сам себя перехитрил - попробовал объять необъятное
и в общем-то реализовал - но как пользоваться наверное только он и знает
NAMES - если грубо - то можно задавать диапазоны - типа от ^А*** до ^К*** хранится - там (в одном файле xxx.dat) а от ^L*** до ^Z*** совсем не там - в другом файле (yyy.dat)
очень сомневаюсь что на практике это используется где нибудь
REGION - описание параметров базы данных
1. Размер ключа (не знаю как сейчас, а совсем недовно было всего 55 символов)
что такое размер ключа
^ZZZ("qqqq","wwwww","eeee") - это ключ
размер ключа - длина этой строки
(если не ошибаюсь включая первый ^ и кавычки
2. размер записи - если, скажем record_size=4080 то это размер записи вместе с ключем
сменить примерно так
$gde -region DЕFAULT -key_size=255 -record_size=4080

SЕGMENT - в общем-то неудачная попытка сделать кипы подобные MSM
тут можно подключать к одному *.gld несколько *.dat - и когда-то при проводимых экспериментах у меня это получалось - сейчас не вспомню как да и не нужно
сменить примерно так
$gde change -segment DEFAULT -block_size=4096 -allocation=5000 -extension=10000 -global_buffer_count=1000 -file_name=\что-то там

обратите внимание на опцию -file_name - она важна
Вообще не пользуйтесь стандартными профилями создания баз данных - рисуйте свой
основной недостаток стандартных профилей - обращение к текущему каталогу линукса


посмотрите визуально просмотром на ваш файл что-то там.gld
Вы увидите там среди всего прочего ссылку на файл .\что-то там.dat
.\ - означает - в текущем каталоге - и это бомба замедленного действия
ДОЛЖЕН БЫТЬ ПОЛНЫЙ ПУТЬ что-то типа
\usr\каталог1\каталог2\каталог2\что-то там.dat
и для этого нужна та самая опция при создании базы данных
-file_name=\usr\каталог1\каталог2\каталог2\что-то там.dat

Резюме
1. Делаем свой профиль для создания базы данных
2. NAMES, REGION, SEGMENT не заморачиваемся - все DEFAULT, за исключением
вышесказанного

и все-таки можно сделать что-то подобное КИПАМ MSM
роли КИПов выполняют каталоги линукса
КИП1=\usr\каталог1\каталог2\КИП1\
КИП2=\usr\каталог1\каталог2\КИП2\
КИП3=\usr\каталог1\каталог2\КИП3\
КИП4=\usr\каталог1\каталог2\КИП4\
В КИПАХ лежат файлы *.m *.o программ и файлы КИП1.gld КИП1.dat
в программах вместо $view при переходе в КИП используете
для программ конструкцию $zr=\usr\каталог1\каталог2\КИП2\
для глобалов $zg=\usr\каталог1\каталог2\КИП2\файл.gld
или , как альтернативу полную глобальную ссылку
^[\usr\каталог1\каталог2\КИП2.gld]global
причем выражение в скобках может быть переменной
s A="\usr\каталог1\каталог2\КИП2.gld"
s B=^[A]global
























SEGMЕNT - тут мне кажется попытка реализовать MSM-овские кипы





все по умолчанию

за исключением параметров базы данных - а именно
1. Размер ключа (не знаю как сейчас, а совсем недовно было всего 55 символов)
что такое размер ключа
^ZZZ("qqqq","wwwww","eeee") - это ключ
размер ключа - длина этой строки
(если не ошибаюсь включая первый ^ и кавычки
...
Рейтинг: 0 / 0
20.05.2015, 00:23
    #38963413
andrew000999
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
И скачайте с сайта Евгения Каратаева minimdb.com
мой alt-nc
Во первых он прекрасно работает c gt/m
Во вторых вы там найдете в фале %aZGTM реализацию многих функций
о котрорых тут задавались вопросы
...
Рейтинг: 0 / 0
20.05.2015, 08:50
    #38963536
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
Спасибо за такое подробное описание!
Картинка стала складываться.

Удивило, что "размер ключа" всего 55 символов... Думал, что в "стандарте" это таки 255.
...
Рейтинг: 0 / 0
20.05.2015, 10:58
    #38963729
Alexey Maslov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
andrew000999NAMES - если грубо - то можно задавать диапазоны - типа от ^А*** до ^К*** хранится - там (в одном файле xxx.dat) а от ^L*** до ^Z*** совсем не там - в другом файле (yyy.dat)
очень сомневаюсь что на практике это используется где нибудьНе знаю, как в GT.M, а в Cache' подобная функция (namespace global mapping) достаточно востребованная: отобразить в БД CACHETEMP временные глобалы/подглобалы с "нетемповыми" именами - святое дело. Кашисты хорошо знают достоинства CACHETEMP, не знаю, есть ли аналог в GT.M.

Другая возможная причина - отправить глобал(ы), в которые идёт активная запись, но редкое чтение, в отдельную БД, которая находится на физически отдельном томе, чтобы не замедлять доступ к основной БД. Приходилось и такое делать.
...
Рейтинг: 0 / 0
20.05.2015, 13:21
    #38964025
П.С.М.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
Alexey MaslovДругая возможная причина
И еще одну добавлю: вынести определённые глобалы, данные в которых должны быть общими для группы различных областей, в одну отдельную базу.
...
Рейтинг: 0 / 0
20.05.2015, 13:24
    #38964030
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
П.С.М.И еще одну добавлю: вынести определённые глобалы, данные в которых должны быть общими для группы различных областей, в одну отдельную базу.
Какой выигрыш это дает?

Напомню так же, что тут про ГТ.М и там нет понятия области.
...
Рейтинг: 0 / 0
20.05.2015, 13:28
    #38964041
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
Так же дополнительно спрошу про отдельные файлы с глобалами...

Пока писалось, что эти файлы все (!) должны находиться в одной "глобальной директории". Т.о., я предполагаю, что и физически они должны находиться в одной линуксовой папке.

Или для ГТ.М все равно где находятся такие файлы? Все решается банальным описанием "переменных окружения"?
...
Рейтинг: 0 / 0
20.05.2015, 15:14
    #38964254
Valeriu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
krvsa,
Или для ГТ.М все равно где находятся такие файлы? Все решается банальным описанием "переменных окружения"?
Примерно так, но я думаю какой-то порядок для самого себя надо соблюдать. Если у вас на Линухе много пользователей прописано, тогда в файле /home будут присутствовать папки с ихними именами ...
Например пользователь zapl (допустим здесь пользователю(ям) что имеют отношения к заработной плате) будет соответствовать папка /home/zapl
Вот для этой папки пишите свои "переменных окружения" . Это для порядка и наглядности.
...
Рейтинг: 0 / 0
20.05.2015, 15:23
    #38964269
andrew000999
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[gt.m] "Архитектура"
Все правильно
GT.M все равно где находятся файлы базы данных
и доступ к ним через переменную окружения gtmgbldir
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / [gt.m] "Архитектура" / 25 сообщений из 41, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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