State
[progress record]:
Proposed time: 2022/04/29
Discussion time:
Acceptance time:
Complete time:
[issues]: https://github.com/apache/incubator-linkis/issues/2082
[email]:
[release]: 1.2.0
[proposer]:
Motivation & Background
The new features introduced by linkis in 1.1.0. The management of data sources supports users to configure the relevant configuration of data source connections, and by using these connection configurations, create connections and query the metadata data of the corresponding library. Metadata service positioning for data sources is a query service that only provides metadata, and does not involve modifying metadata information. Therefore, the metadata query service module is named: linkis-metedata-manager-server with manager, which is easy to cause misunderstanding and does not match the function positioning. The optimization adjustment is manager->query, that is, linkis-metedata-query-server. At present, the SDK client LinkisMetaDataRemoteClient for metadata query uses the data source id to associate to obtain the configuration. For upstream users, the data source id attribute is the self-incrementing id of a data table, which is too abstract and has no actual specific meaning. It is recommended to optimize For association through the data source name parameter.
Basic concept
- Data source: We call database services that can provide data storage as databases, such as mysql/hive/kafka. The data source defines the configuration information for connecting to the actual database. The configuration information is mainly the address required for the connection and user authentication information. , connection parameters, etc.
- Metadata: single refers to the metadata of the database, which refers to the data that defines the data structure and the data of various object structures of the database. For example, the database name, table name, column name, field length, type and other information data in the database.
Expect to achieve goals
- Module naming adjustment linkis-metedata-manager-server->linkis-metedata-query-server
- Metadata LinkisMetaDataRemoteClient uses the key input parameter to adjust from the data source id to the data source name name
Implementation plan
- 1. When the client builds the request entity class object, the original dataSourceId is adjusted to the name dataSourceName
- 2. The input parameter of the relevant back-end http interface is adjusted from the original dataSourceId to dataSourceName, and the data source configuration is queried through dataSourceName to connect to the database
Things to Consider & Note:
- Do you need to consider the compatibility of the original parameter method?
Changes
Modification | Detail | |
---|---|---|
1 | Modification of maven module | |
2 | Modification of HTTP interface | |
3 | Modification of the client interface | |
4 | Modification of database table structure | |
5 | Modification of configuration item | |
6 | Modification Error code | |
7 | Modifications for Third Party Dependencies |
Compatibility, Deprecation, and Migration Plan
- What impact (if any) will there be on existing users?
- If we are changing behavior, how will we phase out the older behavior?
- If we require special migration tools, describe them here.
- When will we remove the existing behavior?