查找

Anúncio
· Out. 9, 2024

InterSystems at Hack Jak Brno Healthcare Hackathon 2024

⏰ Only 1 day left to register as a participant at Hack jak Brno 🩺💻

Don't miss the opportunity to be there where the future of healthcare is being created and compete for attractive prizes, including 50,000 CZK for the top 3 teams! 💰

📅 Event dates: 1 - 3 November 2024
📍 Location: Faculty of Medicine MU and Faculty of Medicine Brno
🔗 Register at www.hackjakbrno.cz 🚀

 

We’re excited to announce that InterSystems will be participating as an event partner at Hack jak Brno, the national hackathon organized by our amazing long time partner Insane Business Ideas, focused on tackling real-world challenges in healthcare! 🎉

Over two days, students, experts, and enthusiasts from across the Czech Republic will come together to develop innovative solutions aimed at improving patient care and enhancing the efficiency of healthcare services. Combining technological and medical expertise, this event offers an incredible opportunity for participants to make a meaningful impact in the healthcare space. 🏥💡

We’re proud that colleagues from our team will also be there to mentor participants, alongside leading medical experts, technology innovators, and experienced developers. 🙌 They’ll be helping to shape the next generation of healthcare solutions in an inspiring, hands-on environment. 🌟

Interested in joining the challenge? You can apply for free! Whether as an individual or a team of 2-4 members. The registration closure is scheduled for 10.10.2024 at midnight. You can always find the updated schedule at www.hackjakbrno.cz.

Let’s shape the future of healthcare together! 💻🩺

Discussão (0)1
Entre ou crie uma conta para continuar
Discussão (0)1
Entre ou crie uma conta para continuar
Artigo
· Out. 9, 2024 4min de leitura

Accès au stockage d'objets blob Azure

L'accès à un stockage cloud Azure pour charger/télécharger des blobs est assez simple à l'aide des méthodes API de classe %Net.Cloud.Storage.Client désignées ou des adaptateurs entrants/sortants EnsLib.CloudStorage.*.

Notez que vous devez avoir le serveur de %JavaServer External Language opérationnel pour utiliser l'API ou les adaptateurs de stockage cloud, car ils utilisent tous deux le framework PEX à l'aide du serveur Java.

Voici un bref résumé :

L'accès à Azure Blob Storage s'effectue à l'aide d'une chaîne de connexion qui ressemble à celle-ci :

DefaultEndpointsProtocol=https;AccountName=abcdefscleanisr;AccountKey=n3mWskdjgfhklsghdfjaskhgkjdfizqMWJ5X2L4JpqeEJk/FuEnw0rPI6E/rULPn0V5BWgFw+AStRJZlYQ==;EndpointSuffix=core.windows.net

Divisez-le en lignes avec « ;» comme délimiteur et enregistrez-le sous forme de fichier texte :

DefaultEndpointsProtocol=https;
AccountName=abcdefscleanisr;
AccountKey=n3mWskdjgfhklsghdfjaskhgkjdfizqMWJ5X2L4JpqeEJk/FuEnw0rPI6E/rULPn0V5BWgFw+AStRJZlYQ==;
EndpointSuffix=core.windows.net

Pour cet exemple, je nommerai ce fichier « MyAzureStorage.txt ».

Activons maintenant l'API :

set file="C:\Storage\MyAzureStorage.txt"
set endpoint="abcdefscleanisr.privatelink.blob.core.windows.net"
set tStatus=""

Dans la méthode API CreateClient, le deuxième paramètre est le fournisseur de cloud :

  • 0 - Amazon S3
  • 1 - Azure Blob
  • 2 - Google Cloud Storage
SET myClient = ##CLASS(%Net.Cloud.Storage.Client).CreateClient(,1,file,0,.tStatus,endpoint)

Une fois le client établi (tStatus=1), vous pouvez exécuter n’importe laquelle des méthodes du client :

 

Dans Azure Blob Storage, un bucket est un conteneur.

Par exemple, pour obtenir la liste des conteneurs Azure, exécutez la méthode ListBuckets :

set list=myClient.ListBuckets()

for i=1:1:list.Count() {write list.GetAt(i).name,!}

clean
dirty

Une fois que vous avez un nom de conteneur (prenons le conteneur « clean » comme exemple), vous pouvez obtenir la liste des blobs qu'il contient :

set list=myClient.ListBlobs("clean")

for i=1:1:list.Count() {write list.GetAt(i).name,!}

4caa6f29-e9e6-4cde-9112-65ec28d4eded.jpeg
2374233-e9e6-4cde-9112-65ec28d4eded.jpeg
3klfd3lld-e9e6-4cde-9112-65ec28d4eded.jpeg
4caa6f29-e9e6-87ry-9112-65ec28d4eded.jpeg

L'adaptateur sortant CloudStorage dispose de moins d'options : ses méthodes incluent uniquement les éléments suivants :

  • UploadBlobFromString(bucketName,blobName,content)
  • UploadBlobFromStream(bucketName,blobName,content)
  • UploadBlobFromFile(bucketName,blobName,filePath)
  • DeleteBlob(bucketName,blobName)

Voici les paramètres permettant de configurer une opération commerciale à l'aide de EnsLib.CloudStorage.OutboundAdapter avec Azure Blob Storage. Le paramètre Storage Région n'est pas pertinent pour Azure Blob Storage.

Tous les autres paramètres sont pertinents de la même manière que lorsque nous utilisions la méthode CreateClient :

Le paramètre ContainerName ne fait pas partie des paramètres de l'adaptateur : il n'est pas nécessaire pour créer le client (la méthode CreateClient ne l'utilise pas).

Toutefois, toutes les autres méthodes d'adaptateur répertoriées ci-dessus doivent spécifier dans quel bucket/conteneur le blob doit être chargé, il est donc logique de l'ajouter en tant que paramètre dans le cadre des paramètres :

Class Sasa.BO.Storage Extends Ens.BusinessOperation
{ 
Parameter ADAPTER = "EnsLib.CloudStorage.OutboundAdapter"; 
Property Adapter As EnsLib.CloudStorage.OutboundAdapter; 
Parameter INVOCATION = "Queue"; 
/// Bucket name(Amazon) = Container name(Azure)
Property ContainerName As %String(MAXLEN = 1000); 
Parameter SETTINGS = "ContainerName:Cloud Storage"; 
Method CreateFile(pRequest As Cloud.RES.REST, Output pResponse As Cloud.RES.REST) As %Status
{
    #dim tException As %Exception.SystemException
    Set tStatus = $$$OK
    set pResponse=##class(Cloud.RES.REST).%New() 
    Try {
        Set tStatus = ..Adapter.DeleteBlob(..ContainerName, pRequest.FileName)
        Set tStatus = ..Adapter.UploadBlobFromStream(..ContainerName, pRequest.FileName, pRequest.FileData)   
        if $$$ISERR(tStatus) {
            set pResponse.Success = 0
            set pResponse.ErrorMessage = $system.Status.GetErrorText(tStatus)
        }
    } 
    Catch tException {
        Set tStatus = tException.AsStatus()
        set pResponse.Success=0
        set pResponse.ErrorMessage=$system.Status.GetErrorText(tStatus)
    }
    Quit $$$OK
}

J'espère que cela vous aidera à commencer à utiliser l'adaptateur cloud avec Azure.

Discussão (0)1
Entre ou crie uma conta para continuar
Artigo
· Out. 9, 2024 2min de leitura

在 IRIS 中使用 Foreign Table(外部表)

 

Foreign Table 的概念

Foreign Table 是 IRIS SQL 中一种特殊类型的表。它不代表 IRIS 本地全局管理的数据,而是投射出来的,由 “外部服务器 ”管理的外部数据。从 SQL 的角度来看,外部表与普通表一样,可以在查询中使用,没有任何特定限制。

在数据编织中可以帮助整合不同的来源的数据,以支持各种应用、分析并提供智能洞察力。

 

Foreign Table 和 Linked Table 的区别

Linked Table

  • Lined Table 不能读取外部文件
  • 对于 JDBC 和 ODBC 的数据源是分开的

Foreign Table

  • 可以读取外部文件
  • 不局限于同一类型的数据源

 

Foreign Table 的用例

  • 当某个数据集时由外部应用程序在外部数据库中管理,而你的 IRIS 查询需要在该外部数据集中查找某些内容时,您可以使用某种 ETL 流程将数据加载到 IRIS 中,但如果外部数据经常更新,而你的查询需要访问当前的版本,那么这个过程可能会变得很棘手。可以通过 Foreign Table 将数据投射到 IRIS 并在查询时从外部源检索当前数据来解决这个问题。
  • 当您要使用某些基于文件的大型数据集,您只需要偶尔查询一下,用来建立报告或训练模型。由于文件过大,加载文件可能会很麻烦,而且大型数据会占用昂贵的存储空间,而且一旦文件更新,就必须清除并重新加载。Foreign Table可以保持 SQL 查询对数据的可访问性,而不会增加 IRIS 的存储空间占用,也可以会保持最新数据。

 

Foreign Table 操作步骤

创建外部服务器

CREATE FOREIGN SERVER Sample.PostgresDB FOREIGN DATA WRAPPER JDBC CONNECTION 'postgresConnection'

创建 Foreign Tables

CREATE FOREIGN TABLE Sample.AccountTeam ( TeamID BIGINT, Name VARCHAR(50), CountryCode VARCHAR(10) ) SERVER Sample.PostgresDB TABLE 'Sample.Teams'

查询

SELECT t.Name, COUNT(m.*) FROM Sample.AccountManager m JOIN Sample.AccountTeam t ON m.TeamID = t.TeamID WHERE t.CountryCode = 'UK' AND m.Salary > 100000 GROUP BY t.Name

删除 Foreign Tables

DROP FOREIGN TABLE Example.MyForeignTable

删除外部服务器

DROP FOREIGN SERVER Example.PostgresDB CASCADE

( CASCADE 选项用来删除外部服务器和该外部服务器上定义的所有外部表 )

 

Foreign Table 演示

如果您想获取更详细的对于Foreign Table的演示,您可以参考 InterSystems 2023 峰会上面的演示示例,该示例使用docker,示例代码请参考Github ,安装后访问http://localhost:8888/

Discussão (0)1
Entre ou crie uma conta para continuar
Pergunta
· Out. 8, 2024

How to enable the SSL protocol and be able to capture the SSL protocol interaction traffic when connecting using DBeaver?

How to enable the SSL protocol and be able to capture the SSL protocol interaction traffic when connecting using DBeaver?
If convenient, could you please provide an ssl package with fake data? ths!!!

Discussão (0)1
Entre ou crie uma conta para continuar