Sharding Nedir? Blockchain Projelerini Nasıl Etkileyecek?

Yazar Sezer Y.

Sharding nedir sorusu blockchain teknolojisinin temel konularından biridir. Blockchain bir veri koruma teknolojisi olduğu için sharding bu noktada önem kazanır. Bugün birçok kripto para projesi sharding konseptini sistemlerine dahil etmeye çalışmaktadır.

Sharding’in, mevcut blockchain teknolojisini bir üst noktaya çıkaracağı tahmin edilmektedir. Sharding’e yönelen projeler de yatırımcıların gözdesi olmaya başlamıştır.

Bu yüzden sharding nedir öğrenmek hem teknoloji takipçileri hem de trader’lar için faydalı olacaktır. Biz de bu rehberimizde sizlere sharding nedir açıklayacak ve kripto para projelerini nasıl etkileyebileceğinden bahsedeceğiz.

Sharding Nedir İncelemeden Önce: Blockchain ve Node Kavramları Nedir?

Sharding nedir incelemeden önce blockchain nedir tekrar hatırlamakta fayda olacaktır. Blockchain özetle bir bilgisayar ağı içerisinde dağıtılmış bir veritabanını ifade eder. Bloktaki her bir zincir bilgileri dijital olarak saklar.

Blockchain bu yönüyle kripto para sistemlerinde hayati bir rol oynamaktadır. Zira kripto paraların mantığında güvenilik ve merkeziyetsiz işlem kayıtları esastır. Blockchain ağları bu görevleri için ölçeklenebilirlik (scalability) özelliğine sahip olmalıdır.

Ölçeklenebilirlik, artan işlem yükü karşısında blockchain ağlarının düzgün çalışabilmesi ile ilgili bir terimdir. Aynı zamanda node adı verilen ağdaki düğüm sayısını da artırarak sistemin hızlı ve etkili çalışmasını sağlar.

Blockchain içerisindeki node’lar bağımsızdır. Ayrıca merkeziyetsiz ağdaki tüm verilerin korunmasından ve depolanmasından sorumludur. Bu modelde her işlem tüm node’larda depolandığı için aslında veri işleme sürecini yavaşlatmaktadır.

Yüksek miktardaki işlemlerin ölçeklenebilmesi birçok ağ için zorluk yaratmaktadır. Sharding nedir sorusu ölçeklenebilirlik noktasında ortaya çıkmaktadır.

Sharding nedir incelemeden önce blockchain nedir detaylıca öğrenmek için bu rehberimize göz atabilirsiniz.

Sharding Nedir

Sharding Nedir?

Sharding, blockchain ağlarında ölçeklenebilirlik ile ilgili sorunlara bir çözüm olarak kabul edilmektedir. Bazı büyük blockchain ağlarını geliştiren kişiler de sharding’i destekleyen taraftadır. Hızla artan kullanıcı ve işlemlerin yönetilmesi için sharding’in uygun bir yöntem olduğunu düşünülmektedir.

Peer-to-peer (P2P) şeklinde çalışan blockchain ağlarında node’lar işlem geçmişlerini kaydeder. Her node’un kaydettiği işlem geçmişi aynıdır. Yani her bir node, tüm ağın işlem yükünü kaydeder.

En basit haliyle sharding yöntemi ile bloktaki mevcut zincirleri birden çok kez bölmek mümkündür. Böylece bölünen veriler farklı yerlerde depolanabilir. Bir başka deyişle parçalama, hesaplama ve depolama görevleri P2P ağında bölümlere ayrılarak dağıtılır.

Buradaki mantık her bir node’un kendi bölümü veya parçasıyla ilgili verileri depolamasıdır. Verilerin farklı node’larda depolanması bu verilerin hesaplanma yükünü de azaltacaktır.

Sharding nedir baktığımızda bir parça içinde yer alan verilerin yine node’lar arasında paylaşıldığını görürüz. Böylece herkesin kayıtları incelemesi mümkün kalmaktadır. Bu da sistemi hala merkeziyetsiz ve güvenli kılar.

Sharding yönteminin mevcut blockchain sisteminden tek farkı bu verilerin farklı parçalar tarafından işlenememesi ve saklanamamasıdır.

Bu şekilde yüksek miktar ve hacimdeki işlemler daha kolay bir şekilde işlenebilecektir. Bu yaklaşımı nedeniyle sharding nedir diye sorulduğunda çok popüler bir yöntem olarak ifade edilebilir.

Sharding böylece blockchain’in daha iyi ölçeklenebilmesi için önemli bir yöntem olarak karşımıza çıkmaktadır. Sharding nedir incelediğimizde bu yöntemin aynı zamanda gizlilik ve güvenliliği de koruduğunu görürüz.

Sharding Nedir Anlamak: Sharding Nasıl Uygulanır?

Sharding nedir araştırırken karşımıza başka bir terim daha çıkacaktır. Bu terim “yatay bölme” (horizontal partitioning) olarak bilinmektedir. Bunun arkasında veritabanının geleneksel düzeni yatmaktadır.

Yatay bölmede satır denilen parçalar özelliklere göre niteliklendirilir. Bu şekilde her bir parça farklı bir konsept veya niteliğe göre çalışır. Örneğin, belirli bir adres türü için işlem geçmişini depolamaktan bir parça sorumlu olur. Başka bir unsur için başka bir parça görevlendirilir.

Parçaları içinde depolanan dijital varlığın türüne göre bölmek de mümkündür. Burada bir parça kombinasyonu kullanılabilir. Örneğin, bir sözleşme düşünelim. Burada görev alan parçalar taraflardan sözleşmedeki ödeme konularına kadar farklı konulardaki işlemlere karşılık gelecektir.

Bu durumda veritabanının satırları birden çok node’a yatay olarak dağıtılır. Ancak veritabanlarını dikey olarak bölmek (vertical partitioning) de mümkündür. Bu yöntemde veriler mantıksal bir bölümlenme içerisinde sınıflandırılır.

Bu yöntem uygulama düzeyinde, belirlenmiş bir veritabanına bir parça kod yönlendirilerek gerçekleştirilir.

Sharding nedir baktığımızda aynı türdeki büyük veritabanlarının küçük parçalara bölündüğünü görürüz. Böylece daha kolay genelleştirilebilen bir algoritma ortaya çıkar. Bu nedenle sharding uygulama veya veritabanı düzeyinde uygulanabilecektir.

Daha önce de bahsettiğimiz üzere her bir bilgi diğer parçalar ile paylaşılmaya devam edecektir. Bu blockchain teknolojisinin merkeziyetsizlik prensibinin bir gereğidir.

Bu şekilde kullanıcılar işlem hareketlerini görebilir. Örneğin, spesifik bir coin için yapılan cüzdan hareketleri böylece izlenebilir.

Sharding Nedir
Kaynak: DigitalOcean

Üç Ana Unsuru Açısından Sharding

Sharding nedir incelediğimizde üç unsur karşımıza çıkacaktır: Dağıtılmış defter (distributed ledger) teknolojisi , ölçeklenebilirlik ve güvenlik.

Dağıtılmış Defter Teknolojisi ve Merkeziyetsizlik

Blockchain teknolojisindeki dağıtılmış defter teknolojisi blockhain’i çekici kılmaktadır. Çünkü bu defter modeli ile işlemler birden fazla site ve lokasyon arasında paylaşılabilmektedir. Böylece veriler merkeziyetsiz bir şekilde depolanır.

Burada paylaşım noktaları arasında mutabakat (consensus mechanism) olması da gerekmektedir. İşlemlerin kaydedildikçe kopyalar saniyelik süreler içerisinde ağa gönderilir. İşlemlerin halka açıklığı bu şekilde sağlanır.

Bu güvenlik açısından da çok kullanışlı bir yöntemdir. Eğer blockchain ağının bir kısmı kötü niyetli bir saldırıya uğrarsa ağın katılımcıları bunu tespit edebilir.

Bu kişiler saldırının ağda neyi etkilediğini veya değiştirdiğini gözlemleyebilir. Çünkü her bir katılımcı defterdeki işlemlerin bir kopyasını bulundurur. Böylece blockchain ve bu defter teknolojisinin dolandırıcılık ve hacking gibi siber saldırılara koruma sağladığını söylenebilir.

Bir veritabanı aşağıdaki işlemleri kaydeder:

  • İşlemlerin yapıldığı zaman
  • İşlemi tanımlamak için atanmış, eşsiz bir numara (transaction hash)
  • İşlemin onaylandığı blok
  • Gönderilen paranın miktarı
  • İşlemin taraflarının halka açık adresleri

Sharding distributed ledger teknolojisine entegre edilerek bu verilerin kolayca yönetilmesini sağlayabilir.

Ölçeklenebilirlik Açısından Sharding Nedir?

Sharding nedir ve faydaları nedir baktığımızda akla gelen ilk konulardan biri ölçeklenebilirlik olacaktır. Ölçeklenebilirlik Bitcoin ve Ethereum gibi kripto paralarda uzun zamandır bir sorun olarak tanımlanmıştır.

Dağıtılmış defter teknolojisinin finans şirketleri tarafından benimsenmesi için bu sorunun çözülmesi gerekmektedir. Çünkü bu şirketlerin çok hızlı ödeme ağları karşısındaki rekabet gücü ölçeklenebilirliğin geliştirilmesi ve adres gecikmesi probleminin halledilmesine bağlıdır.

Adres gecikmesi ağa ek bilgisayarların eklenmesi ve daha fazla işlemin yapılması sonucu gerçekleşir. Böylece blockchain ağı çıkmaza girer ve bir gecikme yaşanır.

Gecikme hızlı ve vermli çalışan elektronik ödeme yöntemleri ile kıyaslandığında blockchain’in yaygınlaşması için bir engeldir. Ölçeklenebilirlik bu nedenle blockchain için iyileştirilmesi gereken bir mesele haline gelmektedir.

Çünkü blockchain ağları her geçen gün daha fazla endüstri tarafından benimsenmektedir. Bu da veri artışı demektir. Yeni bir proje hızla popülerleştiği zaman blockchain ağı genellikle tıkanır. Bu noktada blockchain ağlarının veri akışını kaldıramayabileceği düşünülmektedir.

Gerçekten de, kullanıcılar işlemlerinin bir sonraki blokta işlenmesi için daha fazla çaba harcarlar. Böylece yüksek işlem ücretleri ortaya çıkar. Çünkü kullanıcılar işlemin işlenmesi için blockchain’deki madencilere ödeyecekleri ücreti ayarlayabilirler.

Bu da işlemin hızlanması için ücretin artırılması anlamına gelecektir. Böylece genel maliyet de herkes için artacaktır.

Ölçeklenebilirlik açısından sharding nedir inceleyelim. Sharding’in bu noktada gecikmesiz bir ölçeklenebilirlik sağlayacağı düşünülmektedir. Sharding ile ağın iş yükü bölümlere yayıldığı zaman gecikme azalacaktır.

Bilgisayım gücünü artırmadan verimliliğin artırılması sharding’in ana amacıdır. Böylece blockchain daha fazla işlemi işleyebilecektir.

Ağ Güvenliği Bakımından Sharding Nedir?

Blockchain uygulamalarında ortaya çıkan ana sorunlardan bir diğeri güvenlik ile alakalıdır. Sharding ile zincirler parça parça ayrılsa da bu risk devam edecektir.

Bu risk, bir parçanın başka bir parçayı devralması noktasında ortaya çıkar. Çünkü parçalar arası veri devri bilgi veya veri kaybına neden olabilir. Böylece parçalar da bozulabilir.

Bir hacker’ın bir parçayı ele geçirdiğini düşünelim. Her bir parça kendi kullanıcıları ve verilerine sahip olduğu için, hacker bunları yanlış işlemlere veya kötü amaçlı programlara alet edebilir.

Ethereum adres gecikmesi ve ölçeklenebilirlik sorunlarını düzeltmeyi amaçlayan projelerin başında gelir. Ethereum uzun bir süredir parça saldırıları ile mücadele etmektedir.

Bu mücadele yöntemleri arasında node’ları rastgele parçalara atayıp değiştirmek bulunmaktadır. Böylece hacker’lar hangi parçaya saldıracaklarını tam olarak kestirememektedir.

Avantajları ve Dezavantajları ile Sharding Nedir?

Sharding nedir incelerken avantajların yanında dezavantajlar ile de karşılaşmak mümkündür. Sharding özellikle ölçeklenebilirlik açısından gelecek vadeden bir yöntem olarak görüldüğünü açıklamıştık. Ancak bazı riskleri ve bilinmezliklerinin de mevcut olduğu bilinen bir gerçektir.

Sharding ölçeklenebilirliği artırsa da proof-of-work protokollerine uygulanması zor bir yöntemdir. Daha çok proof-of-stake blockchain ağları için uygun görülür. Saniyede veri işleyecek node sayısının artması verimliliği artıracaktır.

Bununla birlikte sharding’in veri işleme süresini azalttığı kabul edilir. Bunu veritabanını yatay olarak büyüterek gerçekleştirir. Bu modelde her parça ayrı sunucuda bulunur. Bunlar farklı görevler için kullanılırlar.

Farklı sunucularda bulunan parçalar, veriyi arama süresini düşürmüş olacaktır. Böylece daha az güç gerekecektir. Ayrıca daha ucuz bir sistem ile büyük miktarda veri işlemeye başlanabilir. Bu adres gecikmesinin önüne geçen bir çözümdür.

Veritabanının daha küçük parçalara bölünmesi ağ çalışmasının aksamasını engelleyecektir. Sharding ile bir parça çalışmaz hale gelse bile yerini başka parçalar alabilir. Böylece ağın genel yönetimi sorunsuz bir şekilde işletilir.

Sharding öbür yandan veritabanı ve uygulamaları daha kompleks hale getirmektedir. Blockchain ağında ortaya çıkabilecek bir hatada parçalar çalışmaz hale gelebilir.

Ayrıca sharding blockchain açısından halen test edilmektedir. Bu güvenlik açısından soruların tamamen cevaplanamadığı anlamına gelmektedir.

Sharding nedir baktığımızda dezavantajlarının daha çok uygulanması ile alakalı olduğu görülecektir. Sharding’in konsepti problematik değildir. Sharding entegrasyonunun hard fork gerektirmesi uygulamada zorluk çıkmaktadır.

Uygun bir şekilde yapılmayan ve test edilmeyen sharding işlemi merkezileşme riskini beraberinde getirir. Bunun nedeni kırılan zincirler ve uygunsuz şekilde reward distribution işlemi yapılması riskidir.

Sharding metodunun uygulamadaki sorunlarından birisi de çoklu parçalar nedeniyle çıkmaktadır. Örneğin, hangi parçanın en güncel bilgiye sahip olduğu her zaman bilinemeyebilir. Bir veri parçada eski, bir parçada yeni haliyle bulunabilir.

Bu hangisinin kullanılacağı konusunda karışıklık yaratıcıdır. Bu duruma “parça senkronizasyonu” (shard synchronization) denir. Yeni bir sistem geliştirilmeden önce bunu düzeltilmeye çalışılır.

Sistemdeki node sayısının değişmesi yeniden parça oluşturma süresini uzatmaktadır. Ayrıca herhangi bir çalışmazlık durumunda verinin yerini bulmak da zorlaşacaktır.

Kripto Para Piyasası İçin Sharding Nedir? Hangi Kripto Paralar Sharding Kullanıyor?

Sharding nedir açıkladığımıza göre artık sharding metodu ile çalıştırılan projelerden bir kaçını inceleyebiliriz.

Ethereum 2.0 : Beacon Chain adlı ana zinciri ve Casper PoS adı verilen yeni bir mutabakat mekanizması içerir. Beacon Chain, PoS protokolünü yöneterek yeni eklenen parçaları yönetmektedir.

Ethereum 2.0’de her parça rastgele bir node’a sahiptir. Böylece ne zaman bir blok eklense node yeni bir blok oluşturur.

Polkadot Parachain: Güvenlik protokollerinin ödünç verildiği bir paralel blockchain mekanizmasından oluşur. Bu şekilde parçalar arasındaki veri alışverişi güvenli bir şekilde gerçekleştirilmektedir. Paralel alt zincirlerde hiçbir işlem birbiriyle karışmamaktadır.

Ontology : Ontology bileşenlere ayrılmış, serbestçe yapılandırılabilir bir blockchain altyapısı oluşturmaktadır. Böylece zincirler arası destekleyici, yüksek performanslı ve ölçeklenebilir bir ağ hedeflenmektedir.

Merkeziyetsiz uygulamaları daha işlevsel kılacak bu çözüm için Ontology birtakım özellikler içerir.

  • Çok katmanlı ve sharding’e dayanan bir ağ yapısı
  • Sharding metoduna dayalı akıllı kontrat sistematiği
  • Akıllı kontratlar arasında parçalar arası mesajlaşma sistemi
  • Parçalar arası hücresel iletişim

Shardeum : Shardeum kendisini “sonsuz ölçeklenebilirlik, gerçek merkeziyetsizcilik ve sıkı güvenlik” olarak tanımlamaktadır. Proje 1 milyar kişiyi kapsayacak büyüklüktedir. Aynı zamanda bunun üstüne Web 3.0 alt yapısı inşa etmeyi planlamaktadır.

Shardeum, Ethereum ve Solana ile benzer şekilde çalışmaktadır. Bu sebeple sharding metodunu uygulayan projeler arasında yer almaktadır.

Zilliqa : Zilliqa ana ağında akıllı kontrat özelliğine sahip ve buna sharding’i ekleyebilmiş ilk blockchain’dir. Zilliqa üzerinde gerçekleştirilen işlemler ilk olarak Sharding Katmanı (Sharding Layer) üzerinde işlenir.

Bu yöntem ile işlemlerin fiili olarak işlenmesi için ağdaki tüm doğrulayıcılara ihtiyaç duyulmaz.

NEAR Protocol : Asıl amacı tüm node’ların istemci yazılımı (client software) çalıştırabilmesini sağlamaktır. Ayrıca herhangi bir düşük kaliteli aygıtın da NEAR protokolünü çalıştırabilmesini hedefler.

Bu şekilde ağın düşük kaliteli aygıt kullanan insanlarca erişilebilmesi amaçlanmaktadır. Bu yönüyle çoğu blockchain projesinden ayrılmaktadır.

Galaxy Digital

Sonuç

Sharding nedir incelendiğinde ölçeklenebilirlik için potansiyel bir çözüm olduğu anlaşılmaktadır. Sharding bazı ünlü kripto paralarda kullanılır. Bitcoin ve Ethereum sharding kullanır. Sharding coin değerini artırabilir.

Ancak sharding uygulamada tamamen işlevsel sayılamamaktadır. Veritabanlarının idaresi ve güvenliği konusunda hala birtakım sorunları bulunmaktadır. Yine de geliştiriciler sharding’ten vazgeçmiş değildir.

Bu teknoloji halen test aşamasındadır. Bu nedenle ilerleyen dönemlerde potansiyeli ve işlevselliği daha da geliştirilebilir.

Sıkça Sorulan Sorular

Sharding Gerekli Mi?

Sharding için mutlak olarak gereklidir diyemeyiz. Bunun nedeni sharding’in ağı daha da karmaşıklaştırabilmesidir. Bu sebeple developer’lar bazen ölçeklendirme sorunu için başka çözümler seçebilirler.

Sharding Yerine Başka Hangi Yöntemler Kullanılabilir?

Sharding yerine daha güçlü bilgisayarlar almak kısa vadeli bir çözüm olarak görülebilir. Ayrıca önbellek veya veritabanlarını kopyalamak da bazen işe yarayabilir.

İşlevselliğe göre bir veritabanını dikey bölmek de sharding’e alternatif sayılmaktadır. Son olarak, veritabanını farklı bağımsız bölümlere bölmek (partitioning) de sharding yerine tercih edilebilmektedir.

Hard Fork ile Sharding Arasındaki İlişki Nedir?

Hard fork, güncellenmeyen node’lar tarafından onaylanan işlemlerin geçersiz kılınmasıdır. Böylece yeni zincirler oluşturulmaktadır. Sharding işlemlerinin çok fazla varyasyona sahip olması hard fork’u zorunlu kılar. Bu da uygulamada entegrasyonu zorlaştırır.

Sorumluluk Reddi

Sitemizde yayınlanan her içerik, iyi niyet çerçevesinde kaleme alınmıştır ve genel manada bilgi vermek amacıyla yazılmaktadır. Sitemizden edindiği bilgiler ışığında, okuyucunun yaptığı her hamle, çok net bir şekilde kendi riskidir ve siteyle bir ilgisi yoktur. Kripto Para Okulu’nda ana amacımız, oldukça kaliteli bilgiler paylaşmaktır. Okuyucularımızın işine yarayacak eğitici ve öğretici içerikleri hazırlamak için yoğun bir mesai harcıyoruz. Bu standardı korumak ve daha da iyi içerikler hazırlamak için, iş ortaklarımız; yazılarımızda yer alarak bize bir komisyon ödemesi yapabilir. Ancak bu komisyonlar, kesinlikle tarafsız, dürüst ve eğitici içerikleri oluşturma sürecimizi negatif etkilemeyecektir.