Veri bilimcisi için cloud: GCP mi AWS mi?
2026 · cloud · veri mühendisliği · 18 dakika okuma
İş ilanlarına bak: çoğunda "AWS veya GCP deneyimi tercih sebebi" yazar. Peki hangisini öğreneceksin? Hangisi ne işe yarar? Veri bilimcisi gözünden, pratik örneklerle anlatalım.
Önce şunu söyleyelim
GCP ve AWS arasındaki seçim çoğu zaman şirkete göre değişir — ekibin ne kullandığına bak. Ama servis mantığını anlarsan birinden diğerine geçmek 2-3 haftada olur. Kavramlar aynı, isimler farklı.
Bu rehberde veri bilimcisinin en çok karşılaştığı 6 kategoriyi işleyeceğiz: depolama, veri ambarı, notebook ortamı, ML platformu, pipeline/ETL ve maliyet.
1. Depolama — S3 vs Cloud Storage
Her veri projesinin ilk adımı: veriyi bir yere koymak. Ham CSV, Parquet dosyaları, model artifact'ları, log dosyaları — hepsi nesne depolama alanına gider.
# AWS S3 — veri yükleme aws s3 cp veri.parquet s3://bucket-adim/raw/veri.parquet aws s3 sync ./data/ s3://bucket-adim/processed/ # GCP Cloud Storage — aynı işlem gsutil cp veri.parquet gs://bucket-adim/raw/veri.parquet gsutil -m rsync -r ./data/ gs://bucket-adim/processed/
Python'da her ikisi de benzer şekilde kullanılır:
# AWS — boto3
import boto3
s3 = boto3.client('s3')
s3.upload_file('veri.csv', 'bucket-adim', 'raw/veri.csv')
# GCP — google-cloud-storage
from google.cloud import storage
client = storage.Client()
bucket = client.bucket('bucket-adim')
bucket.blob('raw/veri.csv').upload_from_filename('veri.csv')BigQuery kullanacaksan GCS daha kolay. Diğer her şey için S3 — ekosistem daha geniş, Stack Overflow'daki cevap sayısı 3 kat fazla.
2. Veri Ambarı — BigQuery vs Redshift
Veri bilimcisinin en çok zaman geçirdiği yer. Petabyte ölçeğinde SQL, hızlı analiz, BI araçlarına bağlantı.
| Özellik | BigQuery | Redshift |
|---|---|---|
| Fiyat modeli | Taranan veri başına ($5/TB) | Saatlik cluster veya serverless |
| Kurulum | Sıfır — hemen kullan | Cluster oluşturman gerekir |
| ML entegrasyonu | BigQuery ML — SQL ile model eğit | Redshift ML — SageMaker entegrasyonu |
| Coğrafi dağılım | Bölgeden bağımsız sorgulama | Bölgeye bağlı |
| dbt uyumu | Çok iyi | Çok iyi |
| Ücretsiz katman | 10 GB depo + 1 TB/ay sorgu | 2 ay ücretsiz DC2.Large |
BigQuery'nin en büyük avantajı: SQL ile doğrudan ML modeli eğitebilirsin.
-- BigQuery ML — SQL ile lojistik regresyon CREATE OR REPLACE MODEL dataset.churn_model OPTIONS( model_type = 'LOGISTIC_REG', input_label_cols = ['is_churned'], auto_class_weights = TRUE ) AS SELECT kullanici_yasi, son_30_gun_giris, odeme_gecikme_sayisi, plan_tipi, is_churned FROM dataset.kullanici_ozellikleri WHERE tarih < '2025-01-01'; -- Tahmin yap SELECT * FROM ML.PREDICT( MODEL dataset.churn_model, (SELECT * FROM dataset.yeni_kullanicilar) );
3. Notebook Ortamı — Colab vs SageMaker Studio
Keşif analizi, model geliştirme, prototip oluşturma — bunların hepsi notebook ortamında olur.
İkisinde de temel kullanım aynı — Jupyter notebook. Fark ortamın nasıl kurulduğunda ve servislerle entegrasyonda.
# SageMaker Studio'da S3'ten veri okuma
import boto3
import pandas as pd
s3 = boto3.client('s3')
obj = s3.get_object(Bucket='bucket-adim', Key='data/egitim.csv')
df = pd.read_csv(obj['Body'])
# Vertex AI Workbench'te GCS'ten veri okuma
from google.cloud import storage
import pandas as pd
client = storage.Client()
df = pd.read_csv('gs://bucket-adim/data/egitim.csv')
# ya da daha kısa:
df = pd.read_gbq('SELECT * FROM dataset.tablo', project_id='proje-id')4. ML Platformu — Vertex AI vs SageMaker
Model eğitimi, hyperparametre optimizasyonu, deney takibi, model servise alma — bunlar için managed ML platformu kullanmak işleri kolaylaştırır.
# Vertex AI — özel eğitim işi başlatma
from google.cloud import aiplatform
aiplatform.init(project='proje-id', location='europe-west4')
job = aiplatform.CustomTrainingJob(
display_name='churn-modeli',
script_path='train.py',
container_uri='europe-docker.pkg.dev/vertex-ai/training/sklearn-cpu.1-0:latest',
requirements=['pandas', 'scikit-learn'],
)
model = job.run(
dataset=dataset,
replica_count=1,
machine_type='n1-standard-4',
args=['--epochs', '50', '--lr', '0.001'],
)# SageMaker — aynı işlem
import sagemaker
from sagemaker.sklearn import SKLearn
estimator = SKLearn(
entry_point='train.py',
framework_version='1.2-1',
instance_type='ml.m5.xlarge',
instance_count=1,
role=sagemaker.get_execution_role(),
hyperparameters={'epochs': 50, 'lr': 0.001},
)
estimator.fit({'train': 's3://bucket/data/egitim'})| Özellik | Vertex AI | SageMaker |
|---|---|---|
| Olgunluk | Daha yeni, temiz API | Daha eski, daha geniş ekosistem |
| AutoML | Vertex AutoML — tablolar, görüntü, NLP | Autopilot — tablolar odaklı |
| Feature Store | Vertex Feature Store | SageMaker Feature Store |
| MLflow uyumu | Vertex Experiments (MLflow benzeri) | MLflow doğrudan destekleniyor |
| Model deployment | Vertex Prediction endpoints | SageMaker Endpoints |
| Fiyat | Kullanım bazlı | Kullanım bazlı |
5. Pipeline ve ETL — Dataflow vs Glue
Verinin bir yerden alınıp başka bir yere dönüştürülerek taşınması — ETL. Büyük ölçekte bunu yönetmek için managed servisler.
# AWS Glue — basit ETL scripti
import sys
from awsglue.context import GlueContext
from pyspark.context import SparkContext
sc = SparkContext()
glueContext = GlueContext(sc)
# S3'ten veri oku
datasource = glueContext.create_dynamic_frame.from_catalog(
database='veritabanim',
table_name='ham_satislar'
)
# Dönüştür
from awsglue.transforms import ApplyMapping
donusturulmus = ApplyMapping.apply(
frame=datasource,
mappings=[
('satis_id', 'string', 'satis_id', 'string'),
('tutar', 'string', 'tutar', 'double'),
('tarih', 'string', 'tarih', 'date'),
]
)
# Redshift'e yaz
glueContext.write_dynamic_frame.from_jdbc_conf(
frame=donusturulmus,
catalog_connection='redshift-baglantim',
connection_options={'dbtable': 'temiz_satislar', 'database': 'analizdb'},
)6. Hangi senaryoda hangisi?
Ücretsiz başlamak
Her iki platform da ücretsiz katmanla başlamana izin veriyor:
Başlangıç için tavsiyem: GCP ücretsiz katmanından BigQuery'e gir, birkaç GB'lık açık veri setiyle SQL yaz. Hem serverless demek ne demek anlarsın, hem de BigQuery'nin hızına şaşırırsın.
Özet — Hızlı Referans
| Kategori | GCP Servisi | AWS Servisi |
|---|---|---|
| Nesne depolama | Cloud Storage (GCS) | Amazon S3 |
| Veri ambarı | BigQuery | Redshift |
| Notebook | Colab Enterprise / Workbench | SageMaker Studio |
| ML platformu | Vertex AI | SageMaker |
| Batch ETL | Dataflow / Dataproc | Glue / EMR |
| Pipeline orkestrasyon | Cloud Composer (Airflow) | MWAA (Airflow) |
| Streaming | Pub/Sub + Dataflow | Kinesis + Lambda |
| Data catalog | Dataplex | Glue Data Catalog |
| BI araçları | Looker Studio | QuickSight |
Sonraki adım: ETL nedir? Veriyi taşımanın sistematik yolu →