{"id":28560175,"url":"https://github.com/dtstack/datasourcex","last_synced_at":"2025-06-10T09:07:46.974Z","repository":{"id":37676777,"uuid":"491251681","full_name":"DTStack/DatasourceX","owner":"DTStack","description":null,"archived":false,"fork":false,"pushed_at":"2022-09-01T02:47:56.000Z","size":22310,"stargazers_count":61,"open_issues_count":6,"forks_count":44,"subscribers_count":15,"default_branch":"release_4.3.x","last_synced_at":"2024-02-25T12:37:34.238Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DTStack.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-05-11T19:46:25.000Z","updated_at":"2023-11-09T07:25:40.000Z","dependencies_parsed_at":"2022-07-31T23:48:17.781Z","dependency_job_id":null,"html_url":"https://github.com/DTStack/DatasourceX","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DTStack%2FDatasourceX","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DTStack%2FDatasourceX/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DTStack%2FDatasourceX/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DTStack%2FDatasourceX/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DTStack","download_url":"https://codeload.github.com/DTStack/DatasourceX/tar.gz/refs/heads/release_4.3.x","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DTStack%2FDatasourceX/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259043767,"owners_count":22797163,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-06-10T09:07:46.056Z","updated_at":"2025-06-10T09:07:46.924Z","avatar_url":"https://github.com/DTStack.png","language":"Java","readme":"# 数据源插件 common-loader\n\n## 一、介绍\n模拟 Driver 通过不同的 classloader 加载，避免类名冲突导致加载不上的问题，提供大量关系型数据库、非关系型数据库以及像 HDFS、S3、ftp数据源的一些通用方法，简化开发成本：\n\n- 大部分关系型数据库支持开启连接池以提高并发性能[连接池使用](docs/connectionPool.md)\n\n- 部分数据源支持kerberos认证[kerberos认证](docs/kerberos.md)\n\n---\n\n## 二、已支持的数据源\n\n### 2.1 关系型数据库\n\n| Database Type               | Client doc                                   |\n|:---------------------------:|:---------------------------------------------:|\n| MySQL5                     | [doc](docs/rdbms/mysql5.md)               |\n| MySQL8                     | [doc](docs/rdbms/mysql8.md)               |\n| Polardb_For_MySQL(同mysql5) | [doc](docs/rdbms/mysql5.md)               |\n| Oracle                     | [doc](docs/rdbms/oracle.md)               |\n| SQLServer                  | [doc](docs/rdbms/sqlserver.md)            |\n| PostgreSQL                 | [doc](docs/rdbms/postgresql.md)           |\n| DB2                        | [doc](docs/rdbms/rdbm.md)                  |\n| DMDB                       | [doc](docs/rdbms/rdbm.md)                 |\n| KINGBASE8                  | [doc](docs/rdbms/rdbm.md)            |\n| HIVE1.X                    | [doc](docs/rdbms/hive.md)                |\n| HIVE2.X                    | [doc](docs/rdbms/hive.md)                |\n| SPARK                      | [doc](docs/rdbms/hive.md)                |\n| IMPALA                     | [doc](docs/rdbms/rdbm.md)               |\n| INCEPTOR                   | [doc](docs/rdbms/rdbm.md)               |\n| Clickhouse                 | [doc](docs/rdbms/rdbm.md)           |\n| TiDB(同mysql5)             | [doc](docs/rdbms/mysql5.md)               |\n| CarbonData(同hive2.X)      | [doc](docs/rdbms/hive.md)                |\n| Kudu                       | [doc](docs/rdbms/kudu.md)                 |\n| ADS(同mysql5)              | [doc](docs/rdbms/mysql5.md)               |\n| Kylin                      | [doc](docs/rdbms/rdbm.md)                |\n| Libra                      | [doc](docs/rdbms/libra.md)                |\n| GREENPLUM6                 | [doc](docs/rdbms/greenplum6.md)           |\n| GBase_8a                   | [doc](docs/rdbms/rdbm.md)                |\n| Phoenix4                   | [doc](docs/rdbms/rdbm.md)             |\n| Phoenix5                   | [doc](docs/rdbms/rdbm.md)             |\n| oceanbase                   | [doc](docs/rdbms/oceanbase.md)             |\n| Vertica                    | [doc](docs/rdbms/rdbm.md)              |\n\n### 2.2 非关系型数据库\n\n| Database Type               | Client doc                                   |\n|:---------------------------:|:---------------------------------------------:|\n| REDIS                       | [doc](docs/nosql/redis.md)              |\n| HBASE(hbase1.x、2.x版本)     | [doc](docs/nosql/hbase.md)               |\n| ES(ES6、ES7版本)             | [doc](docs/nosql/es.md)                  |\n| SOLR(SOLR7.4版本)             | [doc](docs/nosql/solr.md)                  |\n| MONGODB                     | [doc](docs/nosql/mongodb.md)             |\n| HBASE                       | [doc](docs/nosql/hbase.md)               |\n\n### 2.3 文件系统\n\n| Database Type               | Client doc                                   |\n|:---------------------------:|:---------------------------------------------:|\n| HDFS                        | [doc](docs/fs/hdfs.md)                   |\n| S3(此为中国移动版本)           | [doc](docs/fs/s3.md)                     |\n| AWS_S3                      | [doc](docs/fs/aws_s3.md)                 |\n| FTP                         | [doc](docs/fs/ftp.md)                    |\n\n### 2.4 消息队列\n\n| Database Type               | Client doc                                   |\n|:------------------------------:|:------------------------------------------:|\n| KAFKA(0.9、0.10、0.11、1.x版本)  | [doc](docs/mq/kafka.md)               |\n| EMQ                            | [doc](docs/mq/emq.md)                 |\n\n### 2.5 其他\n\n| Database Type               | Client doc                                   |\n|:------------------------------:|:------------------------------------------:|\n| websocket                      | [doc](docs/other/websocket.md)        |\n| socket                         | [doc](docs/other/socket.md)           |\n| influxdb                       | [doc](docs/other/influxdb.md)           |\n\n---\n\n## 三、立刻使用\n\n请点击[立刻使用](docs/nowstart.md)\n\n---\n\n## 四、kerberos认证\n\n请点击[kerberos认证](docs/kerberos.md)\n\n---\n\n## 五、开发步骤说明\n1. 在core模块下com.dtstack.dtcenter.loader.source.DataSourceType中增加新的数据源信息\n2. 在core模块下com.dtstack.dtcenter.loader.dto.source包中创建新数据源对应的sourceDTO，继承对应的抽象类或实现ISourceDTO接口\n3. 在项目下增加子模块并按照其他模块修改项目和子模块对应的pom文件信息\n4. 在新创建的模块中创建client类继承对应抽象类或实现对应接口并重写需要实现的方法\n5. 在Resources/META-INF/services 下增加文件com.dtstack.dtcenter.loader.client.IClient，并在里面补充实现类的引用地址：例如：com.dtstack.dtcenter.common.loader.db2.Db2Client","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdtstack%2Fdatasourcex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdtstack%2Fdatasourcex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdtstack%2Fdatasourcex/lists"}