这听起来很奇怪,我有一个oracle数据库,我试图通过spark sql从oracle数据库中进行选择,但我查找的数据确实存在于数据库中,但我在发出的请求中找不到它来自斯卡拉。所以我试图计算出口数据的数量
select count (*) from TMP_STRUCTURE
从oracle控制台我得到了373799
当我把
val sparkSession = SparkSession.builder.master("local").appName("spark session example").getOrCreate()
//connect to table TMP_STRUCTURE oracle
val spark = sparkSession.sqlContext
val df = spark.load("jdbc",
Map("url" -> "jdbc:oracle:thin:IPTECH/IPTECH@//localhost:1521/XE",
"dbtable" -> "TMP_STRUCTURE"))
println(df.count())
373797
我找不到原因?
请帮助。
答案 0 :(得分:2)
这是不可能的,因为可能有2次机会
案例1:您可能正在从oracle会话中读取未提交的数据,并且您可能正在通过spark sql读取已提交的数据集。 (执行提交并再次检查)
案例2:从oracle会话中,您可能连接到具有几乎相同行数的不同数据库。并且可能使用了不同的数据库用于spark sql (确保/交叉检查您尝试连接的两个数据库是否相同)