{"bundle_type":"pith_open_graph_bundle","bundle_version":"1.0","pith_number":"pith:2015:2YWZGIQGNUMDXD6KVZK5KYAWXD","short_pith_number":"pith:2YWZGIQG","canonical_record":{"source":{"id":"1504.00788","kind":"arxiv","version":1},"metadata":{"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.DC","submitted_at":"2015-04-03T09:24:22Z","cross_cats_sorted":[],"title_canon_sha256":"8490093bd0ec175d9ee87acfcebd59498f2dc02ca02e9fb4bdfaa0d8116dc092","abstract_canon_sha256":"9a5ae91a148c76df9070f5e82c89bc1662a00bf412afaf0fc811b4e4ff81e2d9"},"schema_version":"1.0"},"canonical_sha256":"d62d9322066d183b8fcaae55d56016b8f120fc47e738102dcd44893c8b1fb5d6","source":{"kind":"arxiv","id":"1504.00788","version":1},"source_aliases":[{"alias_kind":"arxiv","alias_value":"1504.00788","created_at":"2026-05-18T00:58:35Z"},{"alias_kind":"arxiv_version","alias_value":"1504.00788v1","created_at":"2026-05-18T00:58:35Z"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.1504.00788","created_at":"2026-05-18T00:58:35Z"},{"alias_kind":"pith_short_12","alias_value":"2YWZGIQGNUMD","created_at":"2026-05-18T12:29:02Z"},{"alias_kind":"pith_short_16","alias_value":"2YWZGIQGNUMDXD6K","created_at":"2026-05-18T12:29:02Z"},{"alias_kind":"pith_short_8","alias_value":"2YWZGIQG","created_at":"2026-05-18T12:29:02Z"}],"events":[{"event_type":"record_created","subject_pith_number":"pith:2015:2YWZGIQGNUMDXD6KVZK5KYAWXD","target":"record","payload":{"canonical_record":{"source":{"id":"1504.00788","kind":"arxiv","version":1},"metadata":{"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.DC","submitted_at":"2015-04-03T09:24:22Z","cross_cats_sorted":[],"title_canon_sha256":"8490093bd0ec175d9ee87acfcebd59498f2dc02ca02e9fb4bdfaa0d8116dc092","abstract_canon_sha256":"9a5ae91a148c76df9070f5e82c89bc1662a00bf412afaf0fc811b4e4ff81e2d9"},"schema_version":"1.0"},"canonical_sha256":"d62d9322066d183b8fcaae55d56016b8f120fc47e738102dcd44893c8b1fb5d6","receipt":{"kind":"pith_receipt","key_id":"pith-v1-2026-05","algorithm":"ed25519","signed_at":"2026-05-18T00:58:35.903401Z","signature_b64":"8APtg9aSgPR5tJz71rIdQGbZM1p7um2YzhjUgza9AUMKH2S6PT0Bqp9opb+l73DchC4rUlpp8MDP+yWNR84ZBA==","signed_message":"canonical_sha256_bytes","builder_version":"pith-number-builder-2026-05-17-v1","receipt_version":"0.3","canonical_sha256":"d62d9322066d183b8fcaae55d56016b8f120fc47e738102dcd44893c8b1fb5d6","last_reissued_at":"2026-05-18T00:58:35.902573Z","signature_status":"signed_v1","first_computed_at":"2026-05-18T00:58:35.902573Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"source_kind":"arxiv","source_id":"1504.00788","source_version":1,"attestation_state":"computed"},"signer":{"signer_id":"pith.science","signer_type":"pith_registry","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"created_at":"2026-05-18T00:58:35Z","supersedes":[],"prev_event":null,"signature":{"signature_status":"signed_v1","algorithm":"ed25519","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signature_b64":"X/Wb6fJ0tmOwYVnTBwu5yKdBF+Ydk3BsAhIJyBjlNxTb/ygruCrZucDOzY8knadGi0J2iIdWNcRYSd6L31yjCg==","signed_message":"open_graph_event_sha256_bytes","signed_at":"2026-06-07T08:42:23.634515Z"},"content_sha256":"07854faa8fd2108153ac14ee31c140c50a0b4848e27d23401b2741b6b78ca90d","schema_version":"1.0","event_id":"sha256:07854faa8fd2108153ac14ee31c140c50a0b4848e27d23401b2741b6b78ca90d"},{"event_type":"graph_snapshot","subject_pith_number":"pith:2015:2YWZGIQGNUMDXD6KVZK5KYAWXD","target":"graph","payload":{"graph_snapshot":{"paper":{"title":"The Power of Both Choices: Practical Load Balancing for Distributed Stream Processing Engines","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","headline":"","cross_cats":[],"primary_cat":"cs.DC","authors_text":"David Garc\\'ia-Soriano, Gianmarco De Francisci Morales, Marco Serafini, Muhammad Anis Uddin Nasir, Nicolas Kourtellis","submitted_at":"2015-04-03T09:24:22Z","abstract_excerpt":"We study the problem of load balancing in distributed stream processing engines, which is exacerbated in the presence of skew. We introduce Partial Key Grouping (PKG), a new stream partitioning scheme that adapts the classical \"power of two choices\" to a distributed streaming setting by leveraging two novel techniques: key splitting and local load estimation. In so doing, it achieves better load balancing than key grouping while being more scalable than shuffle grouping. We test PKG on several large datasets, both real-world and synthetic. Compared to standard hashing, PKG reduces the load imb"},"claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"1504.00788","kind":"arxiv","version":1},"verdict":{"id":null,"model_set":{},"created_at":null,"strongest_claim":"","one_line_summary":"","pipeline_version":null,"weakest_assumption":"","pith_extraction_headline":""},"references":{"count":0,"sample":[],"resolved_work":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57","internal_anchors":0},"formal_canon":{"evidence_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"author_claims":{"count":0,"strong_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"builder_version":"pith-number-builder-2026-05-17-v1"},"verdict_id":null},"signer":{"signer_id":"pith.science","signer_type":"pith_registry","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"created_at":"2026-05-18T00:58:35Z","supersedes":[],"prev_event":null,"signature":{"signature_status":"signed_v1","algorithm":"ed25519","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signature_b64":"OqELwwgpm5soXZN9pVum42GQEkaUuRJxqOOjVdEKyWQ1AiPnVtA/nQBfXFdQdbk+Tomtln/benvuXeGLjRElAA==","signed_message":"open_graph_event_sha256_bytes","signed_at":"2026-06-07T08:42:23.634871Z"},"content_sha256":"ff91e8a2c21e04e4a4c566f3159bcc5c1aadcb720f4ab6df25716283704db0b0","schema_version":"1.0","event_id":"sha256:ff91e8a2c21e04e4a4c566f3159bcc5c1aadcb720f4ab6df25716283704db0b0"}],"timestamp_proofs":[],"mirror_hints":[{"mirror_type":"https","name":"Pith Resolver","base_url":"https://pith.science","bundle_url":"https://pith.science/pith/2YWZGIQGNUMDXD6KVZK5KYAWXD/bundle.json","state_url":"https://pith.science/pith/2YWZGIQGNUMDXD6KVZK5KYAWXD/state.json","well_known_bundle_url":"https://pith.science/.well-known/pith/2YWZGIQGNUMDXD6KVZK5KYAWXD/bundle.json","status":"primary"}],"public_keys":[{"key_id":"pith-v1-2026-05","algorithm":"ed25519","format":"raw","public_key_b64":"stVStoiQhXFxp4s2pdzPNoqVNBMojDU/fJ2db5S3CbM=","public_key_hex":"b2d552b68890857171a78b36a5dccf368a953413288c353f7c9d9d6f94b709b3","fingerprint_sha256_b32_first128bits":"RVFV5Z2OI2J3ZUO7ERDEBCYNKS","fingerprint_sha256_hex":"8d4b5ee74e4693bcd1df2446408b0d54","rotates_at":null,"url":"https://pith.science/pith-signing-key.json","notes":"Pith uses this Ed25519 key to sign canonical record SHA-256 digests. Verify with: ed25519_verify(public_key, message=canonical_sha256_bytes, signature=base64decode(signature_b64))."}],"merge_version":"pith-open-graph-merge-v1","built_at":"2026-06-07T08:42:23Z","links":{"resolver":"https://pith.science/pith/2YWZGIQGNUMDXD6KVZK5KYAWXD","bundle":"https://pith.science/pith/2YWZGIQGNUMDXD6KVZK5KYAWXD/bundle.json","state":"https://pith.science/pith/2YWZGIQGNUMDXD6KVZK5KYAWXD/state.json","well_known_bundle":"https://pith.science/.well-known/pith/2YWZGIQGNUMDXD6KVZK5KYAWXD/bundle.json"},"state":{"state_type":"pith_open_graph_state","state_version":"1.0","pith_number":"pith:2015:2YWZGIQGNUMDXD6KVZK5KYAWXD","merge_version":"pith-open-graph-merge-v1","event_count":2,"valid_event_count":2,"invalid_event_count":0,"equivocation_count":0,"current":{"canonical_record":{"metadata":{"abstract_canon_sha256":"9a5ae91a148c76df9070f5e82c89bc1662a00bf412afaf0fc811b4e4ff81e2d9","cross_cats_sorted":[],"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.DC","submitted_at":"2015-04-03T09:24:22Z","title_canon_sha256":"8490093bd0ec175d9ee87acfcebd59498f2dc02ca02e9fb4bdfaa0d8116dc092"},"schema_version":"1.0","source":{"id":"1504.00788","kind":"arxiv","version":1}},"source_aliases":[{"alias_kind":"arxiv","alias_value":"1504.00788","created_at":"2026-05-18T00:58:35Z"},{"alias_kind":"arxiv_version","alias_value":"1504.00788v1","created_at":"2026-05-18T00:58:35Z"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.1504.00788","created_at":"2026-05-18T00:58:35Z"},{"alias_kind":"pith_short_12","alias_value":"2YWZGIQGNUMD","created_at":"2026-05-18T12:29:02Z"},{"alias_kind":"pith_short_16","alias_value":"2YWZGIQGNUMDXD6K","created_at":"2026-05-18T12:29:02Z"},{"alias_kind":"pith_short_8","alias_value":"2YWZGIQG","created_at":"2026-05-18T12:29:02Z"}],"graph_snapshots":[{"event_id":"sha256:ff91e8a2c21e04e4a4c566f3159bcc5c1aadcb720f4ab6df25716283704db0b0","target":"graph","created_at":"2026-05-18T00:58:35Z","signer":{"key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signer_id":"pith.science","signer_type":"pith_registry"},"payload":{"graph_snapshot":{"author_claims":{"count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57","strong_count":0},"builder_version":"pith-number-builder-2026-05-17-v1","claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"formal_canon":{"evidence_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"paper":{"abstract_excerpt":"We study the problem of load balancing in distributed stream processing engines, which is exacerbated in the presence of skew. We introduce Partial Key Grouping (PKG), a new stream partitioning scheme that adapts the classical \"power of two choices\" to a distributed streaming setting by leveraging two novel techniques: key splitting and local load estimation. In so doing, it achieves better load balancing than key grouping while being more scalable than shuffle grouping. We test PKG on several large datasets, both real-world and synthetic. Compared to standard hashing, PKG reduces the load imb","authors_text":"David Garc\\'ia-Soriano, Gianmarco De Francisci Morales, Marco Serafini, Muhammad Anis Uddin Nasir, Nicolas Kourtellis","cross_cats":[],"headline":"","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.DC","submitted_at":"2015-04-03T09:24:22Z","title":"The Power of Both Choices: Practical Load Balancing for Distributed Stream Processing Engines"},"references":{"count":0,"internal_anchors":0,"resolved_work":0,"sample":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"1504.00788","kind":"arxiv","version":1},"verdict":{"created_at":null,"id":null,"model_set":{},"one_line_summary":"","pipeline_version":null,"pith_extraction_headline":"","strongest_claim":"","weakest_assumption":""}},"verdict_id":null}}],"author_attestations":[],"timestamp_anchors":[],"storage_attestations":[],"citation_signatures":[],"replication_records":[],"corrections":[],"mirror_hints":[],"record_created":{"event_id":"sha256:07854faa8fd2108153ac14ee31c140c50a0b4848e27d23401b2741b6b78ca90d","target":"record","created_at":"2026-05-18T00:58:35Z","signer":{"key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signer_id":"pith.science","signer_type":"pith_registry"},"payload":{"attestation_state":"computed","canonical_record":{"metadata":{"abstract_canon_sha256":"9a5ae91a148c76df9070f5e82c89bc1662a00bf412afaf0fc811b4e4ff81e2d9","cross_cats_sorted":[],"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"cs.DC","submitted_at":"2015-04-03T09:24:22Z","title_canon_sha256":"8490093bd0ec175d9ee87acfcebd59498f2dc02ca02e9fb4bdfaa0d8116dc092"},"schema_version":"1.0","source":{"id":"1504.00788","kind":"arxiv","version":1}},"canonical_sha256":"d62d9322066d183b8fcaae55d56016b8f120fc47e738102dcd44893c8b1fb5d6","receipt":{"algorithm":"ed25519","builder_version":"pith-number-builder-2026-05-17-v1","canonical_sha256":"d62d9322066d183b8fcaae55d56016b8f120fc47e738102dcd44893c8b1fb5d6","first_computed_at":"2026-05-18T00:58:35.902573Z","key_id":"pith-v1-2026-05","kind":"pith_receipt","last_reissued_at":"2026-05-18T00:58:35.902573Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","receipt_version":"0.3","signature_b64":"8APtg9aSgPR5tJz71rIdQGbZM1p7um2YzhjUgza9AUMKH2S6PT0Bqp9opb+l73DchC4rUlpp8MDP+yWNR84ZBA==","signature_status":"signed_v1","signed_at":"2026-05-18T00:58:35.903401Z","signed_message":"canonical_sha256_bytes"},"source_id":"1504.00788","source_kind":"arxiv","source_version":1}}},"equivocations":[],"invalid_events":[],"applied_event_ids":["sha256:07854faa8fd2108153ac14ee31c140c50a0b4848e27d23401b2741b6b78ca90d","sha256:ff91e8a2c21e04e4a4c566f3159bcc5c1aadcb720f4ab6df25716283704db0b0"],"state_sha256":"bac62c3eaec896703b9053e3542f5a3c00c8bca6e2656ae1f228f873b52ff69b"},"bundle_signature":{"signature_status":"signed_v1","algorithm":"ed25519","key_id":"pith-v1-2026-05","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54","signature_b64":"udtKJ0Tb+aqAuTAMygx9huLkcDpbvSomkC1KGw+GofEp/GfgoAsLjba5gKcW3XcRNPtfh2Nw5QsmFYPYBjnvCg==","signed_message":"bundle_sha256_bytes","signed_at":"2026-06-07T08:42:23.636728Z","bundle_sha256":"695e90b15517c1acf35602fe95257a6ebdf224fd59a773541a93cba217fac8da"}}