#InterSystems IRIS

19 Followers · 5.6K Posts

InterSystems IRIS is a Complete Data Platform
InterSystems IRIS gives you everything you need to capture, share, understand, and act upon your organization’s most valuable asset – your data.
As a complete platform, InterSystems IRIS eliminates the need to integrate multiple development technologies. Applications require less code, fewer system resources, and less maintenance.

Article Robert Cemper · Jul 21, 2020 1m read

This is a sample to use %JSON.Adaptor class available in IRIS to produce a snapshot of your object.

The sample consists of 2 classes that are variations of what was known in Caché/SAMPLES as Sample.Person.
Be aware that the possibilities are limited by %JSON.Adapter and how you make use of it.

Once in place, you create some test data by Populate().
You select an object and take a snapshot.
You apply changes to your object and take another snapshot.
And see the difference.

BINGO!

GitHub

0
0 775
Article Robert Cemper · Jul 21, 2020 1m read

It's also an example of a customized SystemFunction extension (ZZISJSON) in Caché & IRIS
This time it is to be included in %ZLANGF00.mac

A JSON string is mostly imported from a file or over REST
You rely on a clean and compatible structure. This is the check.

required: ZPretty.mac

demo

USER>ZWRITE jsn  
jsn="{"Name":"Li,Robert K.","SSN":"672-92-9664","DOB":"1975-01-12","Home":{"Street":"986 Washington Blvd","City":"Boston","State":"PA","Zip":"95802"},"Office":{"Street":"6012 First Place","City":"Reston","State":"MT","Zip":"77739"},"Spouse":{"Name":"Avery,Zelda
0
0 885
Article Robert Cemper · Jul 20, 2020 1m read

t's also an example for a customized command extension (ZZJSON) in IRIS

IRIS has a nice %JSON.Formatter class.
But for debugging it is not really handy.
see:

ZWRITE js1  
js1="{""Name"":""Cunningham,John C."",""SSN"":""294-11-9150"",""DOB"":""1933-01-08"",""Home"":{""Street"":""4249 Ash Street"",""City"":""Tampa"",""State"":""MD"",""Zip"":""30176""},""FavoriteColors"":\[""White"",""Red"",""Green""]}"   

so you proceed for the most simple case

set formatter=##class(%JSON.Formatter).%New()   
do formatter.Format(js1)  
{   
  "Name":"Cunningham,John C.",  
  "SSN":"294-11-9150",
0
0 657
Question Mathew Lambert · Jul 20, 2020
We are using the mentioned password function and we need to know if is in line with the NIST recommendations regarding strength, https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf
 
Reading interystems docummentation is not 100% clear for me as it states "(See RSA Laboratories Public-Key Cryptography Standards #5 and Federal Information Processing Standards Publications 180-4 and 198-1 for more information.)"
1
0 1417
Article Renato Banzai · Jul 14, 2020 5m read

This is my introduction to a series of posts explaining how to create an end-to-end Machine Learning system.

Starting with one problem

Our IRIS Development Community has several posts without tags or wrong tagged. As the posts keep growing the organization of each tag and the experience of any community member browsing the subjects tends to decrease.

First solutions in mind

We can think some usual solutions for this scenario, like:

  • Take a volunteer to read all posts and fix the mistakes.
  • Pay a company to fix all mistakes.
  • Send an email to each post writer to review the texts from past.

My Solution

picture

11
2 599
Announcement Anastasia Dyubaylo · Jul 13, 2020

Hey Developers!

This week is a voting week for the InterSystems IRIS AI Programming Contest!

So, it's time to give your vote to the best AI- and ML-enabled solution on InterSystems IRIS!

🔥 You decide: VOTING IS HERE 🔥

 

How to vote? This is easy: you will have one vote, and your vote goes either in Experts Nomination or in Community Nomination.

5
0 448
Article Yuri Marx · Jul 13, 2020 2m read

Currently, the process of using machine learning is difficult and requires excessive consumption of data scientist services. AutoML technology was created to assist organizations in reducing this complexity and the dependence on specialized ML personnel.

AutoML allows the user to point to a data set, select the subject of interest (feature) and set the variables that affect the subject (labels). From there, the user informs the model name and then creates his predictive or data classification model based on machine learning.

It is not necessary to know about cognitive algorithms, since AutoML

4
5 535
InterSystems Official Stefan Wittmann · Jul 1, 2020

GA releases are now published for the 2020.2 version of InterSystems IRIS, IRIS for Health, and IRIS Studio!

A full set of containers for these products are available from the WRC Software Distribution site, including community editions of InterSystems IRIS and IRIS for Health.

The build number for these releases is 2020.2.0.211.0.

InterSystems IRIS Data Platform 2020.2  provides an important security update with the following enhancements:

  • Support for TLS 1.3
  • Support for SHA-3

InterSystems IRIS for Health 2020.2 includes all of the enhancements of InterSystems IRIS.

12
0 749
Article Renato Banzai · Jul 17, 2020 3m read

This is the second post of a series explaining how to create an end-to-end Machine Learning system.

Exploring Data

The InterSystems IRIS already has what we need to explore the data: an SQL Engine! For people who used to explore data in csv or text files this could help to accelerate this step. Basically we explore all the data to understand the intersection (joins) which should help to create a dataset prepared to be used by a machine learning algorithm.

Posts Table ( Provided by Intersystems Team )

picture

Tags Table ( Provided by Intersystems Team )

picture

Our challenge demands to classify a post with the

0
1 369
Question Jonathan Anglin · Jul 16, 2020

I send ORUs to a process where a transform is applied before sending the message to a process where the routing is handled.A recent request was made that when OBR:25="D" the message is also be faxed with transforms that have some similarities to the original, but not exactly the same.I copied the DTC, made the alterations, and created a separate rule to handle it.However, when I run a message through with a "D" in OBR:25, it is only sent to the routing process once.

3
0 334
Article José Pereira · Jul 17, 2020 8m read

Following up the previous part, it's time to take advantages for IntegratedML VALIDATION MODEL statement, to provide information in order to monitor your ML models. You can watch it in action here

The code presented here was derived from examples provided by either InterSystems IntegragedML Template or IRIS documentation, my contribution was mainly mashing up such codes. It's a simple example intended to be a start for discussions and future works.

Note: The code presented here is for explanation purpose only. If you want to try it, I developed an example application - iris-integratedml-monitor-

0
1 322
Article José Pereira · Jul 15, 2020 5m read

A few months ago, I read this interesting article from MIT Technology Review, explaing how COVID-19 pandemic are issuing challenges to IT teams worldwide regarding their machine learning (ML) systems.

Such article inspire me to think about how to deal with performance issues after a ML model was deployed.

I simulated a simple performance issue scenario in an Open Exchange technology example application - iris-integratedml-monitor-example, which is competing in the InterSystems IRIS AI Contest. Please, after read this article, you can check it out and, if you like it, vote for me! :)

Content

Part

2
0 528
Article Bob Binstock · May 16, 2018 6m read

InterSystems supports use of the InterSystems IRIS Docker images it provides on Linux only. Rather than executing containers as native processes, as on Linux platforms, Docker for Windows creates a Linux VM running under Hyper-V, the Windows virtualizer, to host containers. These additional layers add complexity that prevents InterSystems from supporting Docker for Windows at this time.

We understand, however, that for testing and other specific purposes, you may want to run InterSystems IRIS-based containers from InterSystems under Docker for Windows.

12
6 4490
Article Vasiliy Bondar · Jul 16, 2020 5m read

As you probably know, InterSystems IRIS has a mechanism for auto-generating methods. So, when you create an index in a class, you create methods that make your work easier. There is also a good article on Community that describes such methods.

Take, for example, IndexNameOpen(val), where IndexName is the name of the corresponding index. This method returns an object in which the value of this index corresponds to the value of val.

But this method is available only for unique indexes.

0
0 831
Question Oliver Wilms · Jul 15, 2020

I want to map global ^myUnitTests(ID)={Start}_"^"_{JOB} where {Start} and {JOB} are two properties and ID is determined by $Increment(^myUnitTests).

I defined this class but it will not compile:

Class UnitTest.Test Extends %Persistent [ StorageStrategy = NewStorage1 ]
{Property JOB As %String;Property Start As %String;Storage NewStorage1
{
<IdFunction>increment</IdFunction>
<IdLocation>^myUnitTests</IdLocation>
<SQLMap name="Map1">
<ConditionalWithHostVars></ConditionalWithHostVars>
<Data name="JOB">
<Delimiter>"^"</Delimiter>
<Piece>2</Piece>
</Data>
<Data name="Start">
<Delimiter>"^"</Delimiter>
<Piece

1
0 389
Question Steve Pisani · Jul 15, 2020

Hi,

Business Rules can define a context object,  whose properties are exposed and used in the expressions of the rules. For example, my context object is an object with 3 properties. PropA, PropB and PropC.

When constructing my rules, I can call a custom function, and I have one I built myself called 'myFunction' which takes arguments and I pass in properties of my context object. (I can pass in the value of the context object's PropA, B or C).

But lets assume my context object was big, with many properties,  and serial objects and other references -  And, my custom function has needs many of

6
0 455
Question Oliver Wilms · Jun 25, 2020

Hello,

I am using a class based on %UnitTest.TestProduction to test Health Connect production.

I read in Class Reference IRIS for UNIX 2020.1:

Note: This class is not intended to be used in InterSystems IRIS instances.

Why should this not be used in IRIS? I have not seen any difference using this with HealthConnect 2017 or IRIS 2020.1

1
0 316
Question Adel Elsayed · Jul 13, 2020

Pyodbc supports calling stored procedure  , but if the IRIS Stored Procedure ROWSPEC has a column with datatype specified as %Date or %Time, Pyodbc fails to fetch it and throws this error.

"

pyodbc.Error: (' 2201', '[ 2201] [Cache ODBC][State :  22018 ][Native Code 22005]\r\nERROR #388: Unknown error, code 22005 (22005) (SQLGetData)')

"

on printing the cursor execute description, pyodbc reads the column as <int>.

and if the ROWSPEC datatype specification was removed, it fetches successfully.

i'm using the driver "InterSystems IRIS ODBC35"  2019.2.0.107

3
0 1099
Article Luca Ravazzolo · Jul 14, 2020 3m read

Hi All,

With this article, I would like to show you how easily and dynamically System Alerting and Monitoring(or SAM for short) can be configured. The use case could be that of a fast and agile CI/CD provisioning pipeline where you want to run your unit-tests but also stress-tests and you would want to quickly be able to see if those tests are successful or how they are stressing the systems and your application (the InterSystems IRIS backend SAM API is extendable for your APM implementation). 

0
1 791
Question Peter N · Jul 11, 2020

I try to run a small test routine (guessing a random number) in WebTerminal but the result looks broken.
in IRISterminal:

 in WebTerminal:

I think it relates to backspace.
Is there some special setting required?

The code:

a
 q=".......... guess [0..9]: " 
 i=1:1 if ! $c(9),"thank you",! q
 q  
b
 !,i,$c(9),q
 f  v#1 q:(v?.1n) " !no number",$c(8,8,8,8,8,8,8,8,8,8,8,8)
 " "
 r=$R(10),p=$s(v="":1,v=r:"!",v>r:"<",1:">")
 x=q,$e(x,r+1)="*",$e(x,v+1)=$s(v=r:"!",v>r:"<",1:">") 
 q:p  $c(13),$c(9),p=v=q

5
0 350
Announcement Anastasia Dyubaylo · Jun 13, 2020

Hey Community,

We're pleased to invite all the developers to the upcoming InterSystems IRIS 2020.1 Tech Talk: Speed Under Pressure on July 14 at 10:00 AM EDT! 

In this InterSystems IRIS 2020.1 Tech Talk, we'll learn about the open source Ingestion Speed Test. We will explain:

  • the architecture of the ingestion speed test
  • how we are leveraging Docker containers to run it on our PCs
  • how we are leveraging InterSystems Cloud Manager to easily run it on AWS so we can compare InterSystems IRIS with other databases, such as AWS Aurora 

After this Tech Talk, you'll be able to use the Ingestion Speed Test on InterSystems Open Exchange for your own testing and benchmarking.


1
1 454