Search in sources :

Example 11 with Table

use of org.apache.beam.sdk.extensions.sql.meta.Table in project beam by apache.

the class KafkaTableProviderTest method testBuildBeamSqlAvroTable.

@Test
public void testBuildBeamSqlAvroTable() {
    Table table = mockTable("hello", "avro");
    BeamSqlTable sqlTable = provider.buildBeamSqlTable(table);
    assertNotNull(sqlTable);
    assertTrue(sqlTable instanceof BeamKafkaTable);
    BeamKafkaTable kafkaTable = (BeamKafkaTable) sqlTable;
    assertEquals(LOCATION_BROKER, kafkaTable.getBootstrapServers());
    assertEquals(ImmutableList.of(LOCATION_TOPIC), kafkaTable.getTopics());
}
Also used : Table(org.apache.beam.sdk.extensions.sql.meta.Table) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Test(org.junit.Test)

Example 12 with Table

use of org.apache.beam.sdk.extensions.sql.meta.Table in project beam by apache.

the class KafkaTableProviderTest method testBuildBeamSqlNestedBytesTable.

@Test
public void testBuildBeamSqlNestedBytesTable() {
    Table table = mockNestedBytesTable("hello");
    BeamSqlTable sqlTable = provider.buildBeamSqlTable(table);
    assertNotNull(sqlTable);
    assertTrue(sqlTable instanceof NestedPayloadKafkaTable);
    BeamKafkaTable kafkaTable = (BeamKafkaTable) sqlTable;
    assertEquals(LOCATION_BROKER, kafkaTable.getBootstrapServers());
    assertEquals(ImmutableList.of(LOCATION_TOPIC), kafkaTable.getTopics());
}
Also used : Table(org.apache.beam.sdk.extensions.sql.meta.Table) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Test(org.junit.Test)

Example 13 with Table

use of org.apache.beam.sdk.extensions.sql.meta.Table in project beam by apache.

the class MongoDbTableProviderTest method testBuildBeamSqlTable.

@Test
public void testBuildBeamSqlTable() {
    Table table = fakeTable("TEST", "mongodb://localhost:27017/database/collection");
    BeamSqlTable sqlTable = provider.buildBeamSqlTable(table);
    assertNotNull(sqlTable);
    assertTrue(sqlTable instanceof MongoDbTable);
    MongoDbTable mongoTable = (MongoDbTable) sqlTable;
    assertEquals("mongodb://localhost:27017", mongoTable.dbUri);
    assertEquals("database", mongoTable.dbName);
    assertEquals("collection", mongoTable.dbCollection);
}
Also used : Table(org.apache.beam.sdk.extensions.sql.meta.Table) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Test(org.junit.Test)

Example 14 with Table

use of org.apache.beam.sdk.extensions.sql.meta.Table in project beam by apache.

the class PubsubTableProviderTest method testThrowsIfTimestampFieldNotProvided.

@Test
public void testThrowsIfTimestampFieldNotProvided() {
    PubsubTableProvider provider = new PubsubTableProvider();
    Schema messageSchema = Schema.builder().addMapField("attributes", VARCHAR, VARCHAR).addRowField("payload", Schema.builder().build()).build();
    Table tableDefinition = tableDefinition().schema(messageSchema).build();
    thrown.expectMessage("Unsupported");
    thrown.expectMessage("'event_timestamp'");
    provider.buildBeamSqlTable(tableDefinition);
}
Also used : Table(org.apache.beam.sdk.extensions.sql.meta.Table) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Schema(org.apache.beam.sdk.schemas.Schema) Test(org.junit.Test)

Example 15 with Table

use of org.apache.beam.sdk.extensions.sql.meta.Table in project beam by apache.

the class PubsubTableProviderTest method testCreatesTableWithJustTimestamp.

@Test
public void testCreatesTableWithJustTimestamp() {
    PubsubTableProvider provider = new PubsubTableProvider();
    Schema messageSchema = Schema.builder().addDateTimeField("event_timestamp").build();
    Table tableDefinition = tableDefinition().schema(messageSchema).build();
    BeamSqlTable pubsubTable = provider.buildBeamSqlTable(tableDefinition);
    assertNotNull(pubsubTable);
    assertEquals(messageSchema, pubsubTable.getSchema());
}
Also used : Table(org.apache.beam.sdk.extensions.sql.meta.Table) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Schema(org.apache.beam.sdk.schemas.Schema) BeamSqlTable(org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable) Test(org.junit.Test)

Aggregations

Table (org.apache.beam.sdk.extensions.sql.meta.Table)65 Test (org.junit.Test)49 BeamSqlTable (org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable)37 Schema (org.apache.beam.sdk.schemas.Schema)9 Before (org.junit.Before)9 InMemoryMetaStore (org.apache.beam.sdk.extensions.sql.meta.store.InMemoryMetaStore)8 TestTableProvider (org.apache.beam.sdk.extensions.sql.meta.provider.test.TestTableProvider)7 TextTableProvider (org.apache.beam.sdk.extensions.sql.meta.provider.text.TextTableProvider)5 BeamTableStatistics (org.apache.beam.sdk.extensions.sql.impl.BeamTableStatistics)4 JSONObject (com.alibaba.fastjson.JSONObject)3 Row (org.apache.beam.sdk.values.Row)3 TableFieldSchema (com.google.api.services.bigquery.model.TableFieldSchema)2 TableRow (com.google.api.services.bigquery.model.TableRow)2 TableSchema (com.google.api.services.bigquery.model.TableSchema)2 Property (com.pholser.junit.quickcheck.Property)2 List (java.util.List)2 BeamSqlCli (org.apache.beam.sdk.extensions.sql.BeamSqlCli)2 InvalidTableException (org.apache.beam.sdk.extensions.sql.meta.provider.InvalidTableException)2 BigtableTableTestUtils.createReadTable (org.apache.beam.sdk.extensions.sql.meta.provider.bigtable.BigtableTableTestUtils.createReadTable)2 TCompactProtocol (org.apache.thrift.protocol.TCompactProtocol)2