17、BigQuery存储系统:原理、优化与应用

BigQuery存储系统:原理、优化与应用

1. 高效存储:BigQuery成功的秘诀

高效存储是任何数据库管理系统成功的关键因素之一。BigQuery的许多快速特性都源于其独特的数据存储方式。从底层的存储硬件(使用大规模分布式文件系统)到文件格式(自定义列存储),BigQuery的存储栈(包括元数据和存储数据)都针对分析速度进行了优化。

1.1 存储数据

BigQuery存储着艾字节级别的数据,这些数据分布在数十个区域的数百万个物理磁盘上。底层存储系统的主要目标是确保这些分布式数据能够被快速访问,并保证任意两个表可以相互连接,这意味着它们需要存储在同一位置。

当你将数据加载到BigQuery时,数据会被写入Capacitor文件并存储在Colossus上。Colossus使用纠删码对数据进行编码,即使大量磁盘出现故障或损坏,数据仍然能够保持持久。将数据写入单个Colossus集群就足以保证数据的高持久性。为了确保数据既持久又可用,数据会被复制到同一区域内的另一个可用区。如果使用多区域的BigQuery位置(如美国或欧盟),数据还会在区域外的副本中存储一份,以便在发生重大灾难时能够恢复数据。

1.2 物理存储:Colossus

BigQuery将所有数据存储在Colossus上,这是Google广泛使用的分布式存储系统。Colossus是Google文件系统(GFS)的演进版本,通过创建更灵活的元数据系统和消除单点故障,解决了GFS中的可扩展性、灵活性和可靠性问题。

Colossus通过大量服务器中的大量磁盘组合形成文件系统。为了避免数据丢失,采用了编码的方式,主要有复制编码和纠删码两种: <

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值