A partir da versão 2021.2 do InterSystems IRIS é possível desenvolver serviços de backend, de integração e procedures de bancos de dados utilizando Python. A grande vantagem desta possibilidade é a redução na curva de aprendizado e a utilização de programadores especialistas na linguagem de programação que mais cresce no mundo.

8 0
1 119
Artigo
· Fev. 5, 2022 8min de leitura
Detecção de Objetos com Embedded Python e IRIS

A partir do IRIS 2021.2 é possível escrever métodos de classe usando a linguagem Python. Usei esse novo recurso para detectar pessoas e objetos em imagens, usando o ImageAI (https://github.com/OlafenwaMoses/ImageAI). O criador do ImageAI o define como: "Uma biblioteca python de código aberto criada para permitir aos desenvolvedores criarem aplicativos e sistemas com recursos autônomos de Deep Learning e Visão Computacional usando poucas linhas de código".

0 0
1 117
Artigo
· Mar. 28, 2023 10min de leitura
Debugando código ObjectScript usando VSCode

O Visual Studio Code (VSCode) é o editor de código mais popular do mercado. Foi criado pela Microsoft e distribuído como um IDE gratuito. O VSCode suporta dezenas de linguagens de programação, incluindo ObjectScript, até 2018, Atelier (baseado no Eclipse). Foi considerado como uma das principais opções para desenvolver produtos InterSystems.

1 1
0 117

Com o lançamento do InterSystems IRIS Cloud SQL, estamos recebendo perguntas frequentes sobre como estabelecer conexões seguras por JDBC e outras tecnologias de driver. Temos um ótimo resumo e uma documentação detalhada sobre as tecnologias de driver, mas essa documentação não chega a descrever ferramentas de cliente individuais, como DBeaver, nossa favorita. Neste artigo, vamos descrever as etapas para criar uma conexão segura no DBeaver para sua implantação do Cloud SQL.

0 0
0 116

Da última vez, lançamos uma aplicação IRIS no Google Cloud usando seu serviço GKE.

E, embora criar um cluster manualmente (ou por meio do gcloud) seja fácil, a abordagem de Infraestrutura como Código (IaC) moderna recomenda que a descrição do cluster Kubernetes também seja armazenada no repositório como código. Como escrever este código é determinado pela ferramenta que é usada para IaC.

No caso do Google Cloud, existem várias opções, entre elas o Deployment Manager e o Terraform. As opiniões estão divididas quanto o que é melhor: se você quiser saber mais, leia este tópico no Reddit Opiniões sobre Terraform vs. Deployment Manager? e o artigo no Medium Comparando o GCP Deployment Manager e o Terraform.

0 0
0 116

Quantas vezes nos deparamos em reconstruir, copiar, colar adpatar, Businesss Operations que fazem chamadas para serviços REST, e apenas adaptamos uma ou outra parte do código final. Isso incomada e muito. Para resolver esse nosso incoveniente apresento para vocês Interopway REST, um conjunto de classes (um micro framework) que nos permite apenas adicionar o Business Operation à Production e utilizar.

6 2
1 113

Olá Comunidade,

Imagine habilitar seu aplicativo para ler texto para seu cliente? Isso agora é possível com o novo recurso IRIS, Embedded Python. Com essa nova funcionalidade, o IRIS pode executar nativamente qualquer biblioteca Python comercial ou de código aberto. gTTS (https://pypi.org/project/gTTS/) é uma biblioteca gratuita que transforma texto em áudio usando o serviço Google Translate.

3 0
0 108

Depois deste GitHub, vamos ver como o protocolo FIX pode ser facilmente implementado usando a IRIS e o Python.

Se você não tem muito tempo, foque na seção Envie uma Cotação antes do Pedido no final, que explica em alguns minutos como enviar uma Solicitação de Cotação seguido por uma Solicitação de Pedido, além de mostrar o resultado do servidor em menos de cinco cliques.

0 0
0 108

Na última postagem, agendamos a coleta de métricas de desempenho durante 24 horas usando pButtons. Nesta postagem, vamos ver algumas métricas essenciais que estão sendo coletadas e como elas estão ligadas ao hardware do sistema. Também começaremos a explorar a ligação entre as métricas do Caché (ou de qualquer plataforma de dados InterSystems) e as métricas do sistema. Além disso, veremos como você pode usar essas métricas para entender a integridade diária de seus sistemas e diagnosticar problemas no desempenho.

0 0
0 107

Como todos nós sabemos, o InterSystems IRIS possui uma ampla gama de ferramentas para melhorar a escalabilidade dos sistemas de aplicação. Em particular, muito foi feito para facilitar o processamento paralelo de dados, incluindo o uso de paralelismo no processamento de consultas SQL e o recurso mais chamativo do IRIS: o sharding. No entanto, muitos desenvolvimentos maduros que começaram no Caché e foram transportados para o IRIS usam ativamente os recursos de multimodelos deste DBMS, que são entendidos como permitindo a coexistência de diferentes modelos de dados dentro de um único banco de dados. Por exemplo, o banco de dados HIS qMS contém modelos de dados semânticos relacionais (registros médicos eletrônicos), relacionais tradicionais (interação com PACS) e hierárquicos (dados de laboratório e integração com outros sistemas). A maioria dos modelos listados é implementada usando a ferramenta qWORD do SP.ARM (um mini-DBMS que é baseado no acesso direto a globais). Portanto, infelizmente, não é possível usar os novos recursos de processamento de consulta paralela para escalonamento, uma vez que essas consultas não usam o acesso IRIS SQL.

Enquanto isso, conforme o tamanho do banco de dados cresce, a maioria dos problemas inerentes a grandes bancos de dados relacionais tornam-se adequados para os não relacionais. Portanto, esse é o principal motivo pelo qual estamos interessados ​​no processamento paralelo de dados como uma das ferramentas que podem ser usadas para escalonamento.

Neste artigo, gostaria de discutir os aspectos do processamento paralelo de dados com os quais tenho lidado ao longo dos anos ao resolver tarefas que raramente são mencionadas em discussões sobre Big Data. Vou me concentrar na transformação tecnológica de bancos de dados, ou melhor, em tecnologias de transformação de bancos de dados.

1 0
0 104

Prefácio

O InterSystems IRIS a partir da versão 2022.2 inclui a capacidade de autenticar uma API REST usando JSON web tokens (JWTs). Esse recurso aprimora a segurança ao limitar quando e com que frequência as senhas são transferidas pela rede, além de definir um tempo de expiração para o acesso.

O objetivo deste artigo é servir como um tutorial de como implementar uma API REST simulada usando o InterSystems IRIS e bloquear o acesso a ela com JWTs.

0 0
0 102

HealthShare Patient Index

Enterprise Master Patient Index - Este é o nome dado ao processo que faz com que os inúmeros cadastros e registros coletados dos vários sistemas das instituições e redes de saúde sejam identificados univocamente e interligados através de um identificador único por indivíduo.

5 0
0 102

No coração do IRIS e do Caché está uma arquitetura de banco de dados muito interessante que nós, na M / Gateway Developments, chamamos de "Armazenamento Global". Se você sempre quis saber mais sobre os fundamentos e recursos desse banco de dados subjacente, pode ler uma análise importante que reunimos:

https://github.com/robtweed/global_storage

Entre outras coisas, você descobrirá que:

3 0
0 101

O problema do grupo Pardini era mudar a plataforma de banco de dados "Nós construímos nosso negócio nele, então você pode imaginar como é arriscado mudar a plataforma de banco de dados abaixo dele. Ao escolhermos o InterSystems IRIS for Health conseguimos o crescimento das operações e de serviços com a velocidade que os negócios exigem", a companhia iniciou o desenvolvimento do sistema de informações laboratoriais (Lis) na plataforma de dados InterSystems Caché,

1 0
0 101

Olá desenvolvedores!

Só quero compartilhar uma prática recomendada antiga, mas sempre relevante, sobre a alteração de namespaces @Dmitry Maslennikov compartilhada comigo (de novo).

Considere o método:

classmethod DoSomethingInSYS() as %Status

{

set sc=$$$OK

set ns=$namespace

zn "%SYS"

// try-catch in case there will be an error

try {

// do something, e.g. config change

}

catch {}

 zn ns    ; returning back to the namespace we came in the routine

return sc

}

E com o novo $namespace, o método pode ser reescrito como:

classmethod DoSomethingInSYS() as %Status

{

set sc=$$$OK

new $namespace

set $namespace="%SYS"

// do something

return sc

}

Então! A diferença é que não precisamos alterar o namespace manualmente, pois ele voltará automaticamente assim que retornarmos o método.

e não precisamos do try-catch (pelo menos para esse propósito) também.

3 0
0 100
Artigo
· Set. 2, 2022 1min de leitura
Definindo Business Operation

Para definir uma classe Business Operation, ela deve extender de "Ens.BusinessOperation" ou alguma subclasse dessa. Além disso, deve ser definido os parâmetros ADAPTER e INVOCATION (O qual deve especificar um dos valores: "Queue" ou "InProc"). Após isso, defina um bloco XDATA para mapear as mensagens recebidas para os respectivos métodos, como no exemplo abaixo:

Exemplo:

1 0
0 100

freepik- freepik.com
Em primeiro lugar, o que é anonimização de dados?

De acordo com a Wikipedia:

O anonimização de dados é um tipo de higienização de informações cujo objetivo é a proteção da privacidade. É o processo de remoção de informações de identificação pessoal dos conjuntos de dados, para que as pessoas que os dados descrevem permaneçam anônimas.

1 3
0 99

A versão mais recente do Serenji se concentra na experiência de depuração. Agora você não só pode depurar no local, não importa onde esteja ou o que estiver fazendo, mas também adicionamos alguns recursos menores que tornarão a depuração mais direta.

  • Executar e depurar CodeLenses - links clicáveis ​​acima de cada método de classe, procedimento, sub-rotina ou função extrínseca.
  • Solicitação intuitiva de pontos de entrada e argumentos - ao depurar um método de classe, produzir, sub-rotina ou função extrínseca.
  • Plano de fundo sombreado somente leitura - para diferenciar claramente entre documentos editáveis ​​e somente leitura.
  • Saída do programa no console de depuração - a saída é mostrada no console de depuração.
  • Comandos do Serenji nas árvores de namespace do Server Manager - permitindo que você inicie o Serenji por meio do Server Manager.

Saiba mais em nossas notas de lançamento aqui.

1 0
0 97

Introdução

Suponha que você desenvolveu uma nova aplicação utilizando a parte de Interoperabilidade do InterSystems IRIS e você tem certeza de que será um sucesso! No entanto, você ainda não tem um número concreto de quantas pessoas irão utilizá-la. Além disso, pode haver dias específicos em que há mais pessoas utilizando sua aplicação e dias em que quase ninguém irá acessar. Deste modo, você necessita de que sua aplicação seja escalável!

3 0
2 96
Artigo
· Maio 12, 2023 2min de leitura
um Jupyter-Notebook vergine

Seguindo um pacote do último concurso, encontrei um problema estranho.
Havia o requisito para instalar o jupyter-notebook.
Eu trabalho no Windows e havia algum Python antigo instalado.
Nenhuma grande surpresa: a instalação do jupyter-notebook falhou
Portanto, a versão mais recente do Python foi instalada rapidamente.

14 0
0 96

Criado por Daniel Kutac, Engenheiro de vendas, InterSystems

Parte 3. Apêndice

Explicação sobre as classes OAUTH do InterSystems IRIS

Na parte anterior da nossa série, aprendemos a configurar o InterSystems IRIS para atuar como um cliente OAUTH, além de um servidor de autorização e autenticação (pelo OpenID Connect). Nesta parte final da série, vamos descrever classes que implementam o framework OAuth 2.0 do InterSystems IRIS. Também vamos discutir casos de uso para métodos selecionados de classes de API.

As classes de API que implementam o OAuth 2.0 podem ser separadas em três grupos diferentes de acordo com a finalidade. Todas as classes são implementadas no namespace %SYS. Algumas delas são públicas (por % pacote), outras não e não devem ser chamadas diretamente pelos desenvolvedores.

1 0
0 95

O lançamento mais recente do Serenji apresenta nossa inovadora tecnologia gj :: locate. Era uma ferramenta autônoma que criamos originalmente para um concurso da Comunidade de Desenvolvedores no início deste ano, mas nós a incorporamos em nosso depurador após alguns ótimos comentários dos desenvolvedores.

Ele funciona navegando diretamente para a fonte de seus erros do lado do servidor em apenas alguns cliques - permitindo que você corrija os erros rapidamente sem a necessidade de contar linhas tediosas de código ... e sejamos realistas, quem tem tempo para que quando você está sob pressão para consertar esse bug?

É simples e fácil de usar:

1. Clique no painel gj :: locate na barra de status

2. Insira a mensagem de erro do ObjectScript ou a referência de linha de uma rotina class / .mac.

3. gj :: locate então faz o trabalho para você, levando-o diretamente para a linha correspondente em seu código-fonte.

Muito fácil ... e com tempo de sobra para fazer um café antes do prazo!

Abaixo há um link do vídeo que mostra isso em ação - diga-nos se você já tentou. Ou, se você estiver interessado em experimentá-lo, oferecemos uma licença de avaliação gratuita de 30 dias, apenas me mande uma mensagem através da Comunidade de Desenvolvedores ou envie um e-mail para info@georgejames.com.

Serenji 3.2.0 utilising gj::locate technology

1 0
0 93