Skip to main content

Blog

Ana Sayfa
Makaleler
Kitaplar
Etkinlik Takvimi
Araçlar
Biz Kimiz?
Blog
  

Sharepoint Türkiye > Blog > Kategoriler
Sharepoint 2010 Arama İçerik Tipleri
Sharepoint 2007'de SSP (Shared Services provider) aracılığı ile gerçekleştirdiğimiz arama ayarları işlemi için Sharepoint 2010'da Central Administration'da yer alan Application Services bölümünü kullanıyoruz. Yine Sharepoint 2007'de olduğu gibi Content Source (İçerik Kaynağı) mantığında çalışan bu ekranda Sharepoint 2007'e göre bazı farklılıklar yer alıyor. Artık daha farklı içerik kaynaklarını da bize verilen kategoriler dahilinde arama ayarlarımıza ekleyebiliyoruz.
 
 
- Sharepoint Sites
- Web Sites
- File Shares
- Exchange Public Folders
- Line of Business Data
- Custom Repository
Bu listede yer alan "Line of Business Data" seçeneği için öncelikle Sharepoint 2010'da isim değiştirerek ve gelişerek karşımıza çıkan Business Connectivity Services tanımlamalarını yapmış olmanız gerekiyor. Yani indexlenmesini istediğiniz Line of Business Data'nın önceden içeri tanımlanmış olması gerekiyor.
 
Yine aynı listede yer alan "Custom Repository" için ise ilgili kaynağa ait adaptörün önceden yüklenmiş olması gerekiyor.
Shared Service Provider' dan Oluşturulan Scope' un Site Koleksiyonunda Gözükmemesi
Share Service Provider alanında bulunan arama ayarlarını kullanarak yeni bir scope oluşturduğunuz, bu scope varsayılan olarak site koleksiyonlarda görünmez. Sadece görünebilir hale gelir. Bunun sebebi, ideal koşullarda Sharepoint sunucu çiftliğimizin ve site kolleksiyonlarımızın yöneticilerinin farklı olmasıdır. Çiftlik yöneticileri (böyle yazınca biraz komik oluyor kabul ediyorum) koleksiyon yöneticilerinin kullanması için scopelar oluşturuyor, site yöneticileri de isterlerse bu scopeları kullanıyor.
 
Şimdi gelelim SSP da yeni oluşturulmuş bir scopeu nasıl göstereceğimize. Koleksiyonun aan sayfasında site ayarları bölümünden tüm site ayarlarına tıklıyoruz. Açılan ekranda en sağdaki sütundan scope ayarlarını tıklıyoruz. Oradan, scopen nerede gözükmesini istiyorsak - ki ben şu anda arama kutusunda gözükmesini istiyorum - o bölüme tıklıyoruz ve ilgili scopeun yanındaki kutuyu seçiyoruz. Kısa bir süre sonra yeni scopeumuz artık ilgili alanda gözükecek.
Sharepoint Sitelerinin Arama Motorlarında Görüntülenmesi
Kurumsal portallar için sözkonusu olmasa da genele açık ve Sharepoint altyapısı kullanan sitelerin en yoğun ziyaretçileri arama motorları üzerinden gelenlerdir. Normal yaşam döngüsünü geçiren her site için de aşağı yukarı durum budur aslında. Belli bir hedef kitleniz ve takipçi grubunuz varken, durumunuzdan haberdar olmayan veya yeni yeni sunduğunuz bilgilere ihtiyaç duymaya başlayan kullanıcıları arama motorları aracılığı ile sitenizde misafir edersiniz.
 
Genel anlamda arama motorlarında sunduğunuz bilgiye ilişkin yapılan aramalarda daha üst sıralarda çıkmak için hemen hemen her genel forumda bir tartışma yapılmıştır. Ancak sözkonusu olan Sharepoint altyapılı bir site ise biraz daha özel müdehalelere ihtiyaç duyabilirsiniz.
 
İşte Microsoft'da bu çıkış noktası ile MSDN üzerinden bir makale yayınlamış. Makale Sharepoint sitenizi arama motorlarına (search engine) sevdirmek üzerine konulu. :)
 
Bu link aracılığı ile makaleye ulaşabilirsiniz.
Sharepoint Arama Hizmetine Yeni Özelliklerin Eklenmesi
Sharepoint farmınızın Shared Services Provider yönetim konsolu aracılığı ile Active Directory'de yer alan profil bilgilerini sistemimize import edebileceğimizi ve aynı yönetim konsolundaki "Search Settings" menüsü aracılığı ile de import ettiğimiz profil bilgilerinin daha sonra yapılacak aramalarda kullanıcıların karşısına çıkabilmesi için indexlenebileceğini biliyoruz.
 
Import ettiğimiz ve indexlediğimiz bu profil bilgileri ne yazıkki Sharepoint'in kişi arama (people search) ekranlarında sadece belirlenmiş kolonlar itibariyle görüntülenir. Örneğin AD'de yer alan IP Phone, Manager gibi bilgileri import etmişsinizdir ancak bu bilgileri search sonuçlarında görüntüleyemezsiniz. Daha doğru bir ifadeyle görüntüleyebilirsiniz ama sadece bu bilgileri aradığınızda.
 
Mesela bir kullanıcının yöneticisi olan "Serdar Kılıç" bilgisini aradığınızda arama hizmeti karşınıza bununla ilgili sonucu çıkarır, ama siz kullanıcıyı aradığınızda özel bir property olarak "Serdar Kılıç" bilgisi karşınıza gelmez.
 
İşte bu aşamada search sonuçlarına istediğiniz bu özel bilgiyi de ekleyebilmek için search result page'in XSLT'sine müdehale etmeniz gerekmektedir.
 
İş adımlarını şöyle sıralayabiliriz :
  1. Sharepoint'te people search için yaratılmış olan sonuç sayfasına (peopleresultpage.aspx yada siz hangi ismi verdiyseniz) gidin.
  2. Burada "search box" webpartının yanındaki dropdown menüyü açarak "Modify Shared Web Part" linkini tıklayın.
  3. Burada "Properties" seçeneğini açın ve içerisine şu satırı ekleyin.
    <Property Name="NewProp" ManagedName="NewProp" ProfileURI="urn:schemas-microsoft-com:sharepoint:portal:profile:NewProp"/>
  4. Şimdi "Core Result" webpartı için aynı düzenleme işlemini yapın ve burada yer alan "Selected Columns" özelliğinde yer alan herhangi bir property'i kopyalayıp kendi yarattığınız property i de bunlar gibi bir kolon olarak ekleyin.
  5. Son olarak "Data View Properties" butonunu tıklayın ve burada yer alan XSL'in en altındaki görüntülenecek kolonlar listesine aşağıdaki satırı ekleyin
    <xsl:value-of select="newprop"/>
  6. OK butonunu tıkladığınızda webpartın hata verdiğini göreceksiniz, önemsemeyin ve sayfayı publish edin.
  7. Şimdi yaptığınız aramayı tekrarlayın, sonucun içerisinde eklediğiniz kolon bilgisinin de görüntülendiğini göreceksiniz.

Önemli Not 1 : Bu işlemi gerçekleştirmeden önce lütfen düzenleme yaptığınız XSL'lerin yedeğini aldığınızdan emin olun.

Önemli Not 2 : Genellikle sistem adminleri tarafından yapılan custom property mapping işlemi esnasında admin tarafından "I", "ı", "İ", "i" gibi problem çıkarabilecek harfler kullanılmış olabilir. Bu durumda doğru alan adını çağırdığınızdan emin olun.

Önemli Not 3 : Yeni profil property nin eklenmesinin ardından yeni bir profile import ve search indexing işlemi yapın.

Önemli Not 4 : Şayet işlem esnasında bir problem yaşıyorsanız ve eklediğiniz property görünmüyorsa 2. maddeyi hatırlayın :)

Kişi Arama (People Search) Sonuç Özelleştirmesi
Sharepoint içerisinde yer alan pek çok bilgiyi özellikle DataView Webpartları kullanarak çok farklı şekillerde görüntüleyebilirsiniz. Bu gibi sayfalarda bir de XSLT'yi kullanacak olursanız ulaşacağınız sonuçlar hayalgücünüz ile sınırlı demektir.
 
Örneğin bir görev listesinde yer alan görevlerin custom webpart geliştirmeden sadece xslt ile uğraşarak bar chart şeklinde görüntülenmesi veya arama(search) sayfalarının görünümlerinin yine XSLT yardımıyla özelleştirilmesi.
 
Bu konuda oldukça güzel ve ekran görüntüleri yardımıyla ne yapacağınızı net bir şekilde anlatan bir blog postunu sizlerle paylaşmak istiyorum. Sharepointology sitesi yazarlarından Erwin tarafından paylaşılan bilgi people search(kişi arama) sayfasının sonuç listesini daha kullanışlı bir hale getirmeyi sade bir XSLT yapısıyla bizlere anlatıyor.
 

http://www.sharepointology.com/development/customize-the-people-search-results-part-1/


Index Server ve Web Front End İlişkisi
Şimdiye kadar index serverın crawl işlemini web front end üzerinden yaptığını bilmiyorsanız, öğrenmeye başlamak için güzel bir fırsat. Yazımın asıl amacı bu ikiliyi mimari olarak nasıl konumlandıracağımız.
 
Index server crawl işlemini sts3 protokolü ile wfe' lerin üzerlerinde bulunan web servisi(sitedata.asmx) aracılığı ile yapar. Web servisi ilgili url leri ve meta data bilgilerini gönderir. Index server get ile ilgili sayfaları okuyarak indexler. Bu işlem index ve wfe ayrı makineler ise network üzerinden gerçekleşir. Bu aşamada index server rolünü barındıran sunucuya wfe rolünü de verip, index rolü ayarlarından crawl işlemini sadece bu makine üzerinden gerçekleştir dersek networkte en azından portal serverın indexlenmesi adına her hangi bir trafik yaratmamış olduğumuz gibi, bir de bu işlemler local olarak gerçekleştiğinden performans artışı da sağlamış oluruz.
Inside Moss 2007 (MSPress) Adlı Kitaptan Enterprise Search İle İlgili İki Bölüm Ücretsiz Olarak Yayınlandı
Her zaman söylerim. Sharepoint ve enterprise search hakkında nekadar okursanız okuyun, daima bilmediğiniz bir takım gizli kalmış seçenekler olacaktır. Daha fazla bilgi edinmek için Msdn de yayınlanan bu içeriği tavsiye ediyorum.
 
Office Sharepoint Server 2007 ( MOSS 2007 ) Index Performansını Arttırma Yolları
  1. Index rolünün kullandığı veri tabanı ve loglarını mümkün olan en iyi yazma hızına sahip diske koyun. Hatta imkan var ise ayrı bir disk kullanmakta fayda var. Index asıl datasını üzerinde bulunduğu sunucunun disk sisteminde tutar. Index filelarının bulunduğu diskin de yazma hızının önemi çok büyüktür.
  2. Temp db veri tabanını aynı şekilde optimize edin
  3. Index serverınız ve indexlediği sunucular arasındaki network bağlantılarını optimize edin. Unutmayın ki index server index işlemini database direkt erişerek değil, front end server ya da serverlar üzerinden yapar.
  4. Mimari olarak mümkünse index serverın sadece bu iş için adanmış bir web front end server kullanmasını sağlayın. Bu şekilde kullanıcı ve index server isteklerini birbirinden ayırmış olursunuz.
  5. x64 mimarisine sahip Sql serverlarınızın Ram miktarını arttırın. 8 gb güzel bir başlangıç değeridir.
  6. Gerekiyorsa database filelarında ve disk sisteminde defrag işlemi gerçekleştirin. DBCC Check database integrity komutu ile veri tabanlarını kontrol edin.
  7. Index dosya boyutunu mümkün olduğunca küçük tutmaya çalışın. ( Index boyutu indexlenen içerikle doğru orantılı olduğu için gerçekçi bir yaklaşımla bunu başarmak pek kolay değil.)
  8. Kullanmadığınız içerik ve dosya tiplerinizi index mekanizmanızdan çıkarın. Güncellenmeyen içerikler için seyrek crawl edilen content sourcelar oluşturun.
  9. Incremental crawl işlemini çok sık yapmayın.( 5 dakikada bir gibi ) Bir içeriği eklendikten ne kadar sonra arama sonuçlarında göreceğiniz performans ve hız arasındaki hassas dengeye bağlıdır.
  10. Unutmayın ki index performansı indexlenecek içeriklerin okunma hızına da bağlıdır. Dolayısıyla kaynakların bulunduğu alanlara erişim hızını mümkün oldukça yüksek tutmaya çalışın.
 
FAST Search for SharePoint
Microsoft " FAST Search for SharePoint " adlı yeni bir ürün duyurdu. Bu ürün sayesinde Office Sharepoint Portal Server' a ' high-end ' arama yetenekleri kazandırılmış oldu.
 
Bilindiği gibi Microsoft bir süre önce Fast ESP' yi satın alrak bünyesine katmıştı. Fast ESP' nin enterprise search konusundaki tecrübesi ve birikimini mevcut ürünlerinde kullanmaya başlamasıyla Microsoft, kurumsal arama konusunda da çıtayı bir seviye daha yukarı taşımış oldu.
 
Edindiğimiz diğer bir bilgiye göre " FAST Search for SharePoint " ürünü bir sonraki portal servera dahil edilecek ve varsayılan olarak kullanılabilecek.
 
Ayrıntılı bilgi için http://www.fastsearch.com/
Full Crawl. Ama Hangi Sıklıkla ?

Moss 2007 nin belkide en sık ve fazla kullanılan özelleği aramadır. Arama sonuçlarının da güncel olabilmesi için full ve incremental crawl işlemini sıklıkla gerçekleştirmemiz gerekmekte.

Crawl işlemini sık yapmak daha güncel sonuçlara ulaşmamızı sağlasada, index serverlardaki performansa negatif etkileri kaçınılmaz. Bu durumda crawl işleminin şeklini ve sıklığını belirlemek oldukça önem taşımakta.

Gün içinde sıklıkla (en az bir kez full crawl yaptığımızı varsayarak) incremental crawl yapmak çoğu durumda işimizi görecektir. Ama full crawl yapmamız gereken durumları da gözden geçirmekte fayda var. İşte bu durumlar;

  • Moss 2007 çiftliğimizdeki sunuculara güncelleme ve/veya service pack kurmak
  • Paylaştırılmış Servislere yeni bir alan-özellik (property) eklenmesi
  • ASPX sayfalarının güncellenmesi (aspx sayfalarında bir liste öğesi silindiğinde incremental crawl bunu indexleyemez)
  • Indexlenen dosya paylaşım alanlarında yapılan hak değişikliklerinin belirlenmesi
  • Incremental indexin hata vermesi durumunda
  • Yeni bir crawl kuralı eklendiğinde, kural silindiğinde ya da değiştirildiğinde
  • Index bozulduğunda
  • Son çalışan crawl işlemi manuel olarak sonlandırıldığınga
  • İçerik veri tabanı geri yüklendiğinde (sadece Moss 2007 için)
  • Daha önce hiç crawl yapılmamış sitelerde
1 - 10 Next
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.