1. 시스템구조를 알아야할까요?

- 사실 냅다 구성만해서 사용하려면 딱히 알 필요가 없다.

- 왜냐면 설치 스크립트 한 방이면 걍 잘 돌아가게 구축이 되니까!

- 그러나 컨테이너형식이 아닌 직접 구축한 데이터베이스를 쓰려면 시스템 구조를 알아야 바꿀 수 있다.

- 그리고 실무에서는 아무튼 돌아감으로 해결되지 않는 많은 문제들이 발생한다...

- 하여튼 시스템구조를 살펴보고 각 기능에 대해 간단하게 짚고 넘어가자

 

 

 

2. 시스템 구조 설명

Redash의 아키텍처 다이어그램

- 공식 사이트에 다이어그램이나 기능에 대한 정확한 가이드를 적어두지 않아서 포럼을 뒤져서 찾았다.

(1) Nginx

- 리버스 프록시로 Redash 서버에 https를 적용하기 쉽게 해준다

(2) Redash server

- 플라스크로 띄우는 실질적인 대시보드 서버다

- 쉽게 이야기 하면 대시보드 웹페이지를 띄워주는 서버다

(3) postgreSQL

- postgreSQL 데이터베이스를 띄우는 서버로 운영하는 리대시의 모든 정보가 저장된다

- 유저, 쿼리, 시각화 등의 값들이 저장되는 곳이라고 생각하면 된다

(4) scheduler

- 대시보드에서 발생하는 잡(job)의 큐(queue)로 관리해주는 곳이다

(5) redis

- 스케쥴러에서 수행할 일(task)를 수행할 워커 서버로 보내기 전에 redis 서버에서 모니터링한다

- 정확히는 모르겠는데 adhoc task와 scheduled task를 관리하는 기능인 것 같다

(6) worker

- 각 워커에서 수행할 task를 실질적으로 수행한다

- 일시적인 쿼리를 실행하거나 주기적으로 돌아갈 작성된 쿼리 수행과 관련된 서버이다.

 

* 참고한 포럼

https://discuss.redash.io/t/what-are-the-individual-services-in-redash-actually-for/9675

 

What are the individual services in Redash actually for?

In Redash docker-compose files, we have been used to the following services: Server Adhoc-worker scheduled_worker scheduler Worker What are these services actually doing? The flask application which runs the redash under the hood looks to be the server. Bu

discuss.redash.io

 

 

3. 어... 뭔 말인지 모르겠어요

- 사실 도커기반으로 구축하는데 모든 기능을 세세하게 이해할 필요는 없습니다!

- 이런 이야기는 그만하고 다음엔 실질적으로 간단하게 구축을 해봅시다.

+ Recent posts