This can be achieved by using the CSV() procedure of the %SQL.Util.Procedures class. Below is an example of usage code. (Assuming that the file test.csv is in c:\temp.)
One of the reasons why I love Cache and Iris is that not only you can do anything you can imagine, also you can do it in a lot of different ways!!.
Imagine that you have an integration running with IRIS connected by ODBC you probably only run SQL queries but you can also create stored procedures and inside write the code to do everything you can imagine.
I'm going to give you some examples but the limit is your imagination!!
In this article, I will introduce my application iris-VectorLab along with step by step guide to performing vector operations.
IRIS-VectorLab is a web application that demonstrates the functionality of Vector Search with the help of embedded python. It leverages the functionality of the Python framework SentenceTransformers for state-of-the-art sentence embeddings.
Application Features
Text to Embeddings Translation.
VECTOR-typed Data Insertion.
View Vector Data
Perform Vector Search by using VECTOR_DOT_PRODUCT and VECTOR_COSINE functions.
Demonstrate the difference between normal and vector search
HuggingFace Text generation with the help of GPT2 LLM (Large Language Model) model and Hugging Face pipeline
Unlike the movie mentioned in the image (for those who don't know, Matrix, 1999), the choice between Dynamic SQL and Embedded SQL is not a choice between truth and fantasy, but it is still a decision to be made.Below, I will try to make your choice easier.
If your need is interactions between the client and the application (and consequently the database), Dynamic SQL may be more appropriate, as it "adapts" very easily to these query changes.However, this dynamism has a cost: with each new query, it is remodeled, which can have a higher cost to execute.Below is a simple example of a Python code snippet.
What is Unstructured Data? Unstructured data refers to information lacking a predefined data model or organization. In contrast to structured data found in databases with clear structures (e.g., tables and fields), unstructured data lacks a fixed schema. This type of data includes text, images, videos, audio files, social media posts, emails, and more.
There is a Link Procedure Wizard option within the Management Portal (System > SQL >Wizards > Link Procedure) which I had reliability issues with so I decided to use this solution instead.
A password manager is an important security tool that allows users to store and manage their passwords without the need to remember or write them down in insecure places. In this article, we will explore the development of a simple password manager using the Flask framework and the InterSystems IRIS database.
Key Features
Our password manager application will provide the following key features:
Customizing Stored Procedures with ObjectScript directly has been useful to access NoSQL storage and external messaging via integration, to present output in tabular format.
The related package avoids adding %JSONAdaptor to each class but uses instead SQL functions JSON_OBJECT() to create my JSON objects. With this approach, you can add JSON to any class - even deployed ones - without any need for change or recompiling.
The trigger was the Export of M:N relationships as JSON objects or arrays.
Earlier this year I announced availability of a VS Code extension for coding in ObjectScript, Embedded Python or SQL using the notebook paradigm popularized by Jupyter. Today I published a maintenance release to correct a "getting started" problem.
Here's a video of the installation steps from the extension's README:
Image search like Google's is a nice feature that wonder me - as almost anything related to image processing.
A few months ago, InterSystems released a preview for Python Embedded. As Python has a lot of libs for deal with image processing, I decided to start my own attemptive to play with a sort of image search - a much more modest version in deed :-)
We recently encountered an Embedded SQL issue while upgrading to IRIS 2021.1, and thought the issue and workaround might be interesting to share.
Key takeaway: Host variables in an ORDER BY clause of an embedded SQL query that is inside of a method don't work as expected. IRIS versions starting with 2020.1 are affected. As a workaround, add the host variable to the Method's PublicList list and "new" them so the embedded query has access to them.
Presenter: Anton Umnikov Task: Identify your slowest SQL queries and tune them for better performance Approach: Use InterSystems’ query profiling and analysis tools. Discuss how system configuration can affect performance
This session will show you how you identify the weakest link in your application SQL and introduce you to the fine art of tuning those queries. To do this we will take a look at InterSystems query profiling and analysis tools, as well as how system configuration can impact SQL performance.
Problem: Obscurity on how our SQL engine works
Content related to this session, including slides, video and additional learning content can be found here.
We have a yummy dataset with recipes written by multiple Reddit users, however most of the information is free text as the title or description of a post. Let's find out how we can very easily load the dataset, extract some features and analyze it using features from OpenAI large language model within Embedded Python and the Langchain framework.
Presenter: Kyle Baxter Task: Upgrade to a new version of Caché without concerns about slowing existing SQL queries Approach: Use the new Frozen Plans feature in Caché
Content related to this session, including slides, video and additional learning content can be found here.
Presenter: Anton Umnikov Task: Run SQL queries quickly on huge amounts of data Approach: Use a shared-nothing architecture to leverage a cluster of small, cost-effective servers
Explains how a shared nothing architecture allows you to leverage a cluster of small, costeffective servers to serve query results that would have taken much longer on a single, big and expensive box. This brings affordable horizontal scalability.
Content related to this session, including slides, video and additional learning content can be found here.
It's almost time to get your customers upgraded to new versions - are you worried about showing off your SQL Performance after upgrades? If you want to upgrade without worrying, then I have just the program for you!!! Check out this video from Global Summit 2016 featuring yours truly explaining how to upgrade a system without worrying about pesky SQL queries showing on your waistline!
The InterSystems IRIS has a series of facilitators to capture, persist, interoperate, and generate analytical information from data in XML format. This article will demonstrate how to do the following:
Capture XML (via a file in our example);
Process the data captured in interoperability;
Persist XML in persistent entities/tables;
Create analytical views for the captured XML data.
Capture XML data
The InterSystems IRIS has many built-in adapters to capture data, including the next ones:
In a fast-paced digital era, effective communication is crucial. This article introduces a Java-based chat project, combining the strength of IRIS database and ChatGPT intelligence. Built on Java, it goes beyond real-time messaging, leveraging IRIS and ChatGPT for an enhanced chat experience. Also, the name of the project references the cultural classic - Star Wars.