Skip to main content
Ana Sayfa
Makaleler
Kitaplar
Etkinlik Takvimi
Araçlar
Biz Kimiz?
Blog
  
Sharepoint Türkiye > Makaleler > Index Server Performansını Arttırma Yolları  

Web Part Page Title Bar image
Index Server Performansını Arttırma Yolları

 

Sharepoint ürün ve Teknolojileri içinde beklide en sevdiğim özellik kurumsal aramadır. Binlerce doküman, form, dosya sunucu, Exchange public folder, web siteleri ve hatta veritabanı gibi veri kaynaklarını indexleyerek bulmak istediğiniz verileri bir saniyenin altında bir sürede karşınıza getirebiliyor. Bu sonuçların güncel olması ise tek bir işleme bağlı. Indexleme işlemine. Bu işlem ne kadar sık yapılırsa, sonuçlar o kadar güncel olacaktır. Fakat indexleme ( Terminolojik adı ile crawl ) işlemi ne kadar sık yapılırsa, o derece performansa negatif etkisi olur. Bu etkileri en aza indirip, indexleme işleminin ve sunucu çiftliğinin genel performansını arttırmak için gerekli ip uçlarını aşağıda bir araya getirdim.

Office Sharepoint Server Search Servisi

Bu servis genel anlamda kurumsal aramayı mümkün hale getiren servistir. Ayarlarında yapılacak küçük değişiklikler, arama performansına dramatik etkiler yapabilir. Bu servisin ayarlarına Central Administration > Operations > Services on Server adımları ile ulaşmak mümkün. Bu bölümde bizi ilgilendiren ayarlar “ Indexer Performance “ ayarlarıdır. Reduced, Partly Reduced ve Maximum olmak üzere üç adet seçenek bulunur. Bu seçenekler index işleminin maksimum kaç thread ile yapılacağına karar vermek için kullanılır. Reduced seçildiğinde index server üzerindeki işlemci sayısı kadar, partly reduced seçildiğinde işlemci sayısının dört katı kadar, maximum seçildiğinde ise işlemci sayısının on altı katı kadar thread, crawl işlemi için kullanılır. Dolayısıyla bir sunucunun tek rolü index server ise, maximum seçeneğini kullanmak mantıklı olacaktır.

Bazı durumlarda index serverın yüksek performans ile çalışması istenmeyen sonuçlar doğurabilir. Örnek olarak, index server dosya sunucunuzu tüm kaynakları ile crawl etmeye başladığında index serverın yüksek performansı, dosya sunucusu üzerinde yavaşlamaya sebep olabilir. Böyle bir durumda, indexer performance ayarlarını belli hedefler için değiştirmeye ihtiyaç duyarız. Bu yazımda bahsetmeyeceğim fakat “ Crawl Impact Rule “ ları, indexer performance ayarlarına daha baskındır ve istediğiniz hedefler için crawl işlem hızını düşürmenize olanak tanır.

Mimari Tasarım

Sharepoint sunucu çiftliği içindeki Index Server rolünün tek başına bir sunucuda yer alması tavsiye edilir. Index server, crawl işlemini web front-end sunucusuna bağlanarak yapar ve birden çok web front-end sunucusu olması durumunda bu sunucuların tamamını crawl işlemi için kullanabilir. Fakat, crawl işlemi sırasında front-end sunucularında performans kayıpları olacaktır. Bu durumu minumuma indirebilmek için, index server rolünün crawl işlemi için tek bir front-end kullanması sağlanabilir. Bu durum toplam crawl işlem süresini uzatma ihtimaline sahip olsa da, son kullanıcı işlemlerine etkisi minumum olacaktır. Tabiki index serverın kullandığı front-end sunucusunun, nlb yapısından ayrıldığını varsayıyoruz. Bu tip durumlarda tercih edilebilecek bir diğer senaryo da, mevcut index server üzerine web front-end rolünün verilmesi. Böylece index sunucusu, doğru ayarlar yapıldığında crawl işlemi için sadece kendi üzerindeki front-end rolünü kullanacaktır.

 

Donanım

Index rolü için kullanılacak sunucunun donanım ihtiyaçları senaryoya göre çok büyük bir aralıkta değişebilir. Fakat yinede bu konuda bazı tavsiyelere kulak vermekte fayda var. Bunlardan ilki, crawl işlemi başlamadan önce sunucuda boşta en az 2 GB memory olması durumudur. Ayrıca index sunucusu üzerinde en az iki adet fiziksel işlemci olması da tavsiye edilir. Bir de Microsoft, büyük Sharepoint çiftlikleri için kesinlikle 64 Bit mimari kullanılmasını tavsiye ediyor. Bu mimarinin özellikle ram konusundaki avantajlarından bahsetmeye gerek yok bile.

Veritabanı

Arama ve crawl işlemleri için kullanılan Search_db’ nin data ve log dosyaları, veritabanı sunucusu üzerinde mümkün olan en hızlı diske koymakta fayda var. Aynı zamanda temp veritabanının da ayrı bir fiziksel diskte durması faydalı olacaktır.

Disk Sistemi

Index işlemi doğası gereği, hem index sunucusu üzerinde hem de veritabanı üzerinde fragmentasyona neden olacaktır. Disk performansını arttırmak için belli aralıklarla defrag işlemini yapmakta fayda var. Ayrıca index rolünü barındıran sunucu üzerinde index dosyalarının tutulduğu disk ya da disk grubunun performansı da toplam sistem performansına etki edecektir.

Diğer Konular

Crawl işlemi birden çok kaynak için ayrıca zamanlanabilir. Fakat birden çok craw işleminin zamanlanması da yönetimsel bir takım ihtiyaçlar doğurur. Sharepoint ilk çalışan crawl işlemine en yüksek önceliği verir. İlk işlem bitene kadar diğerlerini başlatmaz. Bu durumdan kurtulmak için crawl zamanlarını birbirleri ile çakışmayacak şekilde düzenlemek gerekir.

Adobe’ un ücretsiz sunduğu PDF ifilterı, tek seferde tek bir pdf dokümanı indexleyebildiği için, çok fazla pdf barındıran yapılarda crawl süresinin artmasına sebep olabilir. Pdf indexlemek için diğer firmaların da yazdığı birkaç ifilter mevcut.

Index işlemi sırasında, bir dosya indexlenirken hata oluşması durumunda varsıyalan olarak bu dosya yüz kez daha açılmaya çalışılır. Bu durum da crawl süresini uzatabilir. Bu değeri registryden değiştirmek mümkündür. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\12.0\Search\Global\Gathering Manager bölümünden DeleteOnErrorInterval anahtarının değerini değiştirmek yeterli olacaktır.

 

Copyright (c), 2008-2009 Sharepoint Türkiye
Site içerisinde yayınlanan tüm makale ve dokümanların yazım ve yayınlama hakkı aksi belirtilmediği sürece sadece yazarlara aittir.
 Yayınlanan yazıların izin alınmadan kopyalanması ve kullanılması 5846 sayılı Fikir ve Sanat Eserleri Yasasına göre suçtur.