Follow Zekeriya Besiroglu on WordPress.com

Oracle Big Data SQL

bigdatasql

 

Oracle’ın geçtiğimiz aylarda piyasaya sundugu one fast query , on all your data sloganı aslında durumun özeti gibi.

Tek SQL arkasında Hadoop Application logs,NoSQL ve relational model. Bugun öyle bir data ile karşı karşıyayızki saatler içinde inanılmaz büyüyor. 

Big Data Sql , Big data kaynaklarına kolayca ulaşmamız için önemli bir araç. Big Data Sql sayesinde Hadoopta nosql de normal databasede duran datalarımıza tek bir sorgu ile ulaşabileceğiz. Hatta Exadata kullanıyorsanız Smart scan bile yapabilecek.

Big Data SQL, Oracle Big data appliance ve Exadatada kullanılabilecek. SQL ile varolan uygulamalarınız üzerinden hadoop ve nosql ulaşabilecek ve database güvenliğimizi Hadoop ve NoSQL taşıyabilecek.

 

 

Oracle Database 12c In-memory ve Buffer Cache

Arkadaslar bildiginiz üzere Oracle’ın 12c versiyonu geçtiğimiz aylarda çıkmıştı. Geçtiğimiz günlerde de 12.0.1.2 versiyonu çıktı.

Bu versiyon bize büyük bir yenilikle beraber geldi. Kolon bazında in memory.

Veritabanında tutulan verilen kalıcı olması adına disklerde tutulduğunu ve bu verilerin okuma ve değiştirme amaçlı olanlarının da veritabanının buffer cache dediğimiz alanında tutulduğunu söyleyebiliriz. Zaten iyi performans sağlayan bir sistemde buffer cache bu ihtiyaççları karşıladığını görüyorduk.

Oracle veritabanında veriler row formatında tutulurlar. Dolayısı ile kolon  bazında in memory ilgi cekici olacaktır.

Bugune kadar veritabanı dediğimizde karşımıza iki temel secenek cıkıyordu. OLTP veritabanları (insert,update,delete) ve DSS veritabanları (sorgulama ağırlıklı). Firmalar tercihlerinde sistemlerini optimize etmek adına ayrı ayrı makinalar ayrı ayrı veritabanları kuruyorlardı.

Oracle Database 12c in memory artık dual-format olacak. Buradan anlayabileceğiniz üzere tek sistem artık eskisinden çok daha yakın. Özellikle Exadata artık daha yakın.

Yazımda Buffer cache ve In Memory farkını net ortaya koymak istiyorum. Buffer Cahe , datayı read/write işleri için geneleksel şekilde row formatında tutar.

Datayı okumak için istediğimizde Memory option devreye girecek ve row formatından kolona döndürecek.

Peki bu in memory opsiyonu nasıl kullanacağız, kullanmak için yapmamız gereken sadece bir veritabanı parametresini ayarlamak.

Alter system set inmemory_size=5368709120 diyelim scope=spfile;

Daha sonra sorgulama için uygun olan tablonuzu

Alter table satisrapor inmemory; komutunu verip memory alalım.

 

Bu özelliğin en önemli yanı ne kodda ne databasede bir değişiklik yapmamak.

yani aynı tabloyu ister inmemory tutarsınız ister buffercacde . Bu sizin DBA bilginize ve operasyona göre yapacağınız aksiyona bağlı bile olabilir.

Size buffercache ile inmemory karsılaştırmasını somut bir örnekle göstermek istiyorum.

Alter table satisrapor cache ; diyelim bu şekilde tablomuzu buffer cache almış olalım.

Tabloya

Select avg(satis) from satisrapor where zaman between ‘2008’ and ‘2012’

çalıştırdığımızda bize geri dönüş süresi 32sn olarak gözüküyor.

Bu select buffer cacheden gelen bir sonuc.

Aynı sorgu buffercacheden değilde diskten gelse çok daha uzun zaman alacaktır.

alter table satisrapor inmemory

alter session set inmemory_query=enable

Select avg(satis) from satisrapor where zaman between ‘2008’ and ‘2012’

 

çalıştırdığımızda query inmemory geliyor ve geri dönüş süresi mükemmel sadece 7 saniye.

Detaylı incelemek için Execution plana baktığımızda Table access in memory full yazdığını görebiliriz.

Evet Arkadaşlar Artık ORACLE 12C geçmenin yavaş yavaş vakti geliyor.

 

 

Big Data ve SQL analizleri

12c

Bugun size Big data üzerinde SQL kullanarak neler yapabileceğimizi anlatacağım.

SQL programlama dili sayesinde Big data üzerinde son derece basit,hızlı ve başarılı sonuçlar elde edebiliyoruz.

Bugunku örnek SQL komutum  Match_recognize.

bu SQL komutu sayesinde yapabileceklerimize bir kaç örnek vereyim.

Özellikle Borsada manipule haraketleri takip etmekte yani belirli bir zaman içinde W diye tabir edilen istatistiki verileri yakalamakta kullanabiliriz. Bir hisse senedinin değerinin önce azalması sonra yükselmesi sonra tekrar azalıp yükselmesini, grafik olarak takip edersek W gibi bir çizgi oluşturur. kısa bir zaman içerisindeki bu inişler çıkışlar süpheli aksiyon olarak tespit edip yakalayabiliriz.

SELECT first_x, last_y

FROM hisseler MATCH_RECOGNIZE (

PARTITION BY hisse_adı ORDER BY zaman

PATTERN (x+ y+)

DEFINE x AS (fiyat < PREV(fiyat)),

y AS (fiyat > PREV(fiyat))

Başka bir örnekte bir bankada bir müşterinin yaptığı para transferlerine bakılabilir. örnegin müşteri ufak tefek transferler yaparken arada buyuk miktarda tranfer yapıyorsa bu yakalanabilir.

SELECT musterino, ilkkayıt, sonkayıt, miktar

FROM parakayıt MATCH_RECOGNIZE (PARTITION BY musterino ORDER BY zaman)

PATTERN ( (; X ) {1,} Y )

MEASURES musterino, first(x.timestamp) ilkkayıt,

y.timestamp sonkayıt, y.miktar

DEFINE X AS (kayit = ‘Transfer’ AND miktar < 5,000 AND

last(X.timestamp) – first(X.timestamp) < 10)

Y AS (kayit = ‘Transfer’ AND amount > 1,000,000 AND

y.timestamp – last(x.timestamp) < 10 )

Böylece aynımusterinin 0 gün içerisinde 5000 tl altında ve 1.000.000 tl üstündeki işleri kayıtlarımızdan daha ne görebileceğiz.

 

Örnekleri çoklandırmak mümkün bugün bir futbol veya basket oyuncusunun sahadaki haraketlerini takip etmekten , bir Gsm operatorinin için arama detayı analizlerine kadar kullanabiliriz.

 

Kaynak:Oracle

Big Datayı hangi sektörlerde kullanabiliriz.

Bugun normal data kullanımı hepimizin kafasında aşağı yukarı oturmuş durumda. OLTP, işlere örnek vermek gerekirse ,hesaba para yatırma , para çekme fatura kesme gibi işleri artık konuşmuyoruz bile.

Tabiki bu tarz veriler ve veritabanları önemini kaybetmeyecek.

Ancak bilinen yöntemlerin dışında çok bakir bir alanı artık konuşmaya başlamalıyız.

Big Data

Bebek maması alan müşteriye çoçuk bezi önermek artık şirketleri tatmin etmeyecek.

 

Şirketlerimizde yıllardır biriken verilerimiz var. Aslında çok kıymetli olan ama atıl duran veriler bunlar.

Bu verileri doğru bir denklem içine alarak yapılabilecek bir takım işleri sektör bazında özetlemeye çalıştım. Bu liste çok kısa ve kafanızda sadece bir resim olsun istedim.

 

Ulaşım

Bütün ulaşım tercihlerinde ,yoğunluk analizlerinde. Toplu ulaşım için yapılacak tercihlerde

Eğitim.

Tecrube ve zamana dayalı eğitim analizlerinde

Finans

Özellikle risk ve portfoy analizlerinde

Sağlık

Hasta analiz ve takibinde. Bölgelere göre tavsiyelerde. Daha kaliteli sağlık hizmetlerinde

Alışveriş

Tüketici davranış ve duygu analizinde. Tercih analizinde

Haberleşme

Lokasyon bazlı tavsiyelerde. Lokasyon bazlı tercihlerde

Otomobil

Bölgelere bağlı analizlerde. Araç tercih analizlerinde

Urun servislerinde

Garanti konuları ve tercihlerinde

Medya Sektorunde

Tavsiye ve Reklam analizlerinde

Enerji sektoru analizleri akıllı şehir projelerinde Big Datayı yoğun olarak kullanabiliriz

Daha birçok alan ve konuda hayatımızda olan , data büyüyor ve analiz etmemiz için bizi bekliyor.

Görüşmek Üzere

 

 

 

 

 

 

Big Data – Oracle Big Data –

Oracle Exadata, How the Monitor the InfiniBand Network

You can manually monitor Exadata Infiniband switches.

  • You can checks for failed switch hardware sensors
  • Note. If you want to manual monitoring is your switches software version prior to 1.1.3

first make ssh root@ib

root@ib’s password:

 

then write

[root@ib ]# showunhealthy

OK – No unhealthy sensors

then check the power

[root@ib]# checkpower

PSU 0 present status: OK

PSU 1 present status: OK

If you use Oracle Enterprise manager grid control then

go to InfiniBand switch home page and check the status and availibility.

- How can you Monitoring the InfiniBand Switch Ports

# ibqueryerrors.pl –s RcvSwRelayErrors,RcvRemotePhysErrors,XmtDiscards,
XmtConstraintErrors,RcvConstraintErrors,ExcBufOverrunErrors,VL15Dropped

also you can

# ibstatus

# perfquery

# ifconfig

# ping Remote InfiniBand Hostname

# ibswitches

And use

verify-topology to check the Network Topology

# /opt/oracle.SupportTools/ibdiagtools/verify-topology

[ DB Machine Infiniband Cabling Topology Verification Tool ]

[Version 11.2.1.4]

Looking at 1 rack(s)…..

Spine switch check: Are any Exadata nodes connected …………..[SUCCESS]

Spine switch check: Any inter spine switch connections…………[SUCCESS]

Spine switch check: Correct number of spine-leaf links…………[SUCCESS]

Leaf switch check: Inter-leaf link check……………………..[SUCCESS]

Leaf switch check: Correct number of leaf-spine connections…….[SUCCESS]

Check if all hosts have 2 CAs to different switches……………[SUCCESS]

Leaf switch check: cardinality and even distribution…………..[SUCCESS]

 

SQL Tunning Tools and Tips with Zekeriya Besiroglu

20140623_163914     troug-zekeriyabesiroglu                  8da1e-2kas25c425b125c425b1m20112b051

SQL Tunning Tools and Tips / Advance Sql tunning

SQL tunning, Oracle üzerinde çalışan herkesin bilmesi gereken bir konudur. SQL sorgularımızı çok kolay bir şekilde analiz edip hızlandıracağımız , problemli SQL’in neden problem olduğunu net bir şekilde tespit edeceğimiz ve bu konuda gizli kalmış dünyanın en iyi araçlarını kullanacağımız bir eğitim. Detaylı bilgi ve kayıt için zekeriyabesiroglu@gmail.com

EGITIM İÇERİĞİ

SQL tunning, Oracle üzerinde çalışan herkesin bilmesi gereken bir konudur. SQL sorgularımızı çok kolay bir şekilde analiz edip hızlandıracağımız , problemli SQL’in neden problem olduğunu net bir şekilde tespit edeceğimiz ve bu konuda gizli kalmış dünyanın en iyi araçlarını kullanacağımız bir eğitim.

 

-        SQLTXPLAIN NEDİR?

-        SQLTXPLAIN KURULUMU

-        COST BASED OPTIMIZER NEDIR

-        ISTATISTIKLERIN ONEMI

-        EXECUTION PLANI ETKIYELEN FAKTORLER

-        TRANSFORMATION NEDIR? TRANSFORMASYON PROBLEM OLURMU?

-        EXECUTION PLAN KARSILASTIRMA

-        TRACE DOSYALARI , 10046-10053 NEDIR? NERELERDE KULLANILMALI

-        CBO KRITIK PARAMETRELER

-        TOP 10 Dikkat edilmesi gerekenler.

-        OZET

Zekeriya Beşiroğlu Kimdir?

Zekeriya Beşiroğlu 14 Yılı aşkın bir suredir Oracle ürünleri üzerinde çalışmalar yapan ve bu çalışmalar neticesinde 2010 yılında Oracle tarafından , dunyada sadece 200 uzmana layık görülen  ‘Oracle Ace Database Management&Performance’ ödülünü almaya hak kazanmıştır. Oracle Bilgisayar Programcılar Derneğinin (TROUG http://troug.org) kurucularından olup halen derneğin Yönetim Kurulu Başkanlığını yapmaktadır

 

Konu Başlıkları

Zekeriya Besiroglu Twitter

Error: Twitter did not respond. Please wait a few minutes and refresh this page.

Follow

Get every new post delivered to your Inbox.