From 281a1d52f8b620f5013b8d9dd118b531e1e2625d Mon Sep 17 00:00:00 2001 From: Olivier Leroy Date: Thu, 20 Jun 2024 09:05:08 -0400 Subject: [PATCH 01/11] add COPY and begining of post --- posts/pg_duckdb/index.qmd | 36 +++++++++++++++++++++++++++++++++--- 1 file changed, 33 insertions(+), 3 deletions(-) diff --git a/posts/pg_duckdb/index.qmd b/posts/pg_duckdb/index.qmd index 085e212..4123158 100644 --- a/posts/pg_duckdb/index.qmd +++ b/posts/pg_duckdb/index.qmd @@ -6,6 +6,23 @@ categories: [cli, code, postgresql, duckDB] image: thumbnail.png --- + + +They are a lot of talks (righfully) on the use of [Apache Parquet](https://parquet.apache.org/), [Apache Arrow](https://arrow.apache.org/) and [DuckDB](https://duckdb.org/). + +- **Apache Parquet** is an open source columnar file format storage designed for fast I/O + +- **Apache Arrow** is a standardization of an in-memory representation of the data: it allows "zero copy" (use of pointer at low level), it is an OLAP (Online Analytical Process) implementing deferred or lazy materilalization (optimize query for us) + +- **DuckDB** is an implementation, ie an engine, of an OLAP database. + +Those three open source technologies and the amount of ressources that a personnal laptop has now have lowered the need of using a classic RDBMS for out of memory tasks (and in some cases maybe the need of using a distributed computing framework like Spark) for data science works. + +Wait, should we drop our trusty Postgresql server? Probably not or at least not soone. What we are seing right now is more extending traditional RDBMS ("Data Warehouse") with the use of some object storage (s3 as an example) to built an hybrid weirdly called a "data lakehouse". + +In this blog post we would like to show how you can quickly convert one of your table from PostgreSQL to a parquet file that can be stored later in a S3 bucket for analysis. + + Libraries needed: ```{r} @@ -20,8 +37,8 @@ DuckDB has a Postgres extension! ```{r} #| eval: false -con <- DBI::dbConnect(duckdb()) -# install abd load PG extension +con <- DBI::dbConnect(duckdb(), dbdir = "dec23.canard") +# install and load PG extension DBI::dbExecute(con, "INSTALL postgres") DBI::dbExecute(con, "LOAD postgres") @@ -38,7 +55,20 @@ attach_string <- sprintf( cred[1] ) - DBI::dbExecute(con, attach_string) +DBI::dbExecute(con, attach_string) + +DBI::dbExecute(con, "COPY + (SELECT frn, + location_id, + technology, + max_advertised_download_speed, + max_advertised_upload_speed, + business_residential_code, + state_abbr, + block_geoid, + low_latency FROM db.staging.june23) + TO 'dec23' (FORMAT 'parquet', PARTITION_BY(state_abbr, technology))") + DBI::dbDisconnect(con) ``` From f93a298c88d6ebf6329521debbef93e3e80dbf3b Mon Sep 17 00:00:00 2001 From: Olivier Leroy Date: Tue, 16 Jul 2024 16:54:36 -0400 Subject: [PATCH 02/11] good skeleton of first elephant to duck db --- posts/pg_duckdb/index.qmd | 172 +++++++++++++++++++++++++++++++------- 1 file changed, 140 insertions(+), 32 deletions(-) diff --git a/posts/pg_duckdb/index.qmd b/posts/pg_duckdb/index.qmd index 4123158..4ec8e40 100644 --- a/posts/pg_duckdb/index.qmd +++ b/posts/pg_duckdb/index.qmd @@ -6,69 +6,177 @@ categories: [cli, code, postgresql, duckDB] image: thumbnail.png --- - + They are a lot of talks (righfully) on the use of [Apache Parquet](https://parquet.apache.org/), [Apache Arrow](https://arrow.apache.org/) and [DuckDB](https://duckdb.org/). + -Wait, should we drop our trusty Postgresql server? Probably not or at least not soone. What we are seing right now is more extending traditional RDBMS ("Data Warehouse") with the use of some object storage (s3 as an example) to built an hybrid weirdly called a "data lakehouse". +Those three open source technologies and the amount of ressources that a personnal laptop has now have lowered the need of using a classic RDBMS for out of memory tasks (and in some cases maybe the need of using a distributed computing framework like Spark) for data science works. -In this blog post we would like to show how you can quickly convert one of your table from PostgreSQL to a parquet file that can be stored later in a S3 bucket for analysis. +Here we will sho you how to convert a table in postgreSQL (in short PG) into a parquet Hive partitioned data set that you can use duckDB and dplyr verbs on it. +TODO: tldr of every steps -Libraries needed: +## Libraries and data (optional) needed: ```{r} #| label: loading libraries library(duckdb) +library(dplyr, warn.conflicts = FALSE) +library(dbplyr, warn.conflicts = FALSE) ``` +We will use FCC NBM raw data with December 2023's release. You can learn more about on FCC [website](https://broadbandmap.fcc.gov/data-download). + +The table we will be converting has a size of 102 GB (without indexes), has 888 176 676 rows and 12 columns and it is the results of importing around 440 CSVs. + +## Geting your cerdentials -DuckDB has a Postgres extension! +The first step to connect to PG is geting your credentials. We are assumming here that you have a `.pgpass` file located in you home directory (`~/.pgpass`). +The code below will assume that you have this [~/.pgpass](https://www.postgresql.org/docs/current/libpq-pgpass.html) set and that it contains one line. ```{r} #| eval: false +#| label: Geting credentials + +get_cred <- function(path_pgpass) { + pgpass <- readLines(path_pgpass) + cred <- unlist(strsplit(pgpass, ":")) + names(cred) <- c("host", "port", "db", "user", "pwd") + return(cred) +} + +cred <- get_cred("~/.pgpass") +``` + + +## Use DuckDB magic to convert it! + +Well the magic is a 4 steps process: -con <- DBI::dbConnect(duckdb(), dbdir = "dec23.canard") -# install and load PG extension -DBI::dbExecute(con, "INSTALL postgres") -DBI::dbExecute(con, "LOAD postgres") +1. Connect to duckDB +2. Get duckDB's postgres extension +3. Connect to DB (with the credential we have set) +4. Use DuckDB COPY specifying where and how you want it to be partitioned -# get credential from .pgpass -pgpass <- readLines("~/.pgpass") +This will be wrapped in one function: -cred <- unlist(strsplit(pgpass, ":")) +```{r} +#| eval: true +#| label: one simple function + +# yes I am terrible at naming +from_elephant_to_duck <- function(table_name, path_for_parquet, part1, part2) { + # 1. Connect to duckDB + con <- DBI::dbConnect(duckdb(), dbdir = "dec23.canard") + # cleaning up after the function + on.exit(DBI::dbDisconnect(con), add = TRUE) + on.exit(file.remove("dec23.canard"), add = TRUE) + + # 2. install and load PG extension + DBI::dbExecute(con, "INSTALL postgres") + DBI::dbExecute(con, "LOAD postgres") + + # 3. Connect, "attach" tou your PG server + attach_string <- sprintf( + "ATTACH 'dbname=%s user=%s password=%s host=%s' AS db (TYPE POSTGRES, READ_ONLY)", + cred["db"], + cred["user"], + cred["pwd"], + cred["host"] + ) + DBI::dbExecute(con, attach_string) + + # 4. Copy to a parquet + copy_string <- sprintf("COPY + (SELECT * + FROM db.%s) + TO '%s' (FORMAT 'parquet', PARTITION_BY(%s, %s))", + table_name, + path_for_parquet, + part1, part2) + DBI::dbExecute(con, copy_string) + + return(invisible(path_for_parquet)) +} +``` + +Deciding how to partition a parquet is a both a data and businness decisions. +Here `state_abbr` and `technology` are good tradeoff in having good overall size of parquets and fast access to reguraly needed data. + +## Lets do it and do some quick comparisons! + +```{r} +#| eval: false +#| label: one simple function + +start <- Sys.time() +from_elephant_to_duck("staging.dec23", "dec23", "state_abbr", "technology") +end <- Sys.time() +end - start +# Time difference of 58.92108 mins +``` + +On a relatively recent Macbook with a wifi internet speed connection (probably the limiting factor here) it took a bit less than an hour to run `from_elephant_to_duck`. + +We can also compare our 102 GB to the size of parquet (ofc. PG offer additional perks!): -attach_string <- sprintf( - "ATTACH 'dbname=%s user=%s password=%s host=%s' AS db (TYPE POSTGRES, READ_ONLY)", - cred[3], - cred[4], - cred[5], - cred[1] -) +```{bash} +#| eval: false +du -sh dec23/ +# 14 G +``` -DBI::dbExecute(con, attach_string) +Finaly, just for the pleasure let's run some quick query: -DBI::dbExecute(con, "COPY - (SELECT frn, - location_id, - technology, - max_advertised_download_speed, - max_advertised_upload_speed, - business_residential_code, - state_abbr, - block_geoid, - low_latency FROM db.staging.june23) - TO 'dec23' (FORMAT 'parquet', PARTITION_BY(state_abbr, technology))") +```{r} +start <- Sys.time() +con <- DBI::dbConnect(duckdb::duckdb(), shutdown = TRUE, dbdir = "fcc.canard") + +reading_string <- + sprintf("read_parquet('%s/*/*/*.parquet', hive_partitioning = true)", + "dec23") +fcc <- dplyr::tbl(con, reading_string) + +# check number of row +fcc |> + summarize(tot_rows = count(location_id)) |> + collect() + +# A tibble: 1 × 1 +# tot_rows +# +# 1 888176676 + +# let's start one a bit +start <- Sys.time() +# this will count every location_id by state_abbr and frn +# that have low_latency +start <- Sys.time() +q1 <- fcc |> + filter(low_latency == TRUE) |> + summarize( + count_location = n_distinct(location_id), + .by = c(state_abbr, frn) + ) + +rez_q1 <- collect(q1) +end - start +# Time difference of 4.262549 mins DBI::dbDisconnect(con) +file.remove("fcc.canard") ``` + +Impresive isn't it! We will probably dig a bit deeper on those new technologies in more blog post! \ No newline at end of file From 51c05b61c4b783420f54ec0742cc71142a55ba88 Mon Sep 17 00:00:00 2001 From: Olivier Leroy <31417689+defuneste@users.noreply.github.com> Date: Fri, 16 Aug 2024 16:21:28 -0400 Subject: [PATCH 03/11] added an images for pg_duckdb --- posts/pg_duckdb/DuckDB_Postgre SQL_Logo.png | Bin 0 -> 136234 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 posts/pg_duckdb/DuckDB_Postgre SQL_Logo.png diff --git a/posts/pg_duckdb/DuckDB_Postgre SQL_Logo.png b/posts/pg_duckdb/DuckDB_Postgre SQL_Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..615d90144800165738b16a451150d573770f385f GIT binary patch literal 136234 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 BS*id4 literal 0 HcmV?d00001 From ea7146f50a387e92e7a100f83f3e9ccab14cdc63 Mon Sep 17 00:00:00 2001 From: Olivier Leroy <31417689+defuneste@users.noreply.github.com> Date: Fri, 16 Aug 2024 16:22:45 -0400 Subject: [PATCH 04/11] add link to image for pg_duckdb --- posts/pg_duckdb/index.qmd | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/posts/pg_duckdb/index.qmd b/posts/pg_duckdb/index.qmd index 4ec8e40..5e1be5a 100644 --- a/posts/pg_duckdb/index.qmd +++ b/posts/pg_duckdb/index.qmd @@ -3,7 +3,7 @@ title: "From elephant to duck!" author: "Olivier Leroy" date: "2024-07-14" categories: [cli, code, postgresql, duckDB] -image: thumbnail.png +image: `DuckDB_Postgre SQL_Logo.png` --- @@ -179,4 +179,4 @@ DBI::dbDisconnect(con) file.remove("fcc.canard") ``` -Impresive isn't it! We will probably dig a bit deeper on those new technologies in more blog post! \ No newline at end of file +Impresive isn't it! We will probably dig a bit deeper on those new technologies in more blog post! From f6b213c22000499199591505e1f4ef797d953503 Mon Sep 17 00:00:00 2001 From: Olivier Leroy <31417689+defuneste@users.noreply.github.com> Date: Fri, 16 Aug 2024 16:23:46 -0400 Subject: [PATCH 05/11] fix link to image --- posts/pg_duckdb/index.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/posts/pg_duckdb/index.qmd b/posts/pg_duckdb/index.qmd index 5e1be5a..9edc7c6 100644 --- a/posts/pg_duckdb/index.qmd +++ b/posts/pg_duckdb/index.qmd @@ -3,7 +3,7 @@ title: "From elephant to duck!" author: "Olivier Leroy" date: "2024-07-14" categories: [cli, code, postgresql, duckDB] -image: `DuckDB_Postgre SQL_Logo.png` +image: DuckDB_Postgre_SQL_Logo.png --- From 09c66c45be202994d7a1d0048e35d3c0b930c901 Mon Sep 17 00:00:00 2001 From: Olivier Leroy <31417689+defuneste@users.noreply.github.com> Date: Fri, 16 Aug 2024 16:24:14 -0400 Subject: [PATCH 06/11] Rename DuckDB_Postgre SQL_Logo.png to DuckDB_Postgre_SQL_Logo.png --- ...gre SQL_Logo.png => DuckDB_Postgre_SQL_Logo.png} | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename posts/pg_duckdb/{DuckDB_Postgre SQL_Logo.png => DuckDB_Postgre_SQL_Logo.png} (100%) diff --git a/posts/pg_duckdb/DuckDB_Postgre SQL_Logo.png b/posts/pg_duckdb/DuckDB_Postgre_SQL_Logo.png similarity index 100% rename from posts/pg_duckdb/DuckDB_Postgre SQL_Logo.png rename to posts/pg_duckdb/DuckDB_Postgre_SQL_Logo.png From 5d726e82a3bad328890236af0e7b8de7a78a649c Mon Sep 17 00:00:00 2001 From: Olivier Leroy Date: Fri, 16 Aug 2024 16:37:21 -0400 Subject: [PATCH 07/11] eval correctly some code and improve some wording --- posts/pg_duckdb/index.qmd | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/posts/pg_duckdb/index.qmd b/posts/pg_duckdb/index.qmd index 9edc7c6..1f50a42 100644 --- a/posts/pg_duckdb/index.qmd +++ b/posts/pg_duckdb/index.qmd @@ -6,9 +6,7 @@ categories: [cli, code, postgresql, duckDB] image: DuckDB_Postgre_SQL_Logo.png --- - - -They are a lot of talks (righfully) on the use of [Apache Parquet](https://parquet.apache.org/), [Apache Arrow](https://arrow.apache.org/) and [DuckDB](https://duckdb.org/). +They are a lot of talks (righfully) on the use of [Apache Parquet](https://parquet.apache.org/), [Apache Arrow](https://arrow.apache.org/) and [DuckDB](https://duckdb.org/). Let's see an example on how they can be used to convert a table in a PostgresSQL database to a parquet file. -Those three open source technologies and the amount of ressources that a personnal laptop has now have lowered the need of using a classic RDBMS for out of memory tasks (and in some cases maybe the need of using a distributed computing framework like Spark) for data science works. +Those three open source technologies and the amount of resources that a personal laptop has now have lowered the need of using a classic RDBMS for out of memory tasks (and in some cases maybe the need of using a distributed computing framework like Spark) for data science works. ## Libraries and data (optional) needed: @@ -32,13 +32,13 @@ library(dplyr, warn.conflicts = FALSE) library(dbplyr, warn.conflicts = FALSE) ``` -We will use FCC NBM raw data with December 2023's release. You can learn more about on FCC [website](https://broadbandmap.fcc.gov/data-download). +We will use FCC NBM raw data with December 2023's release. You can learn more about it on the FCC [website](https://broadbandmap.fcc.gov/data-download). -The table we will be converting has a size of 102 GB (without indexes), has 888 176 676 rows and 12 columns and it is the results of importing around 440 CSVs. +The table we will be converting has a size of 102 GB (without indexes), has 888 176 676 rows and 12 columns and it is the result of importing around 440 CSVs. -## Geting your cerdentials +## Getting your credentials -The first step to connect to PG is geting your credentials. We are assumming here that you have a `.pgpass` file located in you home directory (`~/.pgpass`). +The first step to connect to PG is getting your credentials. We are assuming here that you have a `.pgpass` file located in you home directory (`~/.pgpass`). The code below will assume that you have this [~/.pgpass](https://www.postgresql.org/docs/current/libpq-pgpass.html) set and that it contains one line. @@ -84,7 +84,7 @@ from_elephant_to_duck <- function(table_name, path_for_parquet, part1, part2) { DBI::dbExecute(con, "INSTALL postgres") DBI::dbExecute(con, "LOAD postgres") - # 3. Connect, "attach" tou your PG server + # 3. Connect, "attach" to your PG server attach_string <- sprintf( "ATTACH 'dbname=%s user=%s password=%s host=%s' AS db (TYPE POSTGRES, READ_ONLY)", cred["db"], @@ -108,8 +108,8 @@ from_elephant_to_duck <- function(table_name, path_for_parquet, part1, part2) { } ``` -Deciding how to partition a parquet is a both a data and businness decisions. -Here `state_abbr` and `technology` are good tradeoff by having good overall size of parquets file and fast access to reguraly needed data. +Deciding how to partition a parquet is both a data and business decision. +Here `state_abbr` and `technology` are a good tradeoff by having good overall size of parquets file and fast access to regularly needed data. ## Let's do it and do some quick comparisons! @@ -125,7 +125,7 @@ end - start On a relatively recent Macbook with a wifi internet speed connection (probably the limiting factor here) it took a bit less than an hour to run `from_elephant_to_duck`. -We can also compare our 102 GB to the size of parquet (ofc. PG offer additional perks!): +We can also compare our 102 GB to the size of parquet files (ofc. PG offer additional perks!): ```{bash} #| eval: false @@ -133,7 +133,7 @@ du -sh dec23/ # 14 G ``` -Finaly, just for the pleasure let's run some quick query: +Finally, just for the pleasure let's run some quick query: ```{r} #| eval: false @@ -175,4 +175,4 @@ DBI::dbDisconnect(con) file.remove("fcc.canard") ``` -Impresive isn't it! We will probably dig a bit deeper on those new technologies in more blog post! +Impressive isn't it! We will probably dig a bit deeper on those new technologies in more blog posts! From b2ce99280c88d9e894a89b0eb591878c77c1b804 Mon Sep 17 00:00:00 2001 From: John Hall Date: Mon, 2 Sep 2024 08:30:32 -0400 Subject: [PATCH 10/11] finish review --- assets/output.svg | 1 + 1 file changed, 1 insertion(+) create mode 100644 assets/output.svg diff --git a/assets/output.svg b/assets/output.svg new file mode 100644 index 0000000..86fb974 --- /dev/null +++ b/assets/output.svg @@ -0,0 +1 @@ +Hello Mermaid
hello
World
Hello
graph
One
Two
Three
Let me think
B
Laptop
iPhone
Database
name
Hello Mermaid
\ No newline at end of file From 1434043bba9d0b1890d8fc90c2d1b7443684c99c Mon Sep 17 00:00:00 2001 From: John Hall Date: Mon, 2 Sep 2024 08:37:49 -0400 Subject: [PATCH 11/11] publish duck db article --- assets/output.svg | 2 +- docs/about.html | 47 +- docs/assets/output.svg | 1 + docs/index.html | 95 ++- docs/listings.json | 1 + docs/posts/awesomejq/index.html | 47 +- docs/posts/fcc-duckdb/index.html | 574 +----------------- docs/posts/formd_intro/index.html | 45 +- docs/posts/mapping_rural_tips/index.html | 98 +-- docs/posts/micropolitan_formd/index.html | 106 ++-- .../pg_duckdb/DuckDB_Postgre_SQL_Logo.png | Bin 0 -> 136234 bytes docs/posts/pg_duckdb/index.html | 222 +++++-- docs/posts/urisa-2023/index.html | 47 +- docs/search.json | 73 ++- docs/site_libs/bootstrap/bootstrap.min.css | 4 +- .../quarto-contrib/glightbox/lightbox.css | 4 + .../quarto-syntax-highlighting.css | 2 + docs/site_libs/quarto-html/quarto.js | 15 +- docs/site_libs/quarto-listing/list.min.js | 2 +- docs/site_libs/quarto-nav/quarto-nav.js | 36 ++ 20 files changed, 592 insertions(+), 829 deletions(-) create mode 100644 docs/assets/output.svg create mode 100644 docs/posts/pg_duckdb/DuckDB_Postgre_SQL_Logo.png diff --git a/assets/output.svg b/assets/output.svg index 86fb974..ed2f7a5 100644 --- a/assets/output.svg +++ b/assets/output.svg @@ -1 +1 @@ -Hello Mermaid
hello
World
Hello
graph
One
Two
Three
Let me think
B
Laptop
iPhone
Database
name
Hello Mermaid
\ No newline at end of file +Hello Mermaid
hello
World
Hello
graph
One
Two
Three
Let me think
B
Laptop
iPhone
Database
name
Hello Mermaid
\ No newline at end of file diff --git a/docs/about.html b/docs/about.html index bbe2532..6378666 100644 --- a/docs/about.html +++ b/docs/about.html @@ -2,12 +2,12 @@ - + -Mapping & Data Analytics Blog @cori-risi - +about – Mapping & Data Analytics Blog @cori-risi
hello
World
Hello
graph
One
Two
Three
Let me think
B
Laptop
iPhone
Database
name
Hello Mermaid \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index bc592cf..4b3311b 100644 --- a/docs/index.html +++ b/docs/index.html @@ -2,12 +2,12 @@ - + -Mapping & Data Analytics Blog @cori-risi - Recent posts +Recent posts – Mapping & Data Analytics Blog @cori-risi - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- -
-
-
-

Fast analytics on FCC (big) dataset

-
-
cli
-
code
-
duckDB
-
broadband
-
-
-
- - -
- -
-
Author
-
-

Olivier Leroy

-
-
- -
-
Published
-
-

August 16, 2024

-
-
- - -
- - -
- - - - -
- - - - - - - - -
- -
- - - - - \ No newline at end of file + \ No newline at end of file diff --git a/docs/posts/formd_intro/index.html b/docs/posts/formd_intro/index.html index 06e0bbb..681b7e6 100644 --- a/docs/posts/formd_intro/index.html +++ b/docs/posts/formd_intro/index.html @@ -2,14 +2,14 @@ - + -Mapping & Data Analytics Blog @cori-risi - Using SEC Form D to estimate venture capital +Using SEC Form D to estimate venture capital – Mapping & Data Analytics Blog @cori-risi
- -