@Nullable @Override public PartitionKey.Builder apply(@Nullable PartitionKey.Builder builder) { return builder.addStringField("x", "a"); } });
@Nullable @Override public PartitionKey.Builder apply(@Nullable PartitionKey.Builder builder) { return builder.addStringField("y", "a"); } });
@DELETE @Path("partitions/{partition}/subpartitions/{sub-partition}") public void drop(HttpServiceRequest request, HttpServiceResponder responder, @PathParam("partition") String partition, @PathParam("sub-partition") int subPartition) { PartitionKey key = PartitionKey.builder() .addStringField("partition", partition) .addIntField("sub-partition", subPartition) .build(); if (pfs.getPartition(key) == null) { responder.sendString(404, "Partition not found.", Charsets.UTF_8); return; } pfs.dropPartition(key); responder.sendString(200, "Successfully dropped partition", Charsets.UTF_8); } }
.addIntField("i", i) .addLongField("l", 17L) .addStringField("s", "partitionKeys1") .build(); partitionKeys1.add(key); .addIntField("i", i) .addLongField("l", 17L) .addStringField("s", "partitionKeys2") .build(); partitionKeys2.add(key);
.addIntField("i", 42) .addLongField("l", 17L) .addStringField("s", "nonexistent") .build(); dataset.addMetadata(nonexistentPartitionKey, "key2", "value3");
writer.write("1,x\n"); pfs.get().addPartition(PartitionKey.builder().addStringField("x", "1").build(), "some/path"); pfs.flush();
@PathParam("partition") String partition, @PathParam("sub-partition") int subPartition) { PartitionKey key = PartitionKey.builder() .addStringField("partition", partition) .addIntField("sub-partition", subPartition) .build();
DataSetManager<PartitionedFileSet> pfsManager = getDataset("pfs"); PartitionedFileSet pfs = pfsManager.get(); PartitionOutput partitionOutput = pfs.getPartitionOutput(PartitionKey.builder().addStringField("x", "nn").build()); Location location = partitionOutput.getLocation(); prepareFileInput(location); inputArgs, PartitionFilter.builder().addRangeCondition("x", "na", "nx").build()); Map<String, String> outputArgs = new HashMap<>(); PartitionKey outputKey = PartitionKey.builder().addStringField("x", "xx").build(); PartitionedFileSetArguments.setOutputPartitionKey(outputArgs, outputKey); Map<String, String> args = new HashMap<>();
@Test public void testBuilderGetter() { PartitionKey key = PartitionKey.builder() .addField("a", "value") .addField("b", 1L) .addField("c", -17) .addField("d", true) .addIntField("e", 42) .addLongField("f", 15) .addStringField("g", "ghijk") .build(); Assert.assertEquals("value", key.getField("a")); Assert.assertEquals(1L, key.getField("b")); Assert.assertEquals(-17, key.getField("c")); Assert.assertEquals(true, key.getField("d")); Assert.assertEquals(42, key.getField("e")); Assert.assertEquals(15L, key.getField("f")); Assert.assertEquals("ghijk", key.getField("g")); }
@GET @Path("partitions/{partition}/subpartitions/{sub-partition}") public void read(HttpServiceRequest request, HttpServiceResponder responder, @PathParam("partition") String partition, @PathParam("sub-partition") int subPartition) { PartitionDetail partitionDetail = pfs.getPartition(PartitionKey.builder() .addStringField("partition", partition) .addIntField("sub-partition", subPartition) .build()); if (partitionDetail == null) { responder.sendString(404, "Partition not found.", Charsets.UTF_8); return; } try { responder.send(200, partitionDetail.getLocation().append("file"), "text/plain"); } catch (IOException e) { responder.sendError(400, String.format("Unable to read path '%s'", partitionDetail.getRelativePath())); } }
@Override public void apply() throws Exception { PartitionKey partitionKey = PartitionKey.builder() .addIntField("i", 42) .addLongField("l", 17L) .addStringField("s", "x") .build(); ImmutableMap<String, String> metadata = ImmutableMap.of("key1", "value", "key2", "value2", "key3", "value2"); PartitionOutput partitionOutput = dataset.getPartitionOutput(partitionKey); partitionOutput.setMetadata(metadata); partitionOutput.addPartition(); PartitionDetail partitionDetail = dataset.getPartition(partitionKey); Assert.assertNotNull(partitionDetail); Assert.assertEquals(metadata, partitionDetail.getMetadata().asMap()); } });
@Test(expected = IllegalArgumentException.class) public void testBuilderNullValue() { PartitionKey.builder().addStringField("x", null).build(); }
private PartitionKey generateUniqueKey() { return PartitionKey.builder() .addIntField("i", counter++) .addLongField("l", 17L) .addStringField("s", UUID.randomUUID().toString()) .build(); }
@Test public void testSetGetOutputPartitionKey() throws Exception { Map<String, String> arguments = new HashMap<>(); PartitionKey key = PartitionKey.builder() .addIntField("i", 42) .addLongField("l", 17L) .addStringField("s", "x") .build(); PartitionedFileSetArguments.setOutputPartitionKey(arguments, key); Assert.assertEquals(key, PartitionedFileSetArguments.getOutputPartitionKey(arguments, PARTITIONING)); }
@Test(expected = IllegalArgumentException.class) public void testEncodeIncompleteKey() { PartitionKey key = PartitionKey.builder() .addIntField("i", 42) .addStringField("s", "x") .build(); PartitionedFileSetDataset.generateRowKey(key, PARTITIONING_1); }
private PartitionKey generateUniqueKey() { return PartitionKey.builder() .addIntField("i", counter++) .addLongField("l", 17L) .addStringField("s", UUID.randomUUID().toString()) .build(); }
@Override public PartitionKey getPartitionKey(String key, String value) { return PartitionKey.builder() .addStringField("x", key) .build(); } }
private PartitionKey generateUniqueKey() { return PartitionKey.builder() .addIntField("i", counter++) .addLongField("l", 17L) .addStringField("s", UUID.randomUUID().toString()) .build(); } }
private PartitionKey generateUniqueKey() { return PartitionKey.builder() .addIntField("i", 1) .addLongField("l", 17L) .addStringField("s", UUID.randomUUID().toString()) .build(); } }
private PartitionKey generateUniqueKey() { return PartitionKey.builder() .addIntField("i", counter++) .addLongField("l", 17L) .addStringField("s", UUID.randomUUID().toString()) .build(); } }