mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-10 11:07:06 +00:00
(improvement)(launcher) Optimize demo data loading to avoid repeatedly writing data to mysql (#1043)
Co-authored-by: jolunoluo
This commit is contained in:
@@ -59,6 +59,11 @@ public class CspiderDemo extends S2BaseDemo {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
boolean checkNeedToRun() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
public DomainResp addDomain() {
|
public DomainResp addDomain() {
|
||||||
DomainReq domainReq = new DomainReq();
|
DomainReq domainReq = new DomainReq();
|
||||||
domainReq.setName("测评数据_音乐");
|
domainReq.setName("测评数据_音乐");
|
||||||
|
|||||||
@@ -63,6 +63,11 @@ public class DuSQLDemo extends S2BaseDemo {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
boolean checkNeedToRun() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
public void addDomain() {
|
public void addDomain() {
|
||||||
DomainReq domainReq = new DomainReq();
|
DomainReq domainReq = new DomainReq();
|
||||||
domainReq.setName("DuSQL_互联网企业");
|
domainReq.setName("DuSQL_互联网企业");
|
||||||
|
|||||||
@@ -64,6 +64,18 @@ public class S2ArtistDemo extends S2BaseDemo {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
boolean checkNeedToRun() {
|
||||||
|
List<DomainResp> domainList = domainService.getDomainList();
|
||||||
|
for (DomainResp domainResp : domainList) {
|
||||||
|
if (domainResp.getBizName().equalsIgnoreCase("singer")) {
|
||||||
|
log.info("Already exist domain:singer, no need to run demo");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
private TagObjectResp addTagObjectSinger(DomainResp singerDomain) throws Exception {
|
private TagObjectResp addTagObjectSinger(DomainResp singerDomain) throws Exception {
|
||||||
TagObjectReq tagObjectReq = new TagObjectReq();
|
TagObjectReq tagObjectReq = new TagObjectReq();
|
||||||
tagObjectReq.setDomainId(singerDomain.getId());
|
tagObjectReq.setDomainId(singerDomain.getId());
|
||||||
@@ -76,7 +88,7 @@ public class S2ArtistDemo extends S2BaseDemo {
|
|||||||
public DomainResp addDomain() {
|
public DomainResp addDomain() {
|
||||||
DomainReq domainReq = new DomainReq();
|
DomainReq domainReq = new DomainReq();
|
||||||
domainReq.setName("艺人库");
|
domainReq.setName("艺人库");
|
||||||
domainReq.setBizName("supersonic");
|
domainReq.setBizName("singer");
|
||||||
domainReq.setParentId(0L);
|
domainReq.setParentId(0L);
|
||||||
domainReq.setStatus(StatusEnum.ONLINE.getCode());
|
domainReq.setStatus(StatusEnum.ONLINE.getCode());
|
||||||
domainReq.setViewers(Arrays.asList("admin", "tom", "jack"));
|
domainReq.setViewers(Arrays.asList("admin", "tom", "jack"));
|
||||||
|
|||||||
@@ -89,15 +89,23 @@ public abstract class S2BaseDemo implements CommandLineRunner {
|
|||||||
protected boolean demoEnableLlm;
|
protected boolean demoEnableLlm;
|
||||||
|
|
||||||
public void run(String... args) {
|
public void run(String... args) {
|
||||||
demoDatabaseResp = addDatabase();
|
demoDatabaseResp = addDatabaseIfNotExist();
|
||||||
if (demoList != null && demoList.contains(getClass().getSimpleName())) {
|
if (demoList != null && demoList.contains(getClass().getSimpleName())) {
|
||||||
doRun();
|
if (checkNeedToRun()) {
|
||||||
|
doRun();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract void doRun();
|
abstract void doRun();
|
||||||
|
|
||||||
protected DatabaseResp addDatabase() {
|
abstract boolean checkNeedToRun();
|
||||||
|
|
||||||
|
protected DatabaseResp addDatabaseIfNotExist() {
|
||||||
|
List<DatabaseResp> databaseList = databaseService.getDatabaseList(User.getFakeUser());
|
||||||
|
if (!CollectionUtils.isEmpty(databaseList)) {
|
||||||
|
return databaseList.get(0);
|
||||||
|
}
|
||||||
String url = dataSourceProperties.getUrl();
|
String url = dataSourceProperties.getUrl();
|
||||||
DatabaseReq databaseReq = new DatabaseReq();
|
DatabaseReq databaseReq = new DatabaseReq();
|
||||||
databaseReq.setName("数据实例");
|
databaseReq.setName("数据实例");
|
||||||
|
|||||||
@@ -123,6 +123,18 @@ public class S2VisitsDemo extends S2BaseDemo {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
boolean checkNeedToRun() {
|
||||||
|
List<DomainResp> domainList = domainService.getDomainList();
|
||||||
|
for (DomainResp domainResp : domainList) {
|
||||||
|
if (domainResp.getBizName().equalsIgnoreCase("supersonic")) {
|
||||||
|
log.info("Already exist domain:supersonic, no need to run demo");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
public void addSampleChats(Integer agentId) throws Exception {
|
public void addSampleChats(Integer agentId) throws Exception {
|
||||||
Long chatId = chatManageService.addChat(user, "样例对话1", agentId);
|
Long chatId = chatManageService.addChat(user, "样例对话1", agentId);
|
||||||
|
|
||||||
|
|||||||
@@ -565,4 +565,4 @@ CREATE TABLE IF NOT EXISTS `s2_term` (
|
|||||||
`updated_at` datetime DEFAULT NULL ,
|
`updated_at` datetime DEFAULT NULL ,
|
||||||
`updated_by` varchar(100) DEFAULT NULL ,
|
`updated_by` varchar(100) DEFAULT NULL ,
|
||||||
PRIMARY KEY (`id`)
|
PRIMARY KEY (`id`)
|
||||||
);
|
) ENGINE = InnoDB DEFAULT CHARSET = utf8 COMMENT ='术语表';
|
||||||
|
|||||||
Reference in New Issue
Block a user