#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 Lucas Enard · Aug 17, 2022 7m read

In this GitHub we fine tune a bert model from HuggingFace on review data like Yelp reviews.
The objective of this GitHub is to simulate a simple use case of Machine Learning in IRIS :
We have an IRIS Operation that, on command, can fetch data from the IRIS DataBase to train an existing model in local, then if the new model is better, the user can override the old one with the new one.
That way, every x days, if the DataBase has been extended by the users for example, you can train the model on the new data or on all the data and choose to keep or let go this new model.
We are aware that training

2
1 521
Article Evgeny Shvarov · May 30, 2020 2m read

Hi Developers!

Sometimes we need to import CSV data programmatically to InterSystems IRIS either from CSV or from URL. And we expect the class with proper datatypes to be created and the data to be imported.

I published a module csvgen on Open Exchange which does exactly that.

If you just need the CSV file be imported into IRIS you can do the following:

USER>do ##class(community.csvgen).Generate("/usr/data/titanic.csv",,"Data.Titanic")

Class name: Data.Titanic
Header: PassengerId INTEGER,Survived INTEGER,Pclass INTEGER,Name VARCHAR(250),Sex VARCHAR(250),Age INTEGER,SibSp INTEGER,Parch INTEGER,Ticket VARCHAR(250),Fare MONEY,Cabin VARCHAR(250),Embarked VARCHAR(250)
Records imported: 891
USER>

Or if you have the CSV on the internet, e.g. COVID-19 Data on Github you can get the data in the following way:

USER>d ##class(community.csvgen).GenerateFromURL("https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_daily_reports/05-29-2020.csv",",","Data.Covid19")

Class name: Data.Covid19
Header: FIPS INTEGER,Admin2 VARCHAR(250),Province_State VARCHAR(250),Country_Region VARCHAR(250),Last_Update DATE,Lat MONEY,Long_ DOUBLE,Confirmed INTEGER,Deaths INTEGER,Recovered INTEGER,Active INTEGER,Combined_Key VARCHAR(250),Incidence_Rate DOUBLE,Case-Fatality_Ratio DOUBLE
Records imported: 3522
USER>
16
1 1479
InterSystems Official Fabiano Sanches · Aug 17, 2022

This is the fifth in a series of releases that are part of the developer preview program for 2022.2 Future preview releases are expected to be updated biweekly and we will add features as they are ready.  Many updates, fixes and enhancements  have been added in 2022.2, in SQL management, cloud integration, Kafka and JMS adapters, the SQL Loader, and other areas. Please share your feedback through the Developer Community so we can build a better product together.

The Early Access Program (EAP) is still active for the Columnar Storage.   Customers interested in exercising it should join the Early

0
0 317
Question Michael Davidovich · Aug 16, 2022

Have a Zen report with a huge query that we are trying to break down and be more efficient.  

Looks like Zen only wants to take a result set class as the data (or XML, but writing to a file to generate these reports is probably even more overhead).

Is there a way I can move through a result set object, delete rows I don't want based on some objectscript commands and the pass that to the report?

Or can I pass a dynamic object?

Thanks.

3
0 350
Article Paul Hurley · Aug 17, 2022 1m read
IrisStat options
a All
b bits
c counters
d dump processes
e error log
f global module flags
g ^GLOSTAT info
h irisstat usage
j journal
k prefetch daemons
l LRU global buffers
m GFILETAB
n network
o clear irisstat
p processes
q hibernation semaphores
s irisstat exe directory
t run irisstat in loop
u locks
v Check versions
w write daemon queues
   
B Blocks in GBFSPECQ
C inter-job comms
D sample block collisions
E cluster status
G
0
0 459
Article Michael Braam · Aug 17, 2022 12m read

Being interoperable is more and more important nowadays. InterSystems IRIS 2022.1 comes with a new messaging API to communicate with event streaming platforms like Kafka, AWS SQS/SNS, JMS and RabbitMQ.
This article shows how you can connect to Kafka and AWS SQS easily.
We start with a brief discussion of the basic concepts and terms of event streaming platforms. 

Event streaming platforms purpose and common terms

Event streaming platforms like Kafka or AWS SQS are capable to consume a unbound stream of events in a very high frequency and can react to events.

0
1 637
Job Shannon P · Aug 16, 2022

Looking for a new position working on InterSystems and Interface/Ensemble development/implementation, engine migration/upgrade, custom interfaces, message format conversions, or ETL.

Ideally looking for part-time and corp-to-corp. 

Profile:

  • More than 15 years in healthcare industry, concentrated in HL7 integration with extensive experience in interface development with InterSystems IRIS for Health, Cerner OpenEngine, Openlink and Mirth.
  • Strong emphasis in Microsoft technologies such as Visual Basic .NET, SQL Server as well as excellent Object-Script skills and good understanding of XML, JSON,
0
0 360
Article Yuri Marx · Aug 8, 2022 24m read

In this article you will have access to the curated base of articles from the InterSystems Developer Community of the most relevant topics to learning InterSystems IRIS. Find top published articles ranked by Machine Learning, Embedded Python, JSON, API and REST Applications, Manage and Configure InterSystems Environments, Docker and Cloud, VSCode, SQL, Analytics/BI, Globals, Security, DevOps, Interoperability, Native API. Learn and Enjoy!

Machine Learning

Machine Learning is a mandatory technology to build advanced data analysis and automate manual activities with excellent efficiency.

6
7 1162
Article Evgeniy Potapov · Aug 16, 2022 7m read

One of the most important tasks of dashboards is, on the one hand, to help you perceive data in an aggregated form, and, on the other hand, not to lose the depth of immersion in the data if you need this. One of the tools that help us achieve this result is drill down. It enables us to display several hierarchical levels of data, from aggregated to detailed.
Our task is to make an analytical dashboard that will be able to drill down by time periods:  from months to weeks and days in each chart.

0
0 615
Question Kathy Ward · Aug 9, 2022

Is there a way to compare the value in a source field against all of the values in a repeating field?  For example, we have multiple DG1 target segments populated.  Is there an easy way to check a source DG1 segments against all of the target DG1 segments?  I didn't know if there is a wild card I can use for the comparison.

1
0 371
Question Michael Lundberg · Aug 15, 2022

Hi!

I have a question regarding SQL insert/update from the mananger portal's SQL window.

I am trying to do an insert with a value that contains multiple spaces ($32) between two words. This is needed for a comparative reason. But the spaces are automatically trimmed away all the time. How should I write to keep these?

Example:

Insert into TableA
(MyColumn) Values('xxxx    yyyy')

then the spaces are trimmed away and it becomes: 'xxxx yyyy'

But I want to keep the spaces. How do I get around the problem?

Regards,
Michael

4
0 308
Question Oliver Wilms · Aug 12, 2022

Many password requirements can be enforced using a password validation routine which is available to implement in System Management Portal. But how about this one:

Check that at least 50% of the characters changed from old password to new password.

We need to have access to the old password to check this, currently password validation routine only gets the new password.

We can create a new form to update the password where user must enter the old password and new password. I think I can block users from changing the password the usual way by having a password routine reject all passwords. 

Is

1
0 382
Question Scott Roth · Aug 2, 2022

I am trying to investigate whether the SAM component will give us metrics that we are looking for when it comes to # of messages, etc... I have IRIS 2022.1 running on Red Hat 8, but noticed that SAM was bundled as a docker-compose image. REL 8 doesn't install docker off the bat, but has podman which reading podman 3 versions and later, I should be able to call docker-compose.yml images. After installing Apache and making some modifications to docker-compose.yml, I tried executing the start.sh script after verifying podman was running and podman-compose was installed. 

I am seeing the following

5
0 508
Article Eduard Lebedyuk · Jul 13, 2022 7m read

After almost four years on hiatus, my CI/CD series is back! Over the years, I have worked with several InterSystems clients, developing CI/CD pipelines for different use cases. I hope the information presented in this article will be helpful to someone.

This series of articles discusses several possible approaches toward software development with InterSystems technologies and GitLab.

We have an exciting range of topics to cover: today, let's talk about things beyond the code - namely configurations and data.

Issue

Previously we discussed code promotions, and that was, in a way, stateless - we

4
3 900
Question Daniel Bertozzi · Aug 10, 2022

Hi all

I'm testing migrating our existing installers (without ZPM) using the docker dev template as a basis with a commercial image and licence key.

So far everything builds as I expect, but the one issue I have is the production doesn't apply itself automatically.

In my iris.script I have custom installer that uses this manifest below but it does not observe the last three steps

<NamespaceName="${DataNamespace}"Create="no"><Invokename="Credentials"Class="GOJ.IrisApp.Install.ApplicationLayer"Method="AddCredentials"CheckStatus="1"><Argname ="Namespace"Value="${DataNamespace}" />
2
0 429
Article Evgeniy Potapov · Aug 4, 2022 6m read

AtScale pulls data from the IRIS database. 

The AtScale product forms a virtual OLAP cube on the intermediate layer, which external applications can access using standard SQL and MDX (Multidimensional Expressions) languages. The solution includes three main components.

Design Center is used for designing OLAP cubes, forming links between metadata and dimensions of a virtual cube.Along with the task of designing a data schema, the issues of access policy to certain data and security are also solved here.

1
0 774
Question sween · Aug 8, 2022

Im playing whack a mole importing an IG (which is a fairly typical exercise with fhir packages) through FHIR packages, and getting at some parts I cant seem to work around with some store errors...
Im getting MAXSTRING on `hl7.terminology.r4`:

Saving hl7.terminology.r4@3.1.0
Load Resources: hl7.terminology.r4@3.1.0
Resource Used in Multiple Packages: http://terminology.hl7.org/CodeSystem/dicom-audit-lifecycle|20100826(hl7.fhir.r4.core@4.0.1,hl7.terminology.r4@3.1.0)

  Set sc=rsrc.%Save() Throw:('sc) ##class(%Exception.StatusException).ThrowIfInt
                                 ^
3
0 485
Question Nicola Sartore · Nov 5, 2021

I running a query and get the results inside a result set. Now I have to iterate through the result set many times. From the doc I've seen only the Next() method. Is there a way to reset the cursor? Otherwise what is a good data structure to save multiple rows of a table?

My code in this case is something like this:

   set sql = "SELECT * FROM MY_TABLE WHERE X= '"_Y_"'"
   set status = ..Adapter.ExecuteQuery(.rs, sql)
    // somehow iterate the rs more than one time

6
1 1863
Discussion Dmitry Maslennikov · Aug 3, 2022

I am aware that we have 5 License Units on Community Edition. But I have issues figuring out how it's working.

I have Community Edition

USER>write $system.License.KeyCustomerName()
InterSystems IRIS Community

Freshly started system, only terminal session open, so, only one license units used, and 4 left. As expected

USER>write $system.License.LUConsumed()
1
USER>write $system.License.LUAvailable()
4

Quote from documentation - $SYSTEM.License.MaxConnections() returns the maximum number of connections a user can make while consuming one license unit. 

USER>write $system.License.MaxConnections()
25
16
1 786
Question Suman Samanta · Aug 7, 2022

I am trying to avoid parsing the SDA3 stream in each process. I am doing some section wise validation in different processes so i need to pass the SDA3 to each process.

When i pass that SDA3 stream that takes a lot of space in HD and takes a lot of time to parse the SDA3 object.

Is there any way that once i parse that SDA3 i can pass the same object to other processes, and i can save my storage and process that fast.

I cannot pass this by default to other process as non persistent object cannot be passed to another job(as per my finding).

Any leads will be great.

1
0 346
Question Andy Stobirski · Aug 5, 2022

Hi all

I have a pair of servers configured as a mirror, each server sits in a separate data centre.

I have noticed that occasionally, the primary will report that the backup is disconnected in the Mirror Monitor, and I believe this to be due to connection conditions between the two data centres.

What I want to do is log the status of both servers from the primary on a regular basis using a service. I know %System.Mirror can return the status of the current member, but how can I log the get the status of the other member as well?

Cheers

4
0 552
Question Jun Suzuki · Aug 8, 2022

Hello, new user here ! My admin granted me all access to the domain I'm working on. Nonetheless, I'm unable to perform simple SQL queries such as creating a table or an index.

What I have tried :

  • Creating a table : within the namespace I've been granted access to, I'm trying to create a table with 2 methods :

    • Basic query : CREATE TABLE test.hello_world (col1 INTEGER, col2 VARCHAR) This raises the error :

    [SQLCODE: <-400>:<Fatal error occurred>] [%msg: <Exception caught during dSQL statement %Execute: <PROTECT> ^rINDEXCLASS("HS.JSON.WRITER"),/iris/irishealth/mgr/HSCUSTOM/>]

    • Creating a
1
0 508