/ / TITAN: Jaka jest optymalna częstotliwość zatwierdzania podczas przesyłania masowych wierzchołków i krawędzi do wykresu? - bazy danych wykresów, tytan, gremlin, rexster

TITAN: Jaka jest optymalna częstotliwość zatwierdzania podczas przesyłania masowych wierzchołków i krawędzi do wykresu? - bazy danych wykresów, tytan, gremlin, rexster

Używam TITAN-0.4.3, REXSTER 2.4 nad Cassandrą i Elasticsearch. Mój przypadek użycia wymaga masowego przesyłania wierzchołków i krawędzi na wykresie naraz. Właśnie teraz wywołuję commit () po dodaniu każdego wierzchołka + krawędzi. Przeprowadzam test przez różne częstotliwości zatwierdzania, powiedzmy co 10K, co 1000 i co 100, a prędkość wysyłania zmienia się dramatycznie. Chcę wiedzieć, w jaki sposób mogę uzyskać optymalną częstotliwość zatwierdzania i na jakich parametrach jest oparty?

Wszelkie sugestie dotyczące zwiększenia wydajności w moim przypadku użycia? Rozmiar DB to z grubsza 10M wierzchołków.

Odpowiedzi:

1 dla odpowiedzi № 1

Nie jestem pewien, czy kiedykolwiek spotkałem magięliczba reprezentująca optymalną częstotliwość zatwierdzania. Wydaje się, że w dużej mierze zależy to od strategii ładowania danych. Zaczynam od 10000 jako wielkość zatwierdzenia i pracuję od tego miejsca. Zwykle jest trochę więcej sztuki, aby przybyć na tę liczbę, niż nauka niestety.

Możesz jednak przyspieszyć ładowanie w inny sposóbpoprzez buforowanie wierzchołków, które są powszechnie używane do zmniejszania indeksowania, wstępne sortowanie danych w celu zachowania tych wierzchołków w pamięci podręcznej, wyłączanie blokowania, jeśli to możliwe, itp. Jeśli nie przeczytałeś serii blogów "Powers of Ten", Część I może być pomocny, ponieważ dotyczy strategii dotyczących rozmiaru wykresu.