Mysql
 sql >> база данни >  >> RDS >> Mysql

База данни - Проектиране на таблица със събития

Горещо препоръчвам този подход. Тъй като вероятно използвате една и съща база данни за OLTP и OLAP, можете да спечелите значителни ползи за производителността, като добавите звезди и снежинки.

Имам приложение за социални мрежи, което в момента е на 65 маси. Поддържам една таблица за проследяване на изгледи на обекти (блог/публикация, форум/нишка, галерия/албум/изображение и т.н.), друга за препоръчване на обект и трета таблица за обобщаване на дейността по вмъкване/актуализация в дузина други таблици.

Едно нещо, което правя малко по-различно, е да поддържам таблица entity_type и да използвам нейния идентификатор в колоната object_type (във вашия случай колоната „TABLE“). Бихте искали да направите същото с таблица тип_събитие.

Изясняване за Аликс - Да, поддържате референтна таблица за обекти и референтна таблица за събития (това ще бъдат вашите таблици с измерения). Вашата таблица с факти ще има следните полета:

id
object_id
event_id
event_time
ip_address


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. EXISTS по-ефективен ли е от COUNT(*)>0?

  2. Съхранената процедура в MYSQL за променливи за актуализиране е 0

  3. Как да трансформирате вертикални данни в хоризонтални данни с SQL?

  4. Задействане за безшумно игнориране/изтриване на дублиращи се записи при INSERT

  5. Получаване на последния запис за всеки месец в MySQL....?