RFC-002: Reorganize OpenMLDB modes #816
Replies: 4 comments 20 replies
-
It is recommended to remove the stand-alone mode in the cluster environment |
Beta Was this translation helpful? Give feedback.
-
From my understanding, the main difference among the various modes are what the execution engine is used for the queries:
In order to differentiate the different engines for the queries, I think we'd better directly provide an engine or storage option (e.g., spark or openmldb) rather than the various modes and their combinations. Thus, from the perspectives of the users, there are two storages: offline and online. Offline data is on HDFS or local files, while online data is on openmldb in-memory storage. When they are executing commands, they are aware what kind of storage they are dealing with. Based on the storage types, we can know what to do under the hood. |
Beta Was this translation helpful? Give feedback.
-
From the users' perspective, there should only be two execution modes: RequestMode, BatchMode. We can come up with better names for them if it is necessary. For example, we can use OnlineServing for request mode, OfflineTraining for batchMode
Thus, users only need to take care of SQL performance/index optimization only when they are going to deploy a SQL. Otherwise, users can use our SQL with great tolerance. From the users' perspective, there are openmldb-cluster version and openmldb-standalone version. |
Beta Was this translation helpful? Give feedback.
-
@zhanghaohit We should do something to load online data and load offline data without using |
Beta Was this translation helpful? Give feedback.
-
Please refer to the RFC on Google Drive: RFC-002: Reorganize OpenMLDB modes
Status: Accepted
Problems
OpenMLDB has many modes which are very confusing. We need to re-organize these modes and provide documents so that the users can easily understand and use them.
In this discussion, we are going to discuss a better way to manage and configure these modes and eliminate unnecessary concepts from users.
We truly need your suggestions to help us improve our mode configuration system. If you have any questions, suggestions, troubles with our modes and environment usage, please share with us.
Solution
OpenMLDB Service (Approve)
OpenMLDB provides Online serving and Analytical training service.
Eliminate Performance Sensitive Mode (Approve)
In v0.3.0, we added performance-sensitive mode into OpenMLDB. This concept is difficult to understand and the mode is hard to manage by users.
In issue #796, we are going to eliminate performance-sensitive mode since the performance-sensitive behaviours can be decided by service type directly.
Standalone OpenMLDB and Cluster OpenMLDB (Approve)
There are only two types of OpenMLDB: Standalone OpenMLDB and Cluster OpenMLDB
Standalone OpenMLDB (Approve)
OpenMLDB can be deployed as a standalone DB where the whole data will be stored in one single tablet.
Cluster OpenMLDB (Approve)
OpenMLDB can also be deployed as a distributed DB where data will be distributed in multiple tablets.
Cluster OpenMLDB provides two types of execute_mode: online and offline.
Online execute_mode provides online data manipulation, including
LOAD DATA
,INSERT
, and simple data queries.Offline execute_mode provides offline data manipulation, including
LOAD DATA
and data queries.INSERT
statement andChanges and Additions to Public Interfaces
eliminate set performance_sensitive = xxx command;
add
set @@execute_mode=online|offline
in CLIPerformance Impact
Backwards Compatibility and Upgrade Path
Related Work
v0.4.0
set @@execute_mode=offline|online
in Cluster OpenMLDB's CLI. Disable configuration in Standalone OpenMLDB @tobe @denglong. Time estimate: LINK ISSUE: Support set execute_mode in CLI #714Cluster_optimize=true
in Cluster OpenMLDB and remove related test. @dl239 Time estimate: LINK ISSUE:Cluster_optimized = false;
Cluster_optimized = true;
Cluster_optimize=false
in Cluster OpenMLDB and remove related test.v0.5.0
TRUNCATE TABLE ...;
SQL syntax @jingchen2222 Link Issuesv1.0.0
Future Work
There are many other topics we will discuss in the future.
Beta Was this translation helpful? Give feedback.
All reactions