oisintheginger / mscfinalproject

Team: Nishant Kapur, Sean Lynch, Fenna Kadir, Stephen Anokye, Charlotte Martin, Oisin Fitzpatrick
3 stars 4 forks source link

Columns On Business Dataset #42

Closed StephenAnokye94 closed 1 year ago

StephenAnokye94 commented 1 year ago

Hello Team/Oisin, Kindly review the below columns available from the Google Places API. Which of the below columns should we leave out of our dataset?

business_status geometry icon icon_background_color icon_mask_base_uri name opening_hours photos place_id plus_code rating reference scope types user_ratings_total vicinity price_level URL

nickykapur commented 1 year ago

We can plan if we will be needing all columns, it is a great addition, as we can now plan if we are going to need them all for the database.

oisintheginger commented 1 year ago

The things we can cache (store) legally from the database are the place_id, longitude + latitude. We cannot directly store the types in our database as a key, however, we can store them in tables with corresponding names. For example, places with types 'restaurant' can be stored in a restaurants table within the cache database.

place_id can be cached indefinitely, those will end up being stored in our output property database so that later calls to the google api from the frontend can be made for further details.

Lat/Long coordinates can only be stored for a period of 30 days. As shown in the recommendation system diagram, the scoring component will work off of the cached data we get from this api, and the property data we get from the zillow api. We will then apply the scoring based on the number of different places under different categories (types) within a specified distance from a property based of the lat/long coordinate values of the property and the places.

Once the 30 days has completed, we need to flush the google api data from the cache database. RecommendationSystem Diagram

Of the keys above, only the place_id can legally be stored in our database permanently.

However, we could still make use of the other fields from the frontend perspective, as we can make requests for those datapoints about a place when a user clicks on a'view more details' element on the property details page. This will not be part of MVP, but can be future work, or maybe we can implement it if we have time.

StephenAnokye94 commented 1 year ago

Hello Oisin, I had a discussion with Sean about searching for businesses(for example restaurants) by neighborhood as a workaround to Google's search result limitation, and so I wanted to add a column to show the neighborhood that has which restaurants. How do you recommend we deal with this? @oisintheginger @SeanLynch1