2017-01-23 76 views
0

我在我的數據庫/數據框中有一列是關鍵值對。我想根據特定的值過濾數據。 只對那些鍵爲'ddd'的行說'DDD'值。 這怎麼能在spark/spark sql中實現?基於火花數據框中的關鍵值進行過濾

"{'aaa': 'AAA', 'bbb': 'BBB', 'ccc': 'CCC', 'ddd': 'DDD', 'eee': 'EEE', 'fff': 'FFF', 'ggg': 'GGG'}" 
"{'aaa': 'AAA1', 'bbb': 'BBB1', 'ccc': 'CCC1', 'ddd': 'DDD1', 'eee': 'EEE1', 'fff': 'FFF1', 'ggg': 'GGG1'}" 

回答

2

我們可以像下面使用過濾功能

 DataFrame inputDf= //read from database 

    DataFrame filteredDf=inputDf.filter("ddd='DDD'"); 
+0

我得到這個與下面的方式工作。 val filteredRdd = textFileDF.map(line => line.getAs [String](「colname」))。filter(line => line.contains(「ddd':'DDD」)) –

+1

@ SandeepShetty:這是DF方法,你的方法是rdd。如果他們在工作,他們都會更好:-) –