Nova postagem

Pesquisar

Pergunta
· 48min atrás

Setting Python

Hi Guys,

I'm a newbie running IRIS in a container (IRIS for UNIX (Ubuntu Server LTS for x86-64 Containers) 2024.3 (Build 217U) Thu Nov 14 2024 17:30:43 EST) and trying to setup Python so I can start working on ML & Autosklearn,my understanding is that IRIS already comes with embedded Python but unable to do something like "import pandas as pd"  in VSCode which looks like I need install a more complete version of Python or packages, so what I'm missing?

 

 

And how can I go to embedded Python editor in my VSCode because my understanding you can find under explorer option in VScode but I can't find it?

 

 

Thanks

Discussão (0)1
Entre ou crie uma conta para continuar
Pergunta
· 1 hr atrás

In the rule's when condition(), how can I get the EffectiveEndDateTime of the parent ruleset?

Hi,

I want to ensure that the parent ruleset has an EffectiveEndDateTime when I evaluate a rule's when condition() . How would I do that please ?

Thank you.

W

Discussão (0)1
Entre ou crie uma conta para continuar
Anúncio
· 8 hr atrás

[Video] A Whirlwind Tour of the Analytics Buffet

Hey, Community,

Enjoy the new video on InterSystems Developers YouTube:

⏯ A Whirlwind Tour of the Analytics Buffet @ Global Summit 2024

The InterSystems IRIS data platform has a number of options for implementing your Analytics/BI, Reporting, and AI/ML use cases. But how can you make sure to use the right one for your current and future needs? This video provides an overview of the entire portfolio of products and technologies in this area and helps you make the right choice for your use case, by focusing on people, problems, and pie charts.

Presenters:

🗣 @Benjamin De Boe, Manager, Analytics Product Management, InterSystems
🗣 @Thomas.Dyar, Product Manager, Machine Learning, InterSystems  
🗣 @Carmen Logue, Product Manager, Analytics and AI, InterSystems

Learn from the experts - watch the video and subscribe for future content!

Discussão (0)1
Entre ou crie uma conta para continuar
Pergunta
· 9 hr atrás

web applications definitions syncing between primary and backup nodes

hey everyone,

we are new to InterSystems health share, we are running health connect in a cluster with primary, backup and dr nodes.

we kept noticing that web applications definitions aren't showing in the backup or dr node.

is that normail? would they show up after failover to backup node or cutover to dr node?

 

thanks

Discussão (0)2
Entre ou crie uma conta para continuar
Artigo
· 11 hr atrás 4min de leitura

Response times when using Dynamic and Embedded SQL

When working with InterSystems IRIS, database developers and architects often face a critical decision: whether to use Dynamic SQL or Embedded SQL for querying and updating data. Both methods have their unique strengths and use cases, but understanding their performance implications is essential to making the right choice. Response time, a key metric in evaluating application performance, can vary significantly depending on the SQL approach used. Dynamic SQL offers flexibility, as queries can be constructed and executed at runtime, making it ideal for scenarios with unpredictable or highly variable query needs. Conversely, Embedded SQL emphasizes stability and efficiency by integrating SQL code directly into application logic, offering optimized response times for predefined query patterns.

In this article, I will explore the response times when using these two types of SQL and how they depend on different class structures and usage of parameters. So to do this, I'm going to use the following classes from the diagram:

To test the times, I created the following numbers of objects for each class:

  • Patient - 50M
  • Visit - 150M
  • Doctor - 500K
  • Address - 50M

This way, I expected to see some reasonable time for running queries and to see the differences between executing Embedded SQL and Dynamic SQL. The only index that I added was the one-many automatic index for the Doctor-Visit relationship.

So let's look at the queries that I'm going to run, and then at the duration of execution:

  1. select count(*) from Hospital.Address
  2. select count(*) from Hospital.Address where State = :param
  3. select count(*) from Hospital.Patient left join Hospital.Address on p.address = a.id
  4. select count(*) from Hospital.Patient left join Hospital.Address on p.address = a.id where a.State = :param
  5. select count(a.Address->State) from Hospital.Patient a
  6. select count(*) from Hospital.Patient where p.Address->State = :param
  7. select count(p.Visit->VisitDate) from Hospital.Patient p
  8. select count(*) from Hospital.Patient where p.Visit->VisitDate > :param
  9. select count(v.Patient->Name) from Hospital.Visit v
  10. select count(*) from Hospital.Visit where v.Patient->Name %startswith :param
  11. select count(v.Patient->Address->State) from Hospital.Visit v
  12. select count(*) from Hospital.Visit where v.Patient->Address->State = :param
  13. select count(v.Doctor->Name) from Hospital.Visit v
  14. select count(*) from Hospital.Visit where v.Doctor->Name %startswith :param
  15. select count(*) into :p from Hospital.Visit where v.Doctor->Name %startswith :param and v.Patient->Name %startswith :param
  16. select count(*) into :p from Hospital.Visit where v.Doctor->Name %startswith :param and v.Patient->Name %startswith :param and v.Patient->Address->State = :param1

Obviously, the above is the syntax for Embedded SQL (because there are named parameters). For Dynamic SQL, the queries are almost the same, but instead of named parameters, I have unnamed ones 😉 For example, for the last one, I have the following query:

select count(*) from Hospital.Visit v where v.Doctor->Name %startswith ? and v.Patient->Name %startswith ? and v.Patient->Address->State = ?

Now let's look at the results:

No of query Embedded SQL (sec) Dynamic SQL (sec)
1 49 12
2 3 3
3 32 26
4 47 46
5 48 46
6 47 46
7 1767 1806
8 1768 1841
9 31 26
10 83 81
11 41 45
12 73 71
13 23 26
14 1 1
15 2 2
16 3 3

We can see one colossal outlier, which is the first query. The Embedded SQL took a lot more time to execute than Dynamic SQL. Running the same queries several times gave me more or less the same result. So it is what it is. 

In general, we can see that parent-children relationship is a lot slower from the side of the children property, even though all the data of Patient and Visit is stored in the Patient global. The index saved the day for the one-many relationship, and the execution time was considerably shorter. All in all, the response time is mostly similar and differs by less than 10%; sometimes, it is the same. Of course, I used simple queries that didn't take too long to prepare, so this stage could almost be ignored.

3 novos comentários
Discussão (3)5
Entre ou crie uma conta para continuar