Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

KV BulkWrite #223

Merged
merged 45 commits into from
Dec 9, 2019
Merged

KV BulkWrite #223

merged 45 commits into from
Dec 9, 2019

Conversation

adamstruck
Copy link
Contributor

Replaces #211

Currently unable to load BMEG due to OOM error in badger that occurs while loading expression data.

kellrott and others added 30 commits July 13, 2019 14:10
… durning load.

This should streamline the loader, so that the index code just writes, with not gets to increment counters.
…ifferent when using badger driver

Fixing lint
It turned out the aggrigation processor was dependent on a bug in the KVIndex code, and when we fixed that, it broke the aggigator

Fixing lint

Fixing lint
Fixing lint

Adding level testing back into travis

Removing rocks from docs

// StreamBatch a stream of inputs and loads them into the graph
// This function assumes incoming stream is GraphElemnts from a single graph
func StreamBatch(stream <-chan *gripql.GraphElement, batchSize int, graph string, vertexAdd func([]*gripql.Vertex) error, edgeAdd func([]*gripql.Edge) error) error {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It might make more sense to use key/value serialized value size to determine batches, rather then use a batchSize. But that can probably left for another PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed.

util/random.go Show resolved Hide resolved
cmd/kvload/main.go Outdated Show resolved Hide resolved
go.mod Outdated Show resolved Hide resolved
gripql/gripql.proto Outdated Show resolved Hide resolved
main.go Outdated Show resolved Hide resolved
@@ -34,3 +37,30 @@ def test_bulkload(O):
(res["count"], 6))

return errors


def test_bulkload_validate(O):
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it be worth adding in a unit test that actually tests the batching? IE, lots of vertices or elements with large amounts of attached data?

@kellrott
Copy link
Member

kellrott commented Dec 6, 2019

👍

@kellrott kellrott merged commit b2d89a9 into master Dec 9, 2019
@adamstruck adamstruck deleted the kvindex-bulkwrite-as branch March 18, 2020 21:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants