首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >分布式数据库在单个物理机器上的性能?

分布式数据库在单个物理机器上的性能?
EN

Stack Overflow用户
提问于 2021-01-31 10:37:13
回答 2查看 57关注 0票数 0

目前,我正在处理时间序列数据(滴答机),并以.h5.parquet格式存储熊猫的数据。我的工作负载基本上是查询数据的列&编写新的数据列。

当文件增加和分散时,它开始失去控制,所以我正在考虑使用数据库。我看到了一些NoSQL数据库,比如Cassandra和HBase。

这些数据库通常强调它们是distributedelastic数据库。,但我只有一台物理机器(3990x64核心线程机)

所以我的问题基本上有两部分:

  1. ,如果我在单个节点上运行这些distributed数据库,性能如何?在我的工作负载方面,它们还会比mySQL这样的传统数据库更好吗?

  1. 我可以使用虚拟化来构建集群吗?比如说,使用ESXI来虚拟化多个节点?它们的性能会优于单个节点的设置吗?
EN

回答 2

Stack Overflow用户

发布于 2021-02-01 01:33:08

不是的。

当没有必要时,您将花费大量的时间和精力试图找出如何使用“分布式”。

从数据库开始

代码语言:javascript
复制
CREATE TABLE stocks (
    ticker_id MEDIUMINT UNSIGNED NOT NULL,
    date DATE NOT NULL,
    open, close, volume, etc
    PRIMARY KEY(ticker_id, date),
    INDEX(date)
) ENGINE=InnoDB;

CREATE TABLE tickers (
    ticker_id MEDIUMINT UNSIGNED AUTO_INCREMENT NOT NULL,
    ticker VARCHAR(33) CHARACTER SET ascii NOT NULL,
    PRIMARY KEY(ticker_id),
    INDEX(ticker)
) ENGINE=InnoDB;

这对于单个服务器上的10亿行来说已经足够了,即使只有很少的核心。

在您有几百万行之后,请返回SELECTs。我们可以讨论下一个步骤,以使它运作良好。

票数 1
EN

Stack Overflow用户

发布于 2022-01-28 06:02:12

您应该了解使用分布式/弹性DB系统与(不太容易分布的) DB系统(如MySQL )的好处。从横向可伸缩性的角度来看,分布式系统是很好的;由于您需要存储越来越多的数据,您可以(经常)无缝地添加新节点并对数据进行分区。不同的数据库使用不同的策略,比如Cassandra在节点间使用一致的散列,而Couchbase则在节点间使用虚拟桶的概念。

如果您有使用单个机器的限制,则会抛出水平可伸缩性。通过虚拟化,您可以在沙箱中运行多个DB。虽然这些虚拟机可能看起来是独立的,但您的系统资源正被所有人使用。你的实际储藏室将保持不变。

有了这一点,我将向您提供一些面向列的DB建议,并避免使用NoSQL数据库(除非您专门寻找无模式支持,很少需要连接)。

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

https://stackoverflow.com/questions/65978102

复制
相关文章

相似问题

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