noSQL DB or relational DB for log data
yongyuan
楼主 (北美华人网)
要做一个project, 需要存储user的每个页面操作,比如点击了什么link, 看了什么video,多长时间,目的是以后分析user log data,做图表。大家有没有这方面的经验可以分享。因为要存储用户的每个操作,所以会有很多write operations,有人建议用NoSQL, 因为structure of data may change, 有人建议postgreSQL,说可以存JSON data, can do complex queries,现在的concern是,如果这个软件的本身数据也存在postgreSQL, 需要pull data from the DB to show to the users, 同时还要大量地write to the log, will the performance suffer? 另外,以后可能要用AWS,看了它有NOSQL DB-- dynamoDB,这个存储user log,可以吗?看到他是key value-based. 那如果要做其他数据查询(比如,search based on non-key field和aggregate data,会不会有问题?if we store the application data in a relational DB, and the log data in dynamoDB, can we still query the DynamoDB, aggregate data, and generate reports, or do we need to pull the data out from the dynamoDB, and later store it in a relational DB for data analysis (e.g. we may need to join the log data with the actual application data to find some information that''s not available in the url--should we just store the extra information in the log so that we don''t have to join with the actual application data)?
In addition, which is better, MySQL or PostgreSQL for the relational DB?
完全没有经验,希望有经验的人能赐教一下。
In addition, which is better, MySQL or PostgreSQL for the relational DB?
完全没有经验,希望有经验的人能赐教一下。