BigQuery まとめ
これは何?
BigQuery に関する情報を集約するドキュメントです。
データソース
To BigQuery
- MongoDB
- Quden のコアデータベース
- クリップやワークスペース、ユーザーの情報が格納されている
- Amplitude
- ユーザーアクションアナリティクス
- Stripe
- 決済関連データ
From BigQuery
- Looker
- GCP から提供されたクレジットを利用して試験的に利用中(2023年5月17日現在)
TIP
データフローについては Quden データフロー を参照してください
各種データソース詳細
MongoDB
Workspace: ワークスペース
plain
Workspace
- 更新: 2023年5月17日
--------------
- name: string ワークスペース名
- createdBy: User ユーザーオブジェクト
- shareTargetParent: ShareTargetParent
- webhookUrlMap: { slack: string } Workspace 設定内の webhook 情報
- notificationSettingMap: { slack: { recordCompleted: boolean } } 通知関連設定
- deletedAt: Date ワークスペース削除日時User: ユーザー
plain
User
- 更新: 2023年5月17日
--------------
- email: string ユーザーメールアドレス
- emailToUpdate: string ユーザーメールアドレス更新時に利用する一時フィールド
- name: string ユーザー名
- googleUniqueId: string Google ログインで利用するフィールド
- profileImageUrl: string プロフィール画像 URL
- isEmailVerified: boolean メールアドレス検証済みフラグ
- isTmpCreated: boolean 一時フィールド
- shareTargetParent: ShareTargetParent
- favoritedItems: Item[] お気に入りに追加したアイテムリスト
- mailNotificationSettingMap: object メール通知設定
- recordCount: number クリップ作成数カウント
- zoomConfig: ZoomConfigMap zoom 連携関連設定
- preferredLanguage: UserLanguage 優先言語
- jobKind: string 職種Item: クリップ
plain
Item
- クリップデータ
- 更新: 2023年5月17日
------------------------
- createdBy: User 作成者ユーザー
- owner: User オーナーユーザー(現時点では作成者ユーザーと同義です)
- type: "VIDEO" | "STEP_GUIDE" アイテムのタイプ
- title: string クリップのタイトル
- durationSec: number クリップの長さ
- description: string 概要欄テキスト
- chapters: ChapterItem[] チャプター情報
- tags: ItemTag[] タグ情報
- reactions: ItemReactions[] リアクション情報
- parentItem: Item 親アイテム(現在未使用)
- objectKey: string データパス
- thumbnailObjectKey: string サムネイルデータパス
- gifThumbnailObjectKey: string GIFサムネイルデータパス
- mp4ObjectKey: string MP4 ファイルデータパス
- channelType: "MY" | "TEAM" (現在未使用)
- uploadType: "QUDEN" | "SELF" | "ZOOM" アップロード元情報。
- QUDEN = 拡張機能経由, SELF = MP4 アップロード経由, ZOOM = ZOOM 連携経由
- workspace: Workspace アイテムが保存されているワークスペースオブジェクト
- isPublic: boolean 公開フラグ
- permissions: ItemPermission[] アイテムにアクセスできる対象を管理するデータモデル
- viewCount: number 視聴回数
- password: string (hashed) クリップパスワード
- deletedAt: Date ゴミ箱追加日時
- deletedCompletelyAt: Date 完全削除日時
- dueAt: Date 視聴期限日時
- isDueAllDay: boolean 視聴期限が終日かどうかフラグ
- viewStatus: ViewStatus[] 視聴ステータス情報
- detailConfigMap: object その他詳細設定情報
- trimJob: Job トリムジョブ情報
- stepGuideEditJob: Job ステップガイド編集ジョブ情報
- originalDetail: OriginalDetail 元データ情報
- downloadableStatus: DownloadableStatus ダウンロード可否ステータス
- isFormatedFullMp4Ready: boolean フォーマット化済みMP4が利用可能か示すフラグ
- gifThumbnailStatus: GifThumbnailStatus GIF サムネイル作成ステータス
- steps: StepItem[] ステップガイドの各ステップ情報
- drawnSteps: StepItem[] 描画済みステップ情報
- stepGuideStatus: StepGuideStatus ステップガイド作成ステータス
- captions: ItemCaption 文字起こし情報Amplitude
BigQuery への export は Amplitude が公式に適用する機能を利用しています。
計測されているデータに関しては Quden Tracking Plan にまとめられています。
WARNING
一部イベントデータの更新が間に合っていないことご容赦ください。こういうイベントないの?という質問はエンジニア各位にお願いします!
スキーマについては Amplitude のドキュメントを参照してください。
Stripe
Stripe データは Segment を利用して BigQuery に export しています。具体的には、Segment の data source として Stripe を選択し、destination として BigQuery を指定しています。
Stripe に格納されているデータについて、概要を説明します。
Stripe の customer (顧客) 情報には Quden の下記データが紐付いています。
- 顧客名: Workspace ID
- 請求書メールアドレス: 有料プラン契約時に入力されたメールアドレス
- メタデータ
- creatorUserId: 契約を実施したユーザーの User ID
- workspaceId: 契約対象ワークスペースの Workspace ID
スキーマ詳細については Segment のドキュメントを参照してください。