开始没设计好,我订单分为4个千万级数据表关联(oracle),当一个客户进来后,我要列出他所有的订单,这样4个大表关联,贼贼慢,我就在想前些年不是一直在喊大数据吗,大数据怎么来解决这个问题呢。实时性很高,速度也要求很快
解决方案 »
- 用RedHat的packstack快速安装OpenStack环境
- 百度BAE新建工程的hello world跑不起来
- spark 1.4.0 从impala加载数据
- spark分析日志 用scala写 该怎么入手啊?
- Spark机器学习库之数据类型——scala版本
- spark环境搭好,spark-shell可以用,spark-submit提交例子程序报错
- 【求助】一个有关docker swarm集群的问题
- Docker安装后运行出错误提示
- sqoop 1.4.6 从mysql导数据到hive时java.sql.SQLException: Access denied for user 'root问题
- 用spark提供的java API写的程序怎么远程提交到集群上运行。
- 想进入财富2000强?至少你要有它来帮忙
- [求助]zookeeper服务在服务器重启后无法二次成功启动
查询如果比较单一的话,可以直接设计好hbase的表的rowkey,查询起来比ES快。
只有符合现阶段需求和拓展预期的最佳实践。
建议从分布式的几大原则入手学习。例如CAP理论,分布式一致性算法(Raft等),BASE理论。
多学习现有的分布式数据库(NoSQL的HBase,Mongo,OLTP的RDB集群,HTAP的如TiDB),以及数据的分治算法,MapReduce思想,一致性哈希等等。
2. 如果可以区分开,对于动态变化的订单 可以采用oracle 查询。对于 历史不变的订单 可以建立宽表,spark streaming 实时计算获得结果,存储到hbase,供前端查询。