Discourse Data Explorer와 Power BI 통합

첫 번째 게시글의 스크립트를 개선하려는 분이 계실 수 있으니 간단한 업데이트를 공유합니다.

사실 데이터 양과 무관하게 한 번에 모든 데이터를 가져오는 것이 가능한 것 같습니다. :sweat_smile:
(상당한 크기의 posts 테이블(id 및 raw 컬럼 포함)에서 스트레스 테스트를 해보았는데 성공적이었습니다!)

샘플 쿼리:

SELECT      'id'
            || string_agg(E'\n' || case when posts.id::text is null then '-1' else posts.id::text end
            ,''
            ORDER BY posts.id asc) as value
FROM        posts

이 쿼리를 실행하면 거의 CSV 형식의 파일이 하나의 값으로, 즉 한 페이지에 출력됩니다. 이때 value" 부분과 끝의 "을 제거하면 유용한 CSV 파일이 됩니다.

물론 CSV 파일에 새로운 컬럼을 추가하고 해당 컬럼에 대한 데이터를 추가함으로써 더 많은 데이터를 포함시킬 수 있습니다:

SELECT      'id,newcolumn'
            || string_agg(E'\n' || case when posts.id::text is null then '-1' else posts.id::text end
            || string_agg(E'\n' || case when posts.newcolumn::text is null then '-1' else posts.newcolumn::text end
            ,''
            ORDER BY posts.id asc) as value
FROM        posts

이러한 쿼리를 지원하도록 업데이트하면 Power BI가 여러 페이지를 탐색할 필요가 없어져 데이터 검색 속도가 빨라집니다.

4개의 좋아요