Two Questions: Using 3rd party .dll in dataiku & Interacting with 3rd party applications
Hi -
1) I wanted to run a .dll that interacts with Excel in Dataiku. Anyone has any idea on what's the best way to do so?
2) I wanted to use dataiku to talk to another in-house program. Currently this application is interacted with through COM object.
Thank you very much in advance!
Operating system used: windows
Best Answers
-
Turribeach Dataiku DSS Core Designer, Neuron, Dataiku DSS Adv Designer, Registered, Neuron 2023 Posts: 2,054 Neuron
Still it is unclear to me why all of this needs to happen inside this app or why this DLL needs to be involved. You could use the Dataiku Python API to create datasets, run flows and obtain outputs, but I really don't see why you will take all that trouble to do this. In general you will be much better if you put all your input data into a SQL database, have Dataiku read all the model inputs from there, then produce an output which you can write back to the same SQL database and read from your desktop app. In terms of executing the Dataiku flow from your desktop app there are easier ways than using the Dataiku API. For instance you can have a Dataiku Scenario execute when a SQL dataset changes, so you could easily have a SQL table your desktop app inserts a row into to generate your flow eecution.
-
CoreyS Dataiker Alumni, Dataiku DSS Core Designer, Dataiku DSS Core Concepts, Registered Posts: 1,150 ✭✭✭✭✭✭✭✭✭
Hi @teng
while you wait for a more complete response, here are a few resources you may want to check out if you haven't already:- The Excel-to-Dataiku Playbook (Dataiku Guidebook)
- Excel to Dataiku Quick Start (Academy/Knowledge Base)
- From Excel to Dataiku (Knowledge Base)
In terms of Macros in Dataiku here are some additional resources:
- DSS Macros (Documentation)
- You can write your own macros in Python. For more information, see Component: Macros
I hope this helps!
Answers
-
Turribeach Dataiku DSS Core Designer, Neuron, Dataiku DSS Adv Designer, Registered, Neuron 2023 Posts: 2,054 Neuron
Hi, DSS runs under Linux not Windows so it won't be able to use DLLs, run Excel or see COM objects. You are not providing enough information as to what you want to achieve or what your goal is (see here) so it's difficult to propose a solution but one way you could bridge a Windows application and DSS is by having a REST API.
-
Thanks for the quick reply!
The goal is to utilize dataiku to interact with dll and other applications as part of the flow.
Any documentation or starting template for an example of how we can use the REST API ?
-
Turribeach Dataiku DSS Core Designer, Neuron, Dataiku DSS Adv Designer, Registered, Neuron 2023 Posts: 2,054 Neuron
"The goal is to utilize dataiku to interact with dll and other applications as part of the flow". That's not a goal, that's how you think you can solve your requirement. What exactly are you trying to achieve? What's the point of interacting with the flow? Why this needs to happen via a DLL?
-
I am trying to input certain dataset to simulate a model (e.g. pull data from somewhere, like SQL/excel etc...) and then feed that into a model and run this in-house model via .dll (excel interface) and another desktop application. Then, I want to extract the predictions/results of these model simulations for the rest of the dataiku flow
-
Thank you for your answer + help! Your advice makes a lot of sense.
Separately - can dataiku run Excel macros/VBAs ?
-
Turribeach Dataiku DSS Core Designer, Neuron, Dataiku DSS Adv Designer, Registered, Neuron 2023 Posts: 2,054 Neuron
Have a look at this Python package:
https://docs.xlwings.org/en/stable/
Since v0.26.0, xlwings can be installed on Linux servers in connection with Google Sheets or Excel on the web, see Remote Interpreter.