Apache Superset 19

[Superset] Backend DB 초기화 후 복구하기

개요 AWS EKS 클러스터에서 Helm으로 Superset을 설치하여 사용하고 있다. 이전에 EKS 버전 업그레이드를 작업하면서 superset을 지웠다가 다시 설치한 이력이 있는데, 실수를 했는지 Dataset이 편집되지 않고 있다……. superset Pod 로그를 확인해보니 테이블 업데이트 과정에서 시퀀스로 되어 있을 id 값에서 중복 에러가 발생하고 있었다. DB가 꼬여있는 것 같아 현재 superset Backend를 삭제하고 다시 복구한다. 참고로 superset 관련 버전은 다음과 같다. - 현재 superset helm chart version : 0.11.2 - 현재 superset app version : 3.0.1 - 데이터 백업 시 superset helm chart : 0.9.3..

Apache Superset 2024.03.26

[Superset/Helm] Chart 시각화 중 Timeout이 발생하는 경우

현상 AWS EKS 클러스터에서 Helm으로 Superset을 설치해서 사용하고 있다. 그런데 Superset Dashboard에서 데이터 양이 많은 Chart를 조회하면 60초 정도 로드하다가 Timeout이 발생하면서 실패하는 현상이 발생하고 있다. 원인을 확인하고 현상을 해결해보자. 원인 다행히 비슷한 현상을 겪는 사용자가 많은지 Apache Superset FAQ 문서에 관련 내용이 정리되어 있었다. 공식 문서에 의하면 Superset 서비스 간 통신이 Gateway나 nginx 같은 Proxy 서버를 통해 이뤄지는 경우, 네트워크 서비스 관련 설정으로 인해 대시보드나 차트를 로드하는 중 504 Gateway Time-out과 같은 시간 초과가 발생할 수 있다고 한다. 긴 쿼리를 처리하는 Supe..

Apache Superset 2024.03.20

[Superset] Dashboard Native Filters 활성화

개요 Superset은 1.3 버전부터 Dashboard 수준의 Filter 기능을 지원하고 있다. 그러나 Superset 설정 파일을 변경하다 보니, 활성화되어 있던 Filter 기능이 표시되지 않게 되었다. 어떻게 하면 대시보드 필터를 다시 확인할 수 있는지 적어둔다. Superset 버전은 3.0.1이다. FEATURE_FLAGS superset은 어떠한 기능의 활성화 여부를 config.py의 DEFAULT_FEATURE_FLAGS로 설정하고 있다. DEFAULT_FEATURE_FLAGS는 기능의 이름을 key로 하고, 활성화 여부를 나타내는 bool 데이터를 value로 하는 딕셔너리로, https://github.com/apache/superset/blob/master/superset/conf..

Apache Superset 2024.01.10

[Superset/k8s] 대시보드 iframe 임베드

개요 Superset으로 구성한 대시보드를 다른 웹 페이지에 iframe으로 임베드하려고 한다. 관련하여 설정 방법을 적어둔다. + 참고 사항 1. 직접 설정한 게 아니라 이미 구성되어 있는 설정과 구글링의 힘을 빌려 정리한다. 2. superset의 버전에 따라 방법이 다를 수 있다. 이 글의 superset 버전은 3.0.1이며, AWS EKS에서 동작한다. 3. superset에서 제공하는 Superset Embeded SDK 기능은 사용하지 않았다. 1. superset_config.py 구성 로그아웃한 사용자가 대시보드에 접근할 수 있도록 superset 구성 파일을 정의한다. # 로그아웃한 사용자의 superset 접근 허용 PUBLIC_ROLE_LIKE = "Public" # public 권..

Apache Superset 2024.01.09

[Helm/Superset] [flask_migrate] Error: Requested revision overlaps with other requested revisions

현상 AWS EKS에서 Helm으로 Apache Superset을 설치해 사용 중이다. 최근 EKS 버전 업그레이드 작업을 진행했는데, 작업 후 서비스를 확인하던 중 로그인 후 메인화면이 정상적으로 표시되지 않는 현상이 발생했다. 확인해 보니 작업 중 쿠버네티스 클러스터 노드가 변경되면서 새로 Superset 도커 이미지 pull이 발생했는데, Helm으로 배포한 values.yaml에 이미지 태그가 특정 버전으로 고정되어 있지 않고 latest로 지정되어 있어 Superset DB의 버전과 차이가 발생하게 된 것 같다. 특정 컬럼이 존재하지 않는다는 로그와 함께 데이터 로드에 실패하는 모습을 확인할 수 있었다. sqlalchemy.exc.ProgrammingError: (psycopg2.errors.U..

Apache Superset 2024.01.08

[Superset] URL 하이퍼링크 사용하기

개요 Superset Chart의 값을 클릭하면 적절한 페이지로 이동하는 하이퍼링크를 사용하고 싶다. 하지만 Superset 2.0에서는 지원하지 않는 것으로 보인다. 다만 Table Chart에서 HTML를 적용할 수 있는 것 같아 방법을 정리한다. 다만 Pivot Table이나 다른 Chart에서는 사용할 수 없어 보인다. 방법 하이퍼링크를 사용할 수 있는지 정도만 확인하고자 별도 데이터세트 없이 테스트한다. 1. 아무 데이터세트를 이용해 Table Chart 생성 페이지로 이동한다. 2. Chart 설정에서 간단히 단순 문자열 URL 값을 추가해 본다. UPDATE CHART 버튼을 눌러 Chart를 확인해 보면 단순히 문자열로 표시되는 것을 확인할 수 있다. 3. 값을 입력하면 원하는 페이지로 이..

Apache Superset 2023.08.01

[Superset] 대시보드 Filters 기능

개요 Superset은 Chart의 Filter box 또는 Dashboard Filter를 통해 사용자가 조건에 따라 데이터를 검색하고, 좀 더 동적으로 대시보드를 구성할 수 있게 한다. 이 글에서는 Dashboard 자체에서 제공하는 Filter를 이용해 대시보드에 필터 기능을 추가해보려고 한다. 필터 유형 Superset 대시보드는 Value(값), Numerical range(숫자 범위), Time range(시간 범위), Time column(시간 열), Time grain(시간 단위) 등의 필터 유형을 제공하고 있다. Value 지정한 컬럼애 대해 사용할 수 있는 값으로 채워진 드롭다운 메뉴 생성 Numerical range 선택한 컬럼 데이터의 시작 및 끝 값을 지정할 수 있는 범위 슬라이더..

Apache Superset 2023.06.13

[Superset] 데이터베이스에 CSV 파일 저장하기

개요 데이터를 다루다 보면 Excel 또는 CSV 데이터 파일을 자주 사용하게 된다. 만약 superset에서 이러한 파일 데이터를 읽어 들여 Chart를 구성해야 한다면 Superset의 Upload CSV to database 기능을 사용해 작업할 수 있다. Superset 2.1.0 버전을 기준으로 방법을 정리한다. Upload file to database 기능 활성화 파일을 데이터베이스에 업로드하기 위해서는 해당 기능을 활성화해야 한다. 1. Databases 페이지 이동 오른쪽 상단 Settings 메뉴에서 Database Connections을 클릭한다. 2. 파일 데이터를 저장할 데이터베이스의 Edit 버튼 클릭 3. ADVANCED 탭의 Security 항목 펼치기 4. 파일 업로드 기능..

Apache Superset 2023.06.12

[Superset] A Default SECRET_KEY was detected, please use superset_config.py to override it.

현상 2023.02.21 - [Superset] 설치 및 실행 글 이후 새로 superset을 설치하려고 한다. pip install로 설치한 이후 설치 확인을 했더니 다음과 같은 메시지가 발생했다. 참고로 설치에 사용한 명령어는 다음과 같다. # 패키지 설치 apt update apt install build-essential libssl-dev libffi-dev python3-dev python3-pip libsasl2-dev libldap2-dev # 가상 환경 생성 및 활성화 python3 -m venv superset source superset/bin/activate # 빌드 라이브러리 설치 pip install wheel # superset 설치 pip install apache-super..

Apache Superset 2023.05.30

[Superset] INTERNAL SERVER ERROR - missing_datasource

현상 2023.02.25 - [Superset] Chart 생성에서 살펴보았던 것처럼 Chart 페이지에서 새로운 Chart를 생성하려고 한다. Create a new chart 페이지에서 사용할 Dataset과 Chart 유형을 선택하고 CREATE NEW CHART 버튼을 클릭했더니, 아래와 같이 INTERNAL SERVER ERROR가 발생하면서 선택한 Dataset이 해제되는 현상이 발생했다. 원인 로그를 보면 아래와 같은데…… 어떤 부분이 원인인지는 잘 모르겠다. 2023-05-07 06:43:09,828:ERROR:root:DAO datasource query source type is not supported Traceback (most recent call last): File "/usr/..

Apache Superset 2023.05.22
1 2