Nếu bạn đã theo dõi Microsoft gần đây, sẽ không có gì ngạc nhiên khi nhà cung cấp sản phẩm cơ sở dữ liệu cạnh tranh, cụ thể là SQL Server, cũng nhảy vào vòng đua PostgreSQL. Từ việc phát hành 60.000 bằng sáng chế cho OIN đến việc trở thành nhà tài trợ Bạch kim tại PGCon, Microsoft với tư cách là một trong những tổ chức hỗ trợ công ty PostgreSQL. Tận dụng mọi cơ hội để chứng tỏ rằng bạn không chỉ có thể chạy PostgreSQL trên Microsoft, mà ngược lại là sự thật:Microsoft, thông qua dịch vụ đám mây của mình, có thể chạy PostgreSQL cho bạn. Tuyên bố càng trở nên rõ ràng hơn với việc mua lại Citus Data và phát hành sản phẩm chủ lực của họ trong Azure Cloud dưới tên Hyperscale. Có thể nói rằng việc áp dụng PostgreSQL đang ngày càng phát triển và giờ đây thậm chí còn có nhiều lý do chính đáng để chọn nó.
Hành trình của tôi qua đám mây Azure bắt đầu ngay tại trang đích nơi tôi gặp gỡ các đối thủ:Máy chủ đơn và bản xem trước (nói cách khác là không có SLA cung cấp) bản phát hành Hyperscale (Citus). Blog này sẽ tập trung vào cái trước. Trong hành trình này, tôi đã có cơ hội để thực hành nguồn mở là gì - mang lại lợi ích cho cộng đồng - trong trường hợp này, bằng cách cung cấp phản hồi cho tài liệu mà theo công nhận của Microsoft, họ thực hiện điều này rất dễ dàng bằng cách chuyển thông tin phản hồi thẳng vào Github:
Khả năng tương thích của PostgreSQL với Azure
Phiên bản
Theo tài liệu sản phẩm Máy chủ đơn nhắm mục tiêu các phiên bản PostgreSQL trong phạm vi chính n-2:
Là một giải pháp được xây dựng cho hiệu suất Máy chủ đơn được khuyến nghị cho các tập dữ liệu 100 GB và lớn hơn. Các máy chủ cung cấp hiệu suất có thể dự đoán được - các phiên bản cơ sở dữ liệu đi kèm với số lượng vCores và IOPS được xác định trước (dựa trên kích thước của bộ nhớ được cung cấp).
Tiện ích mở rộng
Có một số lượng lớn các Tiện ích mở rộng được Hỗ trợ với một số trong số chúng được cài đặt sẵn:
[email protected]:5432 postgres> select name, default_version, installed_version from pg_available_extensions where name !~ '^postgis' order by name;
name | default_version | installed_version
------------------------------+-----------------+-------------------
address_standardizer | 2.4.3 |
address_standardizer_data_us | 2.4.3 |
btree_gin | 1.2 |
btree_gist | 1.5 |
chkpass | 1.0 |
citext | 1.4 |
cube | 1.2 |
dblink | 1.2 |
dict_int | 1.0 |
earthdistance | 1.1 |
fuzzystrmatch | 1.1 |
hstore | 1.4 |
hypopg | 1.1.1 |
intarray | 1.2 |
isn | 1.1 |
ltree | 1.1 |
orafce | 3.7 |
pg_buffercache | 1.3 | 1.3
pg_partman | 2.6.3 |
pg_prewarm | 1.1 |
pg_qs | 1.1 |
pg_stat_statements | 1.6 | 1.6
pg_trgm | 1.3 |
pg_wait_sampling | 1.1 |
pgcrypto | 1.3 |
pgrouting | 2.5.2 |
pgrowlocks | 1.2 |
pgstattuple | 1.5 |
plpgsql | 1.0 | 1.0
plv8 | 2.1.0 |
postgres_fdw | 1.0 |
tablefunc | 1.0 |
timescaledb | 1.1.1 |
unaccent | 1.1 |
uuid-ossp | 1.1 |
(35 rows)
Giám sát PostgreSQL trên Azure
Giám sát máy chủ dựa trên một tập hợp các chỉ số có thể được nhóm lại gọn gàng để tạo trang tổng quan tùy chỉnh:
Những người quen thuộc với Graphviz hoặc Blockdiag có thể sẽ đánh giá cao tùy chọn xuất toàn bộ trang tổng quan vào một tệp JSON:
Hơn nữa, các chỉ số có thể - và chúng phải - được liên kết với các cảnh báo:
Thống kê truy vấn có thể được theo dõi bằng Cửa hàng truy vấn và được hiển thị bằng Hiệu suất truy vấn Cái nhìn sâu sắc. Vì vậy, một vài thông số cụ thể của Azure sẽ cần được bật:
[email protected]:5432 postgres> select * from pg_settings where name ~ 'pgms_wait_sampling.query_capture_mode|pg_qs.query_capture_mode';
-[ RECORD 1 ]---+------------------------------------------------------------------------------------------------------------------
name | pg_qs.query_capture_mode
setting | top
unit |
category | Customized Options
short_desc | Selects which statements are tracked by pg_qs. Need to reload the config to make change take effect.
extra_desc |
context | superuser
vartype | enum
source | configuration file
min_val |
max_val |
enumvals | {none,top,all}
boot_val | none
reset_val | top
sourcefile |
sourceline |
pending_restart | f
-[ RECORD 2 ]---+------------------------------------------------------------------------------------------------------------------
name | pgms_wait_sampling.query_capture_mode
setting | all
unit |
category | Customized Options
short_desc | Selects types of wait events are tracked by this extension. Need to reload the config to make change take effect.
extra_desc |
context | superuser
vartype | enum
source | configuration file
min_val |
max_val |
enumvals | {none,all}
boot_val | none
reset_val | all
sourcefile |
sourceline |
pending_restart | f
Để hình dung các truy vấn chậm và chờ đợi, chúng tôi tiến tới tiện ích Hiệu suất Truy vấn:
Truy vấn chạy dài
Chờ Thống kê
Đăng nhập PostgreSQL trên Azure
Có thể tải xuống các bản ghi PostgreSQL chuẩn hoặc xuất sang Log Analytics để phân tích cú pháp nâng cao hơn:
Hiệu suất và mở rộng PostgreSQL với Azure
Mặc dù có thể dễ dàng tăng hoặc giảm số lượng vCores, nhưng hành động này sẽ kích hoạt khởi động lại máy chủ:
Để đạt được không có thời gian chết, các ứng dụng phải có khả năng xử lý các lỗi tạm thời một cách linh hoạt .
Đối với các truy vấn điều chỉnh, Azure cung cấp cho DBA các Đề xuất về Hiệu suất, ngoài các phần mở rộng pg_statements và pg_buffercache được tải trước:
Tính khả dụng và nhân rộng cao trên Azure
Tính sẵn sàng cao của máy chủ cơ sở dữ liệu đạt được nhờ nhân bản phần cứng dựa trên nút. Điều này đảm bảo rằng trong trường hợp lỗi phần cứng, một nút mới có thể được hiển thị trong vòng hàng chục giây.
Azure cung cấp một cổng dự phòng làm điểm cuối kết nối mạng cho tất cả các máy chủ cơ sở dữ liệu trong một khu vực.
Bảo mật PostgreSQL trên Azure
Theo quy tắc tường lửa mặc định từ chối quyền truy cập vào phiên bản PostgreSQL. Vì máy chủ cơ sở dữ liệu Azure tương đương với một cụm cơ sở dữ liệu nên các quy tắc truy cập sẽ áp dụng cho tất cả các cơ sở dữ liệu được lưu trữ trên máy chủ.
Ngoài địa chỉ IP, các quy tắc tường lửa có thể tham chiếu đến mạng ảo, một tính năng chỉ có sẵn cho các cấp Mục đích Chung và Tối ưu hóa Bộ nhớ.
Một điều tôi thấy khác thường trong giao diện web tường lửa - tôi không thể điều hướng thoát khỏi trang trong khi các thay đổi đang được lưu:
Dữ liệu ở trạng thái nghỉ được mã hóa bằng Khóa do máy chủ quản lý và người dùng đám mây không thể vô hiệu hóa mã hóa. Dữ liệu trong quá trình truyền cũng được mã hóa - chỉ có thể thay đổi SSL yêu cầu sau khi máy chủ cơ sở dữ liệu được tạo. Cũng giống như dữ liệu ở trạng thái nghỉ, các bản sao lưu được mã hóa và không thể tắt mã hóa.
Advanced Threat Protection cung cấp các cảnh báo và khuyến nghị về một số yêu cầu truy cập cơ sở dữ liệu được coi là một nguy cơ bảo mật. Tính năng này hiện đang được xem trước. Để chứng minh, tôi đã mô phỏng một cuộc tấn công bạo lực bằng mật khẩu:
~ $ while : ; do psql -U $(pwgen -s 20 1)@pg10 ; sleep 0.1 ; done
psql: FATAL: password authentication failed for user "AApT6z4xUzpynJwiNAYf"
psql: FATAL: password authentication failed for user "gaNeW8VSIflkdnNZSpNV"
psql: FATAL: password authentication failed for user "SWZnY7wGTxdLTLcbqnUW"
psql: FATAL: password authentication failed for user "BVH2SC12m9js9vZHcuBd"
psql: FATAL: password authentication failed for user "um9kqUxPIxeQrzWQXr2v"
psql: FATAL: password authentication failed for user "8BGXyg3KHF3Eq3yHpik1"
psql: FATAL: password authentication failed for user "5LsVrtBjcewd77Q4kaj1"
....
Kiểm tra nhật ký PostgreSQL:
2019-08-19 07:13:50 UTC-5d5a4c2e.138-FATAL: password authentication failed
for user "AApT6z4xUzpynJwiNAYf"
2019-08-19 07:13:50 UTC-5d5a4c2e.138-DETAIL: Role "AApT6z4xUzpynJwiNAYf" does not exist.
Connection matched pg_hba.conf line 3: "host all all 173.180.222.170/32 password"
2019-08-19 07:13:51 UTC-5d5a4c2f.13c-LOG: connection received: host=173.180.222.170 port=27248 pid=316
2019-08-19 07:13:51 UTC-5d5a4c2f.13c-FATAL: password authentication failed for user "gaNeW8VSIflkdnNZSpNV"
2019-08-19 07:13:51 UTC-5d5a4c2f.13c-DETAIL: Role "gaNeW8VSIflkdnNZSpNV" does not exist.
Connection matched pg_hba.conf line 3: "host all all 173.180.222.170/32 password"
2019-08-19 07:13:52 UTC-5d5a4c30.140-LOG: connection received: host=173.180.222.170 port=58256 pid=320
2019-08-19 07:13:52 UTC-5d5a4c30.140-FATAL: password authentication failed for user "SWZnY7wGTxdLTLcbqnUW"
2019-08-19 07:13:52 UTC-5d5a4c30.140-DETAIL: Role "SWZnY7wGTxdLTLcbqnUW" does not exist.
Connection matched pg_hba.conf line 3: "host all all 173.180.222.170/32 password"
2019-08-19 07:13:53 UTC-5d5a4c31.148-LOG: connection received: host=173.180.222.170 port=32984 pid=328
2019-08-19 07:13:53 UTC-5d5a4c31.148-FATAL: password authentication failed for user "BVH2SC12m9js9vZHcuBd"
2019-08-19 07:13:53 UTC-5d5a4c31.148-DETAIL: Role "BVH2SC12m9js9vZHcuBd" does not exist.
Connection matched pg_hba.conf line 3: "host all all 173.180.222.170/32 password"
2019-08-19 07:13:53 UTC-5d5a4c31.14c-LOG: connection received: host=173.180.222.170 port=43384 pid=332
2019-08-19 07:13:54 UTC-5d5a4c31.14c-FATAL: password authentication failed for user "um9kqUxPIxeQrzWQXr2v"
2019-08-19 07:13:54 UTC-5d5a4c31.14c-DETAIL: Role "um9kqUxPIxeQrzWQXr2v" does not exist.
Connection matched pg_hba.conf line 3: "host all all 173.180.222.170/32 password"
2019-08-19 07:13:54 UTC-5d5a4c32.150-LOG: connection received: host=173.180.222.170 port=27672 pid=336
2019-08-19 07:13:54 UTC-5d5a4c32.150-FATAL: password authentication failed for user "8BGXyg3KHF3Eq3yHpik1"
2019-08-19 07:13:54 UTC-5d5a4c32.150-DETAIL: Role "8BGXyg3KHF3Eq3yHpik1" does not exist.
Connection matched pg_hba.conf line 3: "host all all 173.180.222.170/32 password"
2019-08-19 07:13:55 UTC-5d5a4c33.154-LOG: connection received: host=173.180.222.170 port=12712 pid=340
2019-08-19 07:13:55 UTC-5d5a4c33.154-FATAL: password authentication failed for user "5LsVrtBjcewd77Q4kaj1"
2019-08-19 07:13:55 UTC-5d5a4c33.154-DETAIL: Role "5LsVrtBjcewd77Q4kaj1" does not exist.
Thông báo qua email đến khoảng 30 phút sau:
Để cho phép truy cập chi tiết vào máy chủ cơ sở dữ liệu, Azure cung cấp RBAC, là một tính năng kiểm soát truy cập gốc trên đám mây, chỉ là một công cụ nữa trong kho vũ khí của PostgreSQL Cloud DBA. Điều này gần như chúng ta có thể hiểu được các quy tắc truy cập pg_hba phổ biến.
Sao lưu và phục hồi PostgreSQL trên Azure
Bất kể bậc định giá, các bản sao lưu được giữ lại từ 7 đến 35 ngày. Mức giá cũng ảnh hưởng đến khả năng khôi phục dữ liệu.
Tính năng khôi phục theo thời gian có sẵn thông qua Azure Portal hoặc CLI và theo tài liệu là chi tiết trong tối đa năm phút. Chức năng cổng thông tin khá hạn chế - tiện ích con chọn ngày hiển thị mù mịt các ngày có thể có trong 7 ngày qua, mặc dù tôi đã tạo máy chủ hôm nay. Ngoài ra, không có xác minh nào được thực hiện trong thời gian mục tiêu khôi phục - Tôi dự kiến rằng việc nhập một giá trị ngoài khoảng thời gian khôi phục sẽ gây ra lỗi ngăn trình hướng dẫn tiếp tục:
Khi quá trình khôi phục được bắt đầu, một lỗi, được cho là do lỗi của giá trị phạm vi, sẽ bật lên khoảng một phút sau:
… nhưng rất tiếc, thông báo lỗi không hữu ích lắm:
Cuối cùng, bộ nhớ sao lưu miễn phí trong thời gian lưu giữ lên đến 7 ngày. Điều đó có thể tỏ ra cực kỳ hữu ích cho các môi trường phát triển.
Gợi ý và Mẹo
Giới hạn
Làm quen với Giới hạn Máy chủ Đơn.
Kết nối
Luôn sử dụng chuỗi kết nối để kết nối được chuyển đến đúng máy chủ cơ sở dữ liệu.
Sao chép
Đối với các tình huống khôi phục sau thảm họa, hãy xác định vị trí các bản sao đã đọc ở một trong các vùng được ghép nối.
Vai trò
Cũng như trường hợp của AWS và GCloud, không có quyền truy cập siêu người dùng.
GUC
Không thể định cấu hình các thông số yêu cầu khởi động lại máy chủ hoặc quyền truy cập siêu người dùng.
Chia tỷ lệ
Trong quá trình tự động mở rộng quy mô, các ứng dụng nên thử lại cho đến khi nút mới được hiển thị.
Không thể chỉ định dung lượng bộ nhớ và IOPS - bộ nhớ được phân bổ theo đơn vị GB cho mỗi vCore, tối đa là 320GB (32vCores x 10GB) và IOPS phụ thuộc vào kích thước của bộ nhớ được cung cấp tối đa là 6000 IOPS. Tại thời điểm này, Azure cung cấp tùy chọn xem trước bộ nhớ lớn với tối đa 20.000 IOPS.
Không thể nâng cấp máy chủ được tạo trong Cấp cơ bản lên Mục đích Chung hoặc Tối ưu hóa Bộ nhớ.
Bộ nhớ
Đảm bảo rằng tính năng tự động phát triển được bật - nếu lượng dữ liệu vượt quá dung lượng lưu trữ được cấp, cơ sở dữ liệu sẽ chuyển sang chế độ chỉ đọc.
Bộ nhớ chỉ có thể được mở rộng. Cũng như với tất cả các nhà cung cấp dịch vụ đám mây khác, không thể giảm phân bổ bộ nhớ và tôi không thể tìm ra bất kỳ lời giải thích nào. Với thiết bị hiện đại, các nhà cung cấp dịch vụ đám mây lớn có đủ khả năng nên không có lý do gì để không cung cấp các tính năng tương tự như việc di chuyển dữ liệu trực tuyến LVM. Dung lượng lưu trữ thực sự rẻ ngày nay, thực sự không có lý do gì để suy nghĩ về việc giảm quy mô cho đến khi nâng cấp phiên bản lớn tiếp theo.
Tường lửa
Trong một số trường hợp, các bản cập nhật cho quy tắc tường lửa có thể mất đến năm phút để có hiệu lực.
Một máy chủ nằm trong cùng một mạng con vì các máy chủ ứng dụng sẽ không thể truy cập được cho đến khi các quy tắc tường lửa thích hợp được áp dụng.
Quy tắc mạng ảo không cho phép truy cập giữa các vùng và do đó, không thể sử dụng dblink và postgres_fdw để kết nối với cơ sở dữ liệu bên ngoài đám mây Azure.
Không thể áp dụng phương pháp VNet / Subnet cho Ứng dụng web vì các kết nối của chúng bắt nguồn từ địa chỉ IP công cộng.
Các mạng ảo lớn sẽ không khả dụng khi các điểm cuối dịch vụ được bật.
Mã hóa
Đối với các ứng dụng yêu cầu xác thực chứng chỉ máy chủ, tệp có sẵn để tải xuống từ Digicert. Microsoft đã làm cho nó dễ dàng và bạn không phải lo lắng về việc gia hạn cho đến năm 2025:
~ $ openssl x509 -in BaltimoreCyberTrustRoot.crt.pem -noout -dates
notBefore=May 12 18:46:00 2000 GMT
notAfter=May 12 23:59:00 2025 GMT
Hệ thống Phát hiện Xâm nhập
Bản phát hành xem trước của Bảo vệ Đe dọa Nâng cao không khả dụng cho các phiên bản Cấp cơ bản.
Sao lưu và Khôi phục
Đối với các ứng dụng không thể chịu được thời gian ngừng hoạt động theo khu vực, hãy xem xét việc định cấu hình máy chủ với bộ nhớ sao lưu dự phòng theo địa lý. Tùy chọn này chỉ có thể được bật tại thời điểm tạo máy chủ cơ sở dữ liệu.
Yêu cầu cấu hình lại các quy tắc của tường lửa đám mây sau một hoạt động PITR là đặc biệt quan trọng.
Xóa máy chủ cơ sở dữ liệu sẽ xóa tất cả các bản sao lưu.
Sau quá trình khôi phục, có một số tác vụ sau khôi phục sẽ phải được thực hiện.
Các bảng chưa đăng ký được khuyến nghị chèn hàng loạt để tăng hiệu suất, tuy nhiên, chúng không được sao chép.
Giám sát
Các chỉ số được ghi lại mỗi phút và lưu trữ trong 30 ngày.
Ghi nhật ký
Query Store là một tùy chọn chung, có nghĩa là nó áp dụng cho tất cả các cơ sở dữ liệu. Các giao dịch chỉ đọc và truy vấn dài hơn 6.000 byte là có vấn đề. Theo mặc định, các truy vấn đã chụp được giữ lại trong 7 ngày.
Hiệu suất
Đề xuất Thông tin chi tiết về Hiệu suất Truy vấn hiện bị giới hạn để tạo và thả chỉ mục.
Tắt pg_stat_staements khi không cần thiết.
Thay thế uuid_generate_v4 bằng gen_random_uuid (). Điều này phù hợp với khuyến nghị trong tài liệu PostgreSQL chính thức, xem Xây dựng uuid-ossp.
Tính khả dụng và nhân rộng cao
Có giới hạn là năm bản sao được đọc. Các ứng dụng cần nhiều khả năng ghi nên tránh sử dụng các bản sao đọc vì cơ chế sao chép không đồng bộ dẫn đến một số độ trễ mà các ứng dụng phải có khả năng chịu đựng. Bản sao đã đọc có thể được đặt ở một khu vực khác.
Hỗ trợ REPLICA chỉ có thể được bật sau khi máy chủ được tạo. Tính năng yêu cầu khởi động lại máy chủ:
Đọc bản sao không kế thừa các quy tắc tường lửa từ nút chính:
Chuyển đổi dự phòng để đọc bản sao không tự động. Cơ chế chuyển đổi dự phòng dựa trên nút.
Có một danh sách dài Các vấn đề cần được xem xét trước khi định cấu hình các bản sao đã đọc.
Việc tạo bản sao mất nhiều thời gian, ngay cả khi tôi đã thử nghiệm với tập dữ liệu tương đối nhỏ:
Chân khôngChân không
Xem lại các thông số chính, vì Cơ sở dữ liệu Azure cho PostgreSQL cung cấp các giá trị mặc định chân không ngược dòng:
[email protected]:5432 postgres> select name,setting from pg_settings where name ~ '^autovacuum.*';
name | setting
-------------------------------------+-----------
autovacuum | on
autovacuum_analyze_scale_factor | 0.05
autovacuum_analyze_threshold | 50
autovacuum_freeze_max_age | 200000000
autovacuum_max_workers | 3
autovacuum_multixact_freeze_max_age | 400000000
autovacuum_naptime | 15
autovacuum_vacuum_cost_delay | 20
autovacuum_vacuum_cost_limit | -1
autovacuum_vacuum_scale_factor | 0.05
autovacuum_vacuum_threshold | 50
autovacuum_work_mem | -1
(12 rows)
Nâng cấp
Các bản nâng cấp lớn tự động không được hỗ trợ. Như đã đề cập trước đó, đây là một cơ hội tiết kiệm chi phí, bằng cách thu nhỏ dung lượng lưu trữ tự động phát triển.
Các cải tiến của PostgreSQL Azure
Timeseries
TimescaleDB có sẵn dưới dạng tiện ích mở rộng (không phải là một phần của mô-đun PostgreSQL), tuy nhiên, chỉ cần một vài cú nhấp chuột. Hạn chế duy nhất là phiên bản 1.1.1 cũ hơn, trong khi phiên bản ngược dòng hiện ở 1.4.1 (2019-08-01).
[email protected]:5432 postgres> CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;
WARNING:
WELCOME TO
_____ _ _ ____________
|_ _(_) | | | _ \ ___ \
| | _ _ __ ___ ___ ___ ___ __ _| | ___| | | | |_/ /
| | | | _ ` _ \ / _ \/ __|/ __/ _` | |/ _ \ | | | ___ \
| | | | | | | | | __/\__ \ (_| (_| | | __/ |/ /| |_/ /
|_| |_|_| |_| |_|\___||___/\___\__,_|_|\___|___/ \____/
Running version 1.1.1
For more information on TimescaleDB, please visit the following links:
1. Getting started: https://docs.timescale.com/getting-started
2. API reference documentation: https://docs.timescale.com/api
3. How TimescaleDB is designed: https://docs.timescale.com/introduction/architecture
CREATE EXTENSION
[email protected]:5432 postgres> \dx timescaledb
List of installed extensions
Name | Version | Schema | Description
-------------+---------+--------+-------------------------------------------------------------------
timescaledb | 1.1.1 | public | Enables scalable inserts and complex queries for time-series data
(1 row)
Ghi nhật ký
Ngoài các tùy chọn ghi nhật ký PostgreSQL, Cơ sở dữ liệu Azure cho PostgreSQL có thể được định cấu hình để ghi lại các sự kiện chẩn đoán bổ sung.
Tường lửa
Azure Portal bao gồm một tính năng tiện dụng để cho phép kết nối từ các địa chỉ IP đã đăng nhập vào cổng:
Tôi đã lưu ý đến tính năng này vì nó giúp các nhà phát triển và quản trị viên hệ thống dễ dàng cho phép mình tham gia và nó nổi bật như một tính năng không được cung cấp bởi AWS và GCloud.
Kết luận
Cơ sở dữ liệu Azure cho Máy chủ đơn PostgreSQL cung cấp các dịch vụ cấp doanh nghiệp, tuy nhiên, nhiều dịch vụ trong số này vẫn ở chế độ xem trước:Cửa hàng truy vấn, Thông tin chi tiết về hiệu suất, Đề xuất hiệu suất, Bảo vệ mối đe dọa nâng cao, Bộ nhớ lớn, Vùng chéo Đọc bản sao.
Trong khi kiến thức hệ điều hành không còn cần thiết để quản trị PostgreSQL trên đám mây Azure, DBA được kỳ vọng sẽ có được các kỹ năng không giới hạn trong chính cơ sở dữ liệu - mạng Azure (VNet), bảo mật kết nối (tường lửa ), trình xem nhật ký và phân tích cùng với KQL, Azure CLI để tạo tập lệnh tiện dụng và danh sách vẫn tiếp tục.
Cuối cùng, đối với những người dự định chuyển khối lượng công việc PostgreSQL của họ sang Azure, có một số tài nguyên có sẵn cùng với danh sách các Đối tác Azure được chọn bao gồm Credativ, một trong những nhà tài trợ và cộng tác viên chính của PostgreSQL.