# Playback Summary
| Column Name | Data Type | Description | 
|---|---|---|
| playback_id | String | pk ของ playback summary | 
| project_id | String | id ของ project (ลูกค้า) | 
| client_id | String | client id ของ user (ระบุ client) | 
| user_id | String | user id ของ user (ระบุตัวตน) | 
| client_timestamp | DateTime64(3) | time stamp ล่าสุดที่ client ส่งมา | 
| start | DateTime64(3) | เวลาที่ pb เริ่มเก็บ events | 
| end | DateTime64(3) | เวลาที่ pb หยุดเก็บ events | 
| duration_ms | Int64 | ความยาวของ pb | 
| total_events | Int16 | จำนวน event ทั้งหมด | 
| avg_buffer_health | Float64 | ค่าเฉลี่ย Buffer Health (โหลดล่วงหน้าไปเท่าไหร่) | 
| sum_buffer_duration | Int32 | ระยะเวลาที่เกิด buffer ทั้งหมด | 
| max_buffer_duration | Int32 | ระยะเวลาที่เกิด buffer ที่นานที่สุด | 
| avg_response_time | Int32 | ระยะเวลาเฉลี่ยนที่ player ใช้โหลด ts | 
| max_response_time | Int32 | ระยะเวลามากที่สุดที่ player ใช้โหลด ts | 
| avg_playback_rate | Float32 | ความเร็วในการเล่นเฉลี่ย | 
| last_playhead_position | Float64 | ตำแหน่งสุดท้ายบนวิดีโอที่ผู้ใช้รับชม | 
| avg_upscale_percentage | Float64 | ค่าเฉลี่ยการถูก Upscale (ถูกยืด) ของ Video ใน playback | 
| max_upscale_percentage | Float64 | ค่า Upscale (ถูกยืด) สูงสุดของ Video ใน playback | 
| request_ip | String | ip ที่ cdn เห็น | 
| client_ip | String | ip ของ client ที่ client เห็น (อาจจะเป็น ip วงใน) | 
| country_code | String | code ประเทศของผู้รับชม | 
| as_number | String | routing domain | 
| kcdn_server | String | cdn server หลักที่ถูกใช้ในรับชมมากสุด | 
| url | String | url ของ video | 
| media_type | String | ประเภทของ video | 
| media_duration | Int32 | ความยาวของ video | 
| media_referer | String | video นี้ถูกเล่นบน site (link อ้างอิง) | 
| ua_family | String | user agent family chrome safari mozila ... | 
| ua_version | String | เวอร์ชั่นละเอียดของ user agent | 
| ua_version_major | String | เวอร์ชั่นหลักของ user agent | 
| os_family | String | ชื่อ os | 
| os_version | String | เวอร์ชั่นละเอียดของ os | 
| os_version_major | String | เวอร์ชั่นหลักของ os | 
| device_family | String | ชื่อตระกูลอุปกรณ์ | 
| device_brand | String | ชื่อยี่ห้อ | 
| device_model | String | ชื่อรุ่น | 
| player_name | String | ชื่อของ player ที่ใช้รับชม | 
| player_version | String | version ของ player | 
| kcdn_group | String | cdn group หลักที่ถูกใช้ในรับชมมากสุด | 
| isp_name | String | ISP ที่ User ใช้ในการรับชม Playback | 
| qoe_pbs | Float64 | คะแนน playback success (ระดับคะแนนการรับชมสำเร็จ) | 
| qoe_rebuf | Float64 | คะแนน smoothness (ระดับคะแนนการรับไหลลื่น) | 
| qoe_rebuf_percent | Float32 | Percent ของระยะเวลาของ Playback ที่ถูกใช้ไปกับการ Buffer (Load) | 
| qoe_rebuf_ratio | UInt16 | จำนวนเวลาที่ใช้ buffer ต่อ watch duration ทั้งหมด | 
| qoe_startup | Float64 | คะแนน start-up (ระดับความเร็วในการเริ่มเล่นวิดีโอ) | 
| qoe_quality | Float64 | คะแนน quality ของวิดีโอ (วัดความคมชัดของวิดีโอ) | 
| latest_cdn_server | String | cdn server ล่าสุดที่ network วิ่งผ่าน | 
| latest_cdn_group | String | cdn group ล่าสุดที่ network วิ่งผ่าน | 
| latest_event | String | event ล่าสุดที่เกิดขึ้นของ playback | 
| most_occ_event | String | event ที่เกิดขึ้นมากที่สุดของ playback | 
| most_occ_playback_rate | Float32 | playback rate ที่ถูกใช้มากที่สุดใน playback | 
| most_occ_resolution | String | resolution ที่ถูกใช้มากที่สุดใน playback | 
| first_error_code | String | error code แรกที่ player เจอ | 
| first_error_message | String | error message แรกที่ player เจอ | 
| playback_status | String | status ของ playback (playback failed, success, start up failed, invalid playback, EBVS (Exit before video start)) | 
| hour_of_day | UInt8 | ชั่วโมงของวัน | 
| day_of_week | UInt8 | วันของสัปดาห์ | 
| media_domain | String | domain ของ url ที่เล่น | 
| referer_domain | String | domain ของ referer (หน้าเว็ป) | 
| total_buffer_healthcheck | UInt16 | จำนวนครั้งที่เช็ค buffer | 
| total_play | UInt16 | จำนวนครั้งของ event playback_play ทั้งหมด | 
| total_pause | UInt16 | จำำนวนครั้งที่หยุดเล่น | 
| total_seeking_start | UInt16 | จำนวนครั้ั้งที่เริ่ม seek | 
| total_seeking_stop | UInt16 | จำนวนครั้ั้งที่หยุด seek | 
| total_buffering_start | UInt16 | จำนวนครั้งที่ี่เริ่มโหลดวิดีโอ (buffer) | 
| total_buffering_stop | UInt16 | จำนวนครั้งที่ี่หยุดโหลดวิดีโอ (buffer) | 
| total_ad_request | UInt16 | จำนวน request ads | 
| total_ready | UInt16 | จำนวน event ready ทั้งหมดใน playback (01) (ready event คือ player init เสร็จ พร้อมจะเล่น video) | 
| total_ad_impression | UInt16 | จำนวน impression ของ ads ตน. ที่นับว่า impression | 
| total_first_play_start | UInt16 | จำนวน event first play (01) | 
| total_ad_error | UInt16 | จำนวน error จากการเล่น ads | 
| total_ad_complete | UInt16 | จำนวน event ad_complete ที่เกิดขึ้นใน playback (ad_complete จะถูกส่งเมื่อ Ad หนึ่งตัวเล่นจบ) | 
| total_exit | UInt16 | จำนวน event exit (01) | 
| total_end | UInt16 | จำนวน event end (01) เล่น video จบแล้วจะส่ง 1 ครั้ง | 
| total_media_segment_downloaded | UInt16 | ts | 
| total_ad_skipped | UInt16 | จำนวนครั้งที่ ads ถูก skip | 
| total_stuck | UInt16 | จำนวน event stuck โหลดแล้วติด | 
| total_rate_change | UInt16 | จำนวนครั้ั้งที่เปลี่ยนความเร็วในการเล่น | 
| total_ad_click | UInt16 | จำนวนครั้งที่ี่กดคลิกบน ads | 
| total_error | UInt16 | จำนวน error event ทั้งหมด | 
| total_ad_block | UInt16 | จำนวนที่ถูก ads block | 
| r_144p | UInt16 | จำนวนของ resolution ที่ 144p มาจาก l_playback_resolution | 
| r_240p | UInt16 | จำนวนของ resolution ที่ 240p มาจาก l_playback_resolution | 
| r_360p | UInt16 | จำนวนของ resolution ที่ 360p มาจาก l_playback_resolution | 
| r_480p | UInt16 | จำนวนของ resolution ที่ 480p มาจาก l_playback_resolution | 
| r_576p | UInt16 | จำนวนของ resolution ที่ 576p มาจาก l_playback_resolution | 
| r_720p | UInt16 | จำนวนของ resolution ที่ 720p มาจาก l_playback_resolution | 
| r_1080p | UInt16 | จำนวนของ resolution ที่ 1080p มาจาก l_playback_resolution | 
| r_1440p | UInt16 | จำนวนของ resolution ที่ 1440p มาจาก l_playback_resolution | 
| r_2160p | UInt16 | จำนวนของ resolution ที่ 2160p มาจาก l_playback_resolution | 
| bw_p05 | Float32 | bandwidth percentile 5 อาจไว้เช็ค quality internet ของ user | 
| bw_p10 | Float32 | bandwidth percentile 10 อาจไว้เช็ค quality internet ของ user | 
| bw_p50 | Float32 | bandwidth percentile 50 อาจไว้เช็ค quality internet ของ user | 
| bw_p90 | Float32 | bandwidth percentile 90 อาจไว้เช็ค quality internet ของ user | 
| bw_p95 | Float32 | bandwidth percentile 95 อาจไว้เช็ค quality internet ของ user | 
| l_client_timestamp | Array(DateTime64(3)) | timestamp ของ event ที่ส่งมาจาก client | 
| l_type | Array(String) | ลิสของ event | 
| l_cdn_server | Array(String) | list ของ cdn server ที่ถูกเรียกใช้ | 
| l_playhead_position | Array(Float32) | list ของ position บน video (1 position=1 second) | 
| l_playback_resolution | Array(String) | list ของ resolution | 
| l_playback_rate | Array(Float32) | list ของ playback_rate | 
| l_error_code | Array(String) | list ของ error_code | 
| l_error_message | Array(String) | list ของ error_message | 
| l_seek | Array(Float32) | list ของ seek | 
| l_pause | Array(Float32) | list ของ pause | 
| l_packed | Array(Tuple(DateTime64(3), Float32, String, Float32, String)) | list ของ events ทั้งหมด (l_client_timestamp_64, l_playhead_position, l_type, l_playback_rate, l_playback_resolution) | 
| video_id | String | video id | 
| retention_position_count | Array(UInt32) | จำนวน view แต่ละ position ของ video | 
| playing_time | UInt32 | เวลาที่ผู้ใช้รับชมวิดีโอ (ไม่นับเวลาการ Pause หรือ Buffer Video) | 
| eventTime | UInt64 | event time ล่าสุดที่อัพเดตจาก data pipeline | 
