oracle 12.2 sharding


Oracle 12.2 Sharding是一种数据库分片技术,可以将数据分为多个片段放置在不同的数据库上,以提高可扩展性和性能。在这种架构下,每个分片都有自己的数据库实例和存储设备,具有独立的故障恢复、备份和恢复功能。

例如,一个公司拥有亿级别的用户数据,如果将其全部放在一个数据库中,那么数据库访问将会非常慢,同时也难以维护。而通过Oracle 12.2 Sharding技术,可以将这些数据划分为多个分片,每个分片只包含一部分数据,该公司就可以使用多个数据库实例来处理这些分片,从而提高性能。

Oracle 12.2 Sharding技术提供了两种分片方式:水平分片和垂直分片。水平分片是将表中的数据按块划分为多个分片,每个分片包含一定范围的行。垂直分片是将同一表中不同的列划分到不同的分片中存储。这两种方式可以组合使用,以满足不同数据库场景的需求。

-- 创建水平分片表CREATE TABLE orders (order_id   NUMBER(12) NOT NULL,order_date DATE       NOT NULL,customer_id NUMBER(6) NOT NULL,amount     NUMBER(8,2) NOT NULL) PARTITION BY RANGE(order_date)(PARTITION orders_2010 VALUES LESS THAN (TO_DATE('01-01-2011','DD-MM-YYYY')),PARTITION orders_2011 VALUES LESS THAN (TO_DATE('01-01-2012','DD-MM-YYYY')),PARTITION orders_2012 VALUES LESS THAN (TO_DATE('01-01-2013','DD-MM-YYYY')),PARTITION orders_2013 VALUES LESS THAN (TO_DATE('01-01-2014','DD-MM-YYYY')),PARTITION orders_2014 VALUES LESS THAN (TO_DATE('01-01-2015','DD-MM-YYYY')),PARTITION orders_2015 VALUES LESS THAN (TO_DATE('01-01-2016','DD-MM-YYYY')),PARTITION orders_2016 VALUES LESS THAN (TO_DATE('01-01-2017','DD-MM-YYYY'))) SHARDED;-- 创建垂直分片表CREATE TABLE orders (order_id   NUMBER(12) NOT NULL,customer_id NUMBER(6) NOT NULL,amount     NUMBER(8,2) NOT NULL,order_info VARCHAR2(500) NOT NULL) PARTITION BY LIST (order_info) (PARTITION orders_east VALUES ('east'),PARTITION orders_west VALUES ('west')) SHARDED;

在Oracle 12.2 Sharding中,客户端访问数据库时,分片路由组件将确定需要访问哪个分片,并将请求路由到相应的数据库实例。如果某个数据库故障,路由组件也会自动将请求路由到其他可用的数据库实例,确保业务的高可用性。

此外,Oracle 12.2 Sharding还提供了一些管理工具,可以对分片进行管理和监控,如shardctl命令行工具和Oracle Enterprise Manager Cloud Control控制台。

总之,Oracle 12.2 Sharding技术为数据库应用提供了一种高性能、高可用的解决方案。使用合适的分片方式和管理工具,可以轻松地实现数据的分布式存储和访问,提高业务可扩展性和性能。


上一篇:oracle 1435

下一篇:oracle 12c安装


Copyright © 2002-2019 测速网 https://www.inhv.cn/ 皖ICP备2023010105号 城市 地区 街道
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!
热门搜索