Her şey bir makaleyle başladı
1970'te IBM'de çalışan matematikçi Edgar F. Codd, "A Relational Model of Data for Large Shared Data Banks" başlıklı makalesini yayımladı. O güne kadar veriler hiyerarşik (ağaç) veya ağ yapılı veritabanlarında tutuluyordu ve bir veriye ulaşmak için programcının verinin fiziksel olarak nerede durduğunu bilmesi gerekiyordu.
Codd'un fikri basit ama devrimciydi: Veriyi tablolar (matematikteki adıyla ilişkiler / relations) halinde düşün, kullanıcı ne istediğini söylesin, nasıl bulunacağına sistem karar versin. Bugün SQL'in “bildirimsel” (declarative) dil olmasının kökü budur.
Zaman çizelgesi
- 1970 · Codd ilişkisel modeli yayımlar. İlişkisel cebir ve ilişkisel hesap kavramlarını tanımlar.
- 1974 · IBM'den Donald Chamberlin ve Raymond Boyce, SEQUEL (Structured English Query Language) dilini tanıtır. Amaç, matematik bilmeyen kullanıcıların da sorgu yazabilmesiydi.
- 1974–1979 · IBM'in System R projesi, ilişkisel modelin pratikte hızlı çalışabileceğini kanıtlar. Maliyet tabanlı sorgu optimizasyonu burada doğar.
- 1977 · SEQUEL adı, bir İngiliz havacılık şirketinin ticari markasıyla çakıştığı için SQL olarak kısaltılır. Bu yüzden bugün hem “es-kyu-el” hem “sikuel” okunuşu yaygındır.
- 1979 · Relational Software Inc. (bugünkü Oracle), ilk ticari SQL veritabanını piyasaya sürer. IBM'den önce davranır.
- 1981–1983 · IBM SQL/DS ve DB2'yi çıkarır. UC Berkeley'de Ingres projesi (PostgreSQL'in atası) yükselir.
- 1986 · SQL, ANSI tarafından, 1987'de ISO tarafından standart kabul edilir (SQL-86).
- 1989 / 1992 · SQL-89 ve büyük revizyon SQL-92: JOIN sözdizimi, CASE, CAST ve bugün temel saydığımız pek çok özellik.
- 1995–1996 · MySQL ve PostgreSQL doğar; açık kaynak veritabanları web'in omurgası olur.
- 1999 · SQL:1999: Özyinelemeli sorgular (WITH RECURSIVE), trigger'lar, boolean tipi.
- 2000 · D. Richard Hipp SQLite'ı yazar. Bugün telefonlarda, tarayıcılarda, uçaklarda çalışan, dünyanın en yaygın veritabanıdır. Bu uygulama da SQLite kullanır.
- 2003 · SQL:2003: Pencere fonksiyonları (OVER, PARTITION BY), MERGE, XML desteği.
- 2006–2010 · Büyük veri ve NoSQL dalgası: Hadoop, MongoDB, Cassandra. “SQL ölüyor mu?” tartışmaları.
- 2010'lar · Hive, Spark SQL, Presto, BigQuery, Redshift, Snowflake: Büyük veri dünyası SQL'e geri döner.
- 2011 / 2016 · SQL:2011 zamansal (temporal) tablolar; SQL:2016 JSON desteği ve satır deseni eşleme.
- 2023 · SQL:2023: Özellik grafikleri için SQL/PGQ ve JSON veri tipi.
Neden hâlâ SQL?
50 yılı aşkın sürede programlama dilleri gelip geçti; SQL kaldı. Sebebi, “neyi istediğini söyle” yaklaşımının veriyle çalışmak için çok doğal olması ve tüm büyük veri platformlarının ortak dili haline gelmesi. Bir veri analisti, veri bilimci ya da veri mühendisi için SQL bugün hâlâ iş ilanlarında en sık istenen teknik beceridir.