关于操作数据存储的高读写数据库选择的建议

时间:2018-06-20 06:57:16

标签: database sharding datastore

在为设计选择正确的数据库和体系结构方面需要一些建议。 特别是对于:-

  • 我可以用于数据库触发的任何其他技术吗?有人说,这可能会由于流量过大而导致性能问题。
  • 就此要求而言,哪个数据库好? NoSQL vs SQL?我的组织技能更多地是关于Oracle,DB2和SQL Server。

当前,我正在一个项目中,在该项目中使用多个系统的源(数据),并使数据可供前端查询。

顺序如下:-

  1. ODS DB的源-实时消耗来自不同系统的源。

    • 最多16个不同的系统。
    • 每天插入最多可记录1000万条记录。
    • 每日更新最多可以达到1200万次
  2. ODS DB-原始数据将存储在登台表中。

  3. ODS DB-DB触发器将记录插入相应的目标表结构中。
  4. 数据将可用于前端(1)Direct Access JDBC或(2)ODS的API。
    • 每日阅读量最多可以达到2000万

注意:-

  • 存储一年以上的记录,数据库大小为 超过4 TB。
  • 目标表将存储来自多个系统的组合记录以便以后快速访问。由于通道应用程序希望具有来自多个系统的记录的组视图。当我将数据分组到一个表中时,表大小查询期间将非常庞大。如果不将其分组在一起,那么在查询过程中将连接多个表,这将导致响应变慢。

  • 读取2000万,写入1000万,更新1200万

  • 数据将采用结构格式。
  

草稿设计

     
      
  • 一台用于写访问权限的数据库服务器。
  •   
  • 数据库触发器将用于捕获插入并将其插入到目标表中,该目标表将位于另一台数据库服务器上,仅供读取访问。
  •   
  • 按月分区。例如,每个分区3个月。
  •   
  • 应该灵活-用于分片的横向扩展(水平缩放)。
  •   
  • 内存中热数据
  •   

0 个答案:

没有答案