Kategoriler


SON YORUMLAR
Ömer
Bloguma bi göz atar mısınız? Nasıl? bitkideryasi.blogspot.com
Ahmet
Hocam ben sorumsuz bi insanım ders çalışamıyorum yapımdan dolayı egitim sisteminden yakınıyorum bu meslek için gerekli olmayan dersleri bile görmekten hep nefret ediyorum. belki çok iyi bi üniverste kazanamayabilirim ama oldum olası bu iş benim işim diyorum yani bilgisayarda oyun oynamakdan başka yaptıgım bişey yok henüz lise ögrencisiyim ama bu işten başkada işim olamaz benim yani ortalama bir üniversite den mezun olarak kendimi geliştirebilirmiyim sizce?
Bilg. Müh.
Moloz
Atesh
Gercekten mukemmel yazilmis elinize saglik bende allahin izniye birinci sinif olucam bu sene cok tesekkur ederim
Tatar Ramazan
Benden başka yorum yazan yok ki. Çok sıkııcı!..Bilgisayar mühendisliğini kimse umursamıyor site sahibinden başka..vah vah
Tatar Ramazan
LINQ to XML var sorgu = from fakulte in fakulteler.Descendants("Fakülte") from bolum in bolumler.Descendants("Bölüm") from ogrenci in ogrenciler.Descendants("Öğrenci") where (int)ogrenci.Element("bno") == (int)bolum.Element("bno") && (int)fakulte.Element("fno") == (int)bolum.Element("fno") group fakulte by new { Fadı = fakulte.Element("fadı").Value } into fgrup where fgrup.Count() b= (from bolum in bolumler.Descendants("Bölüm") from ogrenci in ogrenciler.Descendants("Öğrenci") where (int)ogrenci.Element("bno") == (int)bolum.Element("bno") group bolum by bolum.Element("fno").Value into bgrup select bgrup.Count()).Max() select new { _fakultead = fgrup.Key.Fadı, }; ListkOgrenciTablob liste = new ListkOgrenciTablob(); foreach (var item in sorgu) { liste.Add(new OgrenciTablo { Fakulte = item._fakultead }); }
Tatar Ramazan
Bilişim Uzmanlığım Aşağıdadır : Programlama Dili : C#, Java, ASP.NET, Silverlight, WPF, WCF, LINQ, XML, XSL, HTML, Javascript, CSS, JQuery, Ajax, Web Servisleri. Veritabanı : SQL Server, T-SQL, ADO.NET, Oracle 11g-PL/SQL, Reporting Services. Metodoloji : Nesne Yönelimli Programlama ve Üç Katmanlı Mimari Program : Ms Office, Adobe Reader. KPDS (Kamu Personeli Dil Sınavı) (89 Puan) 12.2010 YDS (Yabancı Dil Sınavı) (72 Puan) 09.2015 C# : Fundamentals of Programming, Functions, Object-Oriented Programming, Class, GUI Programming, Recursion, LINQ, Event-Delegate, Collections-Generic, Windows Forms, XML, File-Directory, Date Time, Reflection, WPF, WCF, Ado.Net, vs.. ASP.NET : Silverlight, Asp.Net-Html Controls, Response, Sessions, Cookie, Roles and Profiles, Configuration, Data Binding, Page Lifecycle, Validation, Authentication, Authorization, HttpWebRequest, Communication between Silverlight and Javascript vs.. TRANSACT SQL : SQL, View, Procedure, Function (scalar, table-valued), Trigger, Transaction, Index, Constraints, Cursor, String Functions, Analytical Functions, Data Convert Functions, T-SQL commands (If, Else, While vs), Set operations, Sequence Identity, Handling Errors vs..
Tatar Ramazan
Bilişim kadar güzel meslek mi var. Her yerinden meslek, uzmanlık fışkırıyor. Ofis programları mı dersin, .NET, Oracle, Java mı dersin, sistem-network mü dersin, Grafikerlik mi dersin, Çizim programları mı dersin...Gıcır gıcır renkli teknolojiler..Yaptığın ürünü iç piyasaya satamazsan yurtdışına satarsın..Gençler için yığınla iş ve uzmanlık alanı. Oturun çalışın işte..Hem para hem keyif...java2s.com diye site var..Bütün teknolojilerin bütün konularıyla ilgili A dan Z ye örnek koymuş adamlar. Bizim öğrenciliğimizde yoktu...Oturun çalışın bahane üretmeyin. Yeniden görüşüciiz...
EZS
Paylaştığınız bilgiler için teşekkürler. qushevaksesuar.blogspot.com
77.245.150.214
Amacım bu dünyaya yararlı olabilmek.Biliyorum derslerim kötü ama insan hedefine ulaşmak için elinden geleni yapar.Lise 3.sınıf öğrencisiyim evet çok kafam çalışmayabilir ama bu çalışmıcak anlamına gelmez.İnsan kendini geliştirebilir.Bu makale için çok teşekkür ederim.Gerçekten bakış açım değişti ve bir genci daha kurtardınız.İlerde iyi bir yere gelirsem unutmuyacağım.Cümleleri yazarken biraz saçmalamış olabilirim her neyse ADIMI IP niz yapıverdim. İLERDE ŞUNU DEMEK İSTİYORUM ZİRVEDEYİM CANIM DUYULMUYOSUN.:D
Tatar Ramazan
Kaç zamandır bilgisayar mühendisliğine saldırıyorum site sahibi ağzını açıp mesleğini savunamıyor. Sükut ikrardan gelir tabi..
Nur
Dokuz eylül ve özyeğin arasında kaldım. Lütfen yardım edin . Bana katkıları eğitimi iş olanağı vs açısından sizce hangisini seçmeliyim
Tatar Ramazan
Başlarım sizin boğaziçinize de bilkentinize de odtünüze de.. hiç biri bi bok olamıyor. Ali AĞAOĞLU gibi hödükler malı, kızları götürüyor. Millet sevgilisiyle fink atar siz de abaza abza gezersiniz. Mezun olunca da kızlar zıpırları tercih edecek zaten size vermeyecekler. Her şey görüntü bu devirde, diplomanız bi boka yaramaz. Kocaeli elektroniği bitirmiş bi adam vardı. 28 yaşında işsiz olarak askere gitmişti.
From Tatar Ramazan To Boun
He he kolaydı öyle kendi işini kurmak. Kolay olsaydı insanlar devlete ve özele girmek için birbirlerini ezercesine yarışmazlardı. Mezun olunca bilg. mühendisliğini, yazılımı övenlere, size boş vaatler sunanlara gıcık olacaksınız merak etmeyin. 70 bin bilişim uzmanı varmış, yok güzel meslekmiş de bilmem ne. Hepsi palavra. 10 tane teknolojiyi A dan Z ye biliyor olmama rağmen hala beni mülakatta afra tafra yapıyorlar diyorum anlamıyor musunuz? Bizim kuruma canavar gibi yazılımcılar özelden kaçtı geldi. 7-10 yıllık deneyimli olanlar bile. Ege mezunu, ODTÜ mezunu ilk 2000 girmiş adamlar vs.. Zamanında memur olduk da yırttık. Özel firmaların kucağına düştün yandın. Yanlış konuşuyorsam çevrenizden 30 yaş üstü yazılımdan köşeyi dönen adamları gösterin bana o zaman..Yeniden görüşüciiz.

Bilgisayar Mühendisleri
Here is the website inspired me to use 
it as a guide when I tried to define 
myself as an engineer candidate a few 
years ago. It really helped me to work
 and study feeling in confidence with 
being on the right way. I suggest this 
website to whom it may direct her/his 
to find the right career path. It 
includes many articles varies from 
real life experiences to detailed 
software engineering issues. But the 
most dignified parts for me are the 
articles in general and career titles.
Son okunan makaleler:
Oracle - Cluster Kavramı (Clustering)
Bilgisayar mühendisliğinde okuyan öğrencilere tavsiyeler
Sizden gelen sorulara kısa kısa cevaplar
Dünya ile Rekabet Edecek Zehir Gibi Bir Bilgisayar Şirketi Kurmak
Soru sormayı bilmek?
Bilgisayar Mühendisliği Hakkındaki 10 Büyük Yalan!
Bilgisayar Mühendsileri için CV hazırlama rehberi - 1
Bir bilgisayar mühendisinin bilmesi gereken en temel teknolojiler
Bilgisayar Mühendisliği Hakkındaki 10 Büyük Yalan!
Bilgisayar Mühendisliği Hakkındaki 10 Büyük Yalan!
Bilgisayar Mühendisliği Hakkındaki 10 Büyük Yalan!
En iyi bilgisayar mühendisliği bölümüne sahip üniversiteler
Bilgisayar Mühendisleri Kaç Para Alır?
Bilgisayar mühendisliği öldü?
Askerlik ve Bilgisayar Mühendisliği
Bilgisayar Mühendisi Ne İş yapar? Program Nedir? Çeşitli Sorular?
Mezunları en kolay iş bulan üniversiteler
Bilgisayar Mühendisliğini yeni kazandım, neler yapmalıyım?
Bilgisayar Mühendisliğini yeni kazandım, neler yapmalıyım?
Bilgisayar mühendisliği öldü?

Bilgisayar Mühendisleri Portalı

Oracle - Cluster Kavramı (Clustering)

“Kümeleme,bir araya getirme” seklinde Türkçe söyleyebilecegimiz Clustering kavrami veritabani açisindan “verileri bir arada tutma, kümeleme” anlaminda kullanilabilir.

Oracle bu islemi 2 yolla yapar :
i)  Index Cluster
ii) Hash Cluster

Her ikisinide olusturmak için öncelikle elimize bir ”cluster” olmalidir.Varsayilan olarak olusan cluster bir “index cluster”’dir.

i) Index Cluster : Bir ya da daha fazla tabloda bulunan birbiri ile dogrudan iliskili  satirlari ayni segmentte tutan yapidir.Önceden “join” yapilmis veriler olarak da düsünülebilir.Bu durumda ilgili kolonlar ile yapilacak bir sorgu daha performansli olacaktir.

CREATE CLUSTER sc_person (person_id NUMBER(10)) SIZE 512;

“sc_person” isminde bir cluster olusturduk.Sonra CREATE INDEX idx_personnel ON CLUSTER sc_person;   ile  “sc_person” cluster’’i üzerinde bir index cluster olusturmus olduk.

Peki bunu nasil kullanacagiz.Örnegimize bakalim :

CREATE TABLE person (
   person_id   NUMBER(10),
   first_name  VARCHAR2(25),
   last_name   VARCHAR2(25) NOT NULL,
   active_flag VARCHAR2(1) NOT NULL)
CLUSTER sc_person (person_id);
CREATE TABLE invoice (
   person_id NUMBER(10),
   inv_id    NUMBER(10),
   inv_item  VARCHAR2(25) NOT NULL,
   inv_date  DATE NOT NULL)


CLUSTER sc_person (person_id);Bu tablolar olustugunda elimizde “person_id” alanina göre olusturulmus ve sanki her 2 tablo bu alan gore onceden join edilmis ve cikan sonuç kümesi bir arada fiziksel olarak tutuluyor seklinde bir yapi elde edilmis olur.
 
Anlasilacagi üzere index cluster olusturulan alan tablo ya da tablolar arasinda sık kullanilan ortak bir alan ise bu kullanim uygun olmaktadir.Ama bu avantajinin yaninda bir takim dezavantajlari da belirtmekte fayda var.Örnegin FTS(FullTableScan) olacak olursa daha cok zaman alacaktir.Insert islemi normalden daha fazla is yükü getireceginden yavas olacaktir.
ii) Hash Clusters : Hash bilindigi üzere verilen bir parametreye karsilik anahtar(key) üretir.Hash Clusterda da bu sekilde.Verilen bir “cluster key” degerine karsilik olusan anahtar degeri verinin  tutuldugu adresi vermektedir. (Ayni “hash key” degerine sahip satirlar birarada tutulur.)Baska bir degisle elinizde anahtar deger var ise dogrudan ilgili veriye tek I/O ile ulasmak mümkün.Normal bir indekste ise “leaf block” seviyesine inebilmek için birkaç I/O yapmak gerekiyor.

 

Her ne kadar kullanisli bir yapi olsa da özellikle SIZE ve HASHKEYS parametreleri düzgün set edilmedigi zaman performans olarak basinizi agritabilir.SIZE “hash key” degerine karsilik gelebilecek satirlarin tutacagi toplam alan miktarini, HASHKEYS ise tabloda tutulacak toplam kayit adedini ifade eder ve kendisinden sonra gelen en küçük asal sayi olarak Oracle tarafindan yeniden belirlenir.

CREATE CLUSTER trial_cluster (trialno NUMBER(5,0))
HASH IS trialno HASHKEYS 150;
CREATE TABLE trial (trialno NUMBER(5,0) PRIMARY KEY,   …) 
CLUSTER trial_cluster (trialno);

Yukarida once “trial_cluster” adinda bir hash cluster olusturduk.Daha sonra “trial” tablosunda “cluster key” alani olarak “trialno” alanini gösterdik.Oracle HASHKEY olarak 157 degerini kullacaktir.”trialno” alani bir “cluster key”’dir ve Hash fonksiyonuna gönderilerek bir “hash key” üretilir.

HASHKEY degeri çok fazla verilirse hash cluster seyrek olarak dolacaktir ve FTS performansi düsecektir.Eger az verilirse de ayni degeri alan pek çok “cluster key” degeri olacaktir.Bu da yeni bloklarin kullanilmasi ve bu bloklarin birbirine baglanmasi gerekliligine yol açacaktir.Bu da daha fazla I/O ya neden olacaktir.“Cluster Key” olarak  PrimaryKey alani kullanilmasi uygundur.Çünkü “Hash Key”  üreten fonksiyona her seferinde farkli bir deger gönderileceginden “hash key” in tekil olma olasiligi artacaktir.Oracle ‘in “Hash Key” üreten fonksiyonu çogu kosulda güzel çalismaktadir.

Ancak PL/SQL ile kullanicida kendi Hash Key fonksiyonunu yazabilir.Her bir “Hash Key” degeri için ayni miktarda alan tutulmaktadir.örnegin hash key “101” için 4 adet satir alani ayrilmis ise “109” hash key degeri için yine 4 adet satir alani ayrilmistir.

SIZE ve HASHKEY parametrelerinin hesaplanmasi ile ilgili açiklama ve örnekleri asagidaki linkten bulabilirsiniz :

http://download-east.oracle.com/docs/cd/B19306_01/server.102/b14231/hash.htm

Hash Cluster özellikle eşitlik koşuluna uygun verileri almak için kullanılmalıdır. Bunun dısındaki koşullarda tercih edilmemelidir.Boyut olarak sürekli değişen değilde değişmeyecek olan tablolar için uygundur.Aksi halde zaman zaman cluster tekrar oluşturulmalıdır(rebuild).Ayrıca Hash Clusters,FTS yapmak için uygun değildir.

Hakkı Oktay
http://hakkioktay.wordpress.com

Bu makaleyi beğendin mi? Yorumunu Yaz!







Sizden Gelen Yorumlar:

Yorum Yazın

vcv(08.07.2015 23:42:50)
cvcv
%0 %0 %0
Katılıyorum Çekimserim Katılmıyorum






Copyright© 2001-2017. Bilgisayar Mühendisleri Portalı | Bütün hakları saklıdır.