instagram twitter linkedin github youtube

7.5.15

Brute Force algoritması

Brute force algoritması
PEKİ NEDİR?
Brute force algoritması daha çok şifre kırmaya yarayan temelinde karakterleri tek tek deneyerek
bulan bir algoritmadır.Yani bir karakteri kırmak için 0 -255 karakter aralığını taraması gerekmektedir.
Kırılacak şifrenin uzunluğu artıkça 0-255 karakter permütasyonu da giderek artar ve çok uzun sürebilir.
ÖRNEĞİN ;
Elimizde ”SAMET” stringi olsun ve bunu aşağıdaki stringin içinde arayalım
SAETMSASAMETMTETESE gibi bir stringin içinde varmı yok mu bakalım.İlk olarak yapmamız gereken
ilk karakterden itibaren bizim aradığımız şifreye uyuyor mu yoksa uymuyor mu şimdi bakalım
SAETMSASAMETMTETESE
1.deneme:
İlk karakter S ile başlıyor,bu tutuyor.2. karakter A bu da tutuyor.3. karakter E olduğu için şimdi 2. Karakterden itibaren aramaya başlıyoruz.
2.deneme:İlk A ile başladığı için bunu da geçiyoruz.
3.deneme:İlk karakter E olduğu için burada da yoktur.
4.Deneme: İlk karakter T olduğu için burada da yoktur.
5.Deneme: İlk karakter M olduğu için burada da yoktur.
6. deneme: S ile başlıyor bu tutuyor sonraki karakter A bu da tutuyor fakat bir sonraki karakter S olduğu için bu adımı da geçiyoruz.
7.deneme: İlk karakter A olduğu için burada da yoktur.
8.deneme :ilk karakter S ile başlıyor sonra A ile devam ediyor bunarlın ikisi de tutuyor.3. karakterlerde
tutuyor.4. ve 5. Karakterlerde tuttuğu için şifremizi 8.denemede bulmuş olduk.Fakat işlem devam eder
ancak bundan sonra sizinde göreceğiniz gibi SAMET stringi aranılan string içerisinde yoktur
Ve anlamayanlar için
Videomuz
C kodumuz

Ve program cıktısı
Java kodumuz ve örneğimiz

 C KODUMUZ
VE PROGRAM CIKTISI 


Java kodumuz ve örneğimiz
Aranan kelimemiz : bilgi
Aranan metin: bilgisayarkavramlari
Olarak veriliyor olsun. Bu durumda algoritma ilk harften başlayarak “bilgi” kelimesini aranan metin içerisinde bulmaya çalışacaktır.
Öncelikle ilk harften başlanarak harfler karşılaştırılıyor. Aranan kelimenin ilk harfi “b” olduğu için bu harf bulunana kadar arama işlemi devam ediyor:
“b” harfi ile başlayan bir yer bulundu. Artık diğer harfler karşılaştırılabilir. Sırasıyla “I”,”L”.. harfleri karşılaştırılıyor ve harfler tuttuğu sürece karşılaştırma işlemi devam ediyor. Şayet harflerden birisi beklenen sırada gelmezse karşılaştırma işlemi kesilip kalınan yerden devam ediliyor.
Aslında bu harflere bakılmış olmasına rağmen yine de aranıyor. Malum kaba kuvvet arama algoritması akıllı bir algoritma değildir ve bütün ihtimalleri dener. Dolayısıyla aslında bakmış olduğumu ve bakılmasının bir anlamı olmayan bu harflere de bu algoritma kapsamında bakılıyor.




6.5.15

Algoritma Nedir? ve Algoritma Çeşitleri

Algoritma genel anlamda matematiksel işlem olan mantık konusuna ait bir terim olarak tanımlanır. Tam olarak amacı ise yapılan bir işin doğru olarak yapılabilmesi için izlenmesi gereken adım sırasıdır. Aslında insanlar yaptıkları tüm işleri bir algoritma sırası ile mantıklı hale getirir. Eğer yapılan bir işte algoritmik sıra yok veya izlenmiyorsa yapılan işin sonu büyük bir ihtimalle iyi bitmeyecektir. Bundan dolayı eğer bir mühendislik veya matematik dalına ait bir meslek seçmişseniz dolaylı yada dolaysız ilk göreceğiniz konulardan biri de algoritma ve algoritma çeşitleridir.Algoritma nedir? sorusunun tam olarak cevaplanması için belkide bir örneği başvurulması en doğrusudur. Bundan dolayı aşağıdaki örneği incelemek sizin açınızdan önemli olacağını düşünmekteyim.
Bir mühendislik çalışmasında yapılacak ilk işlem işin algoritmasını (işlem sırasını) çıkarmak olacaktır. Bu yüzden matematik mühendisliği gibi meslek gurupları ortaya çıkmıştır. Mühendislikte nasıl uygulandığını anlamak için şu örneği inceleyin.
Öyle bir makine yapılacak ki start düğmesine basıldığında çalışacak, stop düğmesine basıldığında duracak ve bir insan makine alanında tehlikeli bir bölgeye girerse kendisini otomatik olarak durduracak.
İşte böyle bir uygulamada ilk önce işlem sırası oluşturulursa makine için gerekli malzemeler, nasıl çalışacağı, nasıl bir yol izlemesi gerekir gibi pek çok sorunu tespit edilir ve doğru işlemleri sırasıyla uygulanabilir. Aksi taktirde makine yapılırken sürekli yeni şeyler eklemek yada çıkarmak durumunda kalınabilir. Hatta bu süreç tüm işin baştan masa üstünde tartışılmasını gerektirebilir. Bu makinenin algoritmasını grafiksel olarak basitçe hazırlayalım.
algoritma-ornek
Yukarıda basit bir algoritma örneği verdikten sonra tekrardan yolumuza devam edelim.Algoritma sistemleri mühendislik alanında en çok yazılımcılar tarafından kullanılır. Eğer bir yazılım uygulamasına algoritma oluşturmadan başlarsanız yaptığınız işlemlerin bir çoğu boşa gidebilir ve saatlerinizi boş boşuna harcamış olursunuz. Artık bu kısımdan sonra algoritma temelleri vealgoritma örnekleri ile devam edeceğiz.

Programlamada Algoritma Temelleri

Eğer bir program geliştirmeye karar verdiyseniz başarılı bir başlangıç ve mutlu bir son için sırayla şu adımları izlemeniz en doğrusu olacaktır.

Değişkenleri Belirleme

Programın akışı için dışarıdan girdi olarak alınacak verilerin tamamını belirlemek gerekir. Bu sayede programın temelleri oluşturulmuş olur. Değişkenler programın çalışmasını etkileyen en temel bileşenlerdir. Bundan dolayı başarılı bir şekilde değişkenleri belirlemek oldukça önemlidir.

Algoritma Oluşturma

Tüm değişkenleri belirledikten sonra yapılması gereken adım tabi ki de onları doğru şekilde sıralamak olmalıdır. Yukarıda zaten algoritmayı uzunca bir şekilde anlattım. Yapılacak olan işlemleri doğru bir şekilde sıralamak algoritma oluşturmak için yeterli olacaktır. Algoritma oluşturulurken basit ve  problemi en kısa yoldan çözüme ulaştırması için çalışılmalıdır.

Akış Diyagramı

Yukarıda verdiğim makine örneğinde zaten bir akış diyagramı oluşturmuştum. Akış diyagramı, yapılacak olan işin algoritması çıkarıldıktan sonra şema gurupları ile gösterilmesidir. Oluşturulan akış diyagramı ile karmaşık algoritmalar görselleştirildiği gibi mühendislikle pek ilişkisi olmayan insanlar içinde anlaşılır hale getirilir.

Akış Diyagramı Sembolleri

Akış diagramı oluşturulurken kullanılan sembollerin standart geometrik şekilleri vardır. Bu şekiller yardımı ile işlemler anlaşılabilir. Aşağıda paylaştığım görselde akış diyagramı oluştururken kullanılan sembolleri görebilirsiniz.
algoritma-kume-semaları

Algoritma Örnekleri

Yazı boyunca belli başlı örnek algoritma işlemleri gösterdim. Bu bölümde ise aşağıda paylaştığım örneğin algoritmasını (işlem sırasını) çıkaracağım ve sonrasında akış diyagramını çizerek yapılması planlanan bir programın nasıl hazırlanacağını göstereceğim. Örnek olarak ise daha önceki yazılarımdan birinde anlattığım C# faktöriyel hesaplama programının algoritmasını hazırlayarak yapacağım.
Soru: K!/L!(K-L)! işleminin kusursuz bir şekilde çalıştıracak bir algoritma hazırladıktan sonra akış diyagramı ile gösterin.
Akış diyagramından önce bir algoritma hazırlamak gerektiğinden yukarıda bahsetmiştim. Bu algoritma sırası hazırlanırken işlemler genellikle A0,A1,A2… gibi yada 1.İşlem, 2.İşlem,3.İşlem… gibi isimlerle sınıflandırılırlar. Ben A0,A1… yapısını genellikle kullanmayı tercih ettiğimden bu yazıda bu şekilde kullanacağım.

Örneğin Algoritma Sırası

A0 → Başla
A1 → K değerini 1 yap
A2 → L değerini 1 yap
A3 → K değeri ne girildi?
A4 → L değeri ne girildi?
A5 → K!/L!(K-L)! işlemini yap
A6 → Pay paydadan büyük mü?
A7 → büyükse uyarı mesajı gönder
A8 → değilse sonucu yaz.
A9 → Dur

Örnek Akış Diyagramı

Akış diyagramının aşağıda çizilmiş resmini görebilirsiniz. Bu çizimi Photoshop, eDraw hatta AutoCad gibi çizim programlarıyla yapabilirsiniz. Eğer çok yetenekli biriyseniz Paint programını bile deneyebilirsiniz :) Yada en basitinden bir kağıt ve kalem kullanarak hazırlamayı deneyebilirsiniz.
faktoriyel-akış-şeması

Algoritma Çeşitleri

Yazının başında belirttiğim gibi son bölümde algoritma çeşitleri hakkında olacak. Gerçek anlamda algoritma çeşitleri aslında her program uygulaması için farklı bir algoritma çeşidi keşfedilebilir. Fakat ihtiyaçlar doğrultusunda geliştirilmiş bazı algoritma çeşitleri vardır ki bunları tekrar tekrar yazmak tam anlamıyla Amerikayı tekrar keşfetme çıkmakla eşdeğerdir.
Algoritma işleri ile en çok uğraşan şirket büyük bir ihtimalle Google diye tahmin ediyorum. Çünkü eğer arama işi benim işim diyorsan algoritma işi de benimdir diyebilmen lazım belkide Google’u bu kadar başarılı kılan faktör de budur. Şuan Google arama motorunda arama faktörünü etkileyen 200 den fazla algoritma olduğu söyleniyor.

Arama Algoritmaları

Adında anlaşılacağı üzere dijital sistemlerde arama yapılmak istendiğinde kullanılabilecek algoritma çeşididir. Listeler, şekiller ve metinleri üzerinde arama yapılmasını sağlar. Yaygın olarak kullanılan arama algoritmaları şunlardır; ikili arama algoritması, enine arama algoritması,derin öncelikli arama algoritmalarıdır.

Genetik Algoritmaları

Yapay zeka sistemlerinde sık kullanılan bir algoritma çeşididir. Genetik bilindiği üzere insanın biyolojik yapısını inceleyen bilim dalıdır. Genetik algoritma ismini genetik bilimine benzer bir yapıda çalıştığından dolayı almıştır. Bu algoritma genellikle yer bulma işlemlerinde kullanılır. Çalışma mantığı ise sanal genler oluşturulur. Sonrasında bu genlerin mutasyonu sonucu en kaliteli sonuçlara ulaşılmasını sağlamaktır. Bu konu ile ilgili yapay zeka algoritmaları adlı yazıyı okumanızı tavsiye ederim.

Kriptografik Algoritmalar

Şifreleme amaçlı kullanılan algoritma çeşitleridir. Bu algoritma tipi sayesiyle dosyaların güvenliği sağlanabilir. Temel çalışma yapısı kullanıcı tarafından şifreleme yapılır ve dosya açılmak istendiği zaman oluşturulan şifre bilinmiyorsa içerideki bilgilere ulaşılamaz.

Kök Bulma Algoritmaları

Matematik konusu olan kök işlemleri üzerine çalışan algoritma türüdür. x olarak tanımlı bilinmeyen denklemleri kök bulma algoritma yardımı ile çözebilirsiniz.

Sıralama Algoritmaları

Alfabatik yada sayısal sıralama yapmak için kullanılan algoritma türüdür. Sürekli geliştirilmeye açık bir algoritma türüdür. Sıralama işleminin başarılı ve düzgün bir şekilde yapılması için oldukça önemlidir. Bu işlemi karşılaştırma yaparak yapmaktadır. Yani 1 ile 2 yi büyüklüğe göre sıralayacak olursak 2>1 şeklinde yaparız. Sıralama algoritması bu mantıkla sıralama yapmakta fakat bu kadar basit amaçlar için kullanılmamaktadır.

Diğer Algoritma Çeşitleri

Konunun başında bahsedildiği gibi algoritma çeşitleri 3 veya 4 türe ayrılabilecek kadar basit değildir. Ben algoritma çeşiti olarak burada en sık kullanılanlara biraz değinmeye çalıştım. Fakat hepsini teker teker bir yazı olarak yazılsa anca yeterli gelirdi. Bundan dolayı burada kısa keserek Wikipedia sitesinde yer alan algoritma başlığı altında diğer algoritma türlerini incelemenizi tavsiye ediyorum.
Bu algoritmaların tercih edilmesindeki sebepleri anlamaya çalışıyorsanız kısaca şunu diyebilirim. Yazının hemen başında dediğim gibi algoritma oluşturmanın temel amacı basit ve problemi en kısa yoldan çözmek olduğunu söylemiştim. Yukarıda verdiğim tüm bu algoritma çeşitleri bu işi en iyi şekilde yapabilen algoritmalar olduğu için bu algoritma çeşitleri kullanılmaktadır.

ABAP

ABAP (Advanced Business Application Programming), Alman yazılım şirketi SAP AG tarafından geliştirilen üst seviye bir nesne tabanlı programlama dilidir. SAP'ın, iş uygulamaları geliştirmek için kullanılan son zamanlarda java'nın da içerisinde kendine yer bulduğu NetWeaver platformunun parçası olan Web Uygulama Sunucu'sunu programlama için kullanılır. Sözdizimi (syntax) COBOL'a benzemektedir

ABAP programı nerede çalışır

Tüm ABAP programları SAP veritabanında bulunur. Java ve C++ programları ayrı dış dosyalarda depolanmazlar. Veritabanında tüm ABAP kodları iki şekilde bulunur: ABAP Workbench araçları ile görüntülenebilen ve düzenlenebilen kaynak kodu, ve Java bytekodu gibi düşünülebilecek ikili gösterimde "üretilmiş kod". ABAP programları, SAP çekirdeğinin(kernel) parçası olan çalışma zamanı sisteminin kontrolü altında çalışırlar. Çalışma zamanı sistemi ABAP ifadelerini işlemekten, ekranların akış mantığını kontrol etmekten ve olaylara(kullanıcının ekran butonuna tıklaması gibi) cevap vermekten sorumludur. ABAP çalışma zamanı sisteminin anahtar bileşenlerinden biri, veritabanından bağımsız ABAP ifadelerini("open sql") tabanda yer alan dbms(veri tabanı yönetim sistemi) in anlayabileceği ifadelere("native sql") çeviren veritabanı arayüzüdür. Veri tabanı arayüzü, ABAP programları adına, ilişkisel veri tabanıyla olan tüm iletişimi ele alır, aynı zamanda uygulama sunucusunun yerleşik belleğinde sık erişilen veriyi ara belleğe almak gibi ekstra özellikler içerir.
SAP'ın üç farklı katmanı, sunum katmanı(gui), uygulama katmanı(programlar bunun üstünde çalışır) ve kullanıcının hazırladığı durumlardan ve son kullanıcının sunum katmanından verdiği komutlardan tüm verinin kazanıldığı ve depolandığı veri tabanı katmanıdır.

SAP temeli

Söz dizim kontrolü, kod üretimi, çalışma zamanı sistemini içeren ABAP dil ortamı, SAP temel bileşen parçasıdır. SAP temeli, tipik olarak SAP web uygulama sunucusununframeworkünde uygulanan Sap uygulamalarının tüm rencini destekleyen teknolojik platformdur. Bu açıdan SAP temeli, üzerinde SAP uygulamalırının çalıştığı işletim sistemi olarak görülebilir. Tüm işletim sistemleri gibi, SAP temeli hem düşük seviyeli servisleri(örnek olarak hafıza yönetimi, veritabanı iletişimi ya da web istemleri sunumu) hem de son kullanıcılar ve yöneticiler için yüksek seviyeli araçları içerir. Bu araçlar, direkt olarak tabandaki işletim sisteminde çalışan çalıştırılabilirler(SAP kernel) olabilir ya da ABAP'da geliştirilmiş ya da web tabanlı arayüzler olabilir. SAP temeli, iş uygulamaları, işletim sistemi ve veritabanı arasında bir soyutlama tabakası sağlar. Bu, uygulamaların direkt olarak özel bir sunucuya ya da veritabanı platformuna bağımlı olmamasını ve bir platformdan diğerine kolaylıkla taşınmasını sağlar.
SAP temeli şu anda UNIX (AIXHP-UXSolarisLinux), Microsoft Windows, IBM System i üzerinde i5/OS (formerly iSeries, AS/400) ve IBM System z üzerinde z/OS (resmi olarak zSeries, S/390) sistemlerinde çalışır. Desteklenen veritabanları DB2InformixMaxDBOracle ve Microsoft SQL Server dır. (Informix için destek SAP Basis 7.00 sürümü ile beraber kaldırılmıştır).

SAP sistemleri ve biçimlendirmeleri

Tüm SAP verileri bir SAP isteminde bulunur ve tüm SAP yazılımları bu sistem üstünde çalışır. Böyle bir sistem merkezi bir ilişkisel veritabanı ile veri tabanındaki verilere ve uygulamalara erişen bir ya da daha fazla uygulama sunucusundan (örnekler) oluşur. Bir SAP sistemi boyut ve performans gibi nedenlerden en az bir ya da daha fazla örnek içerir. Çok örnek içeren bir sistemde yükleme dengeleme mekanizmaları yüklemenin uygun uygulama sunucularına dağılmasını sağlar. web uygulama sunucusu kurulumları tipik olarak üç sistemden oluşur: geliştirme sistemi, test etme ve kontrol sistemi, üretim sistemi. Biçimlendirme daha fazla sistem içerebilir: buna birim sistemi ve üretim öncesi testi için ayrık sistemler kullanılmasını örnek verebiliriz, biçimlendirme daha az sistem içerebilir buna olarak da ayrık kalite kontrol sistemi olmadan, sadece geliştirme ve üretim sistemlerinin bulunduğu bir biçimlendirmeyi örnek verebiliriz, yine de genellikle üç sistemli düzenleme kullanılır. ABAP programları geliştirme sisteminde oluşturulur ve ilk teste verilir. Sonra biçimlendirmedeki farklı sistemlere dağıtılır. Bu işlemler eş zamanlılık kontrolünden, versiyon yönetiminden ve programların kalite kontrol ve üretim sistemleri üzerine yerleştirilmesinden sorumlu olan değiştirme ve taşıma sisteminin kontrolü altında yer alır.
Web uygulama sunucusu üç katmandan oluşur: veri tabanı katmanı, uygulama katmanı, ve sunum katmanı. Bu katmanlar aynı ya da farklı fiziksel makineler üstünde çalışır
Örnek:
*-----------------------------------------------------------------------
* set an exclusive lock at level object-type & object-id
*-----------------------------------------------------------------------
 IF NOT lf_bapi_error = true.
   IF ( NOT istourhd-doc_type IS INITIAL ) AND
      ( NOT istourhd-doc_id IS INITIAL ).
     CALL FUNCTION 'ENQUEUE_/DSD/E_HH_RAREF'
          EXPORTING
               obj_typ        = istourhd-doc_type
               obj_id         = istourhd-doc_id
          EXCEPTIONS
               foreign_lock   = 1
               system_failure = 2
               OTHERS         = 3.
     IF sy-subrc <> 0.
*       terminate processing...
       lf_bapi_error = true.
*       ...and add message to return table
       PERFORM set_msg_to_bapiret2
            USING    sy-msgid gc_abort sy-msgno
                     sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
                     gc_istourhd gc_enqueue_refdoc space
            CHANGING lt_return.
     ENDIF.
   ENDIF.
 ENDIF.    " bapi error

dev data

BİG DATA

“Big Data” yani Türkçesi “Büyük Veri” (bizDev Veri diyoruz), tanımı sadece “diskte çok fazla yer kaplayan veri” anlamına değil, aynı zamanda geleneksel yöntem ve araçlarla işlenemeyen veri anlamına da geliyor.Teknolojinin ilerlemesi, internetin gelişmesi ve sosyal medya devrimi sayesinde bilginin gücünün öne çıkması iş yapma şeklimizi kökten değiştirdi. Firmalar bir adım öne geçebilmek için fark yaratmak zorundalar. Bu yüzden artık en ufak bir bilginin bile ne kadar önemli olduğu anlaşılmış durumda. Peki, bu kadar değerli olan bu veriler nerede?
Aslına bakarsanız bu veriler her yerde. Hatta biz hergün bunun bir parçası oluyoruz. İnternet kullanırken yaptığımız her tıklama çok önemli bir veri. RFID ve sensör teknolojileri giderek yaygınlaşıyor, bağlı bulundukları ortamlar ile ilgili sürekli veri topluyor. Gelecekte daha yaygın olacağı kesin ve şimdiden bazı otomobiller sürüş istatistiklerini toplamaya başladılar bile. İşte bütün bunlar, finansal veriler, medikal veriler, hepsi birleştiğinde dev veriyi oluşturuyor. Peki bu kadar çok veri nasıl saklanıyor?
Teknolojinin gelişmesi donanım fiyatlarının düşmesine sebep olduğu halde, saklanması gereken verilerin büyüklüğü ve çokluğu nedeniyle donanım maliyetlerini aşırı derecede yükseltebilir. Terrabyte büyüklüğündeki verileri saklayacak diskler ev kullanıcısına kadar inmişken dev veri petabyte, exabyte, belki zettabyte seviyesinde bile olabilir. 2000 yılında tüm dünyada 800,000 petabyte büyüklüğünde veri saklandı. 2020 yılında bu verinin 35 zetabyte olacağı tahmin ediliyor. Örneğin Twitter her gün 7 TB, Facebook 10 TB ve bazı kurumlar her gün her saat TB’larca veri saklıyor. Ancak yüksek maliyetli donanımlarla saklayabileceğimiz bu dev veriyi daha az maliyetli, basit donanımların açık kaynaklı dağıtık dosya sistemleri ile birleştirilmesiyle oluşan dev veri çözümlerinde saklamak mümkün. Peki, bu dev boyuttaki veriler nasıl işlenebilir ve ihtiyaç duyulan bilgiler elde edilir?
Yüksek hacimli bir arama motoru hizmeti veren bir firma olduğumuzu varsayalım. Arama motorumuzda hergün milyonlarca kelime aranıyor, milyonlarca tıklama yapılıyor. Eğer klasik yöntemler kullanıyor olsaydık bu verileri saklayabilmek için büyük ihtimalle milyon dolarlık donanım üzerinde çalışan yüzbinlerce dolarlık veritabanı sistemine sahip olmamız gerekirdi. Diyelim ki bu sisteme sahibiz, birbiri ile ilişkili olan kelimelerin analizini yapmak istediğimiz zaman bunu SQL sorguları ile yapabilmemiz pek mümkün değildir. Sorgu işlemleri o kadar uzun sürebilir ki çıkartacağımız sonuç güncelliğini bile yitirebilir. Başka bir engel de, bu verilerin yapılandırılmamış (unstructured) olarak tutuluyor olması durumu. Yani klasik yöntemlerle dev verinin işlenebilmesi pek söz konusu değil. Dev veri, ancak dev veri çözümleri ile işlenebilir.
Google klasik yöntemleri kullanmayarak, ihtiyacı olan teknolojiyi kendisi geliştirerek başarıya ulaştı. Google milyarlarca internet sayfasının verisini Google File System üzerinde tutuyor, veritabanı olarak Big Table kullanıyor, dev veriyi işlemek için MapReduce kullanıyor. Bu teknolojilerin hepsi düşük maliyetli binlerce bilgisayarın bir araya gelerek oluşturduğu kümeler üzerinde çalışıyor.  Benzer bir şekilde Amazon da verileriniDynamoDB üzerinde tutuyor.
Google, Amazon gibi firmalar geliştirdiği teknolojiler ile ilgili yaptıkları çalışmalar ile ilgili akademik yazılar yayınlıyorlar. Yayınladıkları yazılardan esinlenen Doug Cutting gibi bazı yazılımcılar benzer teknolojileri açık kaynaklı olarak geliştiriyorlar. Bunların en güzel örnekleri genelde Apache projeleri olarak ortaya çıkan LuceneSolrHadoopHBase gibi projeler. Bu projelerin her biri dev veriyi kullanabilen başarılı projeler.
İkinci jenerasyon diyebileceğimiz firmalardan Facebook, Twitter, Linkedin gibi firmalar dev veri için geliştirdikleri projeleri kendilerine saklamayıp açık kaynaklı olarak yayınlayarak bir adım ileriye gidiyorlar. Cassandra, Hive, Pig, Voldemort, Storm, IndexTank projeleri bunlara örnek. Bunların dışında MongoDB, Riak, Redis gibi yüzlerce dev veri işlemek üzerine geliştirilmiş projeler mevcut ve neredeyse her gün buna bir yenisi katılıyor. Bu esnada dev verinin önem kazanmasıyla mevcut projeler de hem finansal destek buluyor, hem de teknolojik olarak olgunlaşıyor. Peki dev veri ile neler yapılabilir?
İhtiyacımız olan bilgiler dev verinin içerisinde mevcut. Bir bilgi teknolojileri şirketi sistemlerinin yaptığı her hareketi kaydedip, “hangi hatalar birbirleriyle ilişkili”, “hangi problem sisteminizin performansını ne kadar etkiliyor” gibi soruların cevaplarını bulabilir. Bir banka, müşterilerin hareketlerinden dolandırıcılık teşebbüsünü tespit edebilir. E-posta servis sağlayıcı tüm e-postaları analiz edilerek hangilerinin spam olduğu tespit edebilir. Sosyal paylaşım sitesi kullanıcılarının beğeni ve paylaşımlarını analiz ederek ona en uygun reklamları gösterebilir. Bir mağaza müşterilerinin aldığı ürünleri analiz ederek onlara en uygun ürünleri önerip satışlarını arttırabilir. Yani, dev veri geleceğe ışık tutar.
Sitemizde amacımız Dev Veri başlığı altında toplanan NoSQL, Hadoop ve Lucene gibi teknolojileri incelemek ve tecrübelerimizi paylaşmaktır.

5.5.15

Türkiye İran'la, Ortak Ticarette Türk Lirası Kullanımında Anlaştı

Cumhurbaşkanı Erdoğan'ın geçen ayki Tahran ziyaretinde "Ticarette dolar yerine yerel para birimlerini kullanalım." çağrısının ardından iki ülke anlaşmayı tamamladı.

Türkiye İran
Cumhurbaşkanı Recep Tayyip Erdoğan'ın geçen ayki Tahran ziyaretinde yaptığı İran ile Türkiye'nin ticarette yerel para birimlerini kullanma çağrısının ardından iki ülke arasında anlaşmaya varıldığı bildirildi.
TÜRK LİRASI ORTAK OLACAK
İran Türkiye Ortak Ticari Konsey İdari Şefi Jalal Ebrahimi, anlaşmayı doğrulayarak ek önlemler üzerinde çalışıldığını belirtti. İran medyasında yer alan haberlere göre İran, Türkiye ile ticarette kendi para birimini kullanmak için gerekli hazırlıkları yürütüyor. Jalal Ebrahimi, Tahran ile Ankara'nın ticarette riyal ve Türk Lirası kullanma fikrinin Erdoğan'ın Tahran'a yaptığı son gezide oluştuğunu söyledi.
TAKASLA TİCARET YOLDA
Yerel para birimi ödeme mekanizmasının İran ile Türkiye arasındaki ticareti kolaylaştıracağına dikkat çeken Ebrahimi, iki ülke arasındaki ticareti kolaylaştırmanın diğer bir yolu olarak ise takasa başlamayı düşündüklerinin bilgisini verdi. Ebrahimi, Türk Lirası'nın dolar ve Euro karşısındaki değer kaybının Türkiye'nin deniz aşırı ticarette kendi para birimini kullanmasının yollarını aramasına neden olduğunu ifade etti.
ERDOĞAN BAŞLATTI
Erdoğan geçen ay Tahran'a gerçekleştirdiği ziyarette, "Biz ne doların ne Euro'nun baskısı altında kalalım. Biz alımlarımızı İran'ın yerli parası ile yapalım istiyoruz. Kur baskısı altında kalmayız. İran da kendi parasıyla alımlarını bizden yapsınlar. Döviz kurunda başka paraların baskısı altında kalmamalıyız" açıklamasında bulunmuştu.
İRAN RUSYA İLE TİCARETTE PARAYI KALDIRDI
İran ile Rusya bir süre önce iki ülke arasındaki ticarette parayı kaldırdığını duyurmuştu. Rusya ve İran'ın başladığı 'ürün karşılığı petrol' işlemi, Rusya'nın, İran'dan alınan petrolün karşılığında bu ülkeye buğday, teknoloji ve inşaat malzemeleri vermesini öngörüyor