|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
Просветите про "архитектуру" gt.m... В мамсе были тома и кипы, суть тома - файл. А кип это некое логическое разделение... В кип нужно было перейти используя команду VIEW... В Кащее есть БД и области... Как дальше, все вкурсе... Как какова архитектура в gt.m? ---------- Cache for Windows (x86-64) 2012.2.2 (Build 801) Fri Dec 7 2012 12:08:23 EST ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 09:01 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
Valeriukrvsa, Тема была http://www.sql.ru/forum/1033138/gt-m-nastroyka-direktoriy-i-baz-dannyh?hl= В этой теме не написано про саму архитектуру... Вот про нее-то и хочется узнать с самого начала. Там звучит понятие "глобальная директория" это аналог кащейской области? Это просто некая папка линуксовая? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 10:01 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
Вот картинка "описывающая" архитектуру ГТ.М Т.е. есть какие-то файлы... Они разбиты на сегменты... Которые потом собраны в какие-то Regions. Кто такой Regions? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 10:30 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
Кто такой Segments? Файлы *.dat это базы данных? Что за файлы *.mjl? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 10:57 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
krvsaЧто за файлы *.mjl?журналирование ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 11:11 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
DAiMorkrvsaЧто за файлы *.mjl?журналирование Одно прояснили. Интересно узнать про остальное... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 11:43 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
krvsa, Можно пойти по этому адресу и скачать AcculturationWorkshop.zip Там более детально описаны процедуры создания глобальных директорий. И не только. http://sourceforge.net/projects/fis-gtm/files/GT.M Acculturation Workshop/0.9/ ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 12:07 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
Если короче. Каждой области где находятся наши Глобалы соответствует Regions Regions-это все что касается свойств Глобалов(длина строки, размер ключа итд...) (смотрите show -region ) Эти параметры можно менять(change -region ... итд) change -segment Каждому региону соответствует Segments Segments -это все что касается файловой системе (размер блока, итд) (смотрите show -segment ) Эти параметры можно менять (change -segment ... итд) .dat - это база данных (только Глобалы !) .mjl - журналы баз. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 12:45 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
ValeriuМожно пойти по этому адресу и скачать AcculturationWorkshop.zip Если поговорить про это (архитектуру) нет желающих, остается только "пойти"... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 12:46 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
ValeriuRegions-это все что касается свойств Глобалов(длина строки, размер ключа итд...) Каждому региону соответствует Segments Segments -это все что касается файловой системе (размер блока, итд) Т.е. Regions и Segments физически (в файловой системе Линукса) никак не представлены? Это просто некие "сущности" отвечающие за детальные настройки или описания? Valeriu.dat - это база данных (только Глобалы !) .mjl - журналы баз. Тут понял. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 12:54 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
Если перейти к файловой системе... Что есть "Глобальная директория"? Это линуксовая папка? Если папка - что будет внутри нее? С какой целью могут быть созданы те Сегменты и регионы? Т.е. вообще с этим стоит заморачиваться или нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 12:59 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
krvsa, Т.е. Regions и Segments физически (в файловой системе Линукса) никак не представлены? Это просто некие "сущности" отвечающие за детальные настройки или описания? Выходит так. Что есть "Глобальная директория"? Это линуксовая папка?да Если папка - что будет внутри нее? Например папка: /home/test baza.dat - baza.mjl - baza.gld - Еще две папки в этой же папки для рутин: 1. /home/test/r - текст самих рутин (routine.m) 2. /home/test/o - обьектные модули рутин (routine.o) Все это настраиваем в переменные окружения. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 14:02 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
ValeriuНапример папка: /home/test Это и будет глобальная директория? Valeriu baza.gld А это кто? На картинке таких файлов нет... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 14:05 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
krvsa, :) это просто пример .gld а это информация о директории где находится база(Global Directory) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 14:09 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
Valeriuэто просто пример Так если нет теоретического курса на русском, тогда и примеры могут дать хоть какое-то понятие о изучаемом "объекте"... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2015, 14:36 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
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") - это ключ размер ключа - длина этой строки (если не ошибаюсь включая первый ^ и кавычки ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 00:02 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
И скачайте с сайта Евгения Каратаева minimdb.com мой alt-nc Во первых он прекрасно работает c gt/m Во вторых вы там найдете в фале %aZGTM реализацию многих функций о котрорых тут задавались вопросы ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 00:23 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
Спасибо за такое подробное описание! Картинка стала складываться. Удивило, что "размер ключа" всего 55 символов... Думал, что в "стандарте" это таки 255. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 08:50 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
andrew000999NAMES - если грубо - то можно задавать диапазоны - типа от ^А*** до ^К*** хранится - там (в одном файле xxx.dat) а от ^L*** до ^Z*** совсем не там - в другом файле (yyy.dat) очень сомневаюсь что на практике это используется где нибудьНе знаю, как в GT.M, а в Cache' подобная функция (namespace global mapping) достаточно востребованная: отобразить в БД CACHETEMP временные глобалы/подглобалы с "нетемповыми" именами - святое дело. Кашисты хорошо знают достоинства CACHETEMP, не знаю, есть ли аналог в GT.M. Другая возможная причина - отправить глобал(ы), в которые идёт активная запись, но редкое чтение, в отдельную БД, которая находится на физически отдельном томе, чтобы не замедлять доступ к основной БД. Приходилось и такое делать. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 10:58 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
Alexey MaslovДругая возможная причина И еще одну добавлю: вынести определённые глобалы, данные в которых должны быть общими для группы различных областей, в одну отдельную базу. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 13:21 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
П.С.М.И еще одну добавлю: вынести определённые глобалы, данные в которых должны быть общими для группы различных областей, в одну отдельную базу. Какой выигрыш это дает? Напомню так же, что тут про ГТ.М и там нет понятия области. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 13:24 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
Так же дополнительно спрошу про отдельные файлы с глобалами... Пока писалось, что эти файлы все (!) должны находиться в одной "глобальной директории". Т.о., я предполагаю, что и физически они должны находиться в одной линуксовой папке. Или для ГТ.М все равно где находятся такие файлы? Все решается банальным описанием "переменных окружения"? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 13:28 |
|
[gt.m] "Архитектура"
|
|||
---|---|---|---|
#18+
krvsa, Или для ГТ.М все равно где находятся такие файлы? Все решается банальным описанием "переменных окружения"? Примерно так, но я думаю какой-то порядок для самого себя надо соблюдать. Если у вас на Линухе много пользователей прописано, тогда в файле /home будут присутствовать папки с ихними именами ... Например пользователь zapl (допустим здесь пользователю(ям) что имеют отношения к заработной плате) будет соответствовать папка /home/zapl Вот для этой папки пишите свои "переменных окружения" . Это для порядка и наглядности. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2015, 15:14 |
|
|
start [/forum/topic.php?fid=39&fpage=15&tid=1556657]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
others: | 266ms |
total: | 407ms |
0 / 0 |