
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
A big financial prospect in the UK has asked us to demo how IRIS could help with Financial Regulatory Reporting to the FCA (Financial Conduct Authority).
The FCA has several regultatory reports touching several financial services products such as mortgages. Financial institutions must send the FCA periodic reports. Some of them may be monthly, quarterly or every semester.
To prepare these reports, financial institutions must gather information coming from their legacy systems. If you take mortgages as an example, a typical legacy system may send you a file with all the mortgage sales data (new mortgages). Then, every month, the system may produce a file with mortgage performance information (how well customers are paying their monthly installments).
Some financial institutions will even have more than one mortgage system due to aquisitions. That makes the problem even harder since regulators such as the FCA don't really care. The financial institution is responsible for reporting their mortage information. They don't care if the financial institution has one, two or 10 mortgages systems or if they all use different naming conventions and coding systems to represent the mortgage information and the performance data.
Some times the data may even arrive out of order: performance data may end up arriving before the mortgage sales data. That would mean we would have to store information about a mortgage that doesn't yet exist in our reporting framework.
This demo shows how InterSystems IRIS can be used to receive mortage information over files. The demo collates the mortgage data with the performance data independently of the order it arrives. The demo shows how InterSystems IRIS can prepare the data that could possibly be coming from different mortgage systems (although on this demo we have onlhy one source) by normalizing it on a canonical (specialized) model for mortgage reporting. Normalization means that:
During this process, problems may arise and the demo shows how InterSystems IRIS can pause the proces and start a human workflow so that the problem may be resolved without disrupting the reporting schedule.
The demo also shows how reports can be scheduled to be run. In the demo, we are producing two reports:
Information about PSD 001 and PSD 007 can be found here. Reports must be generated following FCA's XML Schema for each report. We demonstrate how we can map the canonical model to the FCA schema of each report on this demo. When a report is generated, we leave its generated XML file on a folder. The FCA mantains a system called Gabriel, that the financial institutions can use to submit their reports by uploading these files. The FCA also provides other ways to submit these reports such as SOAP APIs.
The demo also shows how we can produce real time reporting about the information that is being sent by the legacy systems for preparing reports, and about the status of the FCA reports that are can be scheduled, overdue or delivered.
Once the report is sent to the FCA (over file uploading, SOAP, etc.), a validation process is started on Gabriel. Gabriel can reject the report which would cause a workflow to correct in Gabriel. The financial institution can correct it by using a Gabriel's UI or cancel that report and send a new one. We are not showing this part of the process on this demo.
Demo of InterSystems IRIS being used to:
The demo also includes a running Hyperledger Network that is deployed with a smart contract called MortgageReportingAssestContrat . During the mortgage reporting process, reports are also sent to the hyperledger network using this smart contract.
In order to view the running network, the demo also comes with a Hyperledger Explorer. The explorer will allow you to view activity occuring on your Hyperledger Network. The explorer runs on port 8080. After staring your demo and navigating to this page you will see an image that looks like this.
!https://github.com/intersystems-community/irisdemo-demo-finrep/blob/master/image-iris/html/explorer-login.png?raw=true
You can use the credentials: user: exploreradmin password: exploreradminpw to get into the running explorer.
After successful login you will see the dashboard which will let you inspect the activity of your demo.
!https://github.com/intersystems-community/irisdemo-demo-finrep/blob/master/image-iris/html/explorer-landing.png?raw=true
After the demo finishes generating reports, you can take a look at the transactions in the explorer.
WARNING: If you are running on a Mac or Windows, you must give Docker at least 5Gb of RAM for this demo to run properly. Also, please check this https://github.com/intersystems-community/irisdemo-base-troubleshooting document in case you find problems starting the demo with docker-compose. Disk space available for the docker VM is the most common cause for trouble.
If running on a Mac, make sure you disable Docker Experimental Feature "Use gRPC FUSE for file sharing". This is causing an issue where the chain code can not be installed in the hyperledger.
To run the demo on your PC, make sure you have Git and Docker installed on your machine.
Clone this repository to your local machine to get the entire source code. Don't worry, you don't need to rebuild the demo from its source. It is just easier this way. After cloning the repo, change to its directory and start the demo:
bashgit clone https://github.com/intersystems-community/irisdemo-demo-finrep cd irisdemo-demo-finrep ./run.sh
The run script will make sure the containers are removed before you start the demo and also after you are finished with the demo. It will also clean up generated report files and the files that are moved to the Done folders. Using the run.sh script is a good way to always start fresh and keep everything clean.
When starting, you will see lots of messages from all the containers that are starting. That is fine. Don't worry!
After all the containers have started, open a browser at http://localhost:***/csp/user/demo.csp to see the landing page of the demo. When requested, use the credentials SuperUser/sys to log in.
You are going to see a page like this:
!https://github.com/intersystems-community/irisdemo-demo-finrep/blob/master/image-iris/html/landing-page.png?raw=true
This is the landing page of the demo. All the ballons on this image are clickable. Click on the Toggle Detailed View to show more information.
The idea is that as you give the demo, you click on each balloon from left to right.
When you clonned this git repository, you will notice that there is a folder named MortgageSystemFiles. Here is the structure of this folder:
When you click on the February blue ballon, the demo will:
So you can look at the files if you want. They will be copied together and InterSystems IRIS will pick them up. The order that it picks them up doesn't really matter and may vary. That happens with typical production systems and this demo has been designed to deal with that.
Loading these two files takes a couple of minutes since we are also validating data types and validating the codes of coded fields to match the ones that the canonical model accepts (in order to guarantee proper reporting to the FCA later).
A similar process will start when you click on the second blue baloon except that now, what is going to be copied are the performance files on the /MortgageSystemFiles/Perf/Originals/*.csv folder.
This demo has a flow. You should start by clicking on the orange square at the right to start pumping the files in. Then you can start clicking on the components that are processing these files from left to right including:
Now stop. Don't touch the canonical model just yet. Move on to the control plane. Try to keep your tabs closed. You can always open them up again with ease by using the demo landing page:
Now move to the canonical model and show how the data has been collated on the tables Canonical.Mortgage, Canonical.MortgagePerf and Canonical.MortgageAfford.
Go back to the monitoring dashboard and show that we have lots of files loaded. The error is gone. But our reports are overdue! Time to generate some reports.
Show the report schedule on the control plane. Click on the PSD001 report to start its generation. Don't show the trace just yet. Move up to the Report Generation (upper right) part of the demo landing page:
Make the point that this schedule is actually a schedule. We are triggering the report by hand because this is a demo. But, typically, the report would be triggered automatically unless there is a data acquisition problem.
Finally, make sure to open the Monitoring Dashboard one last time to show that the PSD 001 report is not overdue anymore. It is delivered.
You can generate the PSD 007 report if you want. It will work. But it may not be necessary. You have shown a lot already.
You can infer this from looking at the production configuration. The Business Operation Send to FCA will give you this information. When you clonned this repository, a folder called \FCAGeneratedReports will be there. This is the folder where the reports will be generated as you run the demo.
Yes.
That may actually be a good point to make on the demo. Some times, you may find a problem with a file and the human workflow will start. You, as the data steward, may decide to discard that file and just ask the legacy system to send a new one. The demo can be used to show this workflow.
Actually, one of the performance fileas comes with an error. Line 15 of the file for january brings an invalid code for column LegacyReasonForClosure. The demo suggests you to simply correct the lookup table for this column to add a new mapping for this invalid code and retry processing the same file.
Another approach you could use would be to:
The process above will work as well and can be used to demonstrate this second workflow.
There are other IRIS demo applications that touch different subjects such as NLP, ML, Integration with AWS services, *** services, performance benchmarks etc. Here are some of them:
Please, report any issues on the https://github.com/intersystems-community/irisdemo-demo-kafka/issues.
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务