Implementação Local do qData

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
  
  1. 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
 
  1. 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
 
  1. 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
  
  1. 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
 
  1. 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

Tags: qData Docker Compose java Spring Boot MySQL

Publicado em 9-3 23:38