以低成本方式托管大型表,同时保持性能可扩展?

     2023-04-18     83

关键词:

【中文标题】以低成本方式托管大型表,同时保持性能可扩展?【英文标题】:Low cost way to host a large table yet keep the performance scalable? 【发布时间】:2012-11-29 21:14:30 【问题描述】:

我有一个存储时间序列数据的不断增长的表,现在有 5 亿条条目,每天有 20 万条新记录。目前总大小约为 15GB。

我的客户主要通过 PHP 脚本查询表,结果集的大小约为 10K 记录(不是很大)。

select * from T where timestamp > X and timestamp < Y and additionFilters

而且我希望这个手术便宜。

目前,我的表在 Postgres 7 中托管,在单个 16G 内存盒上,我很想看到一些好的建议让我以低成本托管它,并允许我在需要时扩展性能。 餐桌服务: 1. 查询:90% 2. 插入:9.9% 2. 更新:0.1%

【问题讨论】:

你可以写一本关于这个主题的书,但它并不能回答所有的问题。您没有告诉我们有关基础架构的信息(集群?什么计算机?缓存策略?内存缓存?h 缩放?v 缩放?等等...... 我知道这听起来很笼统,因为目前的解决方案很简单,我愿意接受建议。 “Postgres 7”?就像在 PostgreSQL 版本 7.x 中一样? 7.x系列是7-12岁!无论如何,这是按日期划分范围的经典用例postgresql.org/docs/8.3/static/ddl-partitioning.html 如果你真的在使用 PostgreSQL 7.something,你真的需要升级。真的。 向我们展示执行计划,以及您在表上定义的索引。哦,升级现在。 PostgreSQL 7 已经完全过时了。即使在第 7 版上进行了最佳调整,9.2 也将比您所能达到的任何速度都快很多 【参考方案1】:

PostgreSQL 9.2 支持分区和部分索引。如果有几个热分区,并且您可以将这些分区或其索引放在固态磁盘上,您应该能够围绕当前配置运行环。

可能有也可能没有低成本、可扩展的选项。这取决于低成本可扩展对您意味着什么。

【讨论】:

sfsobs(代码片段)

....0版本,Windows客户端可轻松访问共享空间。操作简单、低成本操作界面简单易用,您可轻松快捷地创建和管理文件系统。SFS为用户提供一个完全托管的共享文件存储,能够弹性伸缩至PB规模,具备高可用性和持久性,为海量数据... 查看详情

公共云存储服务的可扩展性和性能

...储服务供应商可帮助企业用户免于承担物理硬件及其相关成本的负担,其中包括能源、冷却以及服务器维护等。很多企业都在使用公共云、私有云以及混合云这样的一个组合,但是其中的公共云存储服务是尤其吸引人的。它的成... 查看详情

《大型网站技术架构》--第七章:网站的可扩展架构

...和代码进行修改。伸缩性:指系统能够增加、减少资源的方式来增加(减少)自身的计算处理事物的能力,在网站中经常指利用集群方式增加服务器数量,提高系统整体 查看详情

大型、可扩展和可维护的 Web 应用程序中的 ORM 或 SQL?

】大型、可扩展和可维护的Web应用程序中的ORM或SQL?【英文标题】:ORMorSQLinlarge,scalableandMAINTAINABLEwebapplication?【发布时间】:2010-04-1412:23:50【问题描述】:我知道网上已经有很多关于这个话题的帖子了。但是,许多人在谈论它时... 查看详情

云服务入门简介

...所有Azure服务,同时可使用特定于服务的API和模板通过编程方式管理服务.在Azure中托管应用程序,可随用户需求的增长扩展应用程序;可提供高可靠性,包括故障在不同区域的转移.应用程序需要用到的服务Azure托管应用程序Azure托管应... 查看详情

java面向对象

...终拼装运行 面向过程编程方式代码冗余较多,维护和扩展成本高,不易开发大型程序 面向对象编程:在中大型项目中,面向对象编程思维方式,能较大的改善代码冗余,提高程序的可维护性和可扩展性 面向对象的好处: 1.1)减少代码冗余... 查看详情

利用knockout来实现可重复利用的组件component

在一个大型项目或者在一个公司的不同的web项目,一个可重复利用的同时能提供丰富互动的web组件的重要性不言而喻。一个良好设计的Web组件,不但能够减少开发时间,同时可以保持最大的扩展性和维护性。这样开发人员能够尽... 查看详情

寻找子集组合以实现给定总和同时保持成本最小的算法

】寻找子集组合以实现给定总和同时保持成本最小的算法【英文标题】:Algorithmforfindingsubsetcombinationforachievingagivensum,whilekeepingthecostminimum【发布时间】:2016-10-2115:36:46【问题描述】:我有一个问题,我有一个具有以下结构的元素... 查看详情

将大型 csv 加载到数据框中,同时保持列结构

】将大型csv加载到数据框中,同时保持列结构【英文标题】:Loadlargecsv\'sintodataframewhilemaintainingcolumnstructure【发布时间】:2018-12-1422:37:09【问题描述】:我正在尝试将一个包含大文件(总共3500万行)的文件夹加载到R中,并将其... 查看详情

大型网站技术架构-入门梳理

罗列了大型网站架构涉及到的概念,附上了简单说明前言本文是对《大型网站架构设计》(李智慧著)一书的梳理,类似文字版的“思维导图”全文主要围绕“性能,可用性,伸缩性,扩展性,安全”这五个要素性能,可用性,伸... 查看详情

系统架构过程中常用到的术语

...寻求平衡点使我们的应用系统性能达到最佳状态。扩展的方式可以分为纵向扩展和横向扩展两种。n 纵向扩展(垂直扩展):为单台机器增加CPU或者提高单台机器CPU性能。n 横向扩展(水平扩展):增加服... 查看详情

什么是负载均衡

...高性能服务器替换现有低性能服务器。该方案的弊端:高成本:高性能服务器价格昂贵,需要高额成本投入,而原有低性能服务器被闲置,造成资源浪费。可扩展性差:每一次业务量的提升,都将导致再一次硬件升级的高额成本... 查看详情

数据的存储方法都有哪些

...这样的集群大小,并且系统的整体性能可以线性增长。低成本:分布式存储系统的自动容错和自动负载平衡允许在低成本服务器上构建分布式存储系统。此外,线性可扩展性还能够增加和降低服务器的成本,并实现分布式存储系... 查看详情

maxcompute表(table)设计规范

...议表的限制项表(Table)设计规范表设计主要目标降低存储成本。合适的表设计可以在数据分层设计上降低冗余存储,减少中间表数据量大小。同时正确的对表数据进行生命周期管理,更能够直接降低存储的数据量以降低存储成本... 查看详情

mcu系统中iotram的潜在应用

...刷新控制器的需求,这降低了接口的复杂性和相关的验证成本,利用了外部SPI接口的使用,同时保持了最新IoT应用程序所要求的高性能水平,并降低整个系统的功耗。有些基于MCU的旧系统仍在使用SDRAM,在降低功耗和简化接口方... 查看详情

大型网站系统架构的演化

前言   一个成熟的大型网站(如淘宝、京东等)的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性,它总是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式、技术架... 查看详情

哪个 iOS 音频 API 设计用于以低延迟从磁盘流式传输大型本地音频文件?

】哪个iOS音频API设计用于以低延迟从磁盘流式传输大型本地音频文件?【英文标题】:WhichiOSaudioAPIisdesignedforstreaminglargelocalaudiofilesfromdiskwithlowlatency?【发布时间】:2012-11-1523:26:01【问题描述】:我需要从磁盘播放非常大的音频文... 查看详情

云服务入门简介

...所有Azure服务,同时可使用特定于服务的API和模板通过编程方式管理服务.在Azure中托管应用程序,可随用户需求的增长扩展应用程序;可提供高可靠性,包括故障在不同区域的转移.应用程序需要用到的服务Azure托管应用程序Azure托管应... 查看详情