#Globais

0 Seguidores · 26 Postagens

Globais são arrays esparsos multidimensionais que são armazenados na Plataforma de Dados InterSystems. Tudo nos produtos InterSystems é armazenado em Globais: Classes, Tabelas, Documentos, Código.

Documentação.

Artigo Heloisa Paiva · Out. 30 4m read

Ao usar SQL padrão ou a camada de objetos no InterSystems IRIS, a consistência dos metadados é geralmente mantida por meio de validação integrada e imposição de tipo. No entanto, sistemas legados que ignoram essas camadas—acessando globals diretamente—podem introduzir inconsistências sutis e graves.

0
0 0
Artigo Heloisa Paiva · Set. 16 3m read

Começar a usar ObjectScript é realmente empolgante, mas também pode parecer um pouco estranho se você está acostumado com outras linguagens. Muitos iniciantes tropeçam nos mesmos obstáculos, então aqui estão alguns "pegadinhas" que você vai querer evitar. (Além de algumas dicas amigáveis para contorná-las.)

Nomear Coisas Aleatoriamente

Todos nós já fomos culpados de nomear algo como Test1 ou MyClass apenas para seguir em frente rapidamente. Mas quando seu projeto cresce, esses nomes se tornam um pesadelo.

0
0 0
Artigo Heloisa Paiva · Ago. 25 3m read

Ao começar a usar o InterSystems IRIS ou Cache, os desenvolvedores frequentemente se deparam com três conceitos principais: Objetos Dinâmicos, Globals e Tabela Relacional. Cada um tem seu papel na construção de soluções escaláveis e fáceis de manter. Neste artigo, vamos percorrer exemplos de código práticos, destacar as melhores práticas e mostrar como esses conceitos se conectam.

1. Trabalhando com Objetos Dinâmicos

0
0 0
Artigo Heloisa Paiva · Ago. 9 3m read

A ObjectScript pode parecer apenas mais uma linguagem de programação, mas aqui está a reviravolta:

Seu código pode viver para sempre (sim, mesmo depois que você tiver passado para outro projeto). É por isso que é importante mantê-lo organizado, fácil de ler e seguro contra bugs misteriosos.

(Um guia para iniciantes para manter seu código limpo, amigável e à prova de futuro)

Bem-vindo à selva do ObjectScript, onde seu código pode ter escopo global e natureza persistente. Vamos manter as coisas limpas, legíveis e resistentes a bugs.

 1️⃣Nomeie como se fosse sério

0
0 0
Pergunta Graciano dos Santos Duarte · Jun. 2

Prezado senhores,

Estou tentando consultar os dados das tabelas de um banco de dados caché. Ele possui dados nas globais.  Também possui tabelas SQL sem registros, mas com a estrutura das classes do banco de dados. Quando vou consultar os dados através do driver ODBC não retorna nenhum dado. Mesmo pelo painel administrativo as consultas SQL não retornam dados. Sabem me dizer o que pode estar acontecendo?

At.te

Graciano dos Santos Duarte

0
0 0
Artigo Heloisa Paiva · Maio 26 8m read

Introdução

Olá! Neste artigo, discutirei a degradação de banco de dados, um tipo de problema de integridade de dados que se pode enfrentar ao usar o IRIS. Primeiro, farei uma revisão da estrutura dos bancos de dados IRIS. Em seguida, discutirei como a degradação de banco de dados pode se manifestar e as causas comuns de problemas de degradação. Concluirei com dicas gerais que damos aos nossos clientes sobre como prevenir ou se preparar para problemas de degradação de banco de dados.

Estrutura do Banco de Dados IRIS

0
0 0
Artigo Heloisa Paiva · Ago. 16, 2024 3m read

Rubrica InterSystems FAQ 

Globais temporárias armazenadas nas bases de dados IRISTEMP/CACHETEMP são usadas quando um processo não precisa guardar dados indefinidamente, mas requere a poderosa performance das globais. As bases de dados IRISTEMP/CACHETEMP não são jounralizadas, então usar globais temporárias não cria arquivos de journal.

O sistema usa as bases de dados IRISTEMP/CACHETEMP para armazenamento temporário e estão disponíveis para usuários para o mesmo objetivo.

0
0 0
Artigo Danusa Calixto · Nov. 28, 2023 8m read

Visão geral

A documentação online contém o tópico Defining and Using Class Queries (Definir e usar consultas de classe) para referência-

A personalização direta de procedimentos armazenados com ObjectScript tem sido útil para acessar o armazenamento NoSQL e as mensagens externas pela integração, para apresentar a saída em um formato tabular.

Por exemplo: um aplicativo que já usa 90% da interação SQL de um front-end também pode estender esse acesso aos outros 10% da funcionalidade de plataforma necessária, pelo mesmo acesso SQL.

0
0 120
Artigo Flávio Lúcio Naves Júnior · Ago. 16, 2023 3m read

Como observado no artigo anterior, a Native API possui algumas limitações.
Portanto, fiz algumas pesquisas sobre uma interface mais semelhante a um terminal que me forneça acesso como um console ou o terminal IRIS para permitir meu $QUERY em um global e outros comandos úteis que não são suportados/mapeados na NativeAPI para ObjectScript.

As ferramentas básicas estão bem preparadas e disponíveis.

  • Connection() cria uma partição totalmente operacional e estável para mim.
  • Function() permite chamar qualquer rotina ou método de que eu preciso.
  • similar a ClassMethodValue e ClassMethodVoid
2
0 59
Artigo Flávio Lúcio Naves Júnior · Ago. 16, 2023 3m read

Esta pergunta originalmente apareceu nos comentários do post:Download globals from a particular server

Este artigo foi inspirado por uma pergunta recente feita por @Evgeny.Shvarov.
Download globals from a particular server
Não se trata de um código de "clique e execute", mas sim de um rascunho que requer ajustes para atender às suas necessidades específicas. Você precisa adicionar...

1
0 59
Artigo Danusa Calixto · Out. 27, 2022 15m read

Por que eu amo ObjectScript e por que eu acho que poderia amar Python ainda mais

Eu estava olhando o tópico de mensagens sobre o assunto "Desempenho ao construir uma string separada por vírgulas" e comecei a escrever uma resposta. No entanto, me distraí, a página foi atualizada e perdi meu texto. Não podia gastar tempo reescrevendo minha resposta, então comecei a escrever este documento em vez disso.

1
0 156
Artigo Robert Cemper · Abr. 21, 2022 2m read

Este exemplo demonstra a diferença de quando você acessa globais diretamente do
Embedded Python (ePy) comparado com o ObjectScript nativo (ISOS).

Para tornar este demo operacional, eu inicio 2 jobs em background, que irão escrever
sequencialmente na global dedicada. Um método de controle comum dispara uma execução síncrona.
De forma similar, outro método stop & view irá interromper o fluxo de dados.

 

0
0 109
Anúncio Rochael Ribeiro · Mar. 23, 2022

Olá Desenvolvedores!

Aqui estão os bonus tecnológicos para o Concurso de Globais InterSystems 2022 que irão lhes dar pontos extra na votação:

  • Implementação de Modelo de Dados - 5
  • Implementação de índice Funcional - 5
  • Uso do Data Move - 3
  • Python Nativo- 4
  • Uso de APIs de Globais  - 2
  • Uso de contêiner Docker - 2 
  • Implantação em pacote ZPM - 2
  • Demonstração Online - 2
  • Primeiro Artigo na Comunidade de Desenvolvedores - 2
  • Segundo Artigo na Comunidade de Desenvolvedores - 1
  • Validação da Qualidade de Código - 1
  • Vídeo no YouTube - 3

Vejam os detalhes abaixo.<--break-><--break->

0
0 72
Artigo Rochael Ribeiro · Fev. 21, 2022 2m read

Olá desenvolvedores!

Algumas vezes precisamos inserir ou fazer referência aos dados de classes persistentes diretamente através das globais.

E talvez muitos de vocês estejam esperando que a estrutura de dados da global com os registros seja:

^Sample.Person(Id)=$listbuild("",col1,col,2,...,coln).

Este artigo é um aviso que nem sempre isso é verdade. Não espere que sempre seja assim!

0
0 81
Artigo Rochael Ribeiro · Fev. 21, 2022 2m read

Olá Desenvolvedores!

Como você provavelmente percebeu, no IRIS 2021 os nomes das globais são randômicos.

E, se você criar classes do IRIS classes com DDL e quiser se certificar qual global foi criada, você provavelmente gostaria de escolher seu nome.

E, de fato, você consegue fazê-lo. 

Utilize WITH %CLASSPARAMETER DEFAULTGLOBAL='^GLobalName' na instrução CREATE Table para fazê-lo. Documentação. Veja o exemplo abaixo:

0
0 70
Artigo Robert Cemper · Fev. 7, 2022 1m read

Este é um pacote para exportar um arquivo de objeto global para JSON e recriá-lo recarregando a partir deste arquivo  
embeddedPython refere-se às novas tecnologias disponíveis. Deve ser entendido como um exercício de aprendizagem de
como lidar com as interfaces de linguagem.
Apenas os nós de Globals que contêm dados são apresentados no arquivo JSON gerado.

0
0 64
Artigo Robert Cemper · jan 25, 2022 1m read

Exporte um GLOBAL no formato JSON e importe também este formato. Compacto refere-se à estrutura criada.
Nós de Globals são incluídos com dados para um carregamento de dados rápido.
Mas também o código relacionado é bastante compacto.

1
0 76
Pergunta Guilherme Koerber · Set. 9, 2021

Olá comunidade!

Estou enfrentando um problema de crescimento da base, que está sendo gerado por um processo e por uma característica do Ensemble.

Ao executar o processo de limpeza das filas de mensagens o Ensemble “preserva” as Streams que fizeram parte dessas mensagens apagando somente o Header e Body. Desta forma a base de dados (de um dos namespaces) tem crescido cerca de 60GB por dia, o que vem estourando a capacidade do disco.

A InterSystems informou que isso se trata de uma característica e que está explicado nos documentos abaixo mencionados.

3
0 190
Artigo Larissa Prussak · Maio 20, 2021 1m read

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:

- O armazenamento global fornece a base de um banco de dados multi-modelo completo, algo que chamamos de "NoSQL universal", embora, como você já sabe do IRIS e do Cache, ele também tem suporte relacional.

0
0 138
Artigo Robert Cemper · Dez. 14, 2020 3m read
Este é um exemplo de codificação funcionando no IRIS 2020.1 e no Caché 2018.1.3 
Ele não será sincronizado com as novas versões      
E também NÃO é atendido pelo Suporte da InterSystems!   

Globais no Caché / Ensemble / IRIS são normalmente invisíveis ao acessar o SQL
Este exemplo mostra como contornar esse limite.

0
0 260