Requisitos do Ambiente Local
Para a implantação local do qData, são necessários os seguintes componentes:
Backend
- JDK 1.8 ou superior (recomendado: OpenJDK 8 ou 11)
- Maven 3.6 ou posterior
- Banco de dados Dameng versão 8.0
- Redis 5.0 ou superior
- RabbitMQ (opcional)
- MySQL 5.7 ou 8.0
- Sistema operacional recomendado: Windows, Linux ou Mac (exemplo em Windows)
Frontend
- Node.js 16 ou superior
- npm 10 ou superior
- Vite versão mais recente
Implantação Rápida
(I) Usando Docker Compose (recomendado)
1. Instalação do Docker e Docker Compose
Recomenda-se as seguintes versões:
Docker: >= v19.03
Docker Compose: >= v2.20.2
Download do Docker Desktop: https://www.docker.com/products/docker-desktop/
A instalação do Docker Desktop inclui o Docker Compose, não é necessário instalá-lo separadamente.
Verificação da instalação:
No PowerShell ou CMD, execute:
docker compose version
2. Baixar o Pacote de Implantação
O pacote está disponível no grupo QQ — verifique os arquivos do grupo para acessar.
Após o download, descompacte o arquivo.
3. Iniciar o qData
3.1. Configurar o arquivo .env
Navegue até a pasta descompactada do Docker e edite o arquivo .env.
Defina o banco principal como MySQL. Se usar Dameng, pule esta etapa.
3.2. Inicializar o Banco de Dados
Execute o comando abaixo na pasta atual:
docker-compose --profile schema up -d
# Caso utilize MySQL:
docker-compose -f docker-compose-mysql.yml --profile schema up -d
⚠️ Antes de executar, verifique se as portas estão livres — conflitos podem causar falhas.
3.3. Iniciar o Serviço qData
Execute:
docker-compose --profile all up -d
# Para MySQL:
docker-compose -f docker-compose-mysql.yml --profile all up -d
Para iniciar o ambiente local com suporte à execução de código-fonte:
docker-compose --profile local up -d
⚠️ Em caso de erros, verifique a fonte da imagem, conectividade de rede e uso de portas.
4. Acessar o qData
Abra o navegador e vá para:
http://localhost:80
Credenciais iniciais:
- Usuário:
admin - Senha:
qData123
⚠️ Se a página não carregar, reinicie o Docker.
(II) Implantação a partir do Código Fonte
1. Requisitos Locais
| Componente | Versão Mínima |
|---|---|
| JDK | 1.8 |
| Maven | 3.6+ |
| yarn | v1.22.22+ |
| Node.js | 18.0+ |
| Docker | 19.03 ou superior |
| Docker Compose | 1.28 ou superior |
2. Clonar o Repositório
Clone via Gitee ou GitHub:
Este guia utiliza o Gitee como exemplo.
3. Iniciar Middleware com Docker Compose
O backend depende dos seguintes serviços:
- Banco de dados: DM8, MySQL, PostgreSQL
- Cache e fila: Redis, RabbitMQ
- Armazenamento: MongoDB, Hadoop, kkFileView
- Agendamento: DolphinScheduler
Use o seguinte comando para iniciar os serviços:
docker-compose --profile local up -d
4. Iniciar o Backend
Abra o projeto no IntelliJ IDEA ou outro IDE.
Utilize Maven para resolver dependências.
Configuração do qdata-server
Edite qdata-server/src/main/resources/application-dev.yml:
- Conexão RabbitMQ:
spring:
rabbitmq:
host: IP
port: PORTA
username: USUARIO
password: SENHA
- Conexão com Banco de Dados:
datasource:
type: mysql # ou dm8
mysql:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://IP:PORTA/qdata?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: USUARIO
password: SENHA
dm8:
driver-class-name: dm.jdbc.driver.DmDriver
url: jdbc:dm://IP:PORTA/QDATA?STU&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&schema=QDATA&serverTimezone=Asia/Shanghai
username: USUARIO
password: SENHA
- Configurações do DolphinScheduler:
ds:
base_url: http://IP:12345/dolphinscheduler
quality_url: http://127.0.0.1:8083/quality/qualityTaskExecutor/runExecuteTask
http_quality_projectCode: 134799536571008
token: b07f0e57c4818043a57ba05a28da291a
spark:
master_url: spark://IP:7077
main_jar: file:/dolphinscheduler/default/resources/spark-jar/qdata-etl-3.8.8.jar
main_class: tech.qiantong.qdata.spark.etl.EtlApplication
hdfs:
url: hdfs://IP:PORTA
- Configurações do Serviço de Qualidade:
path:
quality_url: http://127.0.0.1:8083/quality/qualityTaskExecutor
Configuração do qdata-quality
Edite qdata-quality/src/main/resources/application-dev.yml:
- Conexão RabbitMQ:
spring:
rabbitmq:
host: IP
port: PORTA
username: USUARIO
password: SENHA
- Conexão MongoDB:
spring:
data:
mongodb:
uri: mongodb://USUARIO:SENHA@IP:PORTA/data?authSource=admin
field-naming-strategy: org.springframework.data.mapping.model.SnakeCaseFieldNamingStrategy
print: true
slowQuery: true
slowTime: 1000
- Conexão com Banco de Dados:
datasource:
type: mysql # ou dm8
mysql:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://IP:PORTA/qdata?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: USUARIO
password: SENHA
dm8:
driver-class-name: dm.jdbc.driver.DmDriver
url: jdbc:dm://IP:PORTA/QDATA?STU&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&schema=QDATA&serverTimezone=Asia/Shanghai
username: USUARIO
password: SENHA
5. Iniciar o Serviço qddata-server
Execute o arquivo principal:
qdata-server/src/main/java/tech/qiantong/qdata/server/QDataApplication.java
6. Iniciar o Serviço qdata-quality
Execute:
qdata-quality/src/main/java/tech/qiantong/qdata/quality/QualityApplication.java
7. Iniciar o Frontend
# Navegue para o diretório do frontend
cd qdata-ui
# Instale as dependências
yarn install
# Inicie o servidor de desenvolvimento
yarn run dev
8. Resetar a Sanha do Admin
Execute no banco de dados:
UPDATE SYSTEM_USER
SET PASSWORD = 'NOVA_SENHA'
WHERE USER_ID = 1;
9. Acessar o qData
Abra no navegador:
http://localhost:81
Credenciais padrão: admin / qData123