, geri sonuçların toplu almak için SKIP ve LIMIT kullanmayı tercih ediyorum en yakın tarihli sözlerine db motoru ve {id} noktalarından dışından Neo4j çağrı yapıyoruz varsayarsak:
MATCH (p:Post)-[:PREVIOUS*]->(c)
WHERE p.Id = {id}
RETURN c SKIP 0 LIMIT 500
Her aramanın "atlama" değerlerini değiştirin ve sayfa numaranızı alırsınız. Örneğin, ikinci arama SKIP 500 olacaktır, üçüncüsü SKIP 1000, vs. olacaktır.
REST API'sı ayrıca, ardışık çağrılar arasında toplu sorgu sonuçlarını toplu olarak sunmanın bir yolunu sunar - daha fazla ayrıntı için REST belgelerini kontrol edin.
Disk belleği katedicileri bir düğüm temsilinde paged_traverser anahtar bilgisini bağlamak üzere geçişi açıklama SONRASI ing tarafından oluşturulur sayfalamalı şaryo oluşturma:
İşte belleğine geçişleri üzerinde REST API metin var. Disk belleği olan bir traverser oluştururken, aynı seçenekler, normal bir traverser için geçerlidir; bu, düğümün, yolunun veya tam yolun hedeflenebileceği anlamına gelir.
Example request
• POST http://localhost:7474/db/data/node/297/paged/traverse/node
• Accept: application/json; charset=UTF-8
• Content-Type: application/json
'ATLAMA LIMIT' Başlangıçta belirtilen bu genişletme var uzunluğundan daha kötü bir performans (- [: ÖNCEKİ * 100..200] -> (c)' '' MATCH (p)) yer alır. sorgu planlayıcısında kontrol edebilirsiniz. Bu yüzden ilk etapta bahsetmedim. – drgraduss
Eğer denemekten bahsetmiş olsaydınız ve yeterince verimli olmadıysa, ikimiz de bir süre kurtulduk. –
"Atla sınırı" ifadesinden bahsetmediğim için ping paging traversals –