public static List<String> getMRDependentResources(TableDesc table) { return getSource(table).getSourceMetadataExplorer().getRelatedKylinResources(table); } }
/** * * @param project * @return * @throws Exception */ public List<String> getSourceDbNames(String project) throws Exception { ISourceMetadataExplorer explr = SourceManager.getInstance(getConfig()).getProjectSource(project) .getSourceMetadataExplorer(); return explr.listDatabases(); }
protected List<String> getHiveTables() throws Exception { ISourceMetadataExplorer explr = SourceManager.getDefaultSource().getSourceMetadataExplorer(); return explr.listTables(config.getHiveDatabaseForIntermediateTable()); }
public List<Pair<TableDesc, TableExtDesc>> extractHiveTableMeta(String[] tables, String project) throws Exception { // de-dup SetMultimap<String, String> db2tables = LinkedHashMultimap.create(); for (String fullTableName : tables) { String[] parts = HadoopUtil.parseHiveTableName(fullTableName); db2tables.put(parts[0], parts[1]); } // load all tables first List<Pair<TableDesc, TableExtDesc>> allMeta = Lists.newArrayList(); ProjectInstance projectInstance = getProjectManager().getProject(project); ISourceMetadataExplorer explr = SourceManager.getSource(projectInstance).getSourceMetadataExplorer(); for (Map.Entry<String, String> entry : db2tables.entries()) { Pair<TableDesc, TableExtDesc> pair = explr.loadTableMetadata(entry.getKey(), entry.getValue(), project); TableDesc tableDesc = pair.getFirst(); Preconditions.checkState(tableDesc.getDatabase().equals(entry.getKey().toUpperCase(Locale.ROOT))); Preconditions.checkState(tableDesc.getName().equals(entry.getValue().toUpperCase(Locale.ROOT))); Preconditions.checkState(tableDesc.getIdentity() .equals(entry.getKey().toUpperCase(Locale.ROOT) + "." + entry.getValue().toUpperCase(Locale.ROOT))); TableExtDesc extDesc = pair.getSecond(); Preconditions.checkState(tableDesc.getIdentity().equals(extDesc.getIdentity())); allMeta.add(pair); } return allMeta; }
@Test public void testValidateSql() throws Exception { explorer.validateSQL("select 1"); validateSQLInvalidEx.expect(Exception.class); explorer.validateSQL("select"); }
@Test public void testEvalQueryMetadata() { ColumnDesc[] columnDescs = explorer .evalQueryMetadata("select cal_dt, count(*) as cnt from DEFAULT.test_kylin_fact group by cal_dt"); Assert.assertNotNull(columnDescs); Assert.assertEquals(2, columnDescs.length); Assert.assertEquals("date", columnDescs[0].getDatatype()); Assert.assertEquals("CAL_DT", columnDescs[0].getName()); Assert.assertEquals("bigint", columnDescs[1].getDatatype()); Assert.assertEquals("CNT", columnDescs[1].getName()); } }
@Test public void testLoadTableMetadata() throws Exception { Pair<TableDesc, TableExtDesc> pair = explorer.loadTableMetadata("DEFAULT", "TEST_KYLIN_FACT", "DEFAULT"); Assert.assertNotNull(pair.getFirst()); Assert.assertNotNull(pair.getSecond()); TableDesc tblDesc = pair.getFirst(); TableExtDesc tblExtDesc = pair.getSecond(); Assert.assertEquals("TEST_KYLIN_FACT", tblDesc.getName()); Assert.assertEquals("TABLE", tblDesc.getTableType()); Assert.assertEquals("DEFAULT.TEST_KYLIN_FACT", tblDesc.getIdentity()); Assert.assertEquals("DEFAULT", tblDesc.getDatabase()); Assert.assertEquals("DEFAULT", tblDesc.getProject()); Assert.assertEquals(tblDesc.getIdentity(), tblExtDesc.getIdentity()); Assert.assertEquals(tblDesc.getProject(), tblExtDesc.getProject()); ColumnDesc[] columnDescs = tblDesc.getColumns(); Assert.assertEquals(tblDesc.getColumnCount(), columnDescs.length); Assert.assertNotNull(columnDescs[0].getName()); Assert.assertNotNull(columnDescs[0].getDatatype()); Assert.assertNotNull(columnDescs[0].getType()); Assert.assertNotNull(columnDescs[0].getId()); }
/** * * @param project * @param database * @return * @throws Exception */ public List<String> getSourceTableNames(String project, String database) throws Exception { ISourceMetadataExplorer explr = SourceManager.getInstance(getConfig()).getProjectSource(project) .getSourceMetadataExplorer(); return explr.listTables(database); }
@Test public void testGetRelatedKylinResources() { Assert.assertTrue(explorer.getRelatedKylinResources(null).isEmpty()); }
@Test public void testListDatabases() throws Exception { List<String> dbList = explorer.listDatabases(); Assert.assertTrue(dbList.size() >= 3); Assert.assertTrue(dbList.contains("EDW")); Assert.assertTrue(dbList.contains("DEFAULT")); }
@Test public void testListTables() throws Exception { List<String> tblList = explorer.listTables("DEFAULT"); Assert.assertTrue(tblList.size() >= 3); Assert.assertTrue(tblList.contains("TEST_KYLIN_FACT")); Assert.assertTrue(tblList.contains("TEST_ACCOUNT")); Assert.assertTrue(tblList.contains("TEST_COUNTRY")); }
public static List<String> getMRDependentResources(TableDesc table) { return getSource(table).getSourceMetadataExplorer().getRelatedKylinResources(table); } }