인프런 커뮤니티 질문&답변
array 등
해결된 질문
작성
·
61
0
안녕하세요 데이터분석가로 근무하고 있는 수강생입니다.
array 등과 같은 기능이 저는 다소 생소한데 자주 쓰는 문법인지 궁금합니다ㅣ
퀴즈
강의 내용에 따르면, Google Analytics와 Firebase Analytics의 관계는 무엇일까요?
서로 완전히 다른 별개의 데이터 분석 도구이다.
Google Analytics는 웹 분석, Firebase는 앱 분석만 담당한다.
기능적으로 유사하며, Google이 통합하여 함께 사용된다.
Firebase Analytics는 Google Analytics의 구형 버전이다.
답변 2
1
안녕하세요!
배열 함수를 자주 접하신 적이 없으면 생소할 수 있습니다. 우선 BigQuery의 Array 데이터는 Google Analytics4나 Firebase를 사용하는 회사에서는 자주 볼 수 있습니다. GA4나 Firebase를 배열로 데이터를 저장하기 때문에 이걸 사용하지 않으면 데이터를 풀 수 없습니다.
그럼 BigQuery만의 특수한 문법이 아닌가?라고 생각할 수 있는데, 전통적인 OLTP에서는 배열 데이터가 없기도 합니다. 예를 들어 MySQL에서는 배열 함수가 없고, JSON 형태를 활용해서 만들어야 합니다. 예시는 링크에서 확인할 수 있습니다.
그 외에 PostgreSQL에는 배열이 있습니다. BigQuery에서 사용하는 ARRAY 관련 함수를 볼 수 있습니다.
공식 문서 : https://www.postgresql.org/docs/current/arrays.html
데이터 웨어하우스(DW) 계열에서는 배열 데이터가 많이 활용됩니다. 여러 데이터를 저장해야 할 때, 배열 형태로 데이터를 저장하곤 합니다(파이썬의 List처럼) 그리고 그걸 활용할 때 배열을 사용하게 됩니다.
Snowflake 문서 : https://docs.snowflake.com/ko/sql-reference/functions/array_agg
데이터 저장하는 형태가 복잡해지면 배열은 한번 쯤은 경험하게 되는 것 같아요. 사용자 앱 로그 데이터를 저장할 때는 배열 형태로 저장하는 것이 수월한 경우도 꽤 있었어요.
파이썬에서도 Dict, List가 존재하는데 데이터를 어떻게 저장해야 하느냐에 따라 적절하게 활용하곤 합니다. 데이터베이스, 데이터 웨어하우스에도 목적에 따라 적절하게 배열이나 파이썬의 딕셔너리처럼 저장하고 싶을 때 강의의 ARRAY, STRUCT를 사용한다고 생각하시면 될 것 같아요.
0
안녕하세요, 인프런 AI 인턴입니다. 데붕싸님.
ARRAY 등과 같은 데이터 구조는 BigQuery와 SQL에서 매우 유용한 기능입니다. 특히, BigQuery는 반정형 데이터 형식을 지원하는데, 이때 ARRAY와 STRUCT를 활용하면 데이터를 효율적으로 다룰 수 있습니다.
- ARRAY: 여러 개의 값을 하나의 컬럼에 저장할 수 있습니다. 예를 들면, 한 개의 영화에 여러 명의 배우가 출연할 때, 배우 목록을 ARRAY로 관리할 수 있습니다.
- STRUCT: ARRAY 내에서 각각의 요소가 여러 속성을 가질 때 사용됩니다. 예를 들어, 배우의 이름과 역할을 함께 저장해야 한다면 STRUCT가 유용합니다.
이러한 기능은 특히 JSON과 같은 데이터를 처리할 때 아주 유용하며, 데이터를 복잡한 구조로 나눌 필요 없이 하나의 컬럼에 저장하고 조작할 수 있습니다.
아래의 링크를 통해 ARRAY와 관련된 더 자세한 사용 방법을 확인하실 수 있습니다:
- 배열 및 구조체 설명 (BigQuery 공식 문서): ARRAY 및 STRUCT에 대한 기본적인 설명과 예제를 제공합니다.
이 자료들이 데붕싸님의 데이터 분석 업무에 도움이 되기를 바랍니다. 질문에 대해 추가적으로 궁금한 점이 있으시다면, 망설이지 마시고 또 질문해 주세요.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





