배경: 기존 Firestore에 대량으로 누적되던 로그성 데이터로 인해 스토리지 비용 및 읽기/쓰기 비용 지속 증가
목적: 무제한 무료 적재가 가능한 Firebase Analytics Event 파라미터 방식으로 전환하여 인프라 비용 대폭 절감
⚠️ 구조적 제약 사항: Firebase Event는 단일 이벤트당 최대 25개의 파라미터만 실시간 전송이 가능합니다. 이에 따라 파라미터 개수가 25개를 초과하는 대용량 데이터군에 한하여 이벤트를 분할하여 설계합니다.
유저가 mylist를 수정할 때 저장되는 데이터는 총 파라미터 개수가 25개 이하로 제약 조건을 넘지 않습니다.
따라서 데이터가 분할되지 않으며, mylist_worker_data 단일 이벤트에 모든 파라미터가 유실 없이 함께 기록됩니다.
매일 1회 기록되던 대용량 로깅 데이터는 총 파라미터 개수가 25개를 초과하므로 아래와 같이 submit_worker_data_1과 submit_worker_data_2로 쪼개져 저장됩니다.
| 파라미터명 (Parameter) | 비고 |
|---|---|
| thank_image_count | - |
| thank_today_content | - |
| todo_today_content | - |
| action | - |
| ad_id | ★ 데이터 결합용 공통 식별자 |
| affirmation_today_content | - |
| api_level | - |
| app_package_suffix | - |
| categorys | - |
| date_submitted | ★ 데이터 결합용 날짜 식별자 |
| dismiss_affirmation_count | - |
| ui | - |
| unlock_word | - |
| user_os_version | - |
| yesterday_lock_count | - |
| dismiss_mylist_count | - |
| dismiss_quote_count | - |
| 파라미터명 (Parameter) | 비고 |
|---|---|
| ad_id | ★ 데이터 결합용 공통 식별자 |
| affirmation_image_count | - |
| app_package_suffix | - |
| category_view_type | - |
| date_submitted | ★ 데이터 결합용 날짜 식별자 |
| delivery_enable_list | - |
| favorite_quote_count | - |
| goal_image_count | - |
| goal_today_content | - |
| idea_image_count | - |
| idea_today_content | - |
| my_item_count_list | - |
| package_name | - |
| quote_image_count | - |
| show_off_app_time | - |
| today_lock_count | - |
| today_read_count | - |
| todo_image_count | - |
| total_read_count | - |
| version | - |
GPT와의 대화 및 상담 기록 데이터는 아래와 같이 ai_counsel_data_1과 ai_counsel_data_2로 쪼개져 저장됩니다.
| 파라미터명 (Parameter) | 비고 |
|---|---|
| ad_id | - |
| advice | - |
| affirmation1 | - |
| affirmation2 | - |
| affirmation3 | - |
| ai_question_id | - |
| android_id | ★ 데이터 결합용 공통 식별자 |
| character | - |
| date | ★ 데이터 결합용 날짜 식별자 |
| enable | - |
| is_personality_test | ★ 데이터 결합용 식별자 |
| package_name | - |
| question | - |
| question_item_count | - |
| quote1 | - |
| quote2 | - |
| quote3 | - |
| recommended_questions | - |
| relevant_question1 | - |
| relevant_question2 | - |
| relevant_question3 | - |
| user_content_id | ★ 데이터 결합용 공통 식별자 |
| user_display_language | - |
| version | - |
| 파라미터명 (Parameter) | 비고 |
|---|---|
| android_id | ★ 데이터 결합용 공통 식별자 |
| date | ★ 데이터 결합용 날짜 식별자 |
| install_date | - |
| is_personality_test | ★ 데이터 결합용 식별자 |
| user_content_id | ★ 데이터 결합용 공통 식별자 |
| rating | - |
| opinion | - |