Site icon Learning & Doing

Tracking Cryptocurrency Exchange Trades with Google Cloud Platform in Real-Time

trades

“Tracking Cryptocurrency Exchange Trades with Google Cloud Platform in Real-Time”

Pengantar

Dunia keuangan saat ini kompleks, dan teknologi lama yang digunakan untuk membangun saluran data keuangan tidak mengikuti. Dengan berbagai bursa keuangan yang beroperasi di seluruh dunia dan permintaan pengguna global, saluran data ini harus cepat, andal, dan dapat diskalakan.

Saat ini, menggunakan pendekatan ekonometrik—menerapkan model ke data keuangan untuk meramalkan tren masa depan—tidak berfungsi untuk prediksi keuangan waktu nyata. Dan data yang lama, tidak akurat, atau dari satu sumber tidak diterjemahkan menjadi data yang dapat diandalkan untuk digunakan oleh lembaga keuangan.

Praktikum

Task 1. Create your lab resources

gcloud beta compute instances create crypto-driver \
--zone=us-east1-c \
--machine-type=n1-standard-1 \
--subnet=default \
--network-tier=PREMIUM \
--maintenance-policy=MIGRATE \
--service-account=$(gcloud iam service-accounts list --format='value(email)' --filter="compute") \
--scopes=https://www.googleapis.com/auth/cloud-platform \
--image-family=debian-11 \
--image-project=debian-cloud \
--boot-disk-size=20GB \
--boot-disk-type=pd-standard \
--boot-disk-device-name=crypto-driver

Connect to the instance via SSH

sudo -s
apt-get update -y
sudo apt install python3-pip -y
sudo pip3 install -U virtualenv
virtualenv -p python3 venv
source venv/bin/activate

sudo apt -y --allow-downgrades install openjdk-11-jdk git maven google-cloud-sdk=349.0.0-0 google-cloud-sdk-cbt=349.0.0-0
export PROJECT=$(gcloud info --format='value(config.project)')
export ZONE=$(curl "http://metadata.google.internal/computeMetadata/v1/instance/zone" -H "Metadata-Flavor: Google"|cut -d/ -f4)
gcloud services enable bigtable.googleapis.com \
bigtableadmin.googleapis.com \
dataflow.googleapis.com \
--project=${PROJECT}
gcloud bigtable instances create cryptorealtime \
    --cluster=cryptorealtime-c1 \
    --cluster-zone=${ZONE} \
    --display-name=cryptorealtime \
    --cluster-storage-type=HDD \
    --instance-type=DEVELOPMENT
cbt -instance=cryptorealtime createtable cryptorealtime families=market
gsutil mb -p ${PROJECT} gs://realtimecrypto-${PROJECT}
git clone https://github.com/GoogleCloudPlatform/professional-services

cd professional-services/examples/cryptorealtime
mvn clean install
./run.sh ${PROJECT} \
cryptorealtime gs://realtimecrypto-${PROJECT}/temp \
cryptorealtime market
cbt -instance=cryptorealtime read cryptorealtime

Task 2. Examine the Dataflow pipeline

Task 3. Visualizing the data

gcloud compute --project=${PROJECT} firewall-rules create crypto-dashboard \
--direction=INGRESS \
--priority=1000 \
--network=default \
--action=ALLOW \
--rules=tcp:5000 \
--source-ranges=0.0.0.0/0 \
--target-tags=crypto-console \
--description="Open port 5000 for crypto visualization tutorial"
gcloud compute instances add-tags crypto-driver --tags="crypto-console" --zone=${ZONE}
cd frontend/

pip install -r requirements.txt

pip uninstall  Flask Jinja2

pip install Flask Jinja2

python app.py ${PROJECT} cryptorealtime cryptorealtime market
gcloud compute instances list --format='value(EXTERNAL_IP)' --filter="name:crypto-driver"
http://<external-ip>:5000/stream

Task 4. Clean up

gcloud dataflow jobs cancel \
$(gcloud dataflow jobs list \
--format='value(id)' \
--filter="name:runthepipeline*" \
--region="us-central1")
export PROJECT=<Your Project ID>
gsutil -m rm -r gs://realtimecrypto-${PROJECT}/*
gsutil rb gs://realtimecrypto-${PROJECT}
gcloud bigtable instances delete cryptorealtime

Penutup

Sahabat Blog Learning & Doing demikianlah penjelasan mengenai Tracking Cryptocurrency Exchange Trades with Google Cloud Platform in Real-Time. Semoga Bermanfaat . Sampai ketemu lagi di postingan berikut nya.

Exit mobile version