Как хранить данные Temenos T24
У нас есть проект Masking Data на банковской системе temenos t24 с базой данных Oracle.
мы не начинали читать данные до сих пор. мы сообщили temenos t24 хранить данные в виде столбцов XML в базе данных или в файлах XML. эта информация верна?
1 ответ
T24 хранит данные в виде XML с 2 столбцами для каждой таблицы
- RECID - первичный ключ
- XMLRECORD - данные
T24 может хранить данные во многих базах данных (Oracle, DB2, MS SQL Server, H2), используя драйверы Direct Connect для TAFC или JDBC, если время выполнения - TAFJ. Вы можете увидеть структуру данных с помощью оператора Oracle "DESCRIBE".
SQL> DESCRIBE F_SPF;
Name Null? Type
-------------------- ---------- ----------------------------
RECID NOT NULL VARCHAR2(255)
XMLRECORD SYS.XMLTYPE
SQL>
Таблицы могут храниться в формате XML или BLOB/CLOB в той же базе данных T24. На уровне T24 это регулируется файлом TAFJ_VOC:
SQL> SELECT RECID, ORCLFILENAME, ISBLOB FROM TAFJ_VOC WHERE ORCLFILENAME LIKE '%EB_DPT%';
RECID ORCLFILENAME ISBLOB
--------------------- --------------------- -------
F.EB.DPT.COUNTRY F_EB_DPT_COUNTRY X
F.EB.DPT.COUNTRY$NAU F_EB_DPT_COUNTR000 C
F.EB.DPT.COUNTRY$HIS F_EB_DPT_COUNTR001 C
SQL>
На приведенном выше снимке экрана видно, что имя таблицы T24 хранится в столбце RECID, имя таблицы Oracle хранится в столбце ORCLFILENAME, а тип столбца XMLRECORD таблицы указывается в столбце ISBLOB: X означает XMLTYPE, C означает CLOB.
Это можно изменить, изменив таблицу и обновив TAFJ_VOC.
Приведенные выше скриншоты действительны для версии TAFJ R18.
T24, флагманское программное обеспечение Temenos, хранит данные разными способами в зависимости от реализации.
В T24 есть две большие категории хранилищ данных:
- Использование собственной многозначной файловой базы данных Temenos - JBase. Это старый способ сделать это и больше не используется. Только мелкими игроками, такими как МФО.
- Использование СУБД. Поддерживаемые БД: DB2, Oracle и MS SQL. Я также видел реализацию в базе данных H2, но, насколько я могу судить, это только для демонстрационных целей, а не для производства.
Как хранятся данные:
Для JBase файл хранится в двоичных файлах, и наиболее эффективный способ сделать это - написать подпрограммы JBase с использованием Temenos Application Framework для C (TAFC). При желании вы можете использовать jdbc (если вы можете заставить его работать) и запрашивать базу данных, используя обычные сценарии SQL.
Для СУБД данные хранятся в 2 столбцах, как указано выше: RECID и XMLRECORD. В некоторых больших таблицах можно использовать CLOB вместо XMLRECORD.
К счастью, Temenos создает представления своих таблиц по умолчанию, которые извлекают поля из длинного поля XMLRECORD. Я бы прочитал данные, используя эти поля на вашем месте. Вы также можете написать свои собственные запросы, используя функции xml, поддерживаемые запрашиваемой базой данных. Для Oracle я полагаюсь на extractvalue()
,
@ Марис Рубенис предоставил хороший пример выше. Как он упомянул, вы получаете сопоставление, запрашивая таблицу VOC.