Türkiye Mağara Veritabanı

UMABIS 8’de yapılan sunum için şuraya tıklayabilirsiniz: umabis8 – mağara dB.

Uzun uğraşlar sonucu Türkiye Mağara Veritabanı’nı sonunda kullanıma açıyoruz. Son bir buçuk aydır devam eden test süreci boyunca girilen verilerle şu an itibariyle veri tabanında 504 mağara haritası, 438 mağara, 77 yayın var. Benim için uzun ve yorucu olduğu kadar keyifli de bir süreç oldu. Süreç tabi ki henüz bitmedi, veritabanı gelişmeye devam edecek ve umarım herkesin keyifle kullanacağı ve mağaralarla ilgili her tür bilgiye ulaşabileceği bir platform olacak.

Buradan başta eşim Barbara olmak üzere tüm destek olanlara, sistemi host eden ve kurmama yardımcı olan Sencer Çoltu‘ya, yüzlerce mağara ve yayın girişi yapan, önerilerde bulunan test kullanıcılarına teşekkür ediyorum: Attila Ülgen, Ali Hakan Eğilmez, Emre Can Güzel, Deniz Özgür, Ümit Günhan, Burcu Çavdar, Seyyidi Kerim Parlak, Arkadaş Özakın, Nermin Akın. Sağolun varolun. Uzun bir süreç oldu ama sonunda bir yerlere varmaya başladık.

Türkiye Arkeolojik Yerleşkeleri Yerleşmeleri veritabanı, uzun seneler Türkiye’deki mağaraların saklandığı tek merkezi sistem oldu. Gülgün Gürcan gibi özveriyle çalışan bir çok mağaracının yardımıyla ortaya çıkan bu bu veri bankası, mağaralar hakkında bir sorumuz olduğunda tek başvurabildiğimiz yerdi.

Ancak yıllar geçtikçe TAY’ın mağara veritabanında bazı sorunlar kendisini göstermeye başladı. En büyük sorun, mağaracıların veritabanı üzerinde doğrudan kontrolü olmamasıydı. Yeni mağara girişlerini kimin yaptığı kulaktan kulağa yayılan efsanelerden öğreniyor, bilgileri onlara iletmeye çalışıyorduk.

Bir diğer sorun ise sistemin teknolojik olarak geride kalmış olmasıydı. Mağara aramak, haritada mağaralara bakmak ve mağaraların ayrıntılı bilgilerine ulaşmak gittikçe zorlaşmaya başlamıştı.

Her geçen seni yeni mağaralar keşfediliyor ancak bunların ne kadarının veritabanına girildiğini, tam olarak nerede olduklarını bilemiyorduk. Ülkemizde tarihi ve doğal hazinelerin tahribatı çok yaygın olduğundan, herkese açık bu veritabanında haklı olarak mağaraların tam konumları yoktu. Bu yüzden mağara bulmak konusunda veritabanı pek de kullanışlı değildi.

Daha çağdaş ve dinamik bir veritabanının eksikliğini hepimiz hissediyorduk ama bir şekilde idare etmeyi öğrenmiştik. Bir mağara hakkında bilgi edinmek gerektiğinde email’ler atılıyor, telefonlar açılıyor, bir şekilde bilgiye ulaşılıyordu.

Zaman geçtikçe mağaracılar kendini geliştirmeye başladı. Bu mağaracılar, daha önce gidilmiş mağaralara gidilip yeni yerler keşfetmeye ve haritalandırmaya başladıkça yeni sorunlarla karşılaştılar: haritası çizilen mağaraların ölçümlerine ve istasyon konumlarına ulaşmak mümkün olmadığından, kendi ölçümlerini halihazırda çizilmiş haritalarla birleştirmenin bir yolu yoktu. Ya mağara baştan ölçülecek ya da yeni keşfedilen kollar haritalara göz kararı bir şekilde eklenecekti.

Bunun dışında bazı mağaraların sadece plan veya kesitleri çiziliyor ve mağaranın 3 boyutlu bilgilerini kaybetmiş oluyorduk. Ölçüm için harcanan inanılmaz emek düşünülürse, ölçümleri gözümüz gibi saklamamanın ne büyük bir çılgınlık olduğunu görebilirsiniz.

Veri kaybetmek, bilimle uğraşan herkesin en büyük kabuslarından. Kendi mağara veritabanımızı oluşturma isteğinin arkasındaki en büyük etmenlerden biri de bu. Bu zorlu bir iş olduğu gibi büyük de bir fırsattı. Her zaman ‘ah keşke şu da olsa’ dediğimiz her özelliği veritabanına katabilirdik.

Bir iki başarısız girişim oldu. Bunlardan biri Sencer Çoltu’nun kendi başına yaptığı veritabanı idi. Oldukça güzel ve modern olan bu veritabanı, nedense bazı mağaracılardan tepkiler geldiği için kullanıma giremedi.

Bir deneme de bilgisayar mühendisi olan Barış Kurt, Sencer ve benim bulunduğumuz bir gruptan geldi. Barış ‘Django’ denen sistemin veritabanı kurmak için ne kadar kullanışlı olduğunu gösterdi. Bir kaç kere toplansak da Barış’ın zaman bulamaması yüzünden bu proje de pek ileri gidemedi.

Sonuçta programlama işi bana kalmış oldu. Öncelikle şunu söyleyeyim ki profesyonel bir programcı değilim. Daha önce bu seviyede ve ölçekte bir iş yapmamıştım. Python ve veritabanları ile ilgili tecrübeliydim ama Django, HTML, CSS ve Javascript konusunda deneyimim -bu projeden önce- yok denecek kadar azdı. Tecrübeli programcıların belki çok daha kısa sürede yapabileceği bir işti belki bu ama benim için aylar süren bir öğrenme süreci oldu.

Her ne kadar öğrenme süreci yer yer sıkıntılı olsa da veritabanı ve sayfa geliştikçe bu işten inanılmaz keyif almaya başladım. Gece gündüz kendimi bu işe verdim. Hayatta bana getirisi olacak işlere bu kadar emek vermiş olsaydım şimdiye Dünya’nın kralı olmuştum. Aşağıda ‘commit’ denen kod güncellemelerinin grafiği size ne kadar uykusuz kaldığım konusunda bir fikir verebilir.

Screenshot 2018-04-12 18.12.35
Günün hangi saatinde kaç güncelleme yaptığım grafiği.
Screenshot 2018-04-12 18.16.20
Günlere göre güncelleme sayısı.

Aylarca uğraştıktan sonra ‘neredeyse hazır’ dediğim bir aşamaya geldim. Ama test aşamasına geçince gördük ki daha eklenecek ve değişmesi gereken bir sürü şey vardı. Sanırım bu test aşaması dört ay kadar sürdü. Bu sürede test kullanıcılarının da önerileriyle inanılmaz sayıda değişiklik yaptık.

Halen veritabanında geliştirilmesi gereken şeyler var. Ancak şu aşamada inanıyorum ki artık genel kullanıma açılabilecek durumdayız. Umarım herkesin keyifle kullanacağı ve mağaracıların arasındaki iletişimi arttıran bir oluşum olur.

Veritabanına girmek ya da başvurmak için buraya tıklayın.

Aşağıda ilgilenenler için veritabanı hakkında daha ayrıntılı ve teknik bilgiler var. Sorunuz olursa yorum olarak yazabilirsiniz, elimden geldiğince çabuk cevap vermeye çalışırım.

Veritabanı Kullanımı

Veri Ekleme, Görme İzinleri

Veritabanına kayıtlı her kullanıcı mağara girişi yapabilir ve girilmiş her mağarayı düzenleyebilir. Mağaralar üzerinde yapılan değişikliklerin kaydı tutulduğu için bir yanlışlık olması durumunda tarihsel bilgiler tekrar yüklenecektir.

Kayıtlı olmayan kullanıcıların görebileceği bilgiler oldukça kısıtlı. Mağaraların konumları, kullanıcıların profil bilgileri, yayınlar kayıtlı olmayan kişilerce erişilemiyor. Bunun sebebi de yukarıda belirttiğim gibi ülkemizdeki ‘defineci gerçeği’. Ne yazık ki doğal ve tarihi güzelliklerin kıymetini bilemiyoruz. Şu aşamada veritabanına sadece mağaracılık kulüp/dernek üyelerinin başvurusu kabul ediliyor.

Eğer bilimsel araştırma için veri ihtiyacınız varsa iletişim formunu doldurarak bizimle iletişime geçebilirsiniz. Bilimsel araştırmalar için kaynak göstermek şartı ile (kullanılan haritaları çizen, konumları giren insanların ismi ve izniyle) verilerin kullanılması mümkün olabilir.

Coğrafi Bilgi Sistemi (Harita)

Veritabanının belki de en önemli kısmını bu oluşturuyor. Maalesef her mağaranın koordinatları kayıtlı değil. Koordinatı olmayan ama il, ilçe, mahalle bilgisi olan mağaraların yaklaşık konumlarını Google Haritaları API’sini kullanarak tahmin ediyoruz. Bu mağaralar haritada yuvarlak simge ile işaret ediliyor. Konum bilgisi belli olan mağaralar ise ters damla simgesiyle gösteriliyor.

Aşağıda bugün itibariyle haritanın görüntüsü var. Değişik simgelerin anlamları şöyle:

  • Yuvarlak (doğal) – Köşeli (insan yapısı)
  • Ters Damla (koordinatları var) – Daire (koordinatları adresten tahmin edilmiş)
  • Mor (derin ya da uzun mağaralar) – Yeşil (kısa ya da sığ mağaralar)
  • Aşağı ok (SRT gerektiren, dikey mağaralar) – Yatay ok (yatay mağaralar)

Screenshot 2018-04-12 17.45.59

Mağara Girişi

Lütfen veri girerken çifte giriş yapmamak için önce girilmiş verilere bir göz atın.

Screenshot 2018-04-12 18.33.31
‘Ekle’ menüsünden ‘Mağara’ seçeneğini seçin.
Screenshot 2018-04-12 18.34.45
Her alan ile ilgili bilgi alanın altında yazıyor.

Mağara ekleme ekranında Temel Bilgiler ve Konum adı altında iki ayrı bölüm var. Çift girişi önlemek için, mağara adı girerken benzer isimde mağara varsa size gösteriliyor.

Screenshot 2018-04-12 18.38.30
‘Benzer isim uyarı sistemi’, ‘Diğer Adları’ kutucuğu için de çalışıyor.

Konum girmek için ise duruma göre bir kaç seçeneğiniz var:

Eğer mağaranın koordinatlarını GPS ile almışsanız doğrudan koordinatları girebilirsiniz. Elinizdeki koordinatlar haritada çıkanlardan farklı ise koordinatların WGS84 Datum’unda alındığından emin olun.

Screenshot 2018-04-12 18.48.45
UTM koordinatları metre cinsinden.

Eğer mağaranın koordinatları yoksa ancak mağarayı harita üzerinde bulmak istiyorsanız, mağaranın bulunduğu il, ilçe, köy vs.’nin adını biliyorsanız ‘Adres Arama’ çubuğuna yazın.

Screenshot 2018-04-12 18.40.48

Screenshot 2018-04-12 18.42.04

Çıkan sonuçlarda aradağınız yer varsa tıklayın. Bu, haritayı seçtiğiniz yere odaklayıp yakınlaştıracak. Bu aşamada sol üstten ‘Uydu’ görüntüsü seçeneğini seçerseniz mağarayı haritada bulmanız daha kolay olur.

Screenshot 2018-04-12 18.46.16

Mağaranın yerini bulduktan sonra sağ alttaki ‘Konum Belirle’ düğmesine basarsanız, mağaranın konumunu belirleyeceğiniz işaret haritanın ortasına yerleştirilir.

Screenshot 2018-04-12 18.44.54Screenshot 2018-04-12 18.51.31

Sürükleyip bırakarak bu işareti istediğiniz yere konumlandırabilirsiniz. Eğer mağarayı konumlandırdığınız yerin yakınlarında başka mağara işaretleri varsa, girmek istediğiniz mağaraların bu mağaralardan biri olmadığından emin olun. İşaretlerin üzerine tıklayarak mağaraların adını görebilirsiniz.


Eğer elinizde sadece mağaranın il/ilçe/köy/mahalle bilgisi varsa, bunları ilgili kutucuklara yazın. Bu bilgiler kullanılarak, mağaranın yaklaşık konumu otomatik olarak hesaplanıp kaydedilecektir.

Screenshot 2018-04-12 18.55.59

Eğer mağaranın konumunu koordinat olarak girmiş ya da haritada belirlemişseniz, bu alanlar yine otomatik olarak doldurulur. Yanlış olduğunu düşündüğünüz bilgiyi değiştirebilirsiniz.

Mağara Haritası, Mağara Fotoğrafı, Ölçüm, Yayın, Gözlem Eklemek

Mağarayı kaydettikten sonra mağara bilgilerinin verildiği sayfaya yönlendirileceksiniz. Eklemek istediğiniz veri için ilgili panelin sağ üstündeki ‘Ekle’ düğmesine basabilirsiniz.

Teknik Bilgiler

Veritabanı, python tabanlı Django programlama iskeleti üzerinde yazıldı. Harita fonksiyonları için google maps API‘sini kullanıyoruz. Çeşitli arayüz işlevleri ise javascript tarafından sağlanıyor.

Veritabanının kendisinden bahsetmeden önce biraz veritabanlarının ne olduğundan bahsetmek gerekiyor.

Veritabanı Dediğimiz Nedir?

Diyelim ki kulübümüzün keşfettiği mağaraların kaydını tutmak için bir tablo yaratmak istiyoruz. İlk akla gelen yöntem, tüm bilgilerin aşağıdaki gibi tek bir tabloda tutulması.

Mağara Adı Enlem Boylam
Dupnisa 41.839537 27.555757
Mencilis 41.276202 32.625877

Gayet basit bir çözüm görünüyor değil mi? Eğer tüm mağaraların koordinatlarının bir listesini istersek, Enlem ve Boylam sütunlarını kopyalamamız yeterli. Ama sorun şu ki Dupnisa tek bir mağara değil. Kuru Mağara ve Kız Mağarası ile beraber üç mağaradan oluşan bir mağara sistemi. Bunun gibi birden fazla girişi olan mağaraları nasıl kaydedeceğiz? Bir yöntem her giriş için ayrı sütun açmak:

Mağara Adı Enlem (1. Giriş) Boylam (1. Giriş) Enlem (2. Giriş) Boylam (2. Giriş) Enlem (3. Giriş) Boylam (3. Giriş)
Dupnisa 41.839537 27.555757 41.83885 27.554829 41.837087 27.556244
Mencilis 41.276202 32.625877

Pek hoş bir görüntü değil. Görüntü kirliliğinin ötesinde, artık iki sütunu kopyalayarak bir koordinat listesi elde etmek de mümkün değil. Peki her girişi ayrı birer mağaraymış gibi yazarsak ne olur?

Mağara Adı Enlem Boylam
Dupnisa 41.839537 27.555757
Kuru Mağara 41.83885 27.554829
Kız Mağarası 41.837087 27.556244
Mencilis 41.276202 32.625877

Bu sefer koordinatları toparlamak kolay ama şimdi de tabloda dört mağara varmış gibi görünüyor. Bu ufak gibi görünen ama aslında ciddi bir sorun. Bunun çözümü ise mağaralar ve mağara girişlerini ayrı tablolarda tutmak ve birbiriyle ilişkilendirmek.

Mağaralar

Mağara Sistemi Adı
Dupnisa
Mencilis

Mağara Girişleri

Giriş Adı Enlem Boylam Mağara Sistemi
Ana Giriş 41.839537 27.555757 Dupnisa
Kuru Mağara 41.83885 27.554829 Dupnisa
Kız Mağarası 41.837087 27.556244 Dupnisa
Ana Giriş 41.276202 32.625877 Mencilis

Bu sayede hem elimizde kaç mağara olduğunu kolayca tespit edebiliyor hem de bütün giriş koordinatlarını kolayca elde edebiliyoruz. Bu veritabanı tasarım prensibine “atomizasyon” deniyor, yani elinizdeki veriyi mümkün olduğunca küçük tabloya ayırmak.

Veritabanı dediğimiz şey birbiriyle ilişkilendirilmiş tablolardan ibaret. Aşağıda Türkiye Mağara Veritabanı’nın tablo ilişkilendirme şemasını görüyorsunuz (resime tıklayarak büyütebilirsiniz). Yeşilimsi dikdörtgenlerin her biri birer tablo, içlerinde yazanlar da sütun isimleri ve her sütunda hangi tip verinin kaydedildiği.

caves_lim_models

Bu tabloları ve birbirleriyle bağlantılarının tasarımını aslında verinin özellikleri belirliyor. Yukarıdaki örnekte mağara ve giriş verilerini ayrı tablolarda tutmamız buna güzel bir örnek. Tablo yerine ‘nesne’ sözcüğünü de kullanabiliriz aslında. Veritabanında mağaralarla ilişkili bazı nesneler şöyle:

  • Mağara: Mağara sisteminin bütünü ile ilgili zamana göre değişmeyen bilgiler bu tabloda topanıyor. Konum ile ilgili hiçbir bilgi bu tabloda tutulmuyor.
  • Giriş: Mağaraların, daha doğrusu girişlerinin konumu dahil girişleriyle ilgili özellikler bu tabloda.
  • Gözlemler: Mağaralarla ilgili zamana bağlı olan gözlemler (“Şu tarihte girişin hemen ilerisinde büyük bir yarasa kolonisi gördük”) bu tablo altında tutuluyor. Değişik gözlem çeşitlerine göre (tahribat, yarasa, su seviyesi) değişik bilgiler içeren alt tablolar var.
  • Mağara Haritaları: Haritayı çizenler, ölçenler, ölçülme ve çizilme tarihleri burada.
  • Mağara Fotoğrafları: Fotoğrafı çekenler, çekilme tarihi, fotoğrafın mağara girişi fotoğrafı olup olmadığı.

Yukarıdaki listede bazı nesnelerle ilişkilendirilmiş insanlar var. Test aşamasında gördük ki veritabanında kullanıcı olmayan bir sürü insanın ismi geçiyor. Bu insanların isimlerini yazı olarak kaydetmek yerine ismi geçen her insan için de bir etiket nesnesi oluşturduk. Bu sayede, sistemde kayıtlı olmayan insanların isimlerinin nerelerde geçtiği bilgisine kolaylıkla erişebiliyoruz.

Veritabanını test ederken ihtiyacını hissedip eklediğim diğer bir nesne tipi de Yayınlar. Her mağara bir veya birden fazla yayınla ilişkilendirilebiliyor. Bu yayınların hem toptan listesine, hem de PDF ya da bağlantısı dahil ayrıntılarına ulaşmak mümkün.

Tabi ki normal bir kullanıcı olarak bu karmaşık yapıyı bilmenize gerek yok. Herşey size mümkün olduğunca açıklama gerektirmeyecek bir arayüz ile sunuluyor. Yine de bir sorunuz olursa iletişim formunu doldurarak bize ulaşabilirsiniz.

İyi mağaralar!

 

4 thoughts on “Türkiye Mağara Veritabanı

  1. açıkcası mağaralar konusunda detaylı bilgi elde etmek konusunda bu kadar kısıtlı kaynak mevcut iken bu kadar bilimsel ve özgün bir çalışma ancak adanmış bireyler tarafından ortaya çıkarılabilir gönülden tebrik ve kutluyorum

    Liked by 1 person

Leave a comment