From 33885f3a4b215d1ee3ef3655fc4465510cb9c904 Mon Sep 17 00:00:00 2001 From: Jack <87339414+algojack@users.noreply.github.com> Date: Fri, 17 Dec 2021 12:30:41 -0500 Subject: [PATCH 1/3] Update README.md --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index c552ccfa8..e8ff2165c 100644 --- a/README.md +++ b/README.md @@ -5,10 +5,10 @@ The Indexer is a standalone service that reads committed blocks from the Algorand blockchain and maintains a database of transactions and accounts that are searchable and indexed. -# Minimum Version Requirements +# Tested Requirements Versions * [go 1.16](https://golang.org/dl/) -* [Postgres 11](https://www.postgresql.org/download/) +* [Postgres 13](https://www.postgresql.org/download/) # Quickstart @@ -90,6 +90,8 @@ Alternatively if indexer is running on the same host as the archival node, a sim ~$ algorand-indexer daemon --algod-net yournode.com:1234 -d /path/to/algod/data/dir --postgres "user=readonly password=YourPasswordHere {other connection string options for your database}" ``` +**Note**: Keeping indexer daemon as close as possible to database helps minimize latency. For example if using AWS EC2 and RDS, we suggest putting EC2 in the same VPC, Region, and even Availability Zone. + ### Read only It is possible to set up one daemon as a writer and one or more readers. The Indexer pulling new data from algod can be started as above. Starting the indexer daemon without $ALGORAND_DATA or -d/--algod/--algod-net/--algod-token will start it without writing new data to the database. For further isolation, a `readonly` user can be created for the database. ``` From abf1c0fa55461a76bed047cc383d8dd5f0e09f08 Mon Sep 17 00:00:00 2001 From: Jack <87339414+algojack@users.noreply.github.com> Date: Fri, 17 Dec 2021 13:32:02 -0500 Subject: [PATCH 2/3] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index e8ff2165c..688944753 100644 --- a/README.md +++ b/README.md @@ -78,6 +78,8 @@ There are two primary modes of operation: ### Database updater In this mode, the database will be populated with data fetched from an [Algorand archival node](https://developer.algorand.org/docs/run-a-node/setup/types/#archival-mode). Because every block must be fetched to bootstrap the database, the initial import for a ledger with a long history will take a while. If the daemon is terminated, it will resume processing wherever it left off. +Keeping indexer daemon as close as possible to database helps minimize latency. For example if using AWS EC2 and RDS, we suggest putting EC2 in the same VPC, Region, and even Availability Zone. + You should use a process manager, like systemd, to ensure the daemon is always running. Indexer will continue to update the database as new blocks are created. To start indexer as a daemon in update mode, provide the required fields: @@ -90,8 +92,6 @@ Alternatively if indexer is running on the same host as the archival node, a sim ~$ algorand-indexer daemon --algod-net yournode.com:1234 -d /path/to/algod/data/dir --postgres "user=readonly password=YourPasswordHere {other connection string options for your database}" ``` -**Note**: Keeping indexer daemon as close as possible to database helps minimize latency. For example if using AWS EC2 and RDS, we suggest putting EC2 in the same VPC, Region, and even Availability Zone. - ### Read only It is possible to set up one daemon as a writer and one or more readers. The Indexer pulling new data from algod can be started as above. Starting the indexer daemon without $ALGORAND_DATA or -d/--algod/--algod-net/--algod-token will start it without writing new data to the database. For further isolation, a `readonly` user can be created for the database. ``` From d4ca3ea21bbdac4683a17342a2c3cbf96e46d2cc Mon Sep 17 00:00:00 2001 From: Jack <87339414+algojack@users.noreply.github.com> Date: Fri, 17 Dec 2021 13:35:29 -0500 Subject: [PATCH 3/3] Update README.md Co-authored-by: Will Winder --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 688944753..b4c2c3139 100644 --- a/README.md +++ b/README.md @@ -78,7 +78,7 @@ There are two primary modes of operation: ### Database updater In this mode, the database will be populated with data fetched from an [Algorand archival node](https://developer.algorand.org/docs/run-a-node/setup/types/#archival-mode). Because every block must be fetched to bootstrap the database, the initial import for a ledger with a long history will take a while. If the daemon is terminated, it will resume processing wherever it left off. -Keeping indexer daemon as close as possible to database helps minimize latency. For example if using AWS EC2 and RDS, we suggest putting EC2 in the same VPC, Region, and even Availability Zone. +Keeping the indexer daemon as close as possible to the database helps minimize latency. For example, if using AWS EC2 and RDS, we suggest putting EC2 in the same VPC, Region, and even Availability Zone. You should use a process manager, like systemd, to ensure the daemon is always running. Indexer will continue to update the database as new blocks are created.