我试图使用 Spark 数据源 API 从 Oracle 数据库加载数据。
由于我需要通过查询加载数据,因此我使用了下面的查询,该查询是我从一些在线示例中整理出来的:
Map<String, String> options = new HashMap<>();
options.put("driver", MYSQL_DRIVER);
options.put("user", MYSQL_USERNAME);
options.put("password", MYSQL_PWD);
options.put("url", MYSQL_CONNECTION_URL);
options.put("dbtable", "(select emp_no, emp_id from employees) as employees_data");
options.put("lowerBound", "10001");
options.put("upperBound", "499999");
options.put("numPartitions", "10");
DataFrame jdbcDF = sqlContext.load("jdbc", options);
Run Code Online (Sandbox Code Playgroud)
这会出现异常:
线程“main”中出现异常 java.sql.SQLSyntaxErrorException: ORA-00933: SQL 命令未正确结束
我怀疑我们不能为 Oracle 查询提供“asEmployees_data”,那么我做错了什么?
我有一个文本文件,其中String REC作为记录定界符,而换行符作为列定界符,每个数据都有附加的列名,以逗号作为定界符,以下是示例数据格式
REC
Id,19048
任期,牛奶
等级,1
REC
Id,19049
任期,玉米
等级,5
使用REC作为记录定界符。现在,我想创建具有列名ID,术语和等级的Spark数据框架。
我有RDD喜欢(a,b,数组(p1,p2,p3),c),我想在数值里面的数值应用flatmap来得到下面的输出.(a,b,p1,c)(a,b,p2,c)(a,b,p3,c)