我希望从Cassandra生成一个包含两列(sku_id,seo)的表。
我已经将Cassandra与Spark连接起来,并从Cassandra查询了一些信息。 “ seo”本身是具有多级键值的json格式。例如, 行[0] ['seo']的打印类似于:
{
"text": {"ee":"PRECISION-TWEEZERS", "ff":"PRECISION-TWEEZERS"},
"title":{"ee":"PRECISION TWEEZERS", "ff":"PRECISION TWEEZERS"},
"keyword":{"ee":"<p></p>","ff":"."},
"description":{"ee":"","ff":"."}
}
from cassandra.query import dict_factory
import json
session = cluster.connect("host_ip_address")
session.row_factory = dict_factory
rows = session.execute("SELECT sku_id, seo FROM skus LIMIT 20")
# test1 = rows[0]['seo']
# y = json.loads(test1)
# print(y['text'])
# test2 = y['text']
# print(test2['ee'])
预期结果包含两列,如下所示:
sku_id seo(seo only contains seo['text']['ee'])
12345 PRECISION-TWEEZERS
12312 PRECISION-TWEEZERS
12312 PRECISION-TWEEZERS
并将其保存为csv文件
请让我知道这里是否有任何不清楚的地方。预先谢谢你