Veri modelleme nedir?
Veri modelleme, herhangi bir kuruluşun bilgi toplama ve yönetim sistemlerini tanımlayan görsel bir sunum veya ayrıntılı plan oluşturma sürecidir. Bu ayrıntılı plan veya veri modeli; veri analistleri, bilim insanları ve mühendisler gibi farklı paydaşların kuruluşun verilerine ilişkin birleştirilmiş bir görünüm oluşturmasına yardımcı olur. Bu model; işletmelerin hangi verileri topladığını, farklı veri kümeleri arasındaki ilişkiyi, ayrıca verileri depolamak ve analiz etmek için kullanılacak yöntemleri özetler.
Veri modelleme neden önemlidir?
Günümüzde kuruluşlar, pek çok farklı kaynaktan büyük miktarda veri toplar. Ancak ham veriler yeterli değildir. İş konusunda kârlı kararlar vermenizde size rehberlik edebilecek eyleme geçirilebilir öngörüler için verileri analiz etmeniz gerekir. Doğru bir veri analizi için verilerin verimli şekilde toplanması, depolanması ve işlenmesi gerekir. Çeşitli veritabanı teknolojileri ve veri işleme araçları vardır ve farklı veri kümeleri, verimli bir analiz için farklı araçlar gerektirir.
Veri modelleme, size verilerinizi anlama ve bu verileri depolamak ve yönetmek için doğru teknoloji seçimlerini yapma şansı verir. Bir mimarın bir evi inşa etmeden önce ayrıntılı bir plan tasarladığı gibi, iş paydaşları da kuruluşları için veritabanı çözümleri geliştirmeden önce bir veri modeli tasarlar.
Veri modelleme şu avantajları sunar:
- Veritabanı yazılım geliştirmedeki hataları azaltır
- Veritabanı tasarımı ve oluşturma konusunda hız ve verimlilik sağlar
- Kuruluş genelinde veri belgeleme ve sistem tasarımı konusunda tutarlılık oluşturur
- Veri mühendisleri ile iş zekası ekipleri arasındaki iletişimi kolaylaştırır
Veri modeli türleri nelerdir?
Veri modelleme işe genellikle verileri kavramsal olarak sunarak ve ardından seçilen teknolojiler bağlamında tekrar sunarak başlar. Analistler ve paydaşlar, veri tasarımı aşamasında birkaç farklı türde veri modeli oluşturur. Veri modellerinin üç ana türü şunlardır:
Kavramsal veri modeli
Kavramsal veri modelleri, verilere ilişkin büyük bir resim sunar. Bu modeller şunları açıklar:
- Sistemin hangi verileri içerdiği
- Veri öznitelikleri ve koşulları veya veriler üzerindeki kısıtlamalar
- Verinin ilişkili olduğu iş kuralları
- Verilerin nasıl en iyi şekilde organize edildiği
- Güvenlik ve veri bütünlüğü gereksinimleri
Kavramsal modeli genellikle iş paydaşları ve analistler oluşturur. Bu, resmi veri modelleme kurallarına uymayan diyagram şeklinde basit bir sunumdur. Önemli olan, hem teknik hem de teknik olmayan paydaşların ortak bir vizyonu paylaşmalarına ve veri projelerinin amacı, kapsamı ve tasarımı üzerinde uzlaşmalarına yardımcı olmasıdır.
Kavramsal veri modeli örneği
Örneğin, bir otomobil bayisine ilişkin kavramsal veri modeli, veri varlıklarını şu şekilde gösterebilir:
- Bayinin sahip olduğu farklı satış noktaları hakkındaki bilgileri temsil eden bir Araç Galerisi varlığı
- Bayinin halihazırda stokta bulundurduğu çeşitli araçları temsil eden bir Araç varlığı
- Bayiden alışveriş yapmış olan tüm müşterileri temsil eden bir Müşteri varlığı
- Fiili satışla ilgili bilgileri temsil eden bir Satış varlığı
- Bayi için çalışan tüm satış görevlileri hakkındaki bilgileri temsil eden bir Satış Görevlisi varlığı
Bu kavramsal model, aşağıdaki gibi iş gereksinimlerini de içerir:
- Her araç belirli bir araç galerisine ait olmalıdır.
- Her satışla ilişkili en az bir satış görevlisi ve bir müşteri olmalıdır.
- Her aracın bir marka adı ve ürün numarası olmalıdır.
- Her müşteri, telefon numarasını ve e-posta adresini vermelidir.
Dolayısıyla, kavramsal modeller, iş kuralları ile temelde yer alan fiziksel veritabanı yönetim sistemi (DBMS) arasında bir köprü işlevi görür. Kavramsal veri modellerine, etki alanı modelleri de denir.
Mantıksal veri modeli
Mantıksal veri modelleri, kavramsal veri sınıflarını teknik veri yapılarıyla eşleştirir. Bu modeller, kavramsal veri modelinde tanımlanan veri kavramları ve karmaşık veri ilişkileri hakkında daha fazla ayrıntı verir. Örneğin:
- Çeşitli özniteliklerin veri türleri (ör. dize veya sayı)
- Veri varlıkları arasındaki ilişkiler
- Verilerdeki başlıca öznitelikler veya temel alanlar
Veri mimarları ve analistleri, mantıksal modeli oluşturmak için birlikte çalışır. Temsili oluşturmak için birkaç resmi veri modelleme sisteminden birini takip ederler. Kimi zaman, çevik ekipler bu adımı atlamayı ve kavramsal modelden doğrudan fiziksel modele geçmeyi seçer. Bununla birlikte, bu modeller veri ambarları adı verilen geniş veritabanlarını ve otomatik raporlama sistemlerini tasarlama konusunda faydalıdır.
Mantıksal veri modeli örneği
Otomobil bayisi örneğimizde, mantıksal veri modeli, kavramsal modeli genişletecek ve aşağıdaki gibi veri sınıflarını daha derinlemesine inceleyecektir:
- Araç Galerileri varlığı, metin verileri olarak ad ve konum, sayısal veriler olarak bir telefon numarası gibi alanlara sahiptir.
- Müşteriler varlığı, xxx@ornek.com veya xxx@ornek.com.yy formatında bir e-posta adresi alanına sahiptir. Alan adı 100 karakterden uzun olamaz.
- Satış varlığı, tarih veri türü olarak satış tarihi ve ondalık veri türü olarak tutar ile birlikte alanlarda bir müşterinin adını ve bir satış görevlisinin adını içerir.
Dolayısıyla, mantıksal modeller, kavramsal veri modeli ile geliştiricilerin veritabanını oluşturmak için kullandığı temel teknoloji ve veritabanı dili arasında bir köprü işlevi görür. Bununla birlikte, bu modeller teknolojiden bağımsızdır ve bunları herhangi bir veritabanı dilinde uygulayabilirsiniz. Veri mühendisleri ve paydaşlar, teknoloji kararlarını genellikle mantıksal bir veri modeli oluşturduktan sonra alır.
Fiziksel veri modeli
Fiziksel veri modelleri, mantıksal veri modellerini belirli bir DBMS teknolojisiyle eşleştirir ve yazılımın terminolojisini kullanır. Örneğin, şunlarla ilgili ayrıntılar verir:
- DBMS'de temsil edilen veri alanı türleri
- DBMS'de temsil edilen veri ilişkileri
- Performans ayarı gibi ek ayrıntılar
Veri mühendisleri, fiziksel modeli nihai tasarım uygulamasından önce oluşturur. Ayrıca, tasarımın tüm yönlerini kapsadıklarından emin olmak için resmi veri modelleme tekniklerini de takip ederler.
Fiziksel veri modeli örneği
Otomobil bayisinin, Amazon S3 Glacier Esnek Veri Alma'da bir veri arşivi oluşturmaya karar verdiğini varsayalım. Bayinin fiziksel veri modeli şu teknik özellikleri açıklar:
- Satış özelliğinde satış tutarı, kayan veri türüdür ve satış tarihi bir zaman damgası veri türüdür.
- Müşteriler özelliğinde, müşteri adı bir dize veri türüdür.
- S3 Glacier Esnek Veri Alma terminolojisinde kasa, verilerinizin coğrafi konumudur.
Fiziksel veri modeliniz, kasanızı hangi AWS Bölgesinde oluşturacağınız gibi ek ayrıntıları da içerir. Dolayısıyla, fiziksel veri modeli, mantıksal veri modeli ile nihai teknoloji uygulaması arasında bir köprü işlevi görür.
Veri modelleme tekniklerinin türleri nelerdir?
Veri modelleme teknikleri, farklı veri modelleri oluşturmak için kullanabileceğiniz farklı yöntemlerdir. Yaklaşımlar, veri tabanı kavramları ve veri yönetişimi alanındaki yeniliklerin sonucunda zaman içinde gelişmiştir. Veri modellemenin başlıca türleri aşağıda verilmiştir:
Hiyerarşik veri modelleme
Hiyerarşik veri modellemede, çeşitli veri unsurları arasındaki ilişkileri ağaç benzeri bir biçimde sunabilirsiniz. Hiyerarşik veri modelleri, ana veya kök veri sınıflarını birkaç alt öğeyle eşleştirerek bir-çok ilişkiyi temsil eder.
Otomobil bayisi örneğinde, bir araç galerisi birden fazla araca ve birden fazla satış görevlisine sahip olabileceğinden, ana sınıf olan Araç Galerileri, alt öğeler olarak hem Araçlar hem de Satış Görevlileri varlıklarına sahip olacaktır.
Grafik veri modelleme
Hiyerarşik veri modelleme zaman içinde grafik veri modellemeye dönüşmüştür. Grafik veri modelleri, varlıkları eşit olarak ele alan veri ilişkilerini temsil eder. Varlıklar, herhangi bir ana veya alt öğe kavramı olmadan bir-çok veya çok-çok ilişkide birbirleriyle bağlantı kurabilir.
Örneğin, bir araç galerisi birden fazla satış görevlisine sahip olabilir ve bir satış görevlisi, vardiyaları konuma göre değişiyorsa birden fazla araç galerisinde çalışabilir.
İlişkisel veri modelleme
İlişkisel veri modelleme, veri sınıflarını tablolar halinde görselleştiren popüler bir modelleme yaklaşımıdır. Farklı veri tabloları, gerçek dünyadaki varlık ilişkisini temsil eden anahtarları kullanarak birleşir veya birbirine bağlanır. Yapılandırılmış verileri depolamak için ilişkisel veritabanı teknolojisini kullanabilirsiniz ve ilişkisel veri modeli, ilişkisel veritabanı yapınızı temsil etmek için kullanışlı bir yöntemdir.
Örneğin, otomobil bayisi, burada gösterildiği gibi, Satış Görevlileri tablosunu ve Araçlar tablosunu temsil eden ilişkisel veri modellerine sahip olacaktır:
Satış Görevlisi Kimliği | Ad |
1 | Jane |
2 | John |
Araç Kimliği | Araç Markası |
C1 | XYZ |
C2 | ABC |
Satış Görevlisi Kimliği ve Araç Kimliği, gerçek dünyadaki varlıkları tek tek ve benzersiz şekilde tanımlayan birincil anahtarlardır. Araç galerisi tablosunda, bu birincil anahtarlar veri segmentlerini bağlayan yabancı anahtarlar olarak işlev görür.
Araç Galerisi Kimliği | Araç Galerisi adı | Satış Görevlisi Kimliği | Araç Kimliği |
S1 | NY Araç Galerisi | 1 | C1 |
İlişkisel veritabanlarında, birincil ve yabancı anahtarlar veri ilişkisini göstermek için birlikte çalışır. Önceki tablo, araç galerilerinin satış görevlilerine ve araçlara sahip olabileceğini göstermektedir.
Varlık-ilişki veri modelleme
Varlık-ilişki (ER) veri modelleme, bir veritabanındaki varlıklar arasındaki ilişkileri temsil etmek için resmi diyagramlar kullanır. Veri mimarları, verileri sunmak için çeşitli ER modelleme araçları kullanır.
Nesneye dayalı veri modelleme
Nesneye dayalı programlama, verileri depolamak için nesneler adı verilen veri yapılarını kullanır. Bu veri nesneleri, gerçek dünyadaki varlıkların yazılım soyutlamalarıdır. Örneğin, nesneye dayalı bir veri modelinde, otomobil bayisi ad, adres ve telefon numarası gibi özniteliklere sahip Müşteriler gibi veri nesnelerine sahip olacaktır. Gerçek dünyadaki her bir müşterinin, bir müşteri veri nesnesi olarak temsil edilmesi için müşteri verilerini depolardınız.
Nesneye dayalı veri modelleri, ilişkisel veri modellerinin birçok sınırlamasının üstesinden gelir ve çoklu medya veritabanlarında popülerdir.
Boyutsal veri modelleme
Modern kurumsal bilişim, analiz için büyük miktarda veri depolamak amacıyla veri ambarı teknolojisini kullanır. Yüksek hızlı veri depolama ve bir veri ambarından veri alma için boyutsal veri modelleme projelerini kullanabilirsiniz. Boyutsal modeller, çoğaltmayı ve yedekli verileri kullanır ve veri depolama için daha az alan kullanmak yerine performansa öncelik verir.
Örneğin, boyutsal veri modellerinde otomobil bayisi Araç, Araç Galerisi ve Zaman gibi boyutlara sahiptir. Araç boyutu ad ve marka gibi özniteliklere sahipken, Araç Galerisi boyutu; ülke, şehir, cadde adı ve araç galerisi adı gibi hiyerarşilere sahiptir.
Veri modelleme süreci nedir?
Veri modelleme süreci, kapsamlı bir veri modeli oluşturana kadar tekrar tekrar gerçekleştirmeniz gereken bir dizi adımı takip eder. Herhangi bir kuruluşta, eksiksiz bir veri görünümü oluşturmak için çeşitli paydaşlar bir araya gelir. Adımlar, veri modelleme türüne bağlı olarak değişiklik gösterse de genel bakışı aşağıda bulabilirsiniz.
1. Adım: Varlıkları ve özelliklerini tanımlama
Veri modelinizdeki tüm varlıkları tanımlayın. Her varlık, mantıksal olarak diğer tüm varlıklardan farklı olmalıdır ve insanları, yerleri, nesneleri, kavramları veya olayları temsil edebilir. Her varlık, bir veya daha fazla benzersiz özelliğe sahip olduğundan birbirinden farklıdır. Veri modelinizde, varlıkları isimler ve öznitelikleri sıfatlar olarak düşünebilirsiniz.
2. Adım: Varlıklar arasındaki ilişkileri tanımlama
Farklı varlıklar arasındaki ilişkiler, veri modellemenin merkezinde yer alır. İş kuralları başlangıçta bu ilişkileri kavramsal düzeyde tanımlar. İlişkileri, veri modelinizdeki fiiller olarak düşünebilirsiniz. Örneğin, satış görevlisi pek çok araç satar ya da araç galerisi çok sayıda satış görevlisini işe alır.
3. Adım: Veri modelleme tekniğini tanımlama
Varlıklarınızı ve bunların ilişkilerini kavramsal olarak anladıktan sonra, kullanım örneğinize en uygun veri modelleme tekniğini belirleyebilirsiniz. Örneğin, yapılandırılmış veriler için ilişkisel veri modellemeyi ve yapılandırılmamış veriler için boyutsal veri modellemeyi kullanabilirsiniz.
4. Adım: Optimize etme ve yineleme
Veri modelinizi teknoloji ve performans gereksinimlerinize uyacak şekilde daha da optimize edebilirsiniz. Örneğin, Amazon Aurora'yı ve yapılandırılmış bir sorgu dilini (SQL) kullanmayı planlıyorsanız varlıklarınızı doğrudan tablolara koyar ve ilişkileri yabancı anahtarlar kullanarak belirtirsiniz. Bunun aksine, Amazon DynamoDB'yi kullanmayı seçerseniz tablonuzu modellemeden önce erişim düzenlerini düşünmeniz gerekir. DynamoDB hıza öncelik verdiğinden, ilk olarak verilere nasıl erişeceğinizi belirler ve ardından verilerinizi erişileceği biçimde modellersiniz.
Teknolojiniz ve gereksinimleriniz zaman içinde değiştikçe genellikle bu adımları tekrar gözden geçirirsiniz.
AWS, veri modelleme konusunda nasıl yardımcı olabilir?
Ayrıca, mobil uygulamalar ve web uygulamaları oluşturmak amacıyla daha hızlı ve daha kolay veri modelleme için AWS Amplify DataStore'u da kullanabilirsiniz. Bu hizmet, veri modelinizi ilişkilerle tanımlamanız için görsel ve kod tabanlı bir arabirime sahiptir ve bu da uygulama geliştirmenizi hızlandırır.
Hemen ücretsiz bir hesap oluşturarak AWS'de veri modellemeyi kullanmaya başlayın.