use of org.apache.rya.joinselect.mr.utils.CardinalityType in project incubator-rya by apache.
the class CardinalityMapperTest method testOutput.
@Test
public void testOutput() throws InterruptedException, IOException {
String s = "urn:gem:etype#1234";
String p = "urn:gem#pred";
Text t1 = new Text(TripleValueType.subject.name() + DELIM + s + DELIM + 1);
Text t2 = new Text(TripleValueType.predicate.name() + DELIM + p + DELIM + 2);
Text t3 = new Text(TripleValueType.subjectpredicate.name() + DELIM + s + DELIM + p + DELIM + 3);
byte[] b = new byte[0];
byte[] c = "25".getBytes();
byte[] d = "47".getBytes();
byte[] e = "15".getBytes();
Key key1 = new Key(t1.getBytes(), b, b, b, 1);
Key key2 = new Key(t2.getBytes(), b, b, b, 1);
Key key3 = new Key(t3.getBytes(), b, b, b, 1);
Value val1 = new Value(c);
Value val2 = new Value(d);
Value val3 = new Value(e);
// System.out.println("Keys are " + key1 + " and " + key2);
new MapDriver<Key, Value, CompositeType, TripleCard>().withMapper(new JoinSelectProspectOutput.CardinalityMapper()).withInput(key1, val1).withInput(key2, val2).withInput(key3, val3).withOutput(new CompositeType(s, 1), new TripleCard(new CardinalityType(25, "subject", 1))).withOutput(new CompositeType(p, 1), new TripleCard(new CardinalityType(47, "predicate", 2))).withOutput(new CompositeType(s + DELIM + p, 1), new TripleCard(new CardinalityType(15, "subjectpredicate", 3))).runTest();
}
use of org.apache.rya.joinselect.mr.utils.CardinalityType in project incubator-rya by apache.
the class JoinReducerTest method testTwoConstCard.
@Test
public void testTwoConstCard() throws InterruptedException, IOException {
CompositeType ct1 = new CompositeType("urn:gem#pred" + DELIM + "urn:gem:etype#1234", 1);
TripleEntry te1 = new TripleEntry("uri:testSubject", "", "subject", "", "predicateobject");
TripleEntry te2 = new TripleEntry("uri:testSubject", "", "subject", "", "objectpredicate");
CardinalityType c5 = new CardinalityType(45, "subjectobject", 0);
CardinalityType c1 = new CardinalityType(25, "subjectobject", 2);
CardinalityType c2 = new CardinalityType(27, "predicateobject", 5);
CardinalityType c3 = new CardinalityType(29, "predicateobject", 2);
CardinalityType c4 = new CardinalityType(31, "subjectpredicate", 1);
CardinalityType c6 = new CardinalityType(56, "subjectpredicate", 2);
List<TripleCard> list1 = new ArrayList<TripleCard>();
list1.add(new TripleCard(c1));
list1.add(new TripleCard(c2));
list1.add(new TripleCard(c3));
list1.add(new TripleCard(c4));
list1.add(new TripleCard(c5));
list1.add(new TripleCard(c6));
list1.add(new TripleCard(te1));
list1.add(new TripleCard(te2));
// System.out.println("List is " + list);
new ReduceDriver<CompositeType, TripleCard, TripleEntry, CardList>().withReducer(new JoinSelectAggregate.JoinReducer()).withInput(ct1, list1).withOutput(te1, new CardList(0, 0, 0, 31, 29, 45)).withOutput(te2, new CardList(0, 0, 0, 31, 29, 45)).runTest();
}
use of org.apache.rya.joinselect.mr.utils.CardinalityType in project incubator-rya by apache.
the class JoinReducerTest method testSingleConstCard.
@Test
public void testSingleConstCard() throws InterruptedException, IOException {
CompositeType ct = new CompositeType("urn:gem:etype#1234", 1);
TripleEntry te = new TripleEntry("urn:gem#pred", "urn:gem:etype#4567", "predicate", "object", "subject");
CardinalityType c5 = new CardinalityType(45, "object", 0);
CardinalityType c1 = new CardinalityType(25, "subject", 2);
CardinalityType c2 = new CardinalityType(27, "predicate", 2);
CardinalityType c3 = new CardinalityType(29, "object", 2);
CardinalityType c4 = new CardinalityType(31, "predicate", 1);
List<TripleCard> list = new ArrayList<TripleCard>();
list.add(new TripleCard(c1));
list.add(new TripleCard(c2));
list.add(new TripleCard(c3));
list.add(new TripleCard(c4));
list.add(new TripleCard(c5));
list.add(new TripleCard(te));
System.out.println("List is " + list);
new ReduceDriver<CompositeType, TripleCard, TripleEntry, CardList>().withReducer(new JoinSelectAggregate.JoinReducer()).withInput(ct, list).withOutput(te, new CardList(25, 31, 45, 0, 0, 0)).runTest();
}
use of org.apache.rya.joinselect.mr.utils.CardinalityType in project incubator-rya by apache.
the class JoinReducerTest method testTwoTripleEntry.
@Test
public void testTwoTripleEntry() throws InterruptedException, IOException {
CompositeType ct = new CompositeType("urn:gem:etype#1234", 1);
TripleEntry te1 = new TripleEntry("urn:gem#pred", "urn:gem:etype#4567", "predicate", "object", "subject");
TripleEntry te2 = new TripleEntry("urn:gem#8910", "urn:gem:etype#4567", "subject", "predicate", "object");
CardinalityType c5 = new CardinalityType(45, "object", 0);
CardinalityType c1 = new CardinalityType(25, "subject", 2);
CardinalityType c2 = new CardinalityType(27, "predicate", 2);
CardinalityType c3 = new CardinalityType(29, "object", 2);
CardinalityType c4 = new CardinalityType(31, "predicate", 1);
List<TripleCard> list = new ArrayList<TripleCard>();
list.add(new TripleCard(c1));
list.add(new TripleCard(c2));
list.add(new TripleCard(c3));
list.add(new TripleCard(c4));
list.add(new TripleCard(c5));
list.add(new TripleCard(te1));
list.add(new TripleCard(te2));
System.out.println("List is " + list);
new ReduceDriver<CompositeType, TripleCard, TripleEntry, CardList>().withReducer(new JoinSelectAggregate.JoinReducer()).withInput(ct, list).withOutput(te1, new CardList(25, 31, 45, 0, 0, 0)).withOutput(te2, new CardList(25, 31, 45, 0, 0, 0)).runTest();
}
use of org.apache.rya.joinselect.mr.utils.CardinalityType in project incubator-rya by apache.
the class JoinSelectProspectOutputTest method testOutput.
@Test
public void testOutput() throws InterruptedException, IOException {
String s = "urn:gem:etype#1234";
String p = "urn:gem#pred";
String ts = "798497748386999999";
Text t1 = new Text(TripleValueType.subject.name() + DELIM + s + DELIM + 1);
Text t2 = new Text(TripleValueType.predicate.name() + DELIM + p + DELIM + 2);
Text t3 = new Text(TripleValueType.subjectpredicate.name() + DELIM + s + DELIM + p + DELIM + ts);
byte[] b = new byte[0];
byte[] c = "25".getBytes();
byte[] d = "47".getBytes();
byte[] e = "15".getBytes();
Key key1 = new Key(t1.getBytes(), b, b, b, 1);
Key key2 = new Key(t2.getBytes(), b, b, b, 1);
Key key3 = new Key(t3.getBytes(), b, b, b, 1);
Value val1 = new Value(c);
Value val2 = new Value(d);
Value val3 = new Value(e);
// System.out.println("Keys are " + key1 + " and " + key2);
new MapDriver<Key, Value, CompositeType, TripleCard>().withMapper(new JoinSelectProspectOutput.CardinalityMapper()).withInput(key1, val1).withInput(key2, val2).withInput(key3, val3).withOutput(new CompositeType(s, 1), new TripleCard(new CardinalityType(25, "subject", 1))).withOutput(new CompositeType(p, 1), new TripleCard(new CardinalityType(47, "predicate", 2))).withOutput(new CompositeType(s + DELIM + p, 1), new TripleCard(new CardinalityType(15, "subjectpredicate", Long.parseLong(ts)))).runTest();
}
Aggregations