Java 类名:com.alibaba.alink.operator.batch.source.MemSourceBatchOp
Python 类名:MemSourceBatchOp

功能介绍

从内存中读取数据生成表
MemSourceBatchOp支持多个构造函数

构造函数 参数 示例
MemSourceBatchOp(Object[] vals, String colName) 数据只有一列,列类型从数据判断 MemSourceBatchOp(new Object[]{1.0, 2.0}, “f0”)
MemSourceBatchOp(Object[][] vals, String[] colNames) colNames是列名列表,列类型从数据判断 MemSourceBatchOp(new Object[][]{{1.0, 2.0}, {3.0, 4.0}}, new String[]{“f0”, “f1”})
MemSourceBatchOp(List rows, TableSchema schema) schema MemSourceBatchOp source = new MemSourceBatchOp(df, new TableSchema(new String[]{“f1”, “f2”}, new TypeInformation[]{Types.STRING, Types.DOUBLE}))
MemSourceBatchOp(List rows, String schemaStr) schemaStr格式是col1 string, f1 int… MemSourceBatchOp(df, “f1 string, f2 double”)
MemSourceBatchOp(Row[] rows, String[] colNames) colNames是列名列表,列类型从数据判断 MemSourceBatchOp(rows, new String[]{“f0”, “f1”})
MemSourceBatchOp(List rows, String[] colNames) colNames是列名列表,列类型从数据判断 MemSourceBatchOp(rows, new String[]{“f0”, “f1”})

参数说明

名称 中文名称 描述 类型 是否必须? 取值范围 默认值

代码示例

以下代码仅用于示意,可能需要修改部分代码或者配置环境后才能正常运行!

Python 代码

无,仅在Java中使用

Java 代码

  1. import org.apache.flink.types.Row;
  2. import com.alibaba.alink.operator.batch.BatchOperator;
  3. import com.alibaba.alink.operator.batch.source.MemSourceBatchOp;
  4. import org.junit.Test;
  5. import java.util.Arrays;
  6. import java.util.List;
  7. public class MemSourceBatchOpTest {
  8. @Test
  9. public void testMemSourceBatchOp() throws Exception {
  10. List<Row> df = Arrays.asList(
  11. Row.of("1:2.0 2:1.0 4:0.5", 1.5),
  12. Row.of("1:2.0 2:1.0 4:0.5", 1.7),
  13. Row.of("1:2.0 2:1.0 4:0.5", 3.6)
  14. );
  15. BatchOperator<?> batchData = new MemSourceBatchOp(df, "f1 string, f2 double");
  16. batchData.print();
  17. }
  18. }

运行结果

| f1 | f2 | | —- | —- |

| 1:2.0 2:1.0 4:0.5 | 1.5000 |

| 1:2.0 2:1.0 4:0.5 | 1.7000 |

| 1:2.0 2:1.0 4:0.5 | 3.6000 |