diff --git a/docs/dis/umn/ALL_META.TXT.json b/docs/dis/umn/ALL_META.TXT.json new file mode 100644 index 000000000..3e5497866 --- /dev/null +++ b/docs/dis/umn/ALL_META.TXT.json @@ -0,0 +1,622 @@ +[ + { + "uri":"dis_01_0600.html", + "product_code":"dis", + "code":"1", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Overview", + "title":"Overview", + "githuburl":"" + }, + { + "uri":"dis_01_0001.html", + "product_code":"dis", + "code":"2", + "des":"Data Ingestion Service (DIS) addresses the challenge of transmitting data from outside the cloud to inside the cloud. DIS builds data intake streams for custom applicatio", + "doc_type":"usermanual", + "kw":"What Is DIS?,Overview,User Guide", + "title":"What Is DIS?", + "githuburl":"" + }, + { + "uri":"dis_01_0002.html", + "product_code":"dis", + "code":"3", + "des":"You can use DIS for rapid data intake from producers and continuous data processing. The following are typical scenarios for using DIS:Accelerated log and data feed intak", + "doc_type":"usermanual", + "kw":"What Can I Do with DIS?,Overview,User Guide", + "title":"What Can I Do with DIS?", + "githuburl":"" + }, + { + "uri":"dis_01_0003.html", + "product_code":"dis", + "code":"4", + "des":"DIS manages the infrastructure, storage, networking, and configuration needed to stream your data. You do not have to worry about provisioning, deployment, and constant m", + "doc_type":"usermanual", + "kw":"Functions,Overview,User Guide", + "title":"Functions", + "githuburl":"" + }, + { + "uri":"dis_01_0004.html", + "product_code":"dis", + "code":"5", + "des":"DIS works with the following services:Object Storage Service (OBS)If you set Dump Destination to OBS, the uploaded data will be stored to OBS.Identity and Access Manageme", + "doc_type":"usermanual", + "kw":"Related Services,Overview,User Guide", + "title":"Related Services", + "githuburl":"" + }, + { + "uri":"dis_01_0005.html", + "product_code":"dis", + "code":"6", + "des":"You need an account on the management console to create, query, and delete DIS streams, and need an Access Key ID/Secret Access Key (AK/SK) file to push, pull, and dump d", + "doc_type":"usermanual", + "kw":"Permissions,Overview,User Guide", + "title":"Permissions", + "githuburl":"" + }, + { + "uri":"dis_01_0006.html", + "product_code":"dis", + "code":"7", + "des":"Read the following precautions before using DIS:Recommended browser to access the DIS consoleGoogle Chrome: 48.0 or laterMozilla FireFox: 43.0 or laterInternet Explorer: ", + "doc_type":"usermanual", + "kw":"Precautions,Overview,User Guide", + "title":"Precautions", + "githuburl":"" + }, + { + "uri":"dis_01_0008.html", + "product_code":"dis", + "code":"8", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Getting Started", + "title":"Getting Started", + "githuburl":"" + }, + { + "uri":"dis_01_0009.html", + "product_code":"dis", + "code":"9", + "des":"The following is the general procedure for using DIS:Step 1: Creating a DIS StreamYou need to create a stream before using DIS.Step 2: Preparing a DIS Application Develop", + "doc_type":"usermanual", + "kw":"General Procedure,Getting Started,User Guide", + "title":"General Procedure", + "githuburl":"" + }, + { + "uri":"dis_01_0601.html", + "product_code":"dis", + "code":"10", + "des":"You can create a DIS stream on the DIS management console.", + "doc_type":"usermanual", + "kw":"Step 1: Creating a DIS Stream,Getting Started,User Guide", + "title":"Step 1: Creating a DIS Stream", + "githuburl":"" + }, + { + "uri":"dis_01_0602.html", + "product_code":"dis", + "code":"11", + "des":"Before developing DIS applications, prepare an application development environment, and then obtain a software development kit (SDK) and sample project and import them to", + "doc_type":"usermanual", + "kw":"Step 2: Preparing a DIS Application Development Environment,Getting Started,User Guide", + "title":"Step 2: Preparing a DIS Application Development Environment", + "githuburl":"" + }, + { + "uri":"dis_01_0603.html", + "product_code":"dis", + "code":"12", + "des":"Local data is continuously uploaded to DIS.Data can be stored in DIS, OBS, and DLI. For details about how to configure a storage location, see Creating a Dump Task.The ma", + "doc_type":"usermanual", + "kw":"Step 3: Sending Data to DIS,Getting Started,User Guide", + "title":"Step 3: Sending Data to DIS", + "githuburl":"" + }, + { + "uri":"dis_01_0604.html", + "product_code":"dis", + "code":"13", + "des":"You can retrieve data from DIS when needed.The example code file is the ConsumerDemo.java file in the \\dis-sdk-demo\\src\\main\\java\\com\\bigdata\\dis\\sdk\\demo directory decom", + "doc_type":"usermanual", + "kw":"Step 4: Obtaining Data from DIS,Getting Started,User Guide", + "title":"Step 4: Obtaining Data from DIS", + "githuburl":"" + }, + { + "uri":"dis_01_0043.html", + "product_code":"dis", + "code":"14", + "des":"Access Key ID/Secret Access Key (AK/SK) is created on Identity and Access Management (IAM) to authenticate calls to application programming interfaces (APIs) on the publi", + "doc_type":"usermanual", + "kw":"Obtaining Authentication Information,Getting Started,User Guide", + "title":"Obtaining Authentication Information", + "githuburl":"" + }, + { + "uri":"dis_01_0045.html", + "product_code":"dis", + "code":"15", + "des":"DIS can upload data to Object Storage Service (OBS).An IAM agency has been created by following the procedure in Creating an IAM Agency. This IAM agency entrusts DIS to a", + "doc_type":"usermanual", + "kw":"Interconnecting with OBS,Getting Started,User Guide", + "title":"Interconnecting with OBS", + "githuburl":"" + }, + { + "uri":"dis_01_0605.html", + "product_code":"dis", + "code":"16", + "des":"If you choose to dump data from DIS to OBS, create an IAM agency that grants DIS permissions to access OBS.", + "doc_type":"usermanual", + "kw":"Creating an IAM Agency,Getting Started,User Guide", + "title":"Creating an IAM Agency", + "githuburl":"" + }, + { + "uri":"dis_01_0010.html", + "product_code":"dis", + "code":"17", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Managing DIS Streams", + "title":"Managing DIS Streams", + "githuburl":"" + }, + { + "uri":"dis_01_0011.html", + "product_code":"dis", + "code":"18", + "des":"The Stream Management page displays all DIS streams created. After clicking a stream, you can view the following information about this stream:Name/ID: Unique name of the", + "doc_type":"usermanual", + "kw":"Listing DIS Streams,Managing DIS Streams,User Guide", + "title":"Listing DIS Streams", + "githuburl":"" + }, + { + "uri":"dis_01_0012.html", + "product_code":"dis", + "code":"19", + "des":"You can view stream monitoring information on the console and monitor the data consumed by applications in the stream.", + "doc_type":"usermanual", + "kw":"Viewing Stream Monitoring Metrics,Managing DIS Streams,User Guide", + "title":"Viewing Stream Monitoring Metrics", + "githuburl":"" + }, + { + "uri":"dis_01_0050.html", + "product_code":"dis", + "code":"20", + "des":"A tag is an identifier of a stream. Adding tags to streams can help you identify and manage your stream resources.You can add a maximum of 10 tags to a stream when creati", + "doc_type":"usermanual", + "kw":"Managing Stream Tags,Managing DIS Streams,User Guide", + "title":"Managing Stream Tags", + "githuburl":"" + }, + { + "uri":"dis_01_0013.html", + "product_code":"dis", + "code":"21", + "des":"A deleted stream will not be charged and cannot be restored. Exercise caution when performing this operation.", + "doc_type":"usermanual", + "kw":"Deleting a Stream,Managing DIS Streams,User Guide", + "title":"Deleting a Stream", + "githuburl":"" + }, + { + "uri":"dis_01_0115.html", + "product_code":"dis", + "code":"22", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Managing a Dump Task", + "title":"Managing a Dump Task", + "githuburl":"" + }, + { + "uri":"dis_01_0047.html", + "product_code":"dis", + "code":"23", + "des":"If a dump task is created for a DIS stream, data sent to the DIS stream can be automatically dumped to the selected target specified in the dump task.A maximum of five du", + "doc_type":"usermanual", + "kw":"Creating a Dump Task,Managing a Dump Task,User Guide", + "title":"Creating a Dump Task", + "githuburl":"" + }, + { + "uri":"dis_01_0130.html", + "product_code":"dis", + "code":"24", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Monitoring", + "title":"Monitoring", + "githuburl":"" + }, + { + "uri":"dis_01_0131.html", + "product_code":"dis", + "code":"25", + "des":"This section describes metrics reported by DIS to Cloud Eye as well as their namespaces and dimensions. You can use Cloud Eye to query metric information generated for DI", + "doc_type":"usermanual", + "kw":"Supported Metrics,Monitoring,User Guide", + "title":"Supported Metrics", + "githuburl":"" + }, + { + "uri":"dis_01_0132.html", + "product_code":"dis", + "code":"26", + "des":"You can customize the monitored objects and notification policies by setting alarm rules to learn DIS running status in a timely manner.A DIS alarm rule includes the alar", + "doc_type":"usermanual", + "kw":"Setting Alarm Rules,Monitoring,User Guide", + "title":"Setting Alarm Rules", + "githuburl":"" + }, + { + "uri":"dis_01_0134.html", + "product_code":"dis", + "code":"27", + "des":"Cloud Eye monitors the running status of the DIS stream. You can obtain the monitoring metrics of CDM on the Cloud Eye management console.Monitored data requires a period", + "doc_type":"usermanual", + "kw":"Querying Metrics,Monitoring,User Guide", + "title":"Querying Metrics", + "githuburl":"" + }, + { + "uri":"dis_01_0222.html", + "product_code":"", + "code":"28", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"", + "kw":"CDR Specification", + "title":"CDR Specification", + "githuburl":"" + }, + { + "uri":"dis_01_0223.html", + "product_code":"", + "code":"29", + "des":"Data Ingestion Service (DIS) is charged for resource usage, there are three main billing factors: the duration of Partition and PUT Payload Unit number.General partition ", + "doc_type":"", + "kw":"Billing Model,CDR Specification,User Guide", + "title":"Billing Model", + "githuburl":"" + }, + { + "uri":"dis_01_0224.html", + "product_code":"", + "code":"30", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"", + "kw":"CDR Folder and File Name", + "title":"CDR Folder and File Name", + "githuburl":"" + }, + { + "uri":"dis_01_0225.html", + "product_code":"", + "code":"31", + "des":"Similar to other cloud services , CDR files for DIS will be generated, containing DIS usage information, OTC billing system will fetch these files from certain directory ", + "doc_type":"", + "kw":"Overview,CDR Folder and File Name,User Guide", + "title":"Overview", + "githuburl":"" + }, + { + "uri":"dis_01_0226.html", + "product_code":"", + "code":"32", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"", + "kw":"CDR Folder,CDR Folder and File Name,User Guide", + "title":"CDR Folder", + "githuburl":"" + }, + { + "uri":"dis_01_0227.html", + "product_code":"", + "code":"33", + "des":"OTC_{region_code}_dispart_YYYYMMDDHHMMSS_YYYYMMDDHHMMSS_{az_code}_{serial_number}.csv/zipOTC_{region_code}_dispayunit_YYYYMMDDHHMMSS_YYYYMMDDHHMMSS_{az_code}_{serial_numb", + "doc_type":"", + "kw":"Service CDR File Name,CDR Folder and File Name,User Guide", + "title":"Service CDR File Name", + "githuburl":"" + }, + { + "uri":"dis_01_0228.html", + "product_code":"", + "code":"34", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"", + "kw":"CDR Specification", + "title":"CDR Specification", + "githuburl":"" + }, + { + "uri":"dis_01_0229.html", + "product_code":"", + "code":"35", + "des":"Charging requirement: Charging starts from the time when the DIS instance is created and stops when the DIS instance is deleted.CDR record cycle: The minimum granularity ", + "doc_type":"", + "kw":"The CDR Specification,CDR Specification,User Guide", + "title":"The CDR Specification", + "githuburl":"" + }, + { + "uri":"dis_01_0230.html", + "product_code":"", + "code":"36", + "des":"Example of Partition Duration CDR content:20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0|| otc.service.type.dis | otc.resource.type.dispartition | dis.g", + "doc_type":"", + "kw":"The Partition CDR Content,CDR Specification,User Guide", + "title":"The Partition CDR Content", + "githuburl":"" + }, + { + "uri":"dis_01_0231.html", + "product_code":"", + "code":"37", + "des":"Example of PUT Payload Unit CDR content:20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0|| otc.service.type.dis | otc.resource.type.dispayloadunit | dis.g", + "doc_type":"", + "kw":"The PUT Payload Unit CDR Content,CDR Specification,User Guide", + "title":"The PUT Payload Unit CDR Content", + "githuburl":"" + }, + { + "uri":"dis_01_0232.html", + "product_code":"", + "code":"38", + "des":"Sample scenario for the user:Starting at 11:15(UTC time), a user created a stream containing 2 partitions, the data store time is 1 day. The user put 50 records per secon", + "doc_type":"", + "kw":"The Data Store Size CDR Content,CDR Specification,User Guide", + "title":"The Data Store Size CDR Content", + "githuburl":"" + }, + { + "uri":"dis_06_0011.html", + "product_code":"dis", + "code":"39", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"DIS SDK Usage Guide", + "title":"DIS SDK Usage Guide", + "githuburl":"" + }, + { + "uri":"dis_06_0005.html", + "product_code":"dis", + "code":"40", + "des":"Data Ingestion Service Software Development Kit (DIS SDK) is the encapsulation of RESTful APIs provided by DIS to simplify development. You can use DIS by calling API fun", + "doc_type":"usermanual", + "kw":"Downloading SDKs,DIS SDK Usage Guide,User Guide", + "title":"Downloading SDKs", + "githuburl":"" + }, + { + "uri":"dis_06_0012.html", + "product_code":"dis", + "code":"41", + "des":"Download JDK1.8 or a later version from the Oracle official website and install it, and configure Java environment variables.Download Eclipse IDE for Java Developers of t", + "doc_type":"usermanual", + "kw":"Preparing the Environment,DIS SDK Usage Guide,User Guide", + "title":"Preparing the Environment", + "githuburl":"" + }, + { + "uri":"dis_06_0020.html", + "product_code":"dis", + "code":"42", + "des":"The DIS SDK provides compatibility with native kafka client APIs.", + "doc_type":"usermanual", + "kw":"Connecting to kafka consumer,DIS SDK Usage Guide,User Guide", + "title":"Connecting to kafka consumer", + "githuburl":"" + }, + { + "uri":"dis_06_0013.html", + "product_code":"dis", + "code":"43", + "des":"The dis-sdk-1.2.3.zip package of the latest version in Downloading SDKs provides a sample project. You can use a development tool (such as Eclipse) on the local server to", + "doc_type":"usermanual", + "kw":"Configuring Sample Projects,DIS SDK Usage Guide,User Guide", + "title":"Configuring Sample Projects", + "githuburl":"" + }, + { + "uri":"dis_06_0014.html", + "product_code":"dis", + "code":"44", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Importing Third-party Dependency Packages,DIS SDK Usage Guide,User Guide", + "title":"Importing Third-party Dependency Packages", + "githuburl":"" + }, + { + "uri":"dis_06_0015.html", + "product_code":"dis", + "code":"45", + "des":"You can use either of the following methods to initialize a DIS SDK client instance: For details about endpoint, ak, sk, region, and projectId, see Obtaining Authenticati", + "doc_type":"usermanual", + "kw":"Initializing a DIS Client,DIS SDK Usage Guide,User Guide", + "title":"Initializing a DIS Client", + "githuburl":"" + }, + { + "uri":"dis_06_0501.html", + "product_code":"dis", + "code":"46", + "des":"Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.When you use the DIS SDK to create a DIS stream, specify the stream name, number of", + "doc_type":"usermanual", + "kw":"Creating a Stream,DIS SDK Usage Guide,User Guide", + "title":"Creating a Stream", + "githuburl":"" + }, + { + "uri":"dis_06_0502.html", + "product_code":"dis", + "code":"47", + "des":"Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.Use the DIS SDK to delete a specified DIS stream.After configuring DeleteStreamRequ", + "doc_type":"usermanual", + "kw":"Deleting a Stream,DIS SDK Usage Guide,User Guide", + "title":"Deleting a Stream", + "githuburl":"" + }, + { + "uri":"dis_06_0503.html", + "product_code":"dis", + "code":"48", + "des":"Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.Use the DIS SDK to list active streams.Use the setLimit method to set the number of", + "doc_type":"usermanual", + "kw":"Querying a Stream List,DIS SDK Usage Guide,User Guide", + "title":"Querying a Stream List", + "githuburl":"" + }, + { + "uri":"dis_06_0504.html", + "product_code":"dis", + "code":"49", + "des":"Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.Use the DIS SDK to query the details about a specified stream.The returned stream d", + "doc_type":"usermanual", + "kw":"Querying Stream Details,DIS SDK Usage Guide,User Guide", + "title":"Querying Stream Details", + "githuburl":"" + }, + { + "uri":"dis_06_0016.html", + "product_code":"dis", + "code":"50", + "des":"Use the initialized client instance to upload your streaming data to DIS. The sample code is available in the ProducerDemo.java file in the dis-sdk-demo\\src\\com\\bigdata\\d", + "doc_type":"usermanual", + "kw":"Uploading Streaming Data,DIS SDK Usage Guide,User Guide", + "title":"Uploading Streaming Data", + "githuburl":"" + }, + { + "uri":"dis_06_0017.html", + "product_code":"dis", + "code":"51", + "des":"Use the initialized client instance to obtain data through the DIS stream. The sample code is available in the ConsumerDemo.java file under the dis-sdk-demo\\src\\main\\java", + "doc_type":"usermanual", + "kw":"Downloading Streaming Data,DIS SDK Usage Guide,User Guide", + "title":"Downloading Streaming Data", + "githuburl":"" + }, + { + "uri":"dis_06_0022.html", + "product_code":"dis", + "code":"52", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Uploading Real-Time Files", + "title":"Uploading Real-Time Files", + "githuburl":"" + }, + { + "uri":"dis_06_0506.html", + "product_code":"dis", + "code":"53", + "des":"In the Project Explorer pane, right-click com.bigdata.dis.sdk.demo, and choose New > Class from the shortcut menu. The New Java Class dialog box is displayed. Set the cat", + "doc_type":"usermanual", + "kw":"Creating a Demo Class,Uploading Real-Time Files,User Guide", + "title":"Creating a Demo Class", + "githuburl":"" + }, + { + "uri":"dis_06_0023.html", + "product_code":"dis", + "code":"54", + "des":"Initialize a DIS SDK asynchronous client instance. For details about endpoint, ak, sk, region, and projectId, see Obtaining Authentication Information.//Create a DIS clie", + "doc_type":"usermanual", + "kw":"Initializing a DIS SDK Asynchronous Client Instance,Uploading Real-Time Files,User Guide", + "title":"Initializing a DIS SDK Asynchronous Client Instance", + "githuburl":"" + }, + { + "uri":"dis_06_0507.html", + "product_code":"dis", + "code":"55", + "des":"You must use the stream enabled to transmit real-time files. Here, fileUploadStream is used as an example.The value of streamName must be the same as that of Stream Name ", + "doc_type":"usermanual", + "kw":"Uploading Files,Uploading Real-Time Files,User Guide", + "title":"Uploading Files", + "githuburl":"" + }, + { + "uri":"dis_06_0505.html", + "product_code":"dis", + "code":"56", + "des":"Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.Use the DIS SDK to obtain the information about the data cursor.", + "doc_type":"usermanual", + "kw":"Obtaining the Data Cursor,DIS SDK Usage Guide,User Guide", + "title":"Obtaining the Data Cursor", + "githuburl":"" + }, + { + "uri":"dis_faq_0000.html", + "product_code":"dis", + "code":"57", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"FAQs", + "title":"FAQs", + "githuburl":"" + }, + { + "uri":"dis_faq_0003.html", + "product_code":"dis", + "code":"58", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"How Does DIS Send and Receive Data?,FAQs,User Guide", + "title":"How Does DIS Send and Receive Data?", + "githuburl":"" + }, + { + "uri":"dis_faq_0007.html", + "product_code":"dis", + "code":"59", + "des":"After DIS is enabled, data is stored to DIS by default. After a dump task is added, the data can be dumped to other resources. Table 1 describes the specific differences.", + "doc_type":"usermanual", + "kw":"What Is the Difference Between Storing Data into DIS and Dumping Data Elsewhere?,FAQs,User Guide", + "title":"What Is the Difference Between Storing Data into DIS and Dumping Data Elsewhere?", + "githuburl":"" + }, + { + "uri":"dis_faq_0009.html", + "product_code":"dis", + "code":"60", + "des":"This section describes how to verify integrity of the DIS SDK software package on a Linux system by using a verification file.The PuTTY tool is available.The WinSCP tool ", + "doc_type":"usermanual", + "kw":"How Do I Check Software Package Integrity?,FAQs,User Guide", + "title":"How Do I Check Software Package Integrity?", + "githuburl":"" + }, + { + "uri":"dis_01_0014.html", + "product_code":"dis", + "code":"61", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"usermanual", + "kw":"Change History,User Guide", + "title":"Change History", + "githuburl":"" + }, + { + "uri":"dis_01_0000.html", + "product_code":"dis", + "code":"62", + "des":"For details, see Glossary.", + "doc_type":"usermanual", + "kw":"Glossary,User Guide", + "title":"Glossary", + "githuburl":"" + } +] \ No newline at end of file diff --git a/docs/dis/umn/CLASS.TXT.json b/docs/dis/umn/CLASS.TXT.json new file mode 100644 index 000000000..7b1acefe9 --- /dev/null +++ b/docs/dis/umn/CLASS.TXT.json @@ -0,0 +1,560 @@ +[ + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"Overview", + "uri":"dis_01_0600.html", + "doc_type":"usermanual", + "p_code":"", + "code":"1" + }, + { + "desc":"Data Ingestion Service (DIS) addresses the challenge of transmitting data from outside the cloud to inside the cloud. DIS builds data intake streams for custom applicatio", + "product_code":"dis", + "title":"What Is DIS?", + "uri":"dis_01_0001.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"2" + }, + { + "desc":"You can use DIS for rapid data intake from producers and continuous data processing. The following are typical scenarios for using DIS:Accelerated log and data feed intak", + "product_code":"dis", + "title":"What Can I Do with DIS?", + "uri":"dis_01_0002.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"3" + }, + { + "desc":"DIS manages the infrastructure, storage, networking, and configuration needed to stream your data. You do not have to worry about provisioning, deployment, and constant m", + "product_code":"dis", + "title":"Functions", + "uri":"dis_01_0003.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"4" + }, + { + "desc":"DIS works with the following services:Object Storage Service (OBS)If you set Dump Destination to OBS, the uploaded data will be stored to OBS.Identity and Access Manageme", + "product_code":"dis", + "title":"Related Services", + "uri":"dis_01_0004.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"5" + }, + { + "desc":"You need an account on the management console to create, query, and delete DIS streams, and need an Access Key ID/Secret Access Key (AK/SK) file to push, pull, and dump d", + "product_code":"dis", + "title":"Permissions", + "uri":"dis_01_0005.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"6" + }, + { + "desc":"Read the following precautions before using DIS:Recommended browser to access the DIS consoleGoogle Chrome: 48.0 or laterMozilla FireFox: 43.0 or laterInternet Explorer: ", + "product_code":"dis", + "title":"Precautions", + "uri":"dis_01_0006.html", + "doc_type":"usermanual", + "p_code":"1", + "code":"7" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"Getting Started", + "uri":"dis_01_0008.html", + "doc_type":"usermanual", + "p_code":"", + "code":"8" + }, + { + "desc":"The following is the general procedure for using DIS:Step 1: Creating a DIS StreamYou need to create a stream before using DIS.Step 2: Preparing a DIS Application Develop", + "product_code":"dis", + "title":"General Procedure", + "uri":"dis_01_0009.html", + "doc_type":"usermanual", + "p_code":"8", + "code":"9" + }, + { + "desc":"You can create a DIS stream on the DIS management console.", + "product_code":"dis", + "title":"Step 1: Creating a DIS Stream", + "uri":"dis_01_0601.html", + "doc_type":"usermanual", + "p_code":"8", + "code":"10" + }, + { + "desc":"Before developing DIS applications, prepare an application development environment, and then obtain a software development kit (SDK) and sample project and import them to", + "product_code":"dis", + "title":"Step 2: Preparing a DIS Application Development Environment", + "uri":"dis_01_0602.html", + "doc_type":"usermanual", + "p_code":"8", + "code":"11" + }, + { + "desc":"Local data is continuously uploaded to DIS.Data can be stored in DIS, OBS, and DLI. For details about how to configure a storage location, see Creating a Dump Task.The ma", + "product_code":"dis", + "title":"Step 3: Sending Data to DIS", + "uri":"dis_01_0603.html", + "doc_type":"usermanual", + "p_code":"8", + "code":"12" + }, + { + "desc":"You can retrieve data from DIS when needed.The example code file is the ConsumerDemo.java file in the \\dis-sdk-demo\\src\\main\\java\\com\\bigdata\\dis\\sdk\\demo directory decom", + "product_code":"dis", + "title":"Step 4: Obtaining Data from DIS", + "uri":"dis_01_0604.html", + "doc_type":"usermanual", + "p_code":"8", + "code":"13" + }, + { + "desc":"Access Key ID/Secret Access Key (AK/SK) is created on Identity and Access Management (IAM) to authenticate calls to application programming interfaces (APIs) on the publi", + "product_code":"dis", + "title":"Obtaining Authentication Information", + "uri":"dis_01_0043.html", + "doc_type":"usermanual", + "p_code":"8", + "code":"14" + }, + { + "desc":"DIS can upload data to Object Storage Service (OBS).An IAM agency has been created by following the procedure in Creating an IAM Agency. This IAM agency entrusts DIS to a", + "product_code":"dis", + "title":"Interconnecting with OBS", + "uri":"dis_01_0045.html", + "doc_type":"usermanual", + "p_code":"8", + "code":"15" + }, + { + "desc":"If you choose to dump data from DIS to OBS, create an IAM agency that grants DIS permissions to access OBS.", + "product_code":"dis", + "title":"Creating an IAM Agency", + "uri":"dis_01_0605.html", + "doc_type":"usermanual", + "p_code":"8", + "code":"16" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"Managing DIS Streams", + "uri":"dis_01_0010.html", + "doc_type":"usermanual", + "p_code":"", + "code":"17" + }, + { + "desc":"The Stream Management page displays all DIS streams created. After clicking a stream, you can view the following information about this stream:Name/ID: Unique name of the", + "product_code":"dis", + "title":"Listing DIS Streams", + "uri":"dis_01_0011.html", + "doc_type":"usermanual", + "p_code":"17", + "code":"18" + }, + { + "desc":"You can view stream monitoring information on the console and monitor the data consumed by applications in the stream.", + "product_code":"dis", + "title":"Viewing Stream Monitoring Metrics", + "uri":"dis_01_0012.html", + "doc_type":"usermanual", + "p_code":"17", + "code":"19" + }, + { + "desc":"A tag is an identifier of a stream. Adding tags to streams can help you identify and manage your stream resources.You can add a maximum of 10 tags to a stream when creati", + "product_code":"dis", + "title":"Managing Stream Tags", + "uri":"dis_01_0050.html", + "doc_type":"usermanual", + "p_code":"17", + "code":"20" + }, + { + "desc":"A deleted stream will not be charged and cannot be restored. Exercise caution when performing this operation.", + "product_code":"dis", + "title":"Deleting a Stream", + "uri":"dis_01_0013.html", + "doc_type":"usermanual", + "p_code":"17", + "code":"21" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"Managing a Dump Task", + "uri":"dis_01_0115.html", + "doc_type":"usermanual", + "p_code":"", + "code":"22" + }, + { + "desc":"If a dump task is created for a DIS stream, data sent to the DIS stream can be automatically dumped to the selected target specified in the dump task.A maximum of five du", + "product_code":"dis", + "title":"Creating a Dump Task", + "uri":"dis_01_0047.html", + "doc_type":"usermanual", + "p_code":"22", + "code":"23" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"Monitoring", + "uri":"dis_01_0130.html", + "doc_type":"usermanual", + "p_code":"", + "code":"24" + }, + { + "desc":"This section describes metrics reported by DIS to Cloud Eye as well as their namespaces and dimensions. You can use Cloud Eye to query metric information generated for DI", + "product_code":"dis", + "title":"Supported Metrics", + "uri":"dis_01_0131.html", + "doc_type":"usermanual", + "p_code":"24", + "code":"25" + }, + { + "desc":"You can customize the monitored objects and notification policies by setting alarm rules to learn DIS running status in a timely manner.A DIS alarm rule includes the alar", + "product_code":"dis", + "title":"Setting Alarm Rules", + "uri":"dis_01_0132.html", + "doc_type":"usermanual", + "p_code":"24", + "code":"26" + }, + { + "desc":"Cloud Eye monitors the running status of the DIS stream. You can obtain the monitoring metrics of CDM on the Cloud Eye management console.Monitored data requires a period", + "product_code":"dis", + "title":"Querying Metrics", + "uri":"dis_01_0134.html", + "doc_type":"usermanual", + "p_code":"24", + "code":"27" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"CDR Specification", + "uri":"dis_01_0222.html", + "doc_type":"usermanual", + "p_code":"", + "code":"28" + }, + { + "desc":"Data Ingestion Service (DIS) is charged for resource usage, there are three main billing factors: the duration of Partition and PUT Payload Unit number.General partition ", + "product_code":"dis", + "title":"Billing Model", + "uri":"dis_01_0223.html", + "doc_type":"usermanual", + "p_code":"28", + "code":"29" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"CDR Folder and File Name", + "uri":"dis_01_0224.html", + "doc_type":"usermanual", + "p_code":"28", + "code":"30" + }, + { + "desc":"Similar to other cloud services , CDR files for DIS will be generated, containing DIS usage information, OTC billing system will fetch these files from certain directory ", + "product_code":"dis", + "title":"Overview", + "uri":"dis_01_0225.html", + "doc_type":"usermanual", + "p_code":"30", + "code":"31" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"CDR Folder", + "uri":"dis_01_0226.html", + "doc_type":"usermanual", + "p_code":"30", + "code":"32" + }, + { + "desc":"OTC_{region_code}_dispart_YYYYMMDDHHMMSS_YYYYMMDDHHMMSS_{az_code}_{serial_number}.csv/zipOTC_{region_code}_dispayunit_YYYYMMDDHHMMSS_YYYYMMDDHHMMSS_{az_code}_{serial_numb", + "product_code":"dis", + "title":"Service CDR File Name", + "uri":"dis_01_0227.html", + "doc_type":"usermanual", + "p_code":"30", + "code":"33" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"CDR Specification", + "uri":"dis_01_0228.html", + "doc_type":"usermanual", + "p_code":"28", + "code":"34" + }, + { + "desc":"Charging requirement: Charging starts from the time when the DIS instance is created and stops when the DIS instance is deleted.CDR record cycle: The minimum granularity ", + "product_code":"dis", + "title":"The CDR Specification", + "uri":"dis_01_0229.html", + "doc_type":"usermanual", + "p_code":"34", + "code":"35" + }, + { + "desc":"Example of Partition Duration CDR content:20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0|| otc.service.type.dis | otc.resource.type.dispartition | dis.g", + "product_code":"dis", + "title":"The Partition CDR Content", + "uri":"dis_01_0230.html", + "doc_type":"usermanual", + "p_code":"34", + "code":"36" + }, + { + "desc":"Example of PUT Payload Unit CDR content:20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0|| otc.service.type.dis | otc.resource.type.dispayloadunit | dis.g", + "product_code":"dis", + "title":"The PUT Payload Unit CDR Content", + "uri":"dis_01_0231.html", + "doc_type":"usermanual", + "p_code":"34", + "code":"37" + }, + { + "desc":"Sample scenario for the user:Starting at 11:15(UTC time), a user created a stream containing 2 partitions, the data store time is 1 day. The user put 50 records per secon", + "product_code":"dis", + "title":"The Data Store Size CDR Content", + "uri":"dis_01_0232.html", + "doc_type":"usermanual", + "p_code":"34", + "code":"38" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"DIS SDK Usage Guide", + "uri":"dis_06_0011.html", + "doc_type":"usermanual", + "p_code":"", + "code":"39" + }, + { + "desc":"Data Ingestion Service Software Development Kit (DIS SDK) is the encapsulation of RESTful APIs provided by DIS to simplify development. You can use DIS by calling API fun", + "product_code":"dis", + "title":"Downloading SDKs", + "uri":"dis_06_0005.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"40" + }, + { + "desc":"Download JDK1.8 or a later version from the Oracle official website and install it, and configure Java environment variables.Download Eclipse IDE for Java Developers of t", + "product_code":"dis", + "title":"Preparing the Environment", + "uri":"dis_06_0012.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"41" + }, + { + "desc":"The DIS SDK provides compatibility with native kafka client APIs.", + "product_code":"dis", + "title":"Connecting to kafka consumer", + "uri":"dis_06_0020.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"42" + }, + { + "desc":"The dis-sdk-1.2.3.zip package of the latest version in Downloading SDKs provides a sample project. You can use a development tool (such as Eclipse) on the local server to", + "product_code":"dis", + "title":"Configuring Sample Projects", + "uri":"dis_06_0013.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"43" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"Importing Third-party Dependency Packages", + "uri":"dis_06_0014.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"44" + }, + { + "desc":"You can use either of the following methods to initialize a DIS SDK client instance: For details about endpoint, ak, sk, region, and projectId, see Obtaining Authenticati", + "product_code":"dis", + "title":"Initializing a DIS Client", + "uri":"dis_06_0015.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"45" + }, + { + "desc":"Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.When you use the DIS SDK to create a DIS stream, specify the stream name, number of", + "product_code":"dis", + "title":"Creating a Stream", + "uri":"dis_06_0501.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"46" + }, + { + "desc":"Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.Use the DIS SDK to delete a specified DIS stream.After configuring DeleteStreamRequ", + "product_code":"dis", + "title":"Deleting a Stream", + "uri":"dis_06_0502.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"47" + }, + { + "desc":"Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.Use the DIS SDK to list active streams.Use the setLimit method to set the number of", + "product_code":"dis", + "title":"Querying a Stream List", + "uri":"dis_06_0503.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"48" + }, + { + "desc":"Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.Use the DIS SDK to query the details about a specified stream.The returned stream d", + "product_code":"dis", + "title":"Querying Stream Details", + "uri":"dis_06_0504.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"49" + }, + { + "desc":"Use the initialized client instance to upload your streaming data to DIS. The sample code is available in the ProducerDemo.java file in the dis-sdk-demo\\src\\com\\bigdata\\d", + "product_code":"dis", + "title":"Uploading Streaming Data", + "uri":"dis_06_0016.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"50" + }, + { + "desc":"Use the initialized client instance to obtain data through the DIS stream. The sample code is available in the ConsumerDemo.java file under the dis-sdk-demo\\src\\main\\java", + "product_code":"dis", + "title":"Downloading Streaming Data", + "uri":"dis_06_0017.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"51" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"Uploading Real-Time Files", + "uri":"dis_06_0022.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"52" + }, + { + "desc":"In the Project Explorer pane, right-click com.bigdata.dis.sdk.demo, and choose New > Class from the shortcut menu. The New Java Class dialog box is displayed. Set the cat", + "product_code":"dis", + "title":"Creating a Demo Class", + "uri":"dis_06_0506.html", + "doc_type":"usermanual", + "p_code":"52", + "code":"53" + }, + { + "desc":"Initialize a DIS SDK asynchronous client instance. For details about endpoint, ak, sk, region, and projectId, see Obtaining Authentication Information.//Create a DIS clie", + "product_code":"dis", + "title":"Initializing a DIS SDK Asynchronous Client Instance", + "uri":"dis_06_0023.html", + "doc_type":"usermanual", + "p_code":"52", + "code":"54" + }, + { + "desc":"You must use the stream enabled to transmit real-time files. Here, fileUploadStream is used as an example.The value of streamName must be the same as that of Stream Name ", + "product_code":"dis", + "title":"Uploading Files", + "uri":"dis_06_0507.html", + "doc_type":"usermanual", + "p_code":"52", + "code":"55" + }, + { + "desc":"Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.Use the DIS SDK to obtain the information about the data cursor.", + "product_code":"dis", + "title":"Obtaining the Data Cursor", + "uri":"dis_06_0505.html", + "doc_type":"usermanual", + "p_code":"39", + "code":"56" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"FAQs", + "uri":"dis_faq_0000.html", + "doc_type":"usermanual", + "p_code":"", + "code":"57" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"How Does DIS Send and Receive Data?", + "uri":"dis_faq_0003.html", + "doc_type":"usermanual", + "p_code":"57", + "code":"58" + }, + { + "desc":"After DIS is enabled, data is stored to DIS by default. After a dump task is added, the data can be dumped to other resources. Table 1 describes the specific differences.", + "product_code":"dis", + "title":"What Is the Difference Between Storing Data into DIS and Dumping Data Elsewhere?", + "uri":"dis_faq_0007.html", + "doc_type":"usermanual", + "p_code":"57", + "code":"59" + }, + { + "desc":"This section describes how to verify integrity of the DIS SDK software package on a Linux system by using a verification file.The PuTTY tool is available.The WinSCP tool ", + "product_code":"dis", + "title":"How Do I Check Software Package Integrity?", + "uri":"dis_faq_0009.html", + "doc_type":"usermanual", + "p_code":"57", + "code":"60" + }, + { + "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "product_code":"dis", + "title":"Change History", + "uri":"dis_01_0014.html", + "doc_type":"usermanual", + "p_code":"", + "code":"61" + }, + { + "desc":"For details, see Glossary.", + "product_code":"dis", + "title":"Glossary", + "uri":"dis_01_0000.html", + "doc_type":"usermanual", + "p_code":"", + "code":"62" + } +] \ No newline at end of file diff --git a/docs/dis/umn/PARAMETERS.txt b/docs/dis/umn/PARAMETERS.txt new file mode 100644 index 000000000..6da8d5f07 --- /dev/null +++ b/docs/dis/umn/PARAMETERS.txt @@ -0,0 +1,3 @@ +version="" +language="en-us" +type="" \ No newline at end of file diff --git a/docs/dis/umn/dis_01_0000.html b/docs/dis/umn/dis_01_0000.html new file mode 100644 index 000000000..0359c67e3 --- /dev/null +++ b/docs/dis/umn/dis_01_0000.html @@ -0,0 +1,7 @@ + + +
For details, see Glossary.
+Data Ingestion Service (DIS) addresses the challenge of transmitting data from outside the cloud to inside the cloud. DIS builds data intake streams for custom applications capable of processing or analyzing streaming data. DIS continuously captures, transmits, and stores terabytes of data from hundreds of thousands of sources every hour, such as logs, social media feeds, website clickstreams, and location-tracking events.
+If you set the dump destination to Object Storage Service (OBS), the streaming data will be dumped to OBS.
+
Sequence numbers for the same partition key generally increase over time; the longer the time period between write requests (PutRecords requests), the larger the sequence numbers become.
+You can use DIS for rapid data intake from producers and continuous data processing. The following are typical scenarios for using DIS:
+You do not need to batch data on servers before you submit it for intake. Instead, you can have producers push data into streams immediately after data is produced.
+For example, system and application logs are pushed as they are streaming in and they will be available for processing in seconds. This prevents the data from being lost if the data producer fails.
+You can retrieve data from DIS streams for simple data analysis and reporting in real time. For example, your DIS applications can work on metrics and reporting for system and application logs as streaming data is being pushed to DIS streams using application programming interfaces (APIs), rather than wait to receive batches of data.
+You can create Directed Acyclic Graphs (DAGs) of DIS applications and streams. This typically involves putting data from one or multiple DIS applications into another stream for downstream processing by a different DIS application.
+DIS manages the infrastructure, storage, networking, and configuration needed to stream your data. You do not have to worry about provisioning, deployment, and constant maintenance of hardware. In addition, DIS synchronously replicates data across availability zones, providing high availability and data durability.
+DIS consists of the following four functional modules:
+If you set Dump Destination to OBS, the uploaded data will be stored to OBS.
+CTS is used to record the operations you have performed on DIS for later querying, auditing, or backtracking. For details, see the Cloud Trace Service User Guide.
+You need an account on the management console to create, query, and delete DIS streams, and need an Access Key ID/Secret Access Key (AK/SK) file to push, pull, and dump data.
+For details about how to perform operations on IAM, see IAM User Guide.
+Node Name + |
+Permission Name + |
+Managed Cloud Resource + |
+Description + |
+How to Assign Permissions + |
+
|---|---|---|---|---|
Base + |
+Tenant Administrator + |
+All services + |
+Users have permission to operate all cloud resources owned by an enterprise. + |
+Permission parameter settings: +Region: set to the region to which your cloud resources belong. Project: set to the project to which your cloud resources belong. Policy: set to Tenant Administrator. + |
+
DIS + |
+DIS Administrator + |
+DIS + |
+Users have permissions to perform the following operations: +
|
+Permission parameter settings: +
Assign different permissions based on the destination to which data of DIS streams will be dumped.
+
+ |
+
If you cannot log in to the DIS console using Internet Explorer 9.0, run the browser as the Administrator user or re-install the browser as the Administrator user (by default, the Administrator user is disabled in certain Windows systems, such as Windows 7 Ultimate. That is, users other than the Administrator user are selected by default to install Internet Explorer.) Reinstall Internet Explorer 9.0 or later (recommended) or run Internet Explorer 9.0 as user Administrator.
+The following is the general procedure for using DIS:
+ +You need to create a stream before using DIS.
+Step 2: Preparing a DIS Application Development Environment
+Before developing a DIS application, install an application development tool, and import your SDK package and sample project into the development environment.
+ +Write a producer application and run it to send data to the cloud. The DIS stream information can be viewed on the DIS console.
+Step 4: Obtaining Data from DIS
+Write a consumer application and run it to retrieve data from the cloud.
+The Stream Management page displays all DIS streams created. After clicking a stream, you can view the following information about this stream:
+
You can view stream monitoring information on the console and monitor the data consumed by applications in the stream.
+
in the upper left corner and select a region and a project.
+
Parameter + |
+Description + |
+
|---|---|
Time Range + |
++ | +
Partitions + |
+|
Partition ID + |
+ID of the partition. It starts from 0 by default. Select any of the following values from the Partition ID drop-down. + |
+
Data Rate (KB/s) + |
+Rates at which data is sent to and retrieved from the chosen partition within the specified time range. Unit: KB/s + |
+
Records Per Second + |
+The number of records sent to and retrieved from the chosen partition within the specified time range. + |
+
Streams + |
+|
Data Rate (KB/s) + |
+Rates at which data is sent to and retrieved from the chosen DIS stream within the specified time range. Unit: KB/s + |
+
Records Per Second + |
+The number of records sent to and retrieved from the chosen DIS stream within the specified time range. + |
+
Successful Requests Per Second + |
+The number of PutRecords and GetRecords requests successfully fulfilled within the specified time range. + |
+
Throttled Requests Per Second + |
+The number of PutRecords and GetRecords requests rejected within the specified time range due to flow control. + |
+
Average Request Processing Time (ms) + |
+The average amount of time spent in processing a PutRecords or GetRecords request. + |
+
A deleted stream will not be charged and cannot be restored. Exercise caution when performing this operation.
+
in the upper left corner of the page and select a region and project.

Release Date + |
+What's New + |
+
|---|---|
2022-06-15 + |
+Modified the following section: + +Added the following sections: + + |
+
2020-01-03 + |
+Modified the following section: + + |
+
2019-06-12 + |
+Modified the following section: + + |
+
2019-05-15 + |
+Modified the following section: + + |
+
2019-01-29 + |
+Modified the following section: + + |
+
2018-11-09 + |
+Accepted in OTC 3.2. + |
+
2018-03-16 + |
+This is the first official release. + |
+
Access Key ID/Secret Access Key (AK/SK) is created on Identity and Access Management (IAM) to authenticate calls to application programming interfaces (APIs) on the public cloud. To obtain AK/SK, choose .
+A project is a group of tenant resources. To view the project IDs of different regions, choose .
+For details about regions and endpoints, see Regions and Endpoints.
+DIS can upload data to Object Storage Service (OBS).
+An IAM agency has been created by following the procedure in Creating an IAM Agency. This IAM agency entrusts DIS to access your OBS resources.
+In section Creating a Dump Task, you can select a location to which data from DIS streams will be dumped. If Dump Destination is set to OBS, DIS periodically imports data from DIS streams to OBS.
+If a dump task is created for a DIS stream, data sent to the DIS stream can be automatically dumped to the selected target specified in the dump task.
+
in the upper left corner of the page and select a region and project.
A maximum of five dump tasks can be created for each stream.
++
Parameter + |
+Description + |
+Remarks + |
+
|---|---|---|
Data Dumping +Location to save data in the stream. + |
+||
Dump Destination + |
+OBS: After the streaming data is stored to DIS, it is then periodically imported to OBS. + |
+- + |
+
Task Name + |
+Name of the dump task. The names of dump tasks created for the same stream must be unique. A task name must be unique in the stream and is 1 to 64 characters long. Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+- + |
+
Dump File Format + |
+Text + |
+The Text format can be selected only when Source Data Type is OBS. + |
+
Dump Bucket + |
+Name of the OBS bucket used to store data from the DIS stream. The bucket name is created when you create a bucket in OBS. + |
+- + |
+
File Directory + |
+Directory created in OBS to store files from the DIS stream. Different directory levels are separated by a forward slash (/). The value cannot start with a forward slash. +This directory name is 0 to 50 characters long. +By default, this parameter is left unspecified. + |
+- + |
+
Time Directory Format + |
+Directory format based on the time. Data will be saved to the directory in the format of time layer under the dump file directory in the OBS bucket. +For example, if the time directory is accurate to day, the data save path is "bucket name/dump file directory/year/month/day". +Possible values are as follows:
+
You can only select but not enter a value in this field. + |
+- + |
+
Record Delimiter + |
+Delimiter used to separate different dump records. +Possible values are as follows:
+
You can only select but not enter a value in this field. + |
+- + |
+
Dump Interval (s) + |
+User-defined interval at which data is imported from the current DIS stream into OBS. If no data is pushed to the DIS stream during the current interval, no dump file package will be generated. +Value range: 30s to 900s +Unit: second +Default value: 300s + |
+- + |
+
Parameter + |
+Description + |
+
|---|---|
Start Time + |
+Time when the dump log is created. +Format: YYYY/MM/dd HH:mm:ss GTM
+
|
+
End Time + |
+Time when you finish creating the dump log. +Format: YYYY/MM/dd HH:mm:ss GTM
+
|
+
Status + |
+Dump status.
+
|
+
Dump File Name + |
+Name of the file that is dumped to the target service. The user records read from the stream are written into the file and then dumped to the target service (such as OBS) in the file format. + |
+
Records + |
+Number of the records uploaded between the time when you start to create a dump log to the time when you finish creating it. + |
+
Data Amount (bytes) + |
+Amount of the data uploaded between the time when you start to create the dump log to the time when you finish creating it. +Unit: byte + |
+
Operation + |
+Dump failure details. +
|
+
After creating a stream and adding a dump task successfully, you can modify the attributes of the created stream.
+
in the upper left corner of the page and select a region and project.A tag is an identifier of a stream. Adding tags to streams can help you identify and manage your stream resources.
+You can add a maximum of 10 tags to a stream when creating the stream or add them on the details page of the created stream.
+A tag consists of a tag key and a tag value. Table 1 describes the rules for naming the tag key and value.
+ +Parameter + |
+Rule + |
+Example + |
+
|---|---|---|
Key + |
+A tag key cannot be left blank. +A tag key must be unique for a stream. +A tag key contains a maximum of 36 characters. +A tag value cannot contain special characters =*<>\,|/ or start or end with a space. + |
+Organization + |
+
Tag value + |
+A tag value contains a maximum of 43 characters. +A tag value cannot contain special characters =*<>\,|/ or start or end with a space. This parameter can be left blank. + |
+Apache + |
+
Enter the key and value of a tag to be added.
+You can add a maximum of 10 tags to the stream and use intersections of tags to search for the target stream.
+ +You can select a tag key or tag value from its drop-down list. When the tag key or tag value is exactly matched, the system can automatically locate the target stream. If you enter multiple tags, their intersections are used to search for the stream.
+The system searches for the target stream by tag key or value.
+The stream details page is displayed.
+On the Tags tab page, you can view details about tags of the stream, including the number of tags and the key and value of each tag.
+Click Add Tag in the upper left corner. In the displayed Add Tag dialog box, enter the key and value of the tag to be added, and click OK.
+In the Operation column of a tag, click Edit. In the displayed Edit Tag page, enter a new tag key and value and click OK.
+In the Operation column of the tag, click Delete. After confirmation, click OK on the displayed Delete Tag page.
+This section describes metrics reported by DIS to Cloud Eye as well as their namespaces and dimensions. You can use Cloud Eye to query metric information generated for DIS.
+SYS.DAYU
+Table 1 lists the DIS metrics.
+Metric Name + |
+Meaning + |
+Value Range + |
+Monitored Object + |
+Monitoring Period (Raw Data) + |
+
|---|---|---|---|---|
Total Input Traffic + |
+The amount of data uploaded through a stream during a specific period. +Unit: byte/s + |
+≥ 0 bytes/s + |
+Stream + |
+1 minute + |
+
Total Output Traffic + |
+The amount of data downloaded through a stream during a specific period. +Unit: byte/s + |
+≥ 0 bytes/s + |
+Stream + |
+1 minute + |
+
Total Input Records + |
+The number of records uploaded through a stream during a specific period. +Unit: count/s + |
+≥ 0 Count/s + |
+Stream + |
+1 minute + |
+
Total Output Records + |
+The number of records downloaded through a stream during a specific period. +Unit: count/s + |
+≥ 0 Count/s + |
+Stream + |
+1 minute + |
+
Successful Upload Requests + |
+The number of successful requests for uploading data through a stream during a specific period. +Unit: count/s + |
+≥ 0 Count/s + |
+Stream + |
+1 minute + |
+
Successful Download Requests + |
+The number of successful requests for downloading data through a stream during a specific period. +Unit: count/s + |
+≥ 0 Count/s + |
+Stream + |
+1 minute + |
+
Average Processing Time of Upload Requests + |
+Average upload request delay of a stream during a specific period. +Unit: ms + |
+0 to 50 ms + |
+Stream + |
+1 minute + |
+
Average Processing Time of Download Requests + |
+Average download request delay of a stream during a specific period. +Unit: ms + |
+0 to 50 ms + |
+Stream + |
+1 minute + |
+
Throttled Upload Requests + |
+The number of rejected upload requests due to flow control. +Unit: count/s + |
+0 to 1 + |
+Stream + |
+1 minute + |
+
Throttled Download Requests + |
+The number of rejected download requests due to flow control. +Unit: count/s + |
+0 to 1 + |
+Stream + |
+1 minute + |
+
Key + |
+Value + |
+
|---|---|
stream_id + |
+Real-time data ingestion + |
+
You can customize the monitored objects and notification policies by setting alarm rules to learn DIS running status in a timely manner.
+A DIS alarm rule includes the alarm rule name, monitored object, metric, threshold, monitoring interval, and whether to send a notification. This section describes how to set DIS alarm rules.
+
For more information about DIS alarm rules, see the Cloud Eye User Guide.
+Cloud Eye monitors the running status of the DIS stream. You can obtain the monitoring metrics of CDM on the Cloud Eye management console.
+Monitored data requires a period of time for transmission and display. The status of CDM displayed on the Cloud Eye page is the status obtained 5 to 10 minutes before. You can view the monitored data of a newly created DIS stream 5 to 10 minutes later.
+
Cloud Eye will delete a deleted stream from the monitoring list and will not monitor it any more. However, you need to manually clear its alarm rules.
+
in the upper left corner of the page and select a region and project.
in the upper right corner of the graphs to zoom out the graphs.You can view the raw monitoring data curves of different metrics in the last 1 hour, 3 hours, and 12 hours. You can determine whether to enable Auto Refresh. Cloud Eye provides an automatic refresh interval of 60 seconds.
+Data Ingestion Service (DIS) is charged for resource usage, there are three main billing factors: the duration of Partition and PUT Payload Unit number.
+DIS is charged for resource usage as follow:
+Both resources will be charged at the same time. Each charged will be listed separately. There will be 3 CDR records for each stream in the billing interval.
+The data will be cached for some time in the service, and default cache time is 24 hours. If the user want dump the data to OBS, the operation in OBS will be charged separately.
+Example:
+Let us assume that our data producers put 50 records per second in aggregate, and each record is 35KB. In this case, the total data input rate is 1.7MB/sec (50 records/sec*35KB/record). For simplicity, we assume that the throughput and data size of each record are stable and constant throughout the day.
+We first calculate the number of partitions needed for our stream to achieve the required throughput. As one partition provides a capacity of 1MB/sec data input and supports 1000 records/sec, two partitions provide a capacity of 2MB/sec data input and support 2000 records/sec. So a stream with two partitions satisfies our required throughput of 1.7MB/sec at 50 records/sec.
+We then calculate our costs using DIS pricing:
+If the data in the DIS stored 1 day, the Data storage size is always less than 84GB, so the total cost per hour is :$(2X + Y)
+Optionally, we can choose to increase the data retention period of our stream from 24 hours to up to 7 days. In this example, if the throughput is stable, the data storage size is 514.08GB per partition(0.85MB/sec * 3600sec * 24hour * 7day).We assume that the data storage rate is $Z per GB*Hour, the cost is $860.16*Z( the detail is (514.08-84)GB * 2 partitions * Z). The total cost should $(2*X + Y + 860.16*Z).
+Shard Hour
+Shard is the base throughput unit of an Amazon Kinesis stream. One shard provides a capacity of 1MB/sec data input and 2MB/sec data output. One shard can support up to 1000 records per second. You specify the number of shards needed within your stream based on your throughput requirements. You are charged for each shard at an hourly rate.
+PUT Payload Unit (25KB)
+A record is the data that your data producer adds to your Amazon Kinesis stream. A PUT Payload Unit is counted in 25KB payload "chunks" that comprise a record. For example, a 5KB record contains one PUT Payload Unit, a 45KB record contains two PUT Payload Units, and a 1MB record contains 40 PUT Payload Units. PUT Payload Unit is charged with a per million PUT Payload Units rate.
+Extended Data Retention (Up to 7 days)
+Amazon Kinesis stores your data for 24 hours by default. You can choose to increase the data retention period of your stream to up to 7 days. You are charged for an additional rate on each shard hour incurred by your stream once you enable extended data retention.
+Similar to other cloud services , CDR files for DIS will be generated, containing DIS usage information, OTC billing system will fetch these files from certain directory on Common CDR SFTP via public key to complete the charging of DIS.
+The file compression agonization, MD5 verification, error file handling are totally same as the CDR files of other cloud services.for details, please refer to document of"OTC CDR File Specifications".
+Export Directory + |
+Backup Directory + |
+
|---|---|
|
+
|
+
|
+
|
+
|
+
|
+
OTC_{region_code}_dispart_YYYYMMDDHHMMSS_YYYYMMDDHHMMSS_{az_code}_{serial_number}.csv/zip
+OTC_{region_code}_dispayunit_YYYYMMDDHHMMSS_YYYYMMDDHHMMSS_{az_code}_{serial_number}.csv/zip
+OTC_{region_code}_dissize_YYYYMMDDHHMMSS_YYYYMMDDHHMMSS_{az_code}_{serial_number}.csv/zip
+The {az_code} is not used by dis, the value is set the AZ01 number by default.
+For example:
+OTC_eu-de_dispart_20170427100000_20170427105959_eu-de-01_0001.csv/zip
+OTC_eu-de_dispayunit_20170427100000_20170427105959_eu-de-01_0001.csv/zip
+OTC_eu-de_dissize_20170427100000_20170427105959_ eu-de-01 _0001.csv/zip
+Charging requirement: Charging starts from the time when the DIS instance is created and stops when the DIS instance is deleted.
+CDR record cycle: The minimum granularity is minute, and the current cycle is 60 minutes. The interval for uploading offline CDR files is one hour.
+There are three types of Product ID corresponding to three billing factors in DIS. The detail information of the product ID looks like below:
+ +ResourceTypeCode + |
+ID Commercial Product + |
+Describe of Commercial Product EN + |
+Unit of Measure + |
+
|---|---|---|---|
otc.resource.type.dispart + |
+OTC_DIS_GEN_TIME + |
+The length of time the user is using the general partition + |
+second + |
+
OTC_DIS_ADV_TIME + |
+The length of time the user is using the advanced partition + |
+second + |
+|
otc.resource.type.dispayunit + |
+OTC_DIS_GEN_UNIT + |
+The number of the PUT Payload Unit for general partition + |
+number + |
+
OTC_DIS_ADV_UNIT + |
+The number of the PUT Payload Unit for advanced partition + |
+number + |
+|
otc.resource.type.dissize + |
+OTC_DIS_GEN_STORE + |
+The data storage size in general partition. + |
+byte + |
+
OTC_DIS_ADV_STORE + |
+The data storage size in advanced partition. + |
+byte + |
+
Field + |
+Location + |
+Type + |
+Description + |
+Remarks + |
+
|---|---|---|---|---|
RecordType + |
+1 + |
+String + |
+Type of a record in a file. + |
+Number of normal offline CDR records: 20 +Number of corrected error offline CDR records: 30 + |
+
TimeStamp + |
+2 + |
+String + |
+Time when an offline CDR record is generated. + |
+UTC Format: YYYYMMDDHH24MISS + |
+
UserID + |
+3 + |
+String + |
+Unique ID of a subscriber. + |
+The value is the same as the value of ProjectID. + |
+
RegionCode + |
+4 + |
+String + |
+ID of a region. + |
+ID of a region. + |
+
AZCode + |
+5 + |
+String + |
+Code of an available zone. + |
+The DIS is Region Service, The AZCode is set AZ01 by default. + |
+
CloudServiceTypeCode + |
+6 + |
+String + |
+Type of a cloud service. + |
+Cloud service type corresponding to ResourceID. For example, cloudservicetype for VM in EC2 is recorded as otc.service.type.ec2, and cloudservicetype for VM in VDC is recorded as otc.service.type.vdc. +For DIS: the string is otc.service.type.dis + |
+
ResourceTypeCode + |
+7 + |
+String + |
+Type of a cloud resource. + |
+Cloud resource type corresponding to ResourceID, such as VM. +ResourceType is a resource type specified by CloudServiceType, and CloudServiceType contains multiple sets of ResourceType. For example, EC2 is provided by VM, Volume, IP, and Image, and EC2 is a CloudServiceType, and VM, Volume, IP, and Image are ResourceType. +For DIS: the string is otc.resource.type.dis + |
+
ResourceSpecCode + |
+8 + |
+String + |
+Code of specified resource specifications. + |
+There are two type resourcespeccode for DIS: +dis.general.partition +dis.advanced.partition + |
+
ResourceID + |
+9 + |
+String + |
+ID of a resource instance. + |
+ID of the partition in the DIS stream instance. +The ID is different from partitions. + + |
+
BSSParams + |
+10 + |
+String + |
+Extended operation parameter. + |
+The contract ID of one tenant. The contract ID is the xdomain_id of user token. + |
+
BeginTime + |
+11 + |
+String + |
+Start time of the statistics period of a record. + |
+UTC Format: YYYYMMDDHH24MISS + |
+
EndTime + |
+12 + |
+String + |
+End time of the statistics period of a record. + |
+UTC Format: YYYYMMDDHH24MISS + |
+
Duration + |
+13 + |
+String + |
+Name of a specific accumulative factor. + |
+Accumulative factor: Duration + |
+
Time + |
+14 + |
+Double + |
+Accumulative value of AccumulateFactorName. + |
+Accumulative value of duration in the period ranging from BeginTime to EndTime multiply the number of partitions. The value is 0 or a positive number. +The time unit is hour. + |
+
ExtendParams + |
+15 + |
+String + |
+Extended field. + |
+This field is not used in this CDR record, the value is empty. + |
+
ProductID + |
+16 + |
+String + |
+Product ID of this service + |
+Product ID : +OTC_DIS_GEN_TIME +OTC_DIS_ADV_TIME + |
+
CET/CEST BeginTime + |
+17 + |
+String + |
+Start time of the statistics period of a record. + |
+Server Local Time: YYYYMMDDHH24MISS + |
+
CET/CEST EndTime + |
+18 + |
+String + |
+End time of the statistics period of a record. + |
+Server Local Time: YYYYMMDDHH24MISS + |
+
Tag + |
+19 + |
+String + |
+Extended field. + |
+This field is not used in DIS service, the value is empty. + |
+
Example of Partition Duration CDR content:
+20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0 | | otc.service.type.dis | otc.resource.type.dispartition | dis.general.partition | 2cegee33-2173-4982-881c-7w8f27d23h54 |00000000001000003344 | 20161013130000 | 20161013135959 | Duration | 3600 | | OTC_DIS_GEN_TIME | 20161013140000 | 20161013145959|
+Field + |
+Location + |
+Type + |
+Description + |
+Remarks + |
+
|---|---|---|---|---|
RecordType + |
+1 + |
+String + |
+Type of a record in a file. + |
+Number of normal offline CDR records: 20 +Number of corrected error offline CDR records: 30 + |
+
TimeStamp + |
+2 + |
+String + |
+Time when an offline CDR record is generated. + |
+UTC Format: YYYYMMDDHH24MISS + |
+
UserID + |
+3 + |
+String + |
+Unique ID of a subscriber. + |
+The value is the same as the value of ProjectID. + |
+
RegionCode + |
+4 + |
+String + |
+ID of a region. + |
+ID of a region. + |
+
AZCode + |
+5 + |
+String + |
+Code of an available zone. + |
+Code of an available zone. + |
+
CloudServiceTypeCode + |
+6 + |
+String + |
+Type of a cloud service. + |
+Cloud service type corresponding to ResourceID. For example, cloudservicetype for VM in EC2 is recorded as otc.service.type.ec2, and cloudservicetype for VM in VDC is recorded as otc.service.type.vdc. +For DIS: the string is otc.service.type.dis + |
+
ResourceTypeCode + |
+7 + |
+String + |
+Type of a cloud resource. + |
+Cloud resource type corresponding to ResourceID, such as VM. +ResourceType is a resource type specified by CloudServiceType, and CloudServiceType contains multiple sets of ResourceType. For example, EC2 is provided by VM, Volume, IP, and Image, and EC2 is a CloudServiceType, and VM, Volume, IP, and Image are ResourceType. +For DIS: the string is otc.resource.type.dis + |
+
ResourceSpecCode + |
+8 + |
+String + |
+Code of specified resource specifications. + |
+There are two type resourcespeccode for DIS: +dis.general.partition +dis.advanced.partition + |
+
ResourceID + |
+9 + |
+String + |
+ID of a resource instance. + |
+ID of the partition in the DIS stream instance. +The ID is different from partitions. + + |
+
BSSParams + |
+10 + |
+String + |
+Extended operation parameter. + |
+The contract ID of one tenant. The contract ID is the xdomain_id of user token. + |
+
BeginTime + |
+11 + |
+String + |
+Start time of the statistics period of a record. + |
+UTC Format: YYYYMMDDHH24MISS + |
+
EndTime + |
+12 + |
+String + |
+End time of the statistics period of a record. + |
+UTC Format: YYYYMMDDHH24MISS + |
+
InputTraffic + |
+13 + |
+String + |
+Name of a specific accumulative factor. + |
+Accumulative factor: InputUnitNum + |
+
InputTrafficValue + |
+14 + |
+Double + |
+Accumulative value of AccumulateFactorName. + |
+Accumulative value of InputUnitNum. +This is the total Num of input record(sum/million) in the partition during this time period. +The value unit is sum/million + +. + |
+
ExtendParams + |
+15 + |
+String + |
+Extended field. + |
+This field indicates the amount of data the user is actually putting. + |
+
ProductID + |
+16 + |
+String + |
+Product ID of this service + |
+Product ID: +OTC_DIS_GEN_UNIT +OTC_DIS_ADV_UNIT + |
+
CET/CEST BeginTime + |
+17 + |
+String + |
+Start time of the statistics period of a record. + |
+Server Local Time: YYYYMMDDHH24MISS + |
+
CET/CEST EndTime + |
+18 + |
+String + |
+End time of the statistics period of a record. + |
+Server Local Time: YYYYMMDDHH24MISS + |
+
Tag + |
+19 + |
+String + |
+Extended field. + |
+This field is not used in DIS service, the value is empty. + |
+
Example of PUT Payload Unit CDR content:
+20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0 | | otc.service.type.dis | otc.resource.type.dispayloadunit | dis.general.partition | 1dbcee33-7837-4316-852d-5d9f27f11e28 |00000000001000003344 | 20161013130000 | 20161013135959 | InputUnitNum | 12000 | 3201284 | OTC_DIS_GEN_UNIT |20161013140000 | 20161013145959|
+Field + |
+Location + |
+Type + |
+Description + |
+Remarks + |
+
|---|---|---|---|---|
RecordType + |
+1 + |
+String + |
+Type of a record in a file. + |
+Number of normal offline CDR records: 20 +Number of corrected error offline CDR records: 30 + |
+
TimeStamp + |
+2 + |
+String + |
+Time when an offline CDR record is generated. + |
+UTC Format: YYYYMMDDHH24MISS + |
+
UserID + |
+3 + |
+String + |
+Unique ID of a subscriber. + |
+The value is the same as the value of ProjectID. + |
+
RegionCode + |
+4 + |
+String + |
+ID of a region. + |
+ID of a region. + |
+
AZCode + |
+5 + |
+String + |
+Code of an available zone. + |
+Code of an available zone. + |
+
CloudServiceTypeCode + |
+6 + |
+String + |
+Type of a cloud service. + |
+Cloud service type corresponding to ResourceID. For example, cloudservicetype for VM in EC2 is recorded as otc.service.type.ec2, and cloudservicetype for VM in VDC is recorded as otc.service.type.vdc. +For DIS: the string is otc.service.type.dis + |
+
ResourceTypeCode + |
+7 + |
+String + |
+Type of a cloud resource. + |
+Cloud resource type corresponding to ResourceID, such as VM. +ResourceType is a resource type specified by CloudServiceType, and CloudServiceType contains multiple sets of ResourceType. For example, EC2 is provided by VM, Volume, IP, and Image, and EC2 is a CloudServiceType, and VM, Volume, IP, and Image are ResourceType. +For DIS: the string is otc.resource.type.dis + |
+
ResourceSpecCode + |
+8 + |
+String + |
+Code of specified resource specifications. + |
+There are two type resourcespeccode for DIS: +dis.general.partition +dis.advanced.partition + |
+
ResourceID + |
+9 + |
+String + |
+ID of a resource instance. + |
+ID of the partition in the DIS stream instance. +The ID is different from partitions. + + |
+
BSSParams + |
+10 + |
+String + |
+Extended operation parameter. + |
+The contract ID of one tenant. The contract ID is the xdomain_id of user token. + |
+
BeginTime + |
+11 + |
+String + |
+Start time of the statistics period of a record. + |
+UTC Format: YYYYMMDDHH24MISS + |
+
EndTime + |
+12 + |
+String + |
+End time of the statistics period of a record. + |
+UTC Format: YYYYMMDDHH24MISS + |
+
DataStoreSize + |
+13 + |
+String + |
+Name of a specific accumulative factor. + |
+Accumulative factor: Data Store Size + |
+
DataStoreSizeValue + |
+14 + |
+Double + |
+Accumulative value of AccumulateFactorName. + |
+Accumulative value of DataStore. +This value is the size of the data store in DIS input by the partition in the period ranging from BeginTime to EndTime.. +The value is 0 or a positive number, the value unit is byte. + |
+
ExtendParams + |
+15 + |
+String + |
+Extended field. + |
+This field is not used in this CDR record, the value is empty. + |
+
ProductID + |
+16 + |
+String + |
+Product ID of this service + |
+Product ID: +OTC_DIS_GEN_STORE +OTC_DIS_ADV_STORE + |
+
CET/CEST BeginTime + |
+17 + |
+String + |
+Start time of the statistics period of a record. + |
+Server Local Time: YYYYMMDDHH24MISS + |
+
CET/CEST EndTime + |
+18 + |
+String + |
+End time of the statistics period of a record. + |
+Server Local Time: YYYYMMDDHH24MISS + |
+
Tag + |
+19 + |
+String + |
+Extended field. + |
+This field is not used in DIS service, the value is empty. + |
+
Sample scenario for the user:
+Starting at 11:15(UTC time), a user created a stream containing 2 partitions, the data store time is 1 day. The user put 50 records per second, and each record is 35KB.
+At 12:00 (UTC time) , The partition 1 receives 70,000 records and Partition2 receives 65,000 records.when billing system generates CDR file, CDR records of the stream looks like below:
+20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0 | | otc.service.type.dis | otc.resource.type. dispartition | dis.general.partition | 1dbcee33-7837-4316-852d-5d9f27f11e28 |00000000001000003344 | 20161013111500 | 20161013115959 | Duration | 2700 | | OTC_DIS_GEN_TIME | 20161013120000 | 20161013125959|
+20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0 | | otc.service.type.dis | otc.resource.type. dispartition | dis.general.partition | 2cegee33-2173-4982-881c-7w8f27d23h54 |00000000001000003344 | 20161013111500 | 20161013115959 | Duration | 2700 | | OTC_DIS_GEN_TIME | 20161013120000 | 20161013125959|
+20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0 | | otc.service.type.dis | otc.resource.type. dispayloadunit | dis.general.partition | 1dbcee33-7837-4316-852d-5d9f27f11e28 |00000000001000003344 | 20161013111500 | 20161013115959 | InputUnitNum | 140000 | 2508800000 | OTC_DIS_GEN_UNIT |20161013120000 | 20161013125959|
+20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0 | | otc.service.type.dis | otc.resource.type. dispayloadunit | dis.general.partition | 2cegee33-2173-4982-881c-7w8f27d23h54 |00000000001000003344 | 20161013111500 | 20161013115959 | InputUnitNum | 130000 | 2329600000 | OTC_DIS_GEN_UNIT |20161013120000 | 20161013125959|
+
As our record is 35KB, each record contains two PUT Payload Units. The user put 50 records or 100 PUT Payload Units per second. At 12:00, there are 70000 records or 14000 PUT Payload Unit in partition 1, and 65000 records or 130000 PUT Payload Unit in partition 2.
+The ExtendParams in PUT Payload Unit CDR describe the amount of data the user is actually uploading in the billing period.
+20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0 | | otc.service.type.dis | otc.resource.type.disdatasize | dis.general.partition | 1dbcee33-7837-4316-852d-5d9f27f11e28 |00000000001000003344 | 20161013111500 | 20161013115959 | DataStoreSize | 2508800000| | OTC_DIS_GEN_STORE |20161013120000 | 20161013125959 |
+20|20161013150423 | a21be352dfa7682dfa768dfa7682dfdf | eu-west-0 | | otc.service.type.dis | otc.resource.type. disdatasize | dis.general.partition | 2cegee33-2173-4982-881c-7w8f27d23h54 |00000000001000003344 | 20161013111500 | 20161013115959 | DataStoreSize | 2329600000| | OTC_DIS_GEN_STORE |20161013120000 | 20161013125959 |
+
Each record is 35KB. The Partition 1 have 70000 records and The partition 2 have 65000 records. The data store time is 1 day so all the data is store in the DIS, so the data store size is 2508800000(70000*35*1024)byte in partition 1, the data store size is 2329600000(65000*35*1024) byte in partition 2.
+You can create a DIS stream on the DIS management console.
+
in the upper left corner of the page and select a region and project.+
Parameter + |
+Description + |
+Example + |
+
|---|---|---|
Region + |
+Physical location of the cloud service. You can select a different region from the drop-down list. + |
+- + |
+
Basic Information + |
+||
Stream Name + |
+Name of the DIS stream to be created. A stream name is 1 to 64 characters long. Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+dis-Tido + |
+
Stream Type + |
+
|
+- + |
+
Partitions + |
+Partitions are the base throughput unit of a DIS stream.
+
|
+5 + |
+
Partition Calculator + |
+Calculator used to calculate the estimated number of partitions based on the information you entered.
+
|
+- + |
+
Data Retention (hours) + |
+The maximum number of hours for which data can be preserved in DIS. Data will be deleted when the retention period expires. +Value range: an integer ranging from 24 to 72. + |
+24 + |
+
Configure + |
+Click Configure now. The Tag parameter is displayed. +For details about how to add a tag, see Managing Stream Tags. + |
+- + |
+
Skip + |
+No advanced settings need to be configured. + |
+- + |
+
Tag + |
+Identifier of the stream. Adding tags to streams can help you identify and manage your stream resources. + |
+- + |
+
Before developing DIS applications, prepare an application development environment, and then obtain a software development kit (SDK) and sample project and import them to the development environment.
+



Download the DIS SDK from https://dis.obs.eu-de.otc.t-systems.com/dis/download/dis-sdk-1.2.3.zip and its integrity check file from https://dis.obs.eu-de.otctest.t-systems.com/dis/download/dis-sdk-1.2.3.zip.sha256sum.
+

Local data is continuously uploaded to DIS.
+
Data can be stored in DIS, OBS, and DLI. For details about how to configure a storage location, see Creating a Dump Task.
+The maximum number of days for DIS to preserve data cannot exceed Data Retention (days).
+The example code file is the ProducerDemo.java file in the \dis-sdk-demo\src\main\java\com\bigdata\dis\sdk\demo directory decompressed from the dis-sdk-1.2.3.zip package. The compression package is downloaded in Step 2: Preparing a DIS Application Development Environment.
+
14:40:20.090 [main] INFOcom.bigdata.dis.sdk.DISConfig - get from classLoader +14:40:20.093 [main] INFODEMOT - ========== BEGIN PUT ============ +14:40:21.186 [main] INFOcom.bigdata.dis.sdk.util.config.ConfigurationUtils - get from classLoader +14:40:21.187 [main] INFOcom.bigdata.dis.sdk.util.config.ConfigurationUtils - propertyMapFromFile size : 2 +14:40:22.092 [main] INFOcom.bigdata.dis.sdk.demo.ProducerDemo - Put 3 records[3 successful / 0 failed]. +14:40:22.092 [main] INFOcom.bigdata.dis.sdk.demo.ProducerDemo - [hello world.] put success, partitionId [shardId-0000000000], partitionKey [964885], sequenceNumber [0] +14:40:22.092 [main] INFOcom.bigdata.dis.sdk.demo.ProducerDemo - [hello world.] put success, partitionId [shardId-0000000000], partitionKey [910960], sequenceNumber [1] +14:40:22.092 [main] INFOcom.bigdata.dis.sdk.demo.ProducerDemo - [hello world.] put success, partitionId [shardId-0000000000], partitionKey [528377], sequenceNumber [2] +14:40:22.092 [main] INFOcom.bigdata.dis.sdk.demo.ProducerDemo - ========== PUT OVER ============+
You can retrieve data from DIS when needed.
+The example code file is the ConsumerDemo.java file in the \dis-sdk-demo\src\main\java\com\bigdata\dis\sdk\demo directory decompressed from the dis-sdk-XXX.zip package. The compression package is downloaded in Step 2: Preparing a DIS Application Development Environment.
+If information similar to the following appears, data has been successfully retrieved from DIS:
+14:55:42.954 [main] INFOcom.bigdata.dis.sdk.DISConfig - get from classLoader +14:55:44.103 [main] INFOcom.bigdata.dis.sdk.util.config.ConfigurationUtils - get from classLoader +14:55:44.105 [main] INFOcom.bigdata.dis.sdk.util.config.ConfigurationUtils - propertyMapFromFile size : 2 +14:55:45.235 [main] INFOcom.bigdata.dis.sdk.demo.ConsumerDemo - Get stream streamName[partitionId=0] cursor success : eyJnZXRJdGVyYXRvclBhcmFtIjp7InN0cmVhbS1uYW1lIjoiZGlzLTEzbW9uZXkiLCJwYXJ0aXRpb24taWQiOiIwIiwiY3Vyc29yLXR5cGUiOiJBVF9TRVFVRU5DRV9OVU1CRVIiLCJzdGFydGluZy1zZXF1ZW5jZS1udW1iZXIiOiIxMDY4OTcyIn0sImdlbmVyYXRlVGltZXN0YW1wIjoxNTEzNjY2NjMxMTYxfQ +14:55:45.305 [main] INFOcom.bigdata.dis.sdk.demo.ConsumerDemo - Get Record [hello world.], partitionKey [964885], sequenceNumber [0]. +14:55:45.305 [main] INFOcom.bigdata.dis.sdk.demo.ConsumerDemo - Get Record [hello world.], partitionKey [910960], sequenceNumber [1]. +14:55:46.359 [main] INFOcom.bigdata.dis.sdk.demo.ConsumerDemo - Get Record [hello world.], partitionKey [528377], sequenceNumber [2].+
If you choose to dump data from DIS to OBS, create an IAM agency that grants DIS permissions to access OBS.
+

Parameter + |
+Description + |
+
|---|---|
Agency Name + |
+Name of the agency to be created. The value of this parameter is 1 to 64 characters long and cannot be left unspecified. + |
+
Agency Type + |
+Type of the agency to be created. This parameter must be set to Cloud service. + |
+
Cloud Service + |
+Click Select next to Cloud Service. In the Select Cloud Service dialog box, select DIS and click OK. + |
+
Validity Period + |
+Select Unlimited. + NOTE:
+Currently, this parameter must be set to Unlimited. Using another value may result in authorization failures. + |
+
Description + |
+Agency description. The entered description cannot exceed 255 characters. + |
+
Permissions + |
+If Dump Destination is OBS, policy settings are as follows: Region: Global service +Project: OBS +Policy: Tenant Administrator +To modify agency policies, click Modify in the Operation column. In the Available Policies area, select your required policy and click OK. + NOTE:
+After an agency is created, its policies cannot be modified. + |
+
Data Ingestion Service Software Development Kit (DIS SDK) is the encapsulation of RESTful APIs provided by DIS to simplify development. You can use DIS by calling API functions provided by DIS SDK.
+Download the package from https://dis.obs.eu-de.otc.t-systems.com/dis/download/dis-sdk-1.2.3.zip.
+The dis-sdk-1.2.3.zip package of the latest version in Downloading SDKs provides a sample project. You can use a development tool (such as Eclipse) on the local server to compile and run the sample project. You can also develop your applications based on the sample project. The sample project code is available in the \dis-sdk-demo\src\com\bigdata\dis\sdk\demo directory.
+ +Sample Code + |
+Description + |
+
|---|---|
ConsumerDemo.java + |
+How to download data + |
+
ProducerDemo.java + |
+How to upload data + |
+


You can use either of the following methods to initialize a DIS SDK client instance: For details about endpoint, ak, sk, region, and projectId, see Obtaining Authentication Information.
+//Create a DIS client instance.
+ DIS dic = DISClientBuilder.standard()
+ .withEndpoint("https://ip:port")
+ .withAk("xxxx")
+ .withSk("xxxx")
+ .withProjectId("xxxxxxx")
+ .withRegion("xxxx")
+ .build();
+Add the following configuration items to the dis.propertites file in the dis-sdk-demo\resources directory:
+//Create a DIS client instance. + DIS dic = DISClientBuilder.standard().build();+
Use the initialized client instance to upload your streaming data to DIS. The sample code is available in the ProducerDemo.java file in the dis-sdk-demo\src\com\bigdata\dis\sdk\demo directory.
+The value of streamName must be the same as that of Stream Name configured in Step 1: Creating a DIS Stream.
+The code for uploading streaming data is as follows:
+//Initialize an asynchronous sending client.
+DISConfig disConfig = new DISConfig().setAK("xxxx").setSK("xxxx").setProjectId("xxxx").setRegion("xxxx").setEndpoint("xxxx");
+DISProducer producer = new DISProducer(disConfig);
+
+//Configure the stream name.
+String streamName = "streamName";
+//Configure the data to be uploaded.
+String message = "hello world.";
+ByteBuffer buffer = ByteBuffer.wrap(message.getBytes());
+PutRecordsRequestEntry putRecordsRequestEntry = new PutRecordsRequestEntry();
+putRecordsRequestEntry.setData(buffer);
+putRecordsRequestEntry.setPartitionKey(String.valueOf(ThreadLocalRandom.current().nextInt(1000000)));
+log.info("========== BEGIN PUT ============");
+
+int count = 10;
+CountDownLatch cd = new CountDownLatch(count);
+for (int i = 0; i < count; i++)
+{
+ putRecordsRequestEntry.setPartitionKey(String.valueOf(ThreadLocalRandom.current().nextInt(1000000)));
+ try
+ {
+ producer.putRecordAsync(streamName, putRecordsRequestEntry, new AsyncHandler<PutRecordsResultEntry>()
+ {
+ @Override
+ public void onSuccess(PutRecordsResultEntry result)
+ {
+ log.info(result.toString());
+ cd.countDown();
+ }
+
+ @Override
+ public void onError(Exception exception)
+ {
+ log.error(exception.getMessage(), exception);
+ cd.countDown();
+ }
+ });
+ }
+ catch (Exception e)
+ {
+ log.error(e.getMessage(), e);
+ cd.countDown();
+ }
+}
+
+cd.await();
+log.info("========== PUT OVER ============");
+producer.close();
+Right-click the program and choose from the shortcut menu. If the program runs successfully, the information similar to the following is displayed on the console:
+17:27:49.130 [main] INFO com.bigdata.dis.sdk.DISConfig - get from classLoader +17:27:49.142 [Sender Thread] DEBUG com.bigdata.dis.sdk.producer.internals.Sender - Starting Kafka producer I/O thread. +17:27:49.145 [main] INFO DISProducerDemo - ========== BEGIN PUT ============ +17:27:49.202 [Sender Thread] DEBUG com.bigdata.dis.sdk.producer.internals.Sender - begin to send : 1 +17:27:49.203 [Sender Thread] DEBUG com.bigdata.dis.sdk.producer.internals.Sender - batch size: 10, 120 +17:27:50.197 [pool-2-thread-1] INFO com.bigdata.dis.sdk.util.config.ConfigurationUtils - get from classLoader +17:27:50.197 [pool-2-thread-1] INFO com.bigdata.dis.sdk.util.config.ConfigurationUtils - propertyMapFromFile size : 2 +17:27:51.531 [pool-2-thread-1] DEBUG com.bigdata.dis.sdk.producer.internals.Sender - batches success. dis-alAR-nb, 10 +17:27:51.532 [pool-2-thread-1] INFO DISProducerDemo - PutRecordsResultEntry [partitionId=shardId-0000000000, sequenceNumber=76, errorCode=null, errorMessage=null] +17:27:51.532 [pool-2-thread-1] INFO DISProducerDemo - PutRecordsResultEntry [partitionId=shardId-0000000000, sequenceNumber=76, errorCode=null, errorMessage=null] +17:27:51.532 [pool-2-thread-1] INFO DISProducerDemo - PutRecordsResultEntry [partitionId=shardId-0000000000, sequenceNumber=76, errorCode=null, errorMessage=null] +17:27:51.532 [pool-2-thread-1] INFO DISProducerDemo - PutRecordsResultEntry [partitionId=shardId-0000000000, sequenceNumber=76, errorCode=null, errorMessage=null] +17:27:51.532 [pool-2-thread-1] INFO DISProducerDemo - PutRecordsResultEntry [partitionId=shardId-0000000000, sequenceNumber=76, errorCode=null, errorMessage=null] +17:27:51.532 [pool-2-thread-1] INFO DISProducerDemo - PutRecordsResultEntry [partitionId=shardId-0000000000, sequenceNumber=76, errorCode=null, errorMessage=null] +17:27:51.532 [pool-2-thread-1] INFO DISProducerDemo - PutRecordsResultEntry [partitionId=shardId-0000000000, sequenceNumber=76, errorCode=null, errorMessage=null] +17:27:51.532 [pool-2-thread-1] INFO DISProducerDemo - PutRecordsResultEntry [partitionId=shardId-0000000000, sequenceNumber=76, errorCode=null, errorMessage=null] +17:27:51.532 [pool-2-thread-1] INFO DISProducerDemo - PutRecordsResultEntry [partitionId=shardId-0000000000, sequenceNumber=76, errorCode=null, errorMessage=null] +17:27:51.532 [pool-2-thread-1] INFO DISProducerDemo - PutRecordsResultEntry [partitionId=shardId-0000000000, sequenceNumber=76, errorCode=null, errorMessage=null] +17:27:51.533 [main] INFO DISProducerDemo - ========== PUT OVER ============ +17:27:51.571 [Sender Thread] DEBUG com.bigdata.dis.sdk.producer.internals.Sender - Beginning shutdown of Kafka producer I/O thread, sending remaining records.+
Use the initialized client instance to obtain data through the DIS stream. The sample code is available in the ConsumerDemo.java file under the dis-sdk-demo\src\main\java\com\bigdata\dis\sdk\demo directory.
+The value of streamName must be the same as that of Stream Name configured in Step 1: Creating a DIS Stream.
+//Configure the stream name.
+String streamName = "streamName";
+// Configure the ID of the partition for data download.
+String partitionId = "0";
+//Configure the sequence number for data download.
+String startingSequenceNumber = "0";
+//Configure the data download mode.
+String cursorType = PartitionCursorTypeEnum.AT_SEQUENCE_NUMBER.name();
+try
+{
+//Obtain data cursors.
+ GetPartitionCursorRequest request = new GetPartitionCursorRequest();
+ request.setStreamName(streamName);
+ request.setPartitionId(partitionId);
+ request.setStartingSequenceNumber(startingSequenceNumber);
+ request.setCursorType(cursorType);
+ GetPartitionCursorResult response = dic.getPartitionCursor(request);
+ String cursor = response.getPartitionCursor();
+ log.info("Get stream {}[partitionId={}] cursor success : {}", streamName, partitionId, cursor);
+ GetRecordsRequest recordsRequest = newGetRecordsRequest();
+ GetRecordsResult recordResponse = null;
+ while (true)
+ {
+ recordsRequest.setPartitionCursor(cursor);
+ recordsRequest.setLimit(2);
+ recordResponse = dic.getRecords(recordsRequest);
+//Obtain the next-batch data cursors.
+ cursor = recordResponse.getNextPartitionCursor();
+ for (Record record : recordResponse.getRecords())
+ {
+ log.info("Get Record [{}], partitionKey [{}], sequenceNumber [{}].",
+ new String(record.getData().array()),
+ record.getPartitionKey(),
+ record.getSequenceNumber());
+ }
+ Thread.sleep(1000);
+ }
+ }
+catch (DISClientException e)
+{
+ log.error("Failed to get a normal response, please check params and retry. Error message [{}]", e.getMessage(), e);
+}
+catch (ResourceAccessException e)
+{
+ log.error("Failed to access endpoint. Error message [{}]", e.getMessage(), e);
+}
+catch (Exception e)
+{
+ log.error(e.getMessage(), e);
+}
+Right-click the program and choose from the shortcut menu. If the program runs successfully, the information similar to the following is displayed on the console:
+14:55:42.954 [main] INFOcom.bigdata.dis.sdk.DISConfig - get from classLoader +14:55:44.103 [main] INFOcom.bigdata.dis.sdk.util.config.ConfigurationUtils - get from classLoader +14:55:44.105 [main] INFOcom.bigdata.dis.sdk.util.config.ConfigurationUtils - propertyMapFromFile size : 2 +14:55:45.235 [main] INFOcom.bigdata.dis.sdk.demo.ConsumerDemo - Get stream streamName[partitionId=0] cursor success : eyJnZXRJdGVyYXRvclBhcmFtIjp7InN0cmVhbS1uYW1lIjoiZGlzLTEzbW9uZXkiLCJwYXJ0aXRpb24taWQiOiIwIiwiY3Vyc29yLXR5cGUiOiJBVF9TRVFVRU5DRV9OVU1CRVIiLCJzdGFydGluZy1zZXF1ZW5jZS1udW1iZXIiOiIxMDY4OTcyIn0sImdlbmVyYXRlVGltZXN0YW1wIjoxNTEzNjY2NjMxMTYxfQ +14:55:45.305 [main] INFOcom.bigdata.dis.sdk.demo.ConsumerDemo - Get Record [hello world.], partitionKey [964885], sequenceNumber [0]. +14:55:45.305 [main] INFOcom.bigdata.dis.sdk.demo.ConsumerDemo - Get Record [hello world.], partitionKey [910960], sequenceNumber [1]. +14:55:46.359 [main] INFOcom.bigdata.dis.sdk.demo.ConsumerDemo - Get Record [hello world.], partitionKey [528377], sequenceNumber [2].+
The DIS SDK provides compatibility with native kafka client APIs.
+//Create a DIS client instance.
+DISAsync dicAsync = DISClientAsyncBuilder.standard()
+ .withEndpoint("https://ip:port")
+ .withAk("xxxx")
+ .withSk("xxxx")
+ .withProjectId("xxxx")
+ .withRegion("xxxx")
+ .withExecutorFactory(new DefaultExecutorFactory())
+ .build();
+
+Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.
+When you use the DIS SDK to create a DIS stream, specify the stream name, number of partitions in the stream, and stream type.
+STREAM_TYPE_COMMON indicates a common stream, and STREAM_TYPE_ADVANCED indicates an advanced stream.
+//Configure the channel name. +String streamName = "myStream"; +//Configure the number of partitions in the stream. +Integer partitionCount = new Integer(3); +CreateStreamRequest createStreamRequest = new CreateStreamRequest(); +createStreamRequest.setStreamName(streamName); +createStreamRequest.setPartitionCount(partitionCount); +//Configure the stream type. +createStreamRequest.setStreamType(CreateStreamRequest.STREAM_TYPE_COMMON);+
After configuring CreateStreamRequest, you can create a stream by calling createStream.
+dic.createStream(createStreamRequest);+
Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.
+Use the DIS SDK to delete a specified DIS stream.
+//Specify the name of the stream to be deleted. +String streamName = "myStream"; +DeleteStreamRequest deleteStreamRequest = new DeleteStreamRequest(); +deleteStreamRequest.setStreamName(streamName);+
After configuring DeleteStreamRequest, you can delete a stream by calling deleteStream.
+dic.deleteStream(deleteStreamRequest);+
Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.
+Use the DIS SDK to list active streams.
+Use the setLimit method to set the number of streams returned each time. If setLimit is not specified, a maximum of 10 streams are returned by default.
+ListStreamsRequest listStreamsRequest = new ListStreamsRequest();
+listStreamsRequest.setLimit(5);
+System.out.println("listStream: " + JsonUtils.objToJson(dic.listStreams(listStreamsRequest)));
+The returned stream list is as follows:
+listStream: {"total_number":20,"stream_names":["Stream0","Stream1","Stream2","Stream3","Stream4"],"has_more_streams":true}
+Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.
+Use the DIS SDK to query the details about a specified stream.
+String streamName = "myStream";
+DescribeStreamRequest describeStreamRequest = new DescribeStreamRequest();
+describeStreamRequest.setStreamName(streamName);
+System.out.println("descStream: " + JsonUtils.objToJson(dic.describeStream(describeStreamRequest)));
+The returned stream details are as follows:
+descStream: {"stream_name":"myStream","create_time":1515140868451,"last_modified_time":1515140868451,"retention_period":24,"status":"RUNNING","stream_type":"ADVANCED","partitions":[{"status":"ACTIVE","partition_id":"shardId-0000000000","hash_range":"[0 : 4611686018427387902]","sequence_number_range":"[0 : 0]"},{"status":"ACTIVE","partition_id":"shardId-0000000001","hash_range":"[4611686018427387903 : 9223372036854775807]","sequence_number_range":"[0 : 0]"}],"has_more_partitions":false}
+Initialize a DIS client instance named dic. For details, see Initializing a DIS Client.
+Use the DIS SDK to obtain the information about the data cursor.
+//Configure the stream name. +String streamName = "myStream"; +// Configure the ID of the partition for data download. +String partitionId = "0"; +//Configure the sequence number for data download. +String startingSequenceNumber = "0"; +//Configure the data download mode. +String cursorType = PartitionCursorTypeEnum.AT_SEQUENCE_NUMBER.name(); + +GetPartitionCursorRequest request = new GetPartitionCursorRequest(); +request.setStreamName(streamName); +request.setPartitionId(partitionId); +request.setStartingSequenceNumber(startingSequenceNumber); +request.setCursorType(cursorType); +GetPartitionCursorResult response = dic.getPartitionCursor(request); +String cursor = response.getPartitionCursor();+
In the Project Explorer pane, right-click com.bigdata.dis.sdk.demo, and choose New > Class from the shortcut menu. The New Java Class dialog box is displayed. Set the category name to FileProducerAsyncDemo. Add the following codes to the new category:
+package com.bigdata.dis.sdk.demo;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.bigdata.dis.data.iface.request.PutFilesRequest;
+import com.bigdata.dis.data.iface.response.PutFilesResult;
+import com.bigdata.dis.sdk.DISAsync;
+import com.bigdata.dis.sdk.DISClientAsyncBuilder;
+import com.bigdata.dis.sdk.core.builder.DefaultExecutorFactory;
+import com.bigdata.dis.sdk.core.handler.AsyncHandler;
+
+public class FileProducerAsyncDemo
+{
+ private static final Logger log = LoggerFactory.getLogger(FileProducerAsyncDemo.class);
+
+ public static void main(String args[])
+ throws Exception
+ {
+ DISAsync dicAsync = DISClientAsyncBuilder.standard()
+ .withEndpoint("https://ip:port")
+ .withAk("xxxx")
+ .withSk("xxxx")
+ .withProjectId("xxxx")
+ .withRegion("xxxx")
+ .withExecutorFactory(new DefaultExecutorFactory())
+ .build();
+
+ // Configure the stream name.
+ String streamName = "fileUploadStream";
+
+ PutFilesRequest putFilesRequest = new PutFilesRequest();
+ putFilesRequest.setStreamName(streamName);
+
+ //Configure the path of the file to be uploaded.
+ putFilesRequest.setFilePath("xxxx");
+
+ //Configure the file name for storing the uploaded real-time data file.
+ putFilesRequest.setFileName("xxxx");
+
+ dicAsync.putFilesAsync(putFilesRequest, new AsyncHandler<PutFilesResult>()
+ {
+
+ @Override
+ public void onSuccess(PutFilesResult result)
+ {
+ log.info("Upload file to DIS successful!");
+ }
+
+ @Override
+ public void onError(Exception exception)
+ {
+ log.error("Fail to upload file to DIS.", exception);
+ }
+ });
+
+
+ }
+}
+You must use the stream enabled to transmit real-time files. Here, fileUploadStream is used as an example.
+The value of streamName must be the same as that of Stream Name configured in Step 1: Creating a DIS Stream.
+//Configure the stream name. +String streamName = "fileUploadStream";+
Enter the absolute path of the file to be uploaded.
+//Specify the path of the file to be uploaded.
+putFilesRequest.setFilePath("xxxx");
+Set the file name to be uploaded. If the file name contains the backslash (\), use the escape character to escape the backslash.
+//Specify the file name for storing the uploaded file.
+putFilesRequest.setFileName("xxxx");
+Right-click the program and choose from the shortcut menu. If the program is run successfully, you can view the information similar to the following on the console:
+17:47:09.103 [main] INFO com.bigdata.dis.sdk.DISConfig - get from classLoader +17:47:10.275 [pool-2-thread-1] INFO com.bigdata.dis.sdk.util.config.ConfigurationUtils - get from classLoader +17:47:10.291 [pool-2-thread-1] INFO com.bigdata.dis.sdk.util.config.ConfigurationUtils - propertyMapFromFile size : 2 +17:47:20.012 [pool-2-thread-1] INFO com.bigdata.dis.sdk.demo.FileProducerAsyncDemo - Upload file to DIS successful!+
After DIS is enabled, data is stored to DIS by default. After a dump task is added, the data can be dumped to other resources. Table 1 describes the specific differences.
+DIS Storage + |
+OBS Storage + |
+
|---|---|
You can store data into DIS without applying for storage resources. + |
+You must apply for OBS resources before dumping data to OBS. + |
+
No additional payment is required. + |
+Additional cost for the use of OBS. For details, see the OBS price details. + |
+
Data is temporarily stored in DIS for up to 168 hours. + |
+Data is stored in OBS until your OBS bucket expires. + |
+
Data is stored only in DIS. + |
+Data is stored in DIS and periodically dumped to OBS. + |
+
This section describes how to verify integrity of the DIS SDK software package on a Linux system by using a verification file.
+sha256sum dis-sdk-1.2.3.zip
+Example verification code:
+# sha256sum dis-sdk-1.2.3.zip +8be2c937e8d78b1a9b99777cee4e7131f8bf231de3f839cf214e7c5b5ba3c088 dis-sdk-1.2.3.zip+