Ben 12a4...
, c3af...
gibi dize yılında birincil anahtar içeren bir tablo var. Paralel bunları işlemek istiyorum:n parçalar halinde bir altıgen endeksi Bölünmüş
process_them(1,4) on machine 1
process_them(2,4) on machine 2
process_them(3,4) on machine 3
process_them(4,4) on machine 4
Yukarıdaki tabloda tüm satırlar seçmelisiniz yaparak, birbirleriyle koordine makineler olmadan. Ben ile gelebilir en iyi fikir gibi 16 bölünmeleri geçerli: Bana 1/2, 1/4, 1/8, 1/16 gibi daha bölmelerini verir daha iyi bir fikir var mı
select * from table where id like '1%'
...
select * from table where id like 'e%'
select * from table where id like 'f%'
, Toplam satırların 1/32 vs?
Not: Bunu, kullanıcı verileri üzerinde gece işlenmesi ve bildirim gönderilmesi için yapıyorum. DB'nin kendisi üzerinde hiçbir şey düzenlemiyorum. Ve bir seferde binlerce kullanıcıyı işlemek zorundayız, bu şekilde verimli olmayacak şekilde ince taneli bir şekilde bölünemez.
Makinelerde bir artış sistemi kimliği varsa, bunu bir LIMIT deyiminde kullanabilirler. Ama bu muhtemelen "koordinasyon" olarak sayılır. IMHO, çevreleriyle ilgili bir şey bilmeleri gerektiğini önerdiğinizden daha iyi bir şey elde etmek için. – mabi
Dağıtılmış veritabanı en iyi çözüm olduğunu düşünüyorum. – Suleman