-
Notifications
You must be signed in to change notification settings - Fork 4.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[DSIP] support other business systems to run in DS #16672
Comments
I understand that this is a JAVA SDK for third parties, correct me if I'm wrong. I don't quite understand for the other functions you listed, what do these have to do with SDK? |
I also can't understand the meaning. It seems that a DS SDK is needed? |
I added a description on the issue |
I added a description on the issue |
Please provide the needed information of a DSIP #14102.
Let's ignore whether this feature make sense or not. I didn't see any detail information about this DSIP. I have ever implemented a similar system, I am sure you are not aware of the key issue here. Have you considar the sdk dependency? How does the sdk comminicate withe DS, how does ds find the third part system instance, how can we collect the task log? How can we do failover when third part system instance crash? How DS protects itself from the third part system? You should think about the basic questions first. |
I don't quite understand what "ignoring this feature makes sense" means. |
@xdu-chenrj
Does the SDK only support JAVA? Are there plans for other programming languages? What's the difference between this plugin and http task plugin? Is it possible to enhance the http task plugin for more use cases? For example, is there a better use case for grpc task plugin? Not just for JVM-based business systems?
Which component of DS does the third-party system synchronize ip and ports to? If it is synchronized to the |
I think it's good idea to add a |
"ignore whether this feature make sense or not".
You mean the sdk will only rely on jre, no third-party lib dependency? Are you sure?
Use long connection? Have you tested the long connection effect on DS here?
So the first version is just a demo? I didn't see any detail design about the second version, it's more like a toy can be changed at will.
How can DS strictly control the received information? I even didn't see which information will be sent here? Is there any protocol schema? |
Search before asking
Description
Present situation: For enterprises that use Apache dolphinscheduler, Apache dolphinscheduler is more often used as the core scheduling system for data processing. However, there are often other business systems in the enterprise, and most of these business systems have requirements such as scheduled task job management. At the same time, the role of the business system may also be applied to a certain aspect of data processing.
Planned renovation:
Add DS-plugin Java plug-in
(1) The business system is referenced through Maven. The business system implements fixed interfaces and uses fixed annotations to complete the creation of scheduled task executors. The plug-in includes registration of Apache dolphinscheduler api-server, workflow, node creation, scheduled task creation, etc. Core functions.
(2) Business system application processing can be referenced through the parent-child process, making it a part of data flow.
2.Apache dolphinscheduler api-server and master-server add corresponding processing logic
(1) api-server adds registration, task creation processor and logic.
(2) master-server adds task triggering and result processing logic
(3) Add external system nodes
The purpose of SDK is to allow third-party systems to register in DS through the integration of DS SDK plugins. The SDK includes third-party system registration, task list functions, task parameter functions, and task execution functions. Third party systems can delegate tasks to DS triggers by integrating SDKs and corresponding implementations. For example, in a data quality system, if a company wants to use its own data quality system to implement data quality audit tasks, and the data processing tasks are in DS, the processing tasks of the two platforms cannot be triggered by dependencies. The purpose of this feature is to solve the integration problem between DS and third-party systems. The above introduction is about the modification of DS, including the main process of task definition development and task execution. The main implementation of this DSIP is to provide a dependency (DS SDK) for third-party systems; 2. Add a new node (Other System node) to DS
mail: https://lists.apache.org/thread/6s4scjfvy8406q14thxj98js6bt1fvd9
Use case
No response
Related issues
No response
Are you willing to submit a PR?
Code of Conduct
The text was updated successfully, but these errors were encountered: