pg_bulkload

pg_bulkload

pg_bulkload : pg_bulkload is a high speed data loading utility for PostgreSQL

Overview

IDExtensionPackageVersionCategoryLicenseLanguage
9830
pg_bulkload
pg_bulkload
3.1.23
ETL
BSD 3-Clause
C
AttributeHas BinaryHas LibraryNeed LoadHas DDLRelocatableTrusted
--s-d--
Yes
Yes
No
Yes
no
no
Relationships
See Also
file_fdw
aws_s3
db_migrator
pg_fact_loader
mysql_fdw
oracle_fdw
postgres_fdw
pglogical

pg18 fixed by vonng

Packages

TypeRepoVersionPG Major CompatibilityPackage PatternDependencies
EXT
PIGSTY
3.1.23
18
17
16
15
14
pg_bulkload-
RPM
PGDG
3.1.23
18
17
16
15
14
pg_bulkload_$v-
DEB
PIGSTY
3.1.23
18
17
16
15
14
postgresql-$v-pg-bulkload-
Linux / PGPG18PG17PG16PG15PG14
el8.x86_64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
el8.aarch64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
el9.x86_64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
el9.aarch64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
el10.x86_64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
el10.aarch64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
d12.x86_64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
d12.aarch64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
d13.x86_64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
d13.aarch64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
u22.x86_64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
u22.aarch64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
u24.x86_64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
u24.aarch64
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PIGSTY 3.1.23
PackageVersionOSORGSIZEFile URL
pg_bulkload_183.1.23el8.x86_64pigsty65.1 KiBpg_bulkload_18-3.1.23-1PIGSTY.el8.x86_64.rpm
pg_bulkload_183.1.23el8.x86_64pgdg68.2 KiBpg_bulkload_18-3.1.23-1PGDG.rhel8.10.x86_64.rpm
pg_bulkload_183.1.23el8.aarch64pigsty60.4 KiBpg_bulkload_18-3.1.23-1PIGSTY.el8.aarch64.rpm
pg_bulkload_183.1.23el8.aarch64pgdg63.5 KiBpg_bulkload_18-3.1.23-1PGDG.rhel8.10.aarch64.rpm
pg_bulkload_183.1.23el9.x86_64pigsty61.3 KiBpg_bulkload_18-3.1.23-1PIGSTY.el9.x86_64.rpm
pg_bulkload_183.1.23el9.x86_64pgdg62.5 KiBpg_bulkload_18-3.1.23-1PGDG.rhel9.7.x86_64.rpm
pg_bulkload_183.1.23el9.aarch64pigsty58.7 KiBpg_bulkload_18-3.1.23-1PIGSTY.el9.aarch64.rpm
pg_bulkload_183.1.23el9.aarch64pgdg59.9 KiBpg_bulkload_18-3.1.23-1PGDG.rhel9.7.aarch64.rpm
pg_bulkload_183.1.23el10.x86_64pigsty62.2 KiBpg_bulkload_18-3.1.23-1PIGSTY.el10.x86_64.rpm
pg_bulkload_183.1.23el10.x86_64pgdg63.5 KiBpg_bulkload_18-3.1.23-1PGDG.rhel10.1.x86_64.rpm
pg_bulkload_183.1.23el10.aarch64pigsty59.4 KiBpg_bulkload_18-3.1.23-1PIGSTY.el10.aarch64.rpm
pg_bulkload_183.1.23el10.aarch64pgdg60.6 KiBpg_bulkload_18-3.1.23-1PGDG.rhel10.1.aarch64.rpm
postgresql-18-pg-bulkload3.1.23d12.x86_64pigsty238.7 KiBpostgresql-18-pg-bulkload_3.1.23-1PIGSTY~bookworm_amd64.deb
postgresql-18-pg-bulkload3.1.23d12.aarch64pigsty230.6 KiBpostgresql-18-pg-bulkload_3.1.23-1PIGSTY~bookworm_arm64.deb
postgresql-18-pg-bulkload3.1.23d13.x86_64pigsty240.3 KiBpostgresql-18-pg-bulkload_3.1.23-1PIGSTY~trixie_amd64.deb
postgresql-18-pg-bulkload3.1.23d13.aarch64pigsty232.0 KiBpostgresql-18-pg-bulkload_3.1.23-1PIGSTY~trixie_arm64.deb
postgresql-18-pg-bulkload3.1.23u22.x86_64pigsty250.3 KiBpostgresql-18-pg-bulkload_3.1.23-1PIGSTY~jammy_amd64.deb
postgresql-18-pg-bulkload3.1.23u22.aarch64pigsty244.7 KiBpostgresql-18-pg-bulkload_3.1.23-1PIGSTY~jammy_arm64.deb
postgresql-18-pg-bulkload3.1.23u24.x86_64pigsty240.8 KiBpostgresql-18-pg-bulkload_3.1.23-1PIGSTY~noble_amd64.deb
postgresql-18-pg-bulkload3.1.23u24.aarch64pigsty237.2 KiBpostgresql-18-pg-bulkload_3.1.23-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pg_bulkload_173.1.23el8.x86_64pigsty64.9 KiBpg_bulkload_17-3.1.23-1PIGSTY.el8.x86_64.rpm
pg_bulkload_173.1.23el8.aarch64pigsty60.0 KiBpg_bulkload_17-3.1.23-1PIGSTY.el8.aarch64.rpm
pg_bulkload_173.1.23el9.x86_64pigsty61.0 KiBpg_bulkload_17-3.1.23-1PIGSTY.el9.x86_64.rpm
pg_bulkload_173.1.23el9.aarch64pigsty58.4 KiBpg_bulkload_17-3.1.23-1PIGSTY.el9.aarch64.rpm
pg_bulkload_173.1.23el10.x86_64pigsty62.0 KiBpg_bulkload_17-3.1.23-1PIGSTY.el10.x86_64.rpm
pg_bulkload_173.1.22el10.x86_64pgdg63.2 KiBpg_bulkload_17-3.1.22-2PGDG.rhel10.x86_64.rpm
pg_bulkload_173.1.23el10.aarch64pigsty59.3 KiBpg_bulkload_17-3.1.23-1PIGSTY.el10.aarch64.rpm
pg_bulkload_173.1.22el10.aarch64pgdg60.3 KiBpg_bulkload_17-3.1.22-2PGDG.rhel10.aarch64.rpm
postgresql-17-pg-bulkload3.1.23d12.x86_64pigsty237.9 KiBpostgresql-17-pg-bulkload_3.1.23-1PIGSTY~bookworm_amd64.deb
postgresql-17-pg-bulkload3.1.23d12.aarch64pigsty229.8 KiBpostgresql-17-pg-bulkload_3.1.23-1PIGSTY~bookworm_arm64.deb
postgresql-17-pg-bulkload3.1.23d13.x86_64pigsty239.4 KiBpostgresql-17-pg-bulkload_3.1.23-1PIGSTY~trixie_amd64.deb
postgresql-17-pg-bulkload3.1.23d13.aarch64pigsty231.3 KiBpostgresql-17-pg-bulkload_3.1.23-1PIGSTY~trixie_arm64.deb
postgresql-17-pg-bulkload3.1.23u22.x86_64pigsty297.0 KiBpostgresql-17-pg-bulkload_3.1.23-1PIGSTY~jammy_amd64.deb
postgresql-17-pg-bulkload3.1.23u22.aarch64pigsty291.9 KiBpostgresql-17-pg-bulkload_3.1.23-1PIGSTY~jammy_arm64.deb
postgresql-17-pg-bulkload3.1.23u24.x86_64pigsty240.0 KiBpostgresql-17-pg-bulkload_3.1.23-1PIGSTY~noble_amd64.deb
postgresql-17-pg-bulkload3.1.23u24.aarch64pigsty236.5 KiBpostgresql-17-pg-bulkload_3.1.23-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pg_bulkload_163.1.23el8.x86_64pigsty65.2 KiBpg_bulkload_16-3.1.23-1PIGSTY.el8.x86_64.rpm
pg_bulkload_163.1.21el8.x86_64pgdg76.4 KiBpg_bulkload_16-3.1.21-1PGDG.rhel8.x86_64.rpm
pg_bulkload_163.1.23el8.aarch64pigsty60.5 KiBpg_bulkload_16-3.1.23-1PIGSTY.el8.aarch64.rpm
pg_bulkload_163.1.21el8.aarch64pgdg71.4 KiBpg_bulkload_16-3.1.21-1PGDG.rhel8.aarch64.rpm
pg_bulkload_163.1.23el9.x86_64pigsty61.3 KiBpg_bulkload_16-3.1.23-1PIGSTY.el9.x86_64.rpm
pg_bulkload_163.1.21el9.x86_64pgdg69.7 KiBpg_bulkload_16-3.1.21-1PGDG.rhel9.x86_64.rpm
pg_bulkload_163.1.23el9.aarch64pigsty58.8 KiBpg_bulkload_16-3.1.23-1PIGSTY.el9.aarch64.rpm
pg_bulkload_163.1.21el9.aarch64pgdg66.9 KiBpg_bulkload_16-3.1.21-1PGDG.rhel9.aarch64.rpm
pg_bulkload_163.1.23el10.x86_64pigsty62.3 KiBpg_bulkload_16-3.1.23-1PIGSTY.el10.x86_64.rpm
pg_bulkload_163.1.22el10.x86_64pgdg63.4 KiBpg_bulkload_16-3.1.22-2PGDG.rhel10.x86_64.rpm
pg_bulkload_163.1.23el10.aarch64pigsty59.5 KiBpg_bulkload_16-3.1.23-1PIGSTY.el10.aarch64.rpm
pg_bulkload_163.1.22el10.aarch64pgdg60.6 KiBpg_bulkload_16-3.1.22-2PGDG.rhel10.aarch64.rpm
postgresql-16-pg-bulkload3.1.23d12.x86_64pigsty239.3 KiBpostgresql-16-pg-bulkload_3.1.23-1PIGSTY~bookworm_amd64.deb
postgresql-16-pg-bulkload3.1.23d12.aarch64pigsty230.4 KiBpostgresql-16-pg-bulkload_3.1.23-1PIGSTY~bookworm_arm64.deb
postgresql-16-pg-bulkload3.1.23d13.x86_64pigsty240.5 KiBpostgresql-16-pg-bulkload_3.1.23-1PIGSTY~trixie_amd64.deb
postgresql-16-pg-bulkload3.1.23d13.aarch64pigsty231.8 KiBpostgresql-16-pg-bulkload_3.1.23-1PIGSTY~trixie_arm64.deb
postgresql-16-pg-bulkload3.1.23u22.x86_64pigsty295.4 KiBpostgresql-16-pg-bulkload_3.1.23-1PIGSTY~jammy_amd64.deb
postgresql-16-pg-bulkload3.1.23u22.aarch64pigsty289.6 KiBpostgresql-16-pg-bulkload_3.1.23-1PIGSTY~jammy_arm64.deb
postgresql-16-pg-bulkload3.1.23u24.x86_64pigsty241.3 KiBpostgresql-16-pg-bulkload_3.1.23-1PIGSTY~noble_amd64.deb
postgresql-16-pg-bulkload3.1.23u24.aarch64pigsty236.8 KiBpostgresql-16-pg-bulkload_3.1.23-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pg_bulkload_153.1.23el8.x86_64pigsty65.1 KiBpg_bulkload_15-3.1.23-1PIGSTY.el8.x86_64.rpm
pg_bulkload_153.1.21el8.x86_64pgdg76.2 KiBpg_bulkload_15-3.1.21-1PGDG.rhel8.x86_64.rpm
pg_bulkload_153.1.20el8.x86_64pgdg76.7 KiBpg_bulkload_15-3.1.20-1.rhel8.x86_64.rpm
pg_bulkload_153.1.23el8.aarch64pigsty60.2 KiBpg_bulkload_15-3.1.23-1PIGSTY.el8.aarch64.rpm
pg_bulkload_153.1.21el8.aarch64pgdg71.1 KiBpg_bulkload_15-3.1.21-1PGDG.rhel8.aarch64.rpm
pg_bulkload_153.1.20el8.aarch64pgdg71.6 KiBpg_bulkload_15-3.1.20-1.rhel8.aarch64.rpm
pg_bulkload_153.1.23el9.x86_64pigsty61.2 KiBpg_bulkload_15-3.1.23-1PIGSTY.el9.x86_64.rpm
pg_bulkload_153.1.21el9.x86_64pgdg69.6 KiBpg_bulkload_15-3.1.21-1PGDG.rhel9.x86_64.rpm
pg_bulkload_153.1.23el9.aarch64pigsty58.6 KiBpg_bulkload_15-3.1.23-1PIGSTY.el9.aarch64.rpm
pg_bulkload_153.1.21el9.aarch64pgdg66.8 KiBpg_bulkload_15-3.1.21-1PGDG.rhel9.aarch64.rpm
pg_bulkload_153.1.20el9.aarch64pgdg67.6 KiBpg_bulkload_15-3.1.20-1.rhel9.aarch64.rpm
pg_bulkload_153.1.23el10.x86_64pigsty62.3 KiBpg_bulkload_15-3.1.23-1PIGSTY.el10.x86_64.rpm
pg_bulkload_153.1.22el10.x86_64pgdg63.4 KiBpg_bulkload_15-3.1.22-2PGDG.rhel10.x86_64.rpm
pg_bulkload_153.1.23el10.aarch64pigsty59.3 KiBpg_bulkload_15-3.1.23-1PIGSTY.el10.aarch64.rpm
pg_bulkload_153.1.22el10.aarch64pgdg60.4 KiBpg_bulkload_15-3.1.22-2PGDG.rhel10.aarch64.rpm
postgresql-15-pg-bulkload3.1.23d12.x86_64pigsty239.6 KiBpostgresql-15-pg-bulkload_3.1.23-1PIGSTY~bookworm_amd64.deb
postgresql-15-pg-bulkload3.1.23d12.aarch64pigsty230.7 KiBpostgresql-15-pg-bulkload_3.1.23-1PIGSTY~bookworm_arm64.deb
postgresql-15-pg-bulkload3.1.23d13.x86_64pigsty240.7 KiBpostgresql-15-pg-bulkload_3.1.23-1PIGSTY~trixie_amd64.deb
postgresql-15-pg-bulkload3.1.23d13.aarch64pigsty232.5 KiBpostgresql-15-pg-bulkload_3.1.23-1PIGSTY~trixie_arm64.deb
postgresql-15-pg-bulkload3.1.23u22.x86_64pigsty296.2 KiBpostgresql-15-pg-bulkload_3.1.23-1PIGSTY~jammy_amd64.deb
postgresql-15-pg-bulkload3.1.23u22.aarch64pigsty291.0 KiBpostgresql-15-pg-bulkload_3.1.23-1PIGSTY~jammy_arm64.deb
postgresql-15-pg-bulkload3.1.23u24.x86_64pigsty241.8 KiBpostgresql-15-pg-bulkload_3.1.23-1PIGSTY~noble_amd64.deb
postgresql-15-pg-bulkload3.1.23u24.aarch64pigsty237.4 KiBpostgresql-15-pg-bulkload_3.1.23-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pg_bulkload_143.1.23el8.x86_64pigsty64.9 KiBpg_bulkload_14-3.1.23-1PIGSTY.el8.x86_64.rpm
pg_bulkload_143.1.21el8.x86_64pgdg76.1 KiBpg_bulkload_14-3.1.21-1PGDG.rhel8.x86_64.rpm
pg_bulkload_143.1.20el8.x86_64pgdg76.6 KiBpg_bulkload_14-3.1.20-1.rhel8.x86_64.rpm
pg_bulkload_143.1.19el8.x86_64pgdg265.7 KiBpg_bulkload_14-3.1.19-1.rhel8.x86_64.rpm
pg_bulkload_143.1.23el8.aarch64pigsty60.2 KiBpg_bulkload_14-3.1.23-1PIGSTY.el8.aarch64.rpm
pg_bulkload_143.1.21el8.aarch64pgdg71.1 KiBpg_bulkload_14-3.1.21-1PGDG.rhel8.aarch64.rpm
pg_bulkload_143.1.20el8.aarch64pgdg71.6 KiBpg_bulkload_14-3.1.20-1.rhel8.aarch64.rpm
pg_bulkload_143.1.19el8.aarch64pgdg71.4 KiBpg_bulkload_14-3.1.19-2.rhel8.aarch64.rpm
pg_bulkload_143.1.23el9.x86_64pigsty61.0 KiBpg_bulkload_14-3.1.23-1PIGSTY.el9.x86_64.rpm
pg_bulkload_143.1.21el9.x86_64pgdg69.7 KiBpg_bulkload_14-3.1.21-1PGDG.rhel9.x86_64.rpm
pg_bulkload_143.1.23el9.aarch64pigsty58.5 KiBpg_bulkload_14-3.1.23-1PIGSTY.el9.aarch64.rpm
pg_bulkload_143.1.21el9.aarch64pgdg66.8 KiBpg_bulkload_14-3.1.21-1PGDG.rhel9.aarch64.rpm
pg_bulkload_143.1.20el9.aarch64pgdg67.5 KiBpg_bulkload_14-3.1.20-1.rhel9.aarch64.rpm
pg_bulkload_143.1.19el9.aarch64pgdg67.6 KiBpg_bulkload_14-3.1.19-2.rhel9.aarch64.rpm
pg_bulkload_143.1.23el10.x86_64pigsty62.1 KiBpg_bulkload_14-3.1.23-1PIGSTY.el10.x86_64.rpm
pg_bulkload_143.1.22el10.x86_64pgdg63.3 KiBpg_bulkload_14-3.1.22-2PGDG.rhel10.x86_64.rpm
pg_bulkload_143.1.23el10.aarch64pigsty59.2 KiBpg_bulkload_14-3.1.23-1PIGSTY.el10.aarch64.rpm
pg_bulkload_143.1.22el10.aarch64pgdg60.2 KiBpg_bulkload_14-3.1.22-2PGDG.rhel10.aarch64.rpm
postgresql-14-pg-bulkload3.1.23d12.x86_64pigsty238.5 KiBpostgresql-14-pg-bulkload_3.1.23-1PIGSTY~bookworm_amd64.deb
postgresql-14-pg-bulkload3.1.23d12.aarch64pigsty230.9 KiBpostgresql-14-pg-bulkload_3.1.23-1PIGSTY~bookworm_arm64.deb
postgresql-14-pg-bulkload3.1.23d13.x86_64pigsty239.4 KiBpostgresql-14-pg-bulkload_3.1.23-1PIGSTY~trixie_amd64.deb
postgresql-14-pg-bulkload3.1.23d13.aarch64pigsty231.6 KiBpostgresql-14-pg-bulkload_3.1.23-1PIGSTY~trixie_arm64.deb
postgresql-14-pg-bulkload3.1.23u22.x86_64pigsty295.1 KiBpostgresql-14-pg-bulkload_3.1.23-1PIGSTY~jammy_amd64.deb
postgresql-14-pg-bulkload3.1.23u22.aarch64pigsty289.9 KiBpostgresql-14-pg-bulkload_3.1.23-1PIGSTY~jammy_arm64.deb
postgresql-14-pg-bulkload3.1.23u24.x86_64pigsty240.1 KiBpostgresql-14-pg-bulkload_3.1.23-1PIGSTY~noble_amd64.deb
postgresql-14-pg-bulkload3.1.23u24.aarch64pigsty235.7 KiBpostgresql-14-pg-bulkload_3.1.23-1PIGSTY~noble_arm64.deb

Source

pig build pkg pg_bulkload;		# build rpm/deb

Install

Make sure PGDG and PIGSTY repo available:

pig repo add pgsql -u   # add both repo and update cache

Install this extension with pig:

pig install pg_bulkload;		# install via package name, for the active PG version

pig install pg_bulkload -v 18;   # install for PG 18
pig install pg_bulkload -v 17;   # install for PG 17
pig install pg_bulkload -v 16;   # install for PG 16
pig install pg_bulkload -v 15;   # install for PG 15
pig install pg_bulkload -v 14;   # install for PG 14

Create this extension with:

CREATE EXTENSION pg_bulkload;

Usage

pg_bulkload: pg_bulkload is a high speed data loading utility for PostgreSQL

A high-speed data loading tool for PostgreSQL that bypasses shared buffers for massive data loads, with built-in ETL features for input validation and data transformation.

Basic Usage

Load data using a control file:

pg_bulkload sample_csv.ctl

Output:

NOTICE: BULK LOAD START
NOTICE: BULK LOAD END
    0 Rows skipped.
    8 Rows successfully loaded.
    0 Rows not loaded due to parse errors.
    0 Rows not loaded due to duplicate errors.
    0 Rows replaced with new rows.

Control File Example

# sample_csv.ctl
OUTPUT = my_table
INPUT = /path/to/data.csv
TYPE = CSV
DELIMITER = ,
QUOTE = "\""
ESCAPE = "\""
NULL = ""
SKIP = 1              # skip header row
PARSE_ERRORS = 100    # allow up to 100 parse errors
DUPLICATE_ERRORS = 0  # reject on duplicate key errors
ON_DUPLICATE_KEEP = NEW  # or OLD
TRUNCATE = NO

Loading Modes

  • DIRECT: Bypasses shared buffers, writes directly to data files (fastest)
  • PARALLEL: Uses multiple processes for loading
  • CSV/BINARY/FIXED: Supports various input formats

SQL Interface

-- Load data from within SQL
SELECT pg_bulkload(
    'OUTPUT = my_table, INPUT = /path/to/data.csv, TYPE = CSV'
);

Key Features

  • Bypasses PostgreSQL shared buffers for maximum throughput
  • Input data validation with configurable error thresholds
  • Duplicate key handling (keep new, keep old, or reject)
  • CSV, fixed-length, and binary input formats
  • Skip rows, filter functions for data transformation
  • Parallel loading support

Documentation

Full documentation: http://ossc-db.github.io/pg_bulkload/index.html

Last updated on