DDS输出流
功能描述
DLI将作业的输出数据输出到文档数据库服务(DDS)中。
文档数据库服务(Document Database Service,简称DDS)完全兼容MongoDB协议,提供安全、高可用、高可靠、弹性伸缩和易用的数据库服务,同时提供一键部署、弹性扩容、容灾、备份、恢复、监控和告警等功能。
DDS的更多信息,请参见《文档数据库服务用户指南》。
前提条件
- 请务必确保您的账户下已在文档数据库服务(DDS)里创建了DDS实例。
如何创建DDS实例,请参考《文档数据库服务快速入门》中“快速购买文档数据库实例”章节。
- 目前仅支持未开启SSL认证的集群实例,不支持副本集与单节点的类型实例。
- 该场景作业需要运行在DLI的独享队列上,请确保已创建DLI独享队列。
关于如何创建DLI独享队列,在创建队列时,选择“按需计费”,勾选“专属资源模式”即可。具体操作请参见《数据湖探索用户指南》中创建队列章节。
- 确保DLI独享队列与DDS集群建立跨源连接,且用户可以根据实际所需设置相应安全组规则。
如何建立增强型跨源连接,请参见《数据湖探索用户指南》中增强型跨源连接章节。
如何设置安全组规则,请参见《虚拟私有云用户指南》中“安全组”章节。
语法格式
1 2 3 4 5 6 7 8 |
CREATE SINK STREAM stream_id (attr_name attr_type (',' attr_name attr_type)* ) WITH ( type = "dds", username = "", password = "", db_url = "", field_names = "" ); |
关键字
参数 |
是否必选 |
说明 |
---|---|---|
type |
是 |
输出通道类型,dds表示输出到文档数据库服务中。 |
username |
是 |
数据库连接用户名。 |
password |
是 |
数据库连接密码。 |
db_url |
是 |
DDS实例的访问地址,形如:ip1:port,ip2:port/database/collection。 |
field_names |
是 |
待插入数据字段的key,具体形式如:"f1,f2,f3",并且保证与sink中数据列一一对应。 |
batch_insert_data_num |
否 |
表示一次性批量写入的数据量,值必须为正整数,默认值为10。 |
示例
将流qualified_cars 的数据输出到文档数据库collectionTest。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
CREATE SINK STREAM qualified_cars ( car_id STRING, car_owner STRING, car_age INT, average_speed INT, total_miles INT ) WITH ( type = "dds", region = "xxx", db_url = "192.168.0.8:8635,192.168.0.130:8635/dbtest/collectionTest", username = "xxxxxxxxxx", password = "xxxxxxxxxx", field_names = "car_id,car_owner,car_age,average_speed,total_miles", batch_insert_data_num = "10" ); |