如何将数据从SQLServer同步至AnalyticDB for PostgreSQL

简介: 使用DTS,进行Sqlserver -> AnalyticDB for PostgreSQL 数据链路同步,可以很方便的将SQLServer中的分散的业务数据批量/实时导入至AnalyticDB for PostgreSQL, 进行复杂的OLAP查询与分析

使用DTS,Sqlserver -> AnalyticDB for PostgreSQL 同步链路,可以很方便的将SQLServer中分散的业务数据批量/实时导入至AnalyticDB for PostgreSQL, 进行复杂的OLAP查询与分析。

需要准备的条件:

  1. 正在运行的SQLServer实例与AnalyticDB for PostgreSQL实例
  2. 在源/目标数据库实例开通的网络权限/白名单, 有合适权限的数据库账号
  3. 被同步的SQLServer表需要有主键(如果源表没有主键,为了保证增量同步的幂等性,需要在配置主键的页面勾选出主键,并保证数据无主键冲突,否则会在数据同步过程中出现异常)

注意事项

  • 当前已经支持了结构迁移功能,可以自动在AnalyticDB for PostgreSQL端创建表结构,结构迁移的类型映射关系参考下方支持的类型与映射关系表格。
  • 当前支持了DDL同步。即数据同步过程中,源表发生表结构修改(当前已支持alter table add/drop column),DTS可将DDL修改的表结构在目标表执行同样的操作。
  • 当前已支持了使用同一条dts链路同步多个SQLServer database内的表到AnalyticDB for PostgreSQL。
  • SQLServer支持类型,2005、2008、2008R2、2012、2014、2016、2017
  • DTS在执行全量数据初始化时将占用源库和目标库一定的读写资源,可能会导致数据库的负载上升,在数据库性能较差、规格较低或业务量较大的情况下(例如源库有大量慢SQL、存在无主键表或目标库存在死锁等),可能会加重数据库压力,甚至导致数据库服务不可用。因此您需要在执行数据同步前评估源库和目标库的性能,同时建议您在业务低峰期执行数据同步(例如源库和目标库的CPU负载在30%以下)。

支持的类型与映射关系

SQLServer中的数据类型 AnalyticDB for PostgreSQL对应的数据类型
INT INTEGER
SMALLINT SMALLINT
TINYINT SMALLINT
BIGINT BIGINT
BIT BIT
DECIMAL DECIMAL
NUMERIC DECIMAL
CHAR CHARACTER[(N)]
VARCHAR CHARACTER[(N)]
NCHAR CHARACTER[(N)]
TEXT/NTEXT TEXT
FLOAT DOUBLE
REAL REAL
DATE DATE
DATETIME TIMESTAMP(3) WITHOUT TIME ZONE
DATETIME2 TIMESTAMP(7) WITHOUT TIME ZONE
DATETIMEOFFSET TIMESTAMP(7) WITH TIME ZONE
SMALLDATETIME TIMESTAMP WITHOUT TIME ZONE
TIME TIME WITHOUT TIME ZONE
BINARY/VARBINARY BYTEA
IMAGE BYTEA
MONEY DECIMAL(19, 4)
SMALLMONEY DECIMAL(10, 4)
UNIQUEIDENTIFIER CHARACTER(36)
XML XML
SYSNAME CHARACTER VARYING(128)

不支持的数据类型

SQLServer中的数据类型 说明
TIMESTAMP SQLServer中的timestamp用来给数据行加版本戳,与时间及日期无关,如果需要记录日期或时间需要使用date/datatime/datetime2/datetimeoffset等类型
CURSOR
ROWVERSION
HIERACHYID
SQL_VARIANT
SPATIAL GEOMETRY
SPATIAL GEOGRAPHY
TABLE

操作步骤

准备源表与目标表

1.在SQLServer创建源表
样例建表语句:

-- 创建数据库
create database test_adb;
......
CREATE TABLE [dbo].[demo_table]
(
    [id]  bigint            NOT NULL primary key,
    [t0]  smallint          NULL,
    [t1]  int               NULL,
    [t2]  binary(8)         NULL,
    [t3]  bit               NULL,
    [t4]  bit               NULL,
    [t5]  decimal(18, 3)    NULL,
    [t6]  numeric(18)       NULL,
    [t7]  char(3)           NULL,
    [t8]  varchar(MAX)      NULL,
    [t9]  nchar(7)          NULL,
    [t10] nvarchar(16)      NULL,
    [t11] text              NULL,
    [t12] ntext             NULL,
    [t13] float(53)         NULL,
    [t14] real              NULL,
    [t15] date              NULL,
    [t16] datetime          NULL,
    [t17] datetime2(7)      NULL,
    [t18] datetimeoffset(7) NULL,
    [t19] smalldatetime     NULL,
    [t20] time(7)           NULL,
    [t21] varbinary(MAX)    NULL,
    [t22] image             NULL,
    [t23] money             NULL,
    [t24] smallmoney        NULL,
    [t25] uniqueidentifier  NULL,
    [t26] xml NULL
);

2.将测试数据插入到sqlserver表

INSERT INTO [dbo].[demo_table]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2000', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2001', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2002', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2003', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2004', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2005', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2006', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');

购买dts数据同步服务

  1. 登陆dts控制台
    image
  2. 购买同步服务
    1)点击创建同步

image
2)选择同步服务,SQLServer源和AnalyticDB for PostgreSQL 目标实例类型
image
3)开通服务
image

配置同步链路

1.dts数据同步控制台,找到刚购买好的dts同步服务,配置链路
image
image
2.选择需要被同步的表
image

3.按照建表语句,选择主键与分布键
image
4.预检查并启动
image
5.检查同步任务执行情况
image
6.在目标表查询已同步的数据
image
7.源端修改数据,观察同步情况
在源端删除之前已经成功写入的id=2000的行

-- SQLServer端执行
DELETE FROM [dbo].[demo_table] WHERE [id]=N'2000';

在目标端查询

-- AnalyticDB for PostgreSQL端执行
select * from dbo.demo_table;

image

多表合一功能介绍

OLTP场景下,为了提高业务表响应速度,通常会对数据做分库分表处理。但是到了AnalyticDB for PostgreSQL ,单表即可存储海量数据,使用单表查询更为方便。为了应对这种情况,我们设计了多表归并功能,即将源库多张表结构相同的表同步至同一张AnalyticDB for PostgreSQL表。

原理介绍

在目标表结构增加名为"__dts_data_source"的列,配置链路页面勾选多表归并功能,这样dts会在同步过程中向该列写入DTS_ID.DATABASE.SCHEMA.TABLE格式的值,用来追踪数据来源。
例如,将上面的sqlserver数据分散到两张分区表内:

-- 在sqlserver端执行
CREATE TABLE [dbo].[demo_table_01]
(
    [id]  bigint            NOT NULL primary key,
    [t0]  smallint          NULL,
    [t1]  int               NULL,
    [t2]  binary(8)         NULL,
    [t3]  bit               NULL,
    [t4]  bit               NULL,
    [t5]  decimal(18, 3)    NULL,
    [t6]  numeric(18)       NULL,
    [t7]  char(3)           NULL,
    [t8]  varchar(MAX)      NULL,
    [t9]  nchar(7)          NULL,
    [t10] nvarchar(16)      NULL,
    [t11] text              NULL,
    [t12] ntext             NULL,
    [t13] float(53)         NULL,
    [t14] real              NULL,
    [t15] date              NULL,
    [t16] datetime          NULL,
    [t17] datetime2(7)      NULL,
    [t18] datetimeoffset(7) NULL,
    [t19] smalldatetime     NULL,
    [t20] time(7)           NULL,
    [t21] varbinary(MAX)    NULL,
    [t22] image             NULL,
    [t23] money             NULL,
    [t24] smallmoney        NULL,
    [t25] uniqueidentifier  NULL,
    [t26] xml NULL
);
CREATE TABLE [dbo].[demo_table_02]
(
    [id]  bigint            NOT NULL primary key,
    [t0]  smallint          NULL,
    [t1]  int               NULL,
    [t2]  binary(8)         NULL,
    [t3]  bit               NULL,
    [t4]  bit               NULL,
    [t5]  decimal(18, 3)    NULL,
    [t6]  numeric(18)       NULL,
    [t7]  char(3)           NULL,
    [t8]  varchar(MAX)      NULL,
    [t9]  nchar(7)          NULL,
    [t10] nvarchar(16)      NULL,
    [t11] text              NULL,
    [t12] ntext             NULL,
    [t13] float(53)         NULL,
    [t14] real              NULL,
    [t15] date              NULL,
    [t16] datetime          NULL,
    [t17] datetime2(7)      NULL,
    [t18] datetimeoffset(7) NULL,
    [t19] smalldatetime     NULL,
    [t20] time(7)           NULL,
    [t21] varbinary(MAX)    NULL,
    [t22] image             NULL,
    [t23] money             NULL,
    [t24] smallmoney        NULL,
    [t25] uniqueidentifier  NULL,
    [t26] xml NULL
);

-- 向两张分区表插入少量数据
INSERT INTO [dbo].[demo_table_01]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2000', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table_01]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2001', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table_01]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2002', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table_01]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2003', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table_02]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2004', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table_02]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2005', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');
INSERT INTO [dbo].[demo_table_02]([id], [t0], [t1], [t2], [t3], [t4], [t5], [t6], [t7], [t8], [t9], [t10], [t11], [t12], [t13], [t14], [t15], [t16], [t17], [t18], [t20], [t21], [t22], [t23], [t24], [t25], [t26]) values ( N'2006', N'0', N'2', 0x616D702D74657374, '1', '0', N'123413124.123', N'123413124.123', N'abc', N'你好谢谢再见', N'ABCdefg', N'hijklmN', N'amp-test', 'amp-test amp-text', N'122.33333', N'22.222222', N'2015-03-12', N'2015-03-12 21:40:39.456', N'2015-03-12 21:40:35.123456', N'2015-03-12 21:43:32.1234567 +08:00', N'16:59:11.1234567', 0x616D702D74657374, 0x313131616D702D74657374313131616D702D74657374313131313131616D702D74657374313131616D702D74657374313131, N'12912.131', N'912.121', N'28DB9939-F43F-4B7C-8511-6497F045D60C', N'<HTML/>');

配置步骤

1.配置同步表的页面,勾选多表归并功能,并点击编辑,修改目标表名
image

2.编辑所有的表名,比如案例上去掉源表名后缀
image
3.修改好目标表名的效果
image
4.配置主键及分布key
image
5.开启同步任务,在目标库进行查询

select id, __dts_data_source from dbo.demo_table;

6.查询结果,从__dts_data_source列可以看出
image
以这一行结果为例

dtsu3uv3qs311y6apm:test_adb.dbo.demo_table_01

dtsu3uv3qs311y6apm为dts同步任务的id,在dts控制台可以找到匹配的任务
image
剩下的test_adb.dbo.demo_table_01分别为源database.源schema.源table

相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
5月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
981 152
|
5月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。
803 156
|
5月前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
5月前
|
存储 人工智能 关系型数据库
阿里云AnalyticDB for PostgreSQL 入选VLDB 2025:统一架构破局HTAP,Beam+Laser引擎赋能Data+AI融合新范式
在数据驱动与人工智能深度融合的时代,企业对数据仓库的需求早已超越“查得快”这一基础能力。面对传统数仓挑战,阿里云瑶池数据库AnalyticDB for PostgreSQL(简称ADB-PG)创新性地构建了统一架构下的Shared-Nothing与Shared-Storage双模融合体系,并自主研发Beam混合存储引擎与Laser向量化执行引擎,全面解决HTAP场景下性能、弹性、成本与实时性的矛盾。 近日,相关研究成果发表于在英国伦敦召开的数据库领域顶级会议 VLDB 2025,标志着中国自研云数仓技术再次登上国际舞台。
519 0
|
Cloud Native 关系型数据库 OLAP
云原生数据仓库产品使用合集之阿里云云原生数据仓库AnalyticDB PostgreSQL版的重分布时间主要取决的是什么
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
SQL 关系型数据库 MySQL
SQL Server、MySQL、PostgreSQL:主流数据库SQL语法异同比较——深入探讨数据类型、分页查询、表创建与数据插入、函数和索引等关键语法差异,为跨数据库开发提供实用指导
【8月更文挑战第31天】SQL Server、MySQL和PostgreSQL是当今最流行的关系型数据库管理系统,均使用SQL作为查询语言,但在语法和功能实现上存在差异。本文将比较它们在数据类型、分页查询、创建和插入数据以及函数和索引等方面的异同,帮助开发者更好地理解和使用这些数据库。尽管它们共用SQL语言,但每个系统都有独特的语法规则,了解这些差异有助于提升开发效率和项目成功率。
1808 0
|
运维 Cloud Native 关系型数据库
云原生数据仓库AnalyticDB产品使用合集之PostgreSQL版是否直接支持实时物化视图
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
289 3
|
存储 分布式计算 关系型数据库
实时数仓 Hologres产品使用合集之是否提供相应的功能接口和指令,可以将数据从OSS存储同步到Hologres中进行分析
实时数仓Hologres的基本概念和特点:1.一站式实时数仓引擎:Hologres集成了数据仓库、在线分析处理(OLAP)和在线服务(Serving)能力于一体,适合实时数据分析和决策支持场景。2.兼容PostgreSQL协议:Hologres支持标准SQL(兼容PostgreSQL协议和语法),使得迁移和集成变得简单。3.海量数据处理能力:能够处理PB级数据的多维分析和即席查询,支持高并发低延迟查询。4.实时性:支持数据的实时写入、实时更新和实时分析,满足对数据新鲜度要求高的业务场景。5.与大数据生态集成:与MaxCompute、Flink、DataWorks等阿里云产品深度融合,提供离在线
|
8月前
|
存储 关系型数据库 测试技术
拯救海量数据:PostgreSQL分区表性能优化实战手册(附压测对比)
本文深入解析PostgreSQL分区表的核心原理与优化策略,涵盖性能痛点、实战案例及压测对比。首先阐述分区表作为继承表+路由规则的逻辑封装,分析分区裁剪失效、全局索引膨胀和VACUUM堆积三大性能杀手,并通过电商订单表崩溃事件说明旧分区维护的重要性。接着提出四维设计法优化分区策略,包括时间范围分区黄金法则与自动化维护体系。同时对比局部索引与全局索引性能,展示后者在特定场景下的优势。进一步探讨并行查询优化、冷热数据分层存储及故障复盘,解决分区锁竞争问题。
1042 2
|
关系型数据库 分布式数据库 PolarDB
《阿里云产品手册2022-2023 版》——PolarDB for PostgreSQL
《阿里云产品手册2022-2023 版》——PolarDB for PostgreSQL
586 0

相关产品

  • 云数据库 RDS PostgreSQL 版
  • 推荐镜像

    更多