1. 이전에 열어둔 80번 포트와 443번 포트는 어디에 사용하나요?

- 우리가 접속하는 글자로 된 도메인은 사실 모두 ip주소가 있다.

- 예를 들어 네이버는 223.130.200.107라는 ip주소가 존재한다.

- 하지만 인터넷 브라우저에서 접속을 하게 되면 https://naver.com으로 다시 접속되는 것을 확인할 수 있다.  

- 그리고 http://223.130.200.107로 접속을 시도해보면, https://naver.com으로 다시 접속되는 것을 확인할 수 있다. 

- https는 암호화된 통신을 할 수 있는 기능이라고 생각하면 간단하며, 보안을 위해 적용하는 것이라고 생각하면 된다.

- 결론적으로 포트 번호가 없는 http와 https 도메인을 사용할 수 있도록 하는 포트가 80번과 443번 포트이다.

 

 

 

2. 뭔말인지 잘 모르겠어요.

- 직접 우리가 실습 중인 redash로 확인해보자

- 일단 좀 더 직관적인 도메인 실습을 위해 localhost가 아닌 임의의 도메인을 등록해보도록 하자.

1. 아래의 방식으로 파일에 관리자 권한에 접근한다
윈도우즈는 C:\Windows\System32\drivers\etc\hosts (텍스트 편집기를 사용해 관리자 권한으로 연다)
맥OS는 sudo vim /private/etc/hosts
우분투는 sudo vim /etc/hosts


2. 임의의 도메인 이름을 설정하고 저장한다.
127.0.0.1 localhost 라고 설정된 것 처럼
127.0.0.1 my.example.domain 과 같은 임의의 도메인을 설정한다.

 

- 이렇게 설정한 이후 127.0.0.1:5000, localhost:5000, my.example.domain:5000으로 접속해서 동일한 페이지가 뜨는 것을 확인할 수 있다.

설정한 임의의 도메인으로도 접속할 수 있다.

 

 

 

3. 80번 포트로 접속해보자 - http 접속

- 이번에는 127.0.0.1:80, localhost:80, my.example.domain:80

- 5000이 주소에 보였던 것과 달리 127.0.0.1, localhost, my.example.domain만 주소창에 나타나는 것을 볼 수 있다.

- 이처럼 80번 포트는 기본적으로 포트 번호가 숨겨진 것을 알 수 있다.

- 그리고 크롬에서 확인해보면 보안 연결인 https가 적용되지 않은 http로 접속한 것을 확인할 수 있다.

보안이 중요한 사이트인 경우 https로 접근하도록 설정해야한다.

 

 

 

4. 443 포트로 접근은 다음 글에서 실습해보도록 하겠다.

- https 접근을 위해서는 SSL 인증서를 구입해야한다.

- 하지만 실습을 위해 도메인과 SSL 인증서를 구입할 수는 없으니 연습용 인증서를 사용해 실습할 것이다.

- 정상적인 접근 화면은 확인할 수 없지만 Nginx를 통해 80번 포트로의 접근을 443포트로 보내주는 설정 등을 실습하여 안전한 대시보드 환경을 만들어보도록 하자!

1. 기본적인 시각화 생성과 대시보드 생성

- 역시나 오픈소스라서 이런저런 정보가 국내에는 많이 없다.

- 현업에서 지표를 보는 용도 정도로는 일부 세부 기능만 사용해도 괜찮다.

- 시각화의 일반적인 설정 예시와 대시보드에 시각화를 배치하는 연습을 해보자!

 

 

 

2. 시각화 생성

- 이전에 활용한 classicmodel 데이터 베이스에서 임의의 통계치를 조회해보았다.

SELECT date_format(orderDate, "%Y-%m") AS order_month,
       count(*) AS order_month_count
FROM orders
GROUP BY order_month

 

- 조회된 테이블에 있는 New Visualization를 눌러서 시각화를 해보자

라이언이 귀여워서 라이언으로 New Visualization을 표시해보았다.

 

- 아래와 같은 에디터에서 시각화 설정을 할 수 있다.

(1) 시각화 선택에서 box, chart, map 등의 다양한 시각화 방식을 선택할 수 있다.

(2) 생성한 시각화에 이름을 설정할 수 있다.

(3) 각 시각화 방식에 따라 세부 설정할 수 있는 옵션이 다르게 나오니 직접 실습해보자.

 

- 세부 설정을 통해 시각화 색상/범례/수치표시 등의 설정을 변경할 수 있다

옵션 설정의 설명이 영어로 되어 있지만 난이도가 높지 않다.

 

- Pivot Table을 활용한 시각화는 직접 만들어보도록 하자.

- 아래의 쿼리를 사용해서 만들면 아래의 GIF와 동일한 기능을 할 수 있는 통계치를 뽑을 수 있다.

SELECT date_format(orderDate, "%Y-%m") AS order_month,
       status,
       count(*) AS status_count
FROM orders
WHERE orderDate BETWEEN '{{날짜.start}}' AND '{{날짜.end}}'
GROUP BY order_month,
         status

 

- '{{날짜}}'와 같은 방식으로 파라미터를 설정하여 사용자가 임의의 날짜를 선택할 수 있도록 할 수 있다.

- 대시보드에 시각화를 넣으면 대시보드에서 날짜를 조절하는 등의 기능을 그대로 사용할 수 있다.

파라미터를 설정하고 톱니바퀴를 누르면 Type을 설정할 수 있다.

- 글로 설명하기 어려워서 GIF 파일을 사용했다.

- 다양한 통계치를 뽑는 방식이 있으니 실습해보자.

컬럼을 이동시켜 축에 배치할 수 있고 다양한 통계치를 선택할 수 있다.

 

 

 

3. 대시보드 생성

- Dashboard로 진입하여 대시보드를 생성할 수 있다.

- 우측 하단의 Add Textbox를 누르면 마크다운이 가능한 텍스트 위젯을 생성할 수 있고, Add widget를 누르면 미리 생성한 시각화를 배치할 수 있다.

- 작성한 쿼리와 시각화를 선택해서 Add to Dashboard를 통해 시각화를 배치해보자.

쿼리와 시각화 이름을 확실히 정해두면 대시보드를 구성할 때 도움이 된다.
왼쪽 상단의 날짜의 수치를 변경해서 다양한 기간의 시각화 결과를 확인할 수 있다.

 

 

 

4. 대시보드 위젯 설정

- Add widget으로 시각화를 대시보드에 배치할 때 Value Source 설정을 변경할 수 있다.

- 변경할 수 있는 파라미터를 여러개 생성하거나 위젯에 종속시켜 각각 다르게 수치를 변경할 수 있다.

(1) New dashboard parameter로 새로운 파라미터 key를 생성할 수 있다.

(2) Existing dash dashboard parameter로 미리 작성한 위젯의 key를 같이 사용할 수 있다.

(3) Widget parameter로 해당 위젯에만 독립적으로 사용되는 파라미터를 생성할 수 있다.

(4) Static value로 설정한 파라미터 값으로 나온 결과를 보여주는 위젯을 생성할 수 있다.

2~3개의 시각화를 작성해두고 사용해보면 어렵지 않게 습득할 수 있다.

 

 

 

5. 공식 홈페이지의 설명도 확인해보자

- 국내에는 자료가 없어서 parameter 사용법은 redash 공식 홈페이지의 가이드로 확인해서 습득하였다.

- 세세한 사용 방법은 역시 검색과 실습 밖에 없다!

- 기본적인 사용법의 설명은 이번 포스팅으로 끝이다.

- 다음으로는 ldap과 같은 로그인 방식의 적용, Nginx를 활용한 https로의 접속 방식 설명을 적어보도록 하겠다.

1. 계정 생성 후 해야할 기본적인 세팅

- 설치 후 첫 화면에서 해봐야할 것들을 간단하게 링크로 제시해주고 있다.

- 우측 상단의 설정 아이콘을 통해 모든 세팅에 접근할 수 있으니 우측 상단의 세팅 버튼을 애용하자.

Let's get started의 순서로 세팅을 진행해보자

 

 

 

2. Data Source - 데이터베이스를 연결

- 일반적인 데이터베이스나 파일시스템을 연결해서 사용할 수 있다.

- 포스팅에서는 Mysql 예제DB인 classicmodels를 사용했다.

- New Data Source 버튼을 클릭해서 mysql을 검색하여 선택하면 아래와 같은 세팅 화면이 나온다.

- 하나의 Data Source에는 하나의 데이터 베이스만 연결할 수 있으니 데이터베이스명을 꼭 명시하도록 하자.

- 127.0.0.1 이나 localhost로 접근이 안되는 경우 할당된 ip를 확인하여 입력해보자.

- 연결이 완료 되었다면 좌측 상단의 Queries로 진입해서 쿼리작성과 시각화를 해보자.

New Data source 버튼으로 진입해서 일반적인 DB연결 과정을 진행하면 된다.

 

 

 

3. Queries - 쿼리 결과 조회와 시각화

- 쿼리를 작성하고 결과를 볼 수 있다.

- 조회된 쿼리로 바로 시각화를 할 수 있다.

- 쿼리 결과가 보이는 창에 있는 New Visualization으로 시각화를 할 수 있다.

일반적인 쿼리 작업 환경과 동일하다.

 

- {{}}를 쿼리에 삽입하여 parameter를 설정할 수 있다.

- 해당 기능을 삽입한 쿼리로 대시보드를 구성하면 대시보드를 조회하는 사용자가 인자를 직접 입력할 수 있다.

- 아래의 링크에서 세부 사용법을 알 수 있으니 참고!

- https://redash.io/help/user-guide/querying/query-parameters

대시보드 조회자에게 매우 유용한 기능이다.

- Visualization Type에서 다양한 시각화를 선택할 수 있다.

- 일반적인 시각화 방식과 동일하니 기능을 사용해보며 익혀보자.

일반적인 bar chart
워드 클라우드도 가능하다!

- Pivot Table의 기능이 상당히 좋은 편이다.

- Pivot Table에서 다양한 group by 조건을 GUI에서 수행할 수 있다.

- 다만 데이터가 너무 많으면 결과 조회에 많은 시간이 들어가며 컴퓨터 자원도 많이 소모하니 주의해서 사용하자.

컬럼명을 X축이나 Y축으로 이동시켜 사용할 수 있고, 히트맵 등의 시각화 기능을 제공한다.

 

 

 

4. Dashboards - 쿼리 결과와 시각화를 대시보드에 적용

- Queries에서 작성하고 Publishing한 저장된 쿼리 테이블과 시각화를 GUI환경에서 배치하여 대시보드를 생성할 수 있다.

- 우측 하단의 Add Widget을 통해 추가할 수 있으며, 배치 후에 크기와 위치를 조정할 수 있다.

위젯을 모두 배치한 후에는 대시보드도 Publish를 해야 권한이 있는 사용자에게도 대시보드가 노출된다.

 

 

5. 세세한 사용 방법은 공홈의 가이드를 확인해보자.

- 위의 기능 정도면 기본적인 대시보드 기능을 사용할 수 있다.

- 세부적인 세팅 변경이나 기능들은 공홈에 많은 가이드가 있으니 확인해보자.

- 대시보드의 세부 기능은 다음 글로 좀 더 세세하게 풀어보도록 하겠다.

+ Recent posts