Aliyun.Oss.Object.select_object_meta
You're seeing just the function
select_object_meta
, go back to Aliyun.Oss.Object module for more information.
Link to this function
select_object_meta(bucket, object, select_request, options \\ [])
Specs
select_object_meta(String.t(), String.t(), String.t() | map(), keyword()) :: {:error, error()} | {:ok, Aliyun.Oss.Client.Response.t()}
CreateSelectObjectMeta API用于获取目标文件总的行数,总的列数(对于CSV文件),以及Splits个数。如果该信息不存在,则会扫描整个文件,分析并记录下CSV文件的上述信息。重复调用该API则会保存上述信息而不必重新扫描整个文件。
Options
:format
- 用于设置请求语法::json
or:csv
, 默认为:csv
Examples
iex> select_request = %{
"JsonMetaRequest" => %{
"InputSerialization" => %{"JSON" => %{"Type" => "LINES"}},
"OverwriteIfExisting" => "false"
}
}
iex> Aliyun.Oss.Object.select_object_meta("some-bucket", "some-object", select_request, format: :json)
{:ok, %Aliyun.Oss.Client.Response{
data: <<208, 207, 17, 224, 161, 177, 26, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 62, 0, 3, 0, 254, 255, 9, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18,
0, 0, 0, ...>>,
headers: [
{"Date", "Wed, 05 Dec 2018 02:34:57 GMT"},
...
]
}
}
iex> select_request = ~S[
<?xml version="1.0"?>
<JsonMetaRequest>
<InputSerialization>
<JSON>
<Type>LINES</Type>
</JSON>
</InputSerialization>
<OverwriteIfExisting>false</OverwriteIfExisting>
</JsonMetaRequest>
]
iex> Aliyun.Oss.Object.select_object_meta("some-bucket", "some-object", select_request, format: :json)
{:ok, %Aliyun.Oss.Client.Response{
data: <<208, 207, 17, 224, 161, 177, 26, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 62, 0, 3, 0, 254, 255, 9, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18,
0, 0, 0, ...>>,
headers: [
{"Date", "Wed, 05 Dec 2018 02:34:57 GMT"},
...
]
}
}