Sto lavorando su un'applicazione web che funziona con diversi tipi di oggetti come utente, profili, pagine ecc. Tutti gli oggetti hanno un object_id
unico.
Quando gli oggetti interagiscono, può produrre "attività", come la pubblicazione dell'utente sulla pagina o sul profilo. L'attività può essere correlata a più oggetti tramite il loro object_id
.
Gli utenti possono anche seguire "oggetti" e devono essere in grado di vedere il flusso di attività pertinenti.
Potresti fornirmi alcuni suggerimenti sulla struttura dei dati che sarebbero efficienti e scalabili? Il mio obiettivo è mostrare attività limitate agli oggetti che l'utente sta seguendo Non sono limitato dai database relazionali.
Aggiornamento
Dato che sto ricevendo consigli su ORM e su come indicizzare le cose, mi piacerebbe di nuovo, sottolinea la mia domanda. Secondo il mio attuale modello di progettazione, la struttura del database si presenta così:
Comepuoivedere-èabbastanzafacileimplementareundatabasecomequello.LetabelleActivityeFollowercontengonounaquantitàdirecordmoltomaggiorerispettoallivellosuperioremaètollerabile.
Maquandositrattadicreareunatabella"cronologia", diventa un incubo. Per ogni utente ho bisogno di fare riferimento a tutte le attività oggetto che segue. In termini di record, diventa facilmente fuori controllo.
Per favore suggeriscimi come modificare questa struttura per evitare la creazione di timeline e anche essere in grado di recuperare rapidamente attività per qualsiasi utente. Grazie.