Table of Contents
Aggregation statistischer Daten
Eine Aggregation-Engine sammelt Events und bereitet diese für den datapool
(Cache) auf um die Visualisierung von Systemzustand und Marketingpräsentationen zu ermöglichen.
Aggregation-Engine
git clone ssh://picalike@sg01.picalike.corpex-kunden.de/home/picalike/repositories/analytics/aggregation_engine.git
Request-Engine
Collections und Indizes
Server: mongodb01.dev.picalike.corpex-kunden.de
Datenbank: picalike4
Symbolischer Name: datapool
last_looks
Ist eine capped-Collection begrenzt auf max
Einträge
db.createCollection("last_looks", { capped : true, size : 5242880, max : 20 } )
Felder:
date: ISODate **UTC** feed_id: String look_id: String
last_products
Ist eine capped-Collection begrenzt auf max
Einträge
db.createCollection("last_looks", { capped : true, size : 5242880, max : 20 } )
Felder:
date: ISODate **UTC** feed_id: String product_id: String
req_look_fid_lid_min
Lookanfragen pro feed_id, look_id und Minute
Felder:
date: ISODate **UTC** feed_id: String look_id: String counter: Int
Indizes:
{ "date" : 1, "feed_id" : 1, "look_id" : 1 } expire after: { "date" : 1 }
req_look_fid_{sec, min, hour}
Lookanfragen pro feed_id und {sec, min, hour}
Felder:
date: ISODate **UTC** feed_id: String counter: Int
Indizes:
{ "date" : 1, "feed_id" : 1 } expire after: { "date" : 1 }
req_sim_fid_cat_{min, hour}
Ähnlichkeitsanfragen pro feed_id, Kategorie und {min, hour}
Felder:
date: ISODate **UTC** feed_id: String cat: String counter: Int
Indizes:
{ "date" : 1, "feed_id" : 1, "cat" : 1 } expire after: { "date" : 1 }
req_sim_fid_pid_{day}
Ähnlichkeitsanfragen pro feed_id, product_id und {day}
Cronjobs:
analytics/aggregation_engine/cronjobs/cleanup_req_sim_fid_pid.py
löscht alle Eintrage die älter als zwei Tag sind und weniger als CONFIG[“delete_smaller_than”]
Anfragen bekommen haben.
Felder:
date: ISODate **UTC** feed_id: String cat: String counter: Int
Indizes:
{ "date" : 1, "feed_id" : 1, "product_id" : 1 } { "counter" : 1 } expire after: { "date" : 1 }
req_sim_fid_{sec, min, hour}
Ähnlichkeitsanfragen pro feed_id und {sec, min, hour}
Felder:
date: ISODate **UTC** feed_id: String counter: Int
Indizes:
{ "date" : 1, "feed_id" : 1 } expire after: { "date" : 1 }