1use parquet_derive::ParquetRecordWriter;
3use serde::{Deserialize, Serialize};
4
5#[derive(Serialize, Deserialize)]
7pub struct SourceRating {
8 pub user: String,
9 pub asin: String,
10 pub rating: f32,
11 pub timestamp: i64,
12}
13
14#[derive(Serialize, Deserialize)]
16pub struct SourceReview {
17 #[serde(rename = "reviewerID")]
18 pub user: String,
19 pub asin: String,
20 #[serde(rename = "overall")]
21 pub rating: f32,
22 #[serde(rename = "unixReviewTime")]
23 pub timestamp: i64,
24 pub summary: Option<String>,
25 #[serde(rename = "reviewText")]
26 pub text: Option<String>,
27 pub verified: bool,
28}
29
30#[derive(ParquetRecordWriter, Serialize, Deserialize)]
34pub struct RatingRow {
35 pub user_id: i32,
36 pub asin: String,
37 pub rating: f32,
38 pub timestamp: i64,
39}
40
41#[derive(ParquetRecordWriter, Serialize, Deserialize)]
45pub struct ReviewRow {
46 pub user_id: i32,
47 pub asin: String,
48 pub rating: f32,
49 pub timestamp: i64,
50 pub summary: String,
51 pub text: String,
52}