使用 U-SQL 在 C# 对象中加载 JSON 文件
Load a JSON file in a C# object using U-SQL
我有一个 JSON 文件存储在 Data Lake Store 中。我可以使用 Microsoft 的 JsonExtractor 提取 JSON 文件。
是否可以在不使用 EXTRACT
命令的情况下将 JSON 文件加载到 POCO 对象中?如果我使用 EXTRACT
命令,是否可以将所有行合并到一个 C# 对象中?
下面是我想要反序列化并存储在 C# 对象中的示例 JSON 文件
{
"sourcePath": "wasb://container@accountName.blob.core.net/Input/{*}.txt",
"destinationPath": "wasb://container@accountName.blob.core.net/Output/myfile.txt",
"errorPath": "wasb://container@accountName.blob.core.net/Error/error.txt",
"schema": [
{
"name": "column1",
"type": "string",
"allowNull": true,
"minLength": 12,
"maxLength": 50
},
{
"name": "column2",
"type": "int",
"allowNull": true,
"minLength": 0,
"maxLength": 0
},
{
"name": "column3",
"type": "bool",
"allowNull": true,
"minLength": 0,
"maxLength": 0
},
{
"name": "column4",
"type": "DateTime",
"allowNull": false,
"minLength": 0,
"maxLength": 0
}
]
}
您可以编写自己的自定义提取器来读取数据 (input.baseStream),并且可以创建您的对象。查看 Microsoft JSON 模式提取器。
请注意,您的提取器将有 1/2 GB 的主内存限制。
我有一个 JSON 文件存储在 Data Lake Store 中。我可以使用 Microsoft 的 JsonExtractor 提取 JSON 文件。
是否可以在不使用 EXTRACT
命令的情况下将 JSON 文件加载到 POCO 对象中?如果我使用 EXTRACT
命令,是否可以将所有行合并到一个 C# 对象中?
下面是我想要反序列化并存储在 C# 对象中的示例 JSON 文件
{
"sourcePath": "wasb://container@accountName.blob.core.net/Input/{*}.txt",
"destinationPath": "wasb://container@accountName.blob.core.net/Output/myfile.txt",
"errorPath": "wasb://container@accountName.blob.core.net/Error/error.txt",
"schema": [
{
"name": "column1",
"type": "string",
"allowNull": true,
"minLength": 12,
"maxLength": 50
},
{
"name": "column2",
"type": "int",
"allowNull": true,
"minLength": 0,
"maxLength": 0
},
{
"name": "column3",
"type": "bool",
"allowNull": true,
"minLength": 0,
"maxLength": 0
},
{
"name": "column4",
"type": "DateTime",
"allowNull": false,
"minLength": 0,
"maxLength": 0
}
]
}
您可以编写自己的自定义提取器来读取数据 (input.baseStream),并且可以创建您的对象。查看 Microsoft JSON 模式提取器。
请注意,您的提取器将有 1/2 GB 的主内存限制。