首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >分布式数据库解决方案

分布式数据库解决方案
EN

Stack Overflow用户
提问于 2018-03-05 13:29:10
回答 2查看 626关注 0票数 0

我正在做一些关于分布式数据库的研究。我的结论是,最困难的部分是分布式查询,跨多个记录,其中查询是非常通用的,例如,想象一个带有"DateTransaction“字段的事务表。这个查询(伪SQL)将非常棘手:

代码语言:javascript
复制
SELECT * FROM Transactions 
WHERE DateTransaction>= '2016-01-01'  and DateTransaction<= '2017-09-01' --between jan 2016 and before sep 2017
ORDER BY DateTransaction DESC 
OFFSET 0
FETCH 100 -- take records between 0 and 99 inclusive

对于这样的查询,手动滚动一个相当有效的解决方案并不困难;其中数据被拆分到N个节点。使用较大的偏移量会有点困难,但无论如何都可以通过调整日期范围来完成分页。

但不管怎样-我想避免手卷任何东西!原子性不是必需的。有人知道从哪里开始吗?

EN

回答 2

Stack Overflow用户

发布于 2018-04-14 10:05:47

你需要的是NewSQL数据库。

如果您对pgSQL语法有偏好,或者您的业务逻辑现在正在使用PostgreSQL,您可以尝试CockroachDB。否则,我建议您选择TiDB。TiDB支持分布式事务和distributed join,完全兼容MySQL语法,有许多成功的用例。

免责声明:我在开发TiDB的PingCAP工作。

票数 0
EN

Stack Overflow用户

发布于 2019-02-09 06:20:57

一种想法是,如果您要按该范围进行查询,则对数据集进行分区,并将其限制在几个服务器上。您可能希望检查表分区在不同数据库中的工作方式,并计划相应地对数据进行分区。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49103984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档