Veritabanları

Data Engineering'e Giriş

Vincent Vankrunkelsven

Data Engineer, DataCamp

Veritabanları nedir?

 

Bir veritabanı görseli

Genellikle büyük, hızlı arama ve getirme için özel olarak düzenlenmiş veri koleksiyonu.

 

  • Veriyi tutar
  • Veriyi düzenler
  • Veriye DBMS ile eriş/ara
Data Engineering'e Giriş

Veritabanları ve dosya depolama

Veritabanları

 

Bir veritabanı görseli

  • Çok düzenli
  • Arama, çoğaltma vb. işlevler

Dosya sistemleri

 

Bir dosya görseli

  • Daha az düzenli
  • Basit, az ek işlev
Data Engineering'e Giriş

Yapısal ve yapısal olmayan veriler

Yapısal: veritabanı şeması

  • İlişkisel veritabanı

 

Yarı yapısal

  • JSON

 

Yapısal olmayan: şemasız, dosyaya daha çok benzer

  • Videolar, fotoğraflar

Bir veritabanı görseli

 

{ "key": "value"}

 

Bir dosya görseli

Data Engineering'e Giriş

SQL ve NoSQL

SQL

  • Tablolar
  • Veritabanı şeması
  • İlişkisel veritabanları

 

MySQL Görseli

PostgreSQL Görseli

NoSQL

  • İlişkisel olmayan veritabanları
  • Yapısal veya yapısal olmayan
  • Anahtar-değer depoları (örn. önbellekleme)
  • Belge veritabanı (örn. JSON nesneleri)

 

Redis/MongoDB Görseli

Data Engineering'e Giriş

SQL: Veritabanı şeması

-- Müşteri Tablosu oluştur 
CREATE TABLE "Customer" (
  "id" SERIAL NOT NULL,
  "first_name" varchar,
  "last_name" varchar,
  PRIMARY KEY ("id")
);

-- Sipariş Tablosu oluştur 
CREATE TABLE "Order" (
  "id" SERIAL NOT NULL,
  "customer_id" integer REFERENCES "Customer",
  "product_name" varchar,
  "product_price" integer,
  PRIMARY KEY ("id")
);

Müşteri ve Sipariş için Veritabanı Şeması

-- Yabancı anahtar üzerinden iki tabloyu birleştir
SELECT * FROM "Customer"
INNER JOIN "Order"
ON "customer_id" = "Customer"."id";
 id | first_name | ... | product_price
  1 | Vincent    | ... |            10
Data Engineering'e Giriş

SQL: Yıldız şema

Yıldız şema, bir veya daha çok olgu tablosunun herhangi sayıda boyut tablosuna başvurduğu yapıdır.

Müşteriler ve Siparişler için Yıldız Şema Diyagramı

  • Olgular: gerçekleşen olaylar (ör. Ürün Siparişleri)
  • Boyutlar: bağlamsal bilgiler (ör. Müşteri Bilgileri)
1 https://en.wikipedia.org/wiki/Star_schema
Data Engineering'e Giriş

Hadi pratik yapalım!

Data Engineering'e Giriş

Preparing Video For Download...