İndeksleyici düğümü nasıl çalıştırılır?

SubQuery TeamYaklaşık 1 dakika

İndeksleyici düğümü nasıl çalıştırılır?

Video rehberi


Giriş

İndeksleyici düğümü çalıştırmak, Docker kullanmanın veya SubQuery Managed Serviceopen in new window'de sizin için barındırılan bir projenin yanı sıra diğer bir alternatif seçenektir. Daha fazla zaman ve çaba gerektirir, ancak SubQuery'nin perde arkasında nasıl çalıştığını daha iyi anlamanıza yardımcı olacaktır.

veritabanı

Altyapınızda bir indeksleyici düğümü çalıştırmak için bir Postgres veritabanı gerekecektir. hereopen in new window tıklayarak Postgres'i yükleyebilir ve sürümün 12 veya üzeri olduğundan emin olun.

subql/node indirin

Ardından, bir SubQuery düğümü çalıştırmak için aşağıdaki komutu çalıştırın:

npm kurulumu -g @subql/düğüm

-g bayrağı, onu global olarak kurmak anlamına gelir; bu, OSX'te, konumun /usr/local/lib/node_modules olacağı anlamına gelir.

Yüklendikten sonra, aşağıdakileri çalıştırarak sürümü kontrol edebilirsiniz:

> subql-node --version
0.19.1

DB yapılandırmalarını ayarlama

Daha sonra, aşağıdaki çevresel değişkenleri ayarlamanız gerekir:

DB_USER=postgres'i dışa aktar
DB_PASS=postgres'i dışa aktar
dışa aktar DB_DATABASE=postgres
dışa aktar DB_HOST=localhost
DB_PORT'u dışa aktar=5432

Tabi yukarıdaki anahtarlar için farklı değerleriniz varsa, lütfen ona göre ayarlayın. env komutunun geçerli ortam değişkenlerini görüntüleyeceğini ve bu işlemin bu değerleri yalnızca geçici olarak ayarladığını unutmayın. Yani, bunlar yalnızca uçbirim oturumu süresince geçerlidir. Bunları kalıcı olarak ayarlamak için, bunun yerine ~/bash_profile depolayın.

Projeyi indeksleme

Bir projeyi indekslemeye başlamak için proje klasörünüze gidin ve aşağıdaki komutu çalıştırın:

subql-node -f .

Hazır bir projeniz yoksa, git clone https://github.com/subquery/subql-helloworld. İndeksleyici düğümünün çalıştığını ve blokları indekslemeye başladığını görmelisiniz.

Postgres'i İnceleme

Postgres'e giderseniz, iki adet tablonun oluşturulduğunu görüyor olmalısınız. public.subqueries and subquery_1.starter_entities.

public.subqueries indeksleyici, "mevcut durumu anlamak" için başladığında yalnızca bir satırı kontrol eder, böylece bir sonrakinde nereye gideceğini bilir. starter_entities tablosu indeksleri içerir. Verileri görüntülemek için select (*) from subquery_1.starter_entities çalıştırın.