• 14-10-2014, 17:45:42
    #1
    Selamlar,
    Bir sosyal medya sitesi için hangi veritabanı sistemini kullanmak doğru olur?

    Soruyu daha da açacak olursak facebooku ele aldığımızda, durum paylaşma, beğenme, yorum yapma, bu beğeni sayısını hesaplama derken pek çok sorgu yapılması gerekiyor veritabanı üzerinde. Mysql ile yapılırsa belirli bir hitten sonra fazla işlemci kullanmasının yanında performans açısından da çok iyi bir seçim olacağını sanmıyorum. Mongodb düşündüm ancak ilişkisel işlemlerde çok iyi performans göstermediği konusunda yorumlar okudum, haliyle sosyal medya sitesinde birbiriyle ilişkili pek çok işlem söz konusu. Yada ben mi abartıyorum, mysql yeterli olur mu?
  • 14-10-2014, 17:53:42
    #2
    facebook database olarak mysql kullanıyor, ilk baştan size tek makine çok rahat yeter, siteniz yeteri kadar büyürse mysql cluster kurarsınız zaten

    tabi mysql indexlerini sağlam ayarlamalısınız optimizasyonları yapmalısınız
  • 14-10-2014, 17:53:48
    #3
    Aynı konuyu yarın ben açmayı düşünüyordum, benden önce açmışsınız
  • 14-10-2014, 17:59:11
    #4
    darbetim adlı üyeden alıntı: mesajı görüntüle
    facebook database olarak mysql kullanıyor, ilk baştan size tek makine çok rahat yeter, siteniz yeteri kadar büyürse mysql cluster kurarsınız zaten

    tabi mysql indexlerini sağlam ayarlamalısınız optimizasyonları yapmalısınız
    Facebookun nosql bir sistem kullandığını duymuştum tabi kulaktan dolma, herhangi bir sayfada facebook belirtiyor mu acaba kullandığını yada kaynak var mı
  • 14-10-2014, 18:09:02
    #5
    Muzo adlı üyeden alıntı: mesajı görüntüle
    Facebookun nosql bir sistem kullandığını duymuştum tabi kulaktan dolma, herhangi bir sayfada facebook belirtiyor mu acaba kullandığını yada kaynak var mı
    Facebook'ta tek bir database kullanılamaz tabi ki hocam. Binlerce makinede hadoop clusterları da var. Ayrıca hadoop üzerinde sql sorgularını çalıştırabilmek için Apache Hive projesini facebook geliştirdi. Ama NoSQL çözümleri farklı şeylerde kullanıyorlar.

    https://www.facebook.com/notes/faceb...p/468211193919
    Bu linkte söylediklerine göre:
    - as a warehouse for web analytics (Site istatistiklerini incelemek için)
    - as storage for a distributed database (Dağınık veritabanlarını depolamak için)
    - for MySQL database backups. (MySQL veritabanlarının yedeğini almak için)

    https://www.facebook.com/MySQLatFacebook
    Bu sayfa facebooktaki mysql ile alakalı şeyler paylaşıyor.

    http://webscalesql.org/
    Bu siteyi Facebook, Google, LinkedIn, and Twitter'daki mühendislerin MySQL'i daha iyi bir hale getirmek, geliştirmek için ortak çalışma projesi olarak kurmuşlar.


    https://www.facebook.com/notes/faceb...50599729938920
    Mark Callaghan diye bir adam var facebookta database takımında baya yetkili bi abi onun röportajına da bakabilirsin

    http://mysqlha.blogspot.com.tr/2014/...s-awesome.html
    Bu da Callaghan'ın MongoDB'yi gömdüğü bi blog yazısı.

    MySQL kullanacaksanız InnoDB engine kullanmanızı tavsiye ederim. Ayrıca memcache vs. gibi şeyler de kullanmanızda fayda olacaktır.
  • 14-10-2014, 18:10:32
    #6
    Muzo adlı üyeden alıntı: mesajı görüntüle
    Facebookun nosql bir sistem kullandığını duymuştum tabi kulaktan dolma, herhangi bir sayfada facebook belirtiyor mu acaba kullandığını yada kaynak var mı
    http://www.mysql.com/customers/industry/?id=85
    http://www.techworm.net/2013/05/what...book-uses.html
  • 14-10-2014, 18:17:50
    #7
    darbetim adlı üyeden alıntı: mesajı görüntüle
    Facebook'ta tek bir database kullanılamaz tabi ki hocam. Binlerce makinede hadoop clusterları da var. Ayrıca hadoop üzerinde sql sorgularını çalıştırabilmek için Apache Hive projesini facebook geliştirdi. Ama NoSQL çözümleri farklı şeylerde kullanıyorlar.

    https://www.facebook.com/notes/faceb...p/468211193919
    Bu linkte söylediklerine göre:
    - as a warehouse for web analytics (Site istatistiklerini incelemek için)
    - as storage for a distributed database (Dağınık veritabanlarını depolamak için)
    - for MySQL database backups. (MySQL veritabanlarının yedeğini almak için)

    https://www.facebook.com/MySQLatFacebook
    Bu sayfa facebooktaki mysql ile alakalı şeyler paylaşıyor.

    http://webscalesql.org/
    Bu siteyi Facebook, Google, LinkedIn, and Twitter'daki mühendislerin MySQL'i daha iyi bir hale getirmek, geliştirmek için ortak çalışma projesi olarak kurmuşlar.


    https://www.facebook.com/notes/faceb...50599729938920
    Mark Callaghan diye bir adam var facebookta database takımında baya yetkili bi abi onun röportajına da bakabilirsin

    http://mysqlha.blogspot.com.tr/2014/...s-awesome.html
    Bu da Callaghan'ın MongoDB'yi gömdüğü bi blog yazısı.

    MySQL kullanacaksanız InnoDB engine kullanmanızı tavsiye ederim. Ayrıca memcache vs. gibi şeyler de kullanmanızda fayda olacaktır.
    Çok çok teşekkür ederim ilginize. Ben fazla abartıyormuşum o zaman yada mysqli fazla küçümsüyormuşum iyi bir optimizasyon dediğiniz gibi bir de memcache yada benzeri bir cache sitemiyle gayet yeterli olacak gibi görünüyor o zaman.