diff --git a/src/main/java/net/onrc/onos/datastore/ramcloud/RCTableID.java b/src/main/java/net/onrc/onos/datastore/ramcloud/RCTableID.java
new file mode 100644
index 0000000..5fa56c2
--- /dev/null
+++ b/src/main/java/net/onrc/onos/datastore/ramcloud/RCTableID.java
@@ -0,0 +1,57 @@
+package net.onrc.onos.datastore.ramcloud;
+
+import java.util.Objects;
+
+import net.onrc.onos.datastore.IKVTableID;
+
+public class RCTableID implements IKVTableID {
+    private final String tableName;
+    private long tableID;
+
+    public RCTableID(String tableName) {
+	this.tableName = tableName;
+	this.tableID = 0;
+    }
+
+    @Override
+    public String getTableName() {
+	return tableName;
+    }
+
+    // following is RAMCloud specific
+
+    public long getTableID() {
+	if ( tableID != 0) {
+	    return tableID;
+	}
+	tableID = RCClient.getJRamCloudClient().createTable(tableName);
+	return tableID;
+    }
+
+    void resetTableID() {
+	this.tableID = 0;
+    }
+
+    @Override
+    public String toString() {
+	return "["+tableName + "]@" + getTableID();
+    }
+
+    @Override
+    public int hashCode() {
+	return Objects.hash(tableName, getTableID());
+    }
+
+    @Override
+    public boolean equals(Object obj) {
+	if (this == obj)
+	    return true;
+	if (obj == null)
+	    return false;
+	if (getClass() != obj.getClass())
+	    return false;
+	RCTableID other = (RCTableID) obj;
+	return Objects.equals(tableName, other.tableName)
+		&& Objects.equals(getTableID(), other.getTableID());
+    }
+}
\ No newline at end of file
