我试图在spark 1.4.0和tachyon 0.6.4上使用off heap storage来保持我的RDD这样做:
val a = sqlContext.parquetFile("a1.parquet")
a.persist(org.apache.spark.storage.StorageLevel.OFF_HEAP)
a.count()
Run Code Online (Sandbox Code Playgroud)
之后我得到以下异常.
有什么想法吗?
15/06/16 10:14:53 INFO : Tachyon client (version 0.6.4) is trying to connect master @ localhost/127.0.0.1:19998
15/06/16 10:14:53 INFO : User registered at the master localhost/127.0.0.1:19998 got UserId 3
15/06/16 10:14:53 INFO TachyonBlockManager: Created tachyon directory at /tmp_spark_tachyon/spark-6b2512ab-7bb8-47ca-b6e2-8023d3d7f7dc/driver/spark-tachyon-20150616101453-ded3
15/06/16 10:14:53 INFO BlockManagerInfo: Added rdd_10_3 on ExternalBlockStore on localhost:33548 (size: 0.0 B)
15/06/16 10:14:53 INFO BlockManagerInfo: Added rdd_10_1 on ExternalBlockStore on localhost:33548 (size: 0.0 B)
15/06/16 10:14:53 ERROR TransportRequestHandler: …Run Code Online (Sandbox Code Playgroud) 我试图弄清楚如何使用Serde将JSON反序列化为结构.例如,serde_json 自己的文档中的示例JSON 包含以下数据:
{
"FirstName": "John",
"LastName": "Doe",
"Age": 43,
"Address": {
"Street": "Downing Street 10",
"City": "London",
"Country": "Great Britain"
},
"PhoneNumbers": [
"+44 1234567",
"+44 2345678"
]
}
Run Code Online (Sandbox Code Playgroud)
现在,如果我们假设上面的数据是在变量"input"和下面的代码中:
let deserialized_data: Data = serde_json::from_str(input).unwrap();
Run Code Online (Sandbox Code Playgroud)
......结构应该是什么Data样的?
我想使用Serde创建一个包含错误消息的数组以及正确的对象:
extern crate serde; // 1.0.70
#[macro_use]
extern crate serde_derive; // 1.0.70
extern crate serde_json; // 1.0.24
#[derive(Serialize, Deserialize, Debug)]
pub struct MyError {
error: String,
}
#[derive(Serialize, Deserialize, Debug)]
pub struct MyAge {
age: i32,
name: String,
}
fn get_results(ages: Vec<i32>) -> Vec<MyAge> {
let mut results = vec![];
for age in ages {
if age < 100 && age > 0 {
results.push(MyAge {
age: age,
name: String::from("The dude"),
});
} else {
results.push(MyError {
error: String::from(format!("{} is …Run Code Online (Sandbox Code Playgroud) 我正在尝试了解在为群集模式部署Yarn时,Spark Driver是否是单点故障.因此,我希望在此上下文中更好地了解有关Spark驱动程序的YARN容器的故障转移过程的内部结构.
我知道Spark Driver将在Yarn Container内的Spark Application Master中运行.如果需要,Spark Application Master将向YARN资源管理器请求资源.但是,如果Spark Application Master(和Spark驱动程序)的YARN容器失败,我无法找到有关故障转移过程详细信息的文档.
我正在尝试找出一些可以让我回答与以下场景相关的问题的详细资源:如果运行Spark Application Master/Spark Driver的YARN Container的主机丢失网络连接1小时:
YARN资源管理器是否使用另一个Spark Application Master/Spark驱动程序生成一个新的YARN容器?
在那种情况下(产生一个新的YARN容器),如果至少1个执行程序中的1个阶段已经完成并且在失败之前通知原始驱动程序,它是否从头开始启动Spark驱动程序?persist()中使用的选项是否会产生影响?新的Spark Driver会不会知道执行者已经完成了1个阶段?Tachyon会在这种情况下帮忙吗?
如果在原始Spark Application Master的YARN Container主机中恢复网络连接,是否会触发故障恢复过程?我猜这种行为可以从YARN控制,但我不知道在集群模式下部署SPARK时的默认值.
如果你能指出一些文档/网页,我会非常感激,在这些文档/网页中详细探讨了纱线集群模式中的Spark架构和故障转移过程.
我从API接收JSON,响应可以是30种类型之一.每种类型都有一组唯一的字段,但所有响应都有一个字段type,说明它是哪种类型.
我的方法是使用serde.我为每个响应类型创建一个结构,并使它们可解码.一旦我知道如何选择应该用于新收到的消息的结构?
目前,我已经创建了另一个TypeStruct只有一个字段的结构type.我将JSON解码为a TypeStruct,然后根据类型值为接收的消息选择适当的结构,并再次解码消息.
我想摆脱这种解码重复.
我刚刚安装racer使用cargo. 安装后说:
Installing /home/karthik/.cargo/bin/racer
warning: be sure to add `/home/karthik/.cargo/bin` to your PATH to be able to run the installed binaries
Run Code Online (Sandbox Code Playgroud)
我该怎么做呢?谷歌搜索没有帮助。另外,我也应该PATH为货箱设置一个变量吗?
编辑:操作系统是 Ubuntu 14.04,我有超级用户访问权限
我是Bigdata的新手,目前正在学习Hive.作为SerDe的一部分,我理解Hive中的InputFormat和OutputFormat的概念.我也理解'Stored as'用于以特定格式存储文件,就像InputFormat一样.但我不明白使用'InputFormat,OutputFormat'和'Stored as'之间有什么重大区别.
任何帮助表示赞赏.
除了禁用警告,为什么会发生?
use serde_json::from_str;
use serde_json::error::Result;
#[derive(Deserialize)]
pub struct Config {
#[serde(rename="cudaBlasDylibPath")]
pub cuda_blas_dylib_path: String,
}
impl Config {
pub fn new() -> Result<Config> {
from_str("{}")
}
}
Run Code Online (Sandbox Code Playgroud)
src/config.rs:4:10:4:21警告:未使用的属性,#[warn(unused_attributes)]默认为src/config.rs:4#[derive(Deserialize)]
添加#[allow(unused_attributes)]没有帮助.
我正在尝试从Web API(规范)反序列化Spotify元数据JSON .我正在使用hyper来从服务器和serde中检索JSON,以将JSON转换为我可以在Rust中实际使用的东西.从服务器检索JSON很好,但是当我尝试将JSON转换为可以使用的对象时,可以使用Rust panicks并抛出错误:
thread '<main>' panicked at 'called 'Result::unwrap()' on an 'Err' value: SyntaxError("expected value", 11, 21)', ../src/libcore/result.rs:746
Run Code Online (Sandbox Code Playgroud)
这在最小的方面没有帮助,因为它根本不表示出错的地方.在搜索网络时,我偶然发现了一个serde问题,这让我认为问题与JSON的嵌套结构有关.
任何人都可以看到出错的地方?修复错误对我来说是最好的解决方案,但如果另一个箱子是一个更好的解决方案,我也想听到.我已经尝试过rustc-serialize,但是crate无法处理json中的'type'变量.
我使用的代码是:
#![feature(custom_derive, plugin)]
#![plugin(serde_macros)]
#![feature(custom_attribute)]
extern crate hyper;
extern crate serde;
extern crate serde_json;
use std::io::Read;
use hyper::Client;
use hyper::header::Connection;
#[derive(Serialize, Deserialize)]
struct Track_Full {
album: Album_Simp,
artists: Vec<Artist_Simp>,
available_markets: Vec<String>,
disc_number: u8,
duration_ms: u32,
explicit: bool,
external_ids: External_IDs,
external_urls: External_URLs,
href: String,
id: String,
name: String,
popularity: u8,
preview_url: String,
track_number: u8,
#[serde(rename="type")]
_type: …Run Code Online (Sandbox Code Playgroud) rust ×6
json ×5
serde ×5
alluxio ×3
apache-spark ×3
hadoop ×2
bigdata ×1
hadoop-yarn ×1
hive ×1
hive-serde ×1
hiveql ×1
rdd ×1
rust-cargo ×1
spotify ×1