diff --git a/notebook/Flink Tutorial/Flink Basic_2F2YS7PCE.zpln b/notebook/Flink Tutorial/1. Flink Basics_2F2YS7PCE.zpln similarity index 95% rename from notebook/Flink Tutorial/Flink Basic_2F2YS7PCE.zpln rename to notebook/Flink Tutorial/1. Flink Basics_2F2YS7PCE.zpln index 63904f0e9d0..6abd5b011f6 100644 --- a/notebook/Flink Tutorial/Flink Basic_2F2YS7PCE.zpln +++ b/notebook/Flink Tutorial/1. Flink Basics_2F2YS7PCE.zpln @@ -2,23 +2,24 @@ "paragraphs": [ { "title": "Introduction", - "text": "%md\n\n[Apache Flink](https://flink.apache.org/) is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. This is Flink tutorial for runninb classical wordcount in both batch and streaming mode. \n\n", + "text": "%md\n\n# Introduction\n\n[Apache Flink](https://flink.apache.org/) is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. This is Flink tutorial for runninb classical wordcount in both batch and streaming mode. \n\nThere\u0027re 3 things you need to do before using flink in zeppelin.\n\n* Download [Flink 1.10](https://flink.apache.org/downloads.html) for scala 2.11 (Only scala-2.11 is supported, scala-2.12 is not supported yet in Zeppelin), unpack it and set `FLINK_HOME` in flink interpreter setting to this location.\n* Download [flink-hadoop-shaded](https://repo1.maven.org/maven2/org/apache/flink/flink-shaded-hadoop-2/2.8.3-10.0/flink-shaded-hadoop-2-2.8.3-10.0.jar) and put it under lib folder of flink (flink interpreter needs that to support yarn mode)\n* Copy flink-python_2.11–1.10.0.jar from flink opt folder to flink lib folder (it is used by pyflink which is supported in Zeppelin)\n* If you want to run yarn mode, you need to set `HADOOP_CONF_DIR` in flink interpreter setting. And make sure `hadoop` is in your `PATH`, because internally flink will call command `hadoop classpath` and load all the hadoop related jars in the flink interpreter process.\n\nThere\u0027re 6 sub interpreters in flink interpreter, each is used for different purpose. However they are in the the JVM and share the same ExecutionEnviroment/StremaExecutionEnvironment/BatchTableEnvironment/StreamTableEnvironment.\n\n\n* `%flink`\t- Creates ExecutionEnvironment/StreamExecutionEnvironment/BatchTableEnvironment/StreamTableEnvironment and provides a Scala environment \n* `%flink.pyflink`\t- Provides a python environment \n* `%flink.ipyflink`\t- Provides an ipython environment \n* `%flink.ssql`\t - Provides a stream sql environment \n* `%flink.bsql`\t- Provides a batch sql environment ", "user": "anonymous", - "dateUpdated": "2020-02-06 22:14:18.226", + "dateUpdated": "2020-04-29 22:14:29.556", "config": { "colWidth": 12.0, "fontSize": 9.0, "enabled": true, "results": {}, "editorSetting": { - "language": "text", - "editOnDblClick": false, + "language": "markdown", + "editOnDblClick": true, "completionKey": "TAB", - "completionSupport": true + "completionSupport": false }, - "editorMode": "ace/mode/text", - "title": true, - "editorHide": true + "editorMode": "ace/mode/markdown", + "title": false, + "editorHide": true, + "tableHide": false }, "settings": { "params": {}, @@ -29,7 +30,7 @@ "msg": [ { "type": "HTML", - "data": "\u003cdiv class\u003d\"markdown-body\"\u003e\n\u003cp\u003e\u003ca href\u003d\"https://flink.apache.org/\"\u003eApache Flink\u003c/a\u003e is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. This is Flink tutorial for runninb classical wordcount in both batch and streaming mode.\u003c/p\u003e\n\n\u003c/div\u003e" + "data": "\u003cdiv class\u003d\"markdown-body\"\u003e\n\u003ch1\u003eIntroduction\u003c/h1\u003e\n\u003cp\u003e\u003ca href\u003d\"https://flink.apache.org/\"\u003eApache Flink\u003c/a\u003e is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. This is Flink tutorial for runninb classical wordcount in both batch and streaming mode.\u003c/p\u003e\n\u003cp\u003eThere\u0026rsquo;re 3 things you need to do before using flink in zeppelin.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDownload \u003ca href\u003d\"https://flink.apache.org/downloads.html\"\u003eFlink 1.10\u003c/a\u003e for scala 2.11 (Only scala-2.11 is supported, scala-2.12 is not supported yet in Zeppelin), unpack it and set \u003ccode\u003eFLINK_HOME\u003c/code\u003e in flink interpreter setting to this location.\u003c/li\u003e\n\u003cli\u003eDownload \u003ca href\u003d\"https://repo1.maven.org/maven2/org/apache/flink/flink-shaded-hadoop-2/2.8.3-10.0/flink-shaded-hadoop-2-2.8.3-10.0.jar\"\u003eflink-hadoop-shaded\u003c/a\u003e and put it under lib folder of flink (flink interpreter needs that to support yarn mode)\u003c/li\u003e\n\u003cli\u003eCopy flink-python_2.11–1.10.0.jar from flink opt folder to flink lib folder (it is used by pyflink which is supported in Zeppelin)\u003c/li\u003e\n\u003cli\u003eIf you want to run yarn mode, you need to set \u003ccode\u003eHADOOP_CONF_DIR\u003c/code\u003e in flink interpreter setting. And make sure \u003ccode\u003ehadoop\u003c/code\u003e is in your \u003ccode\u003ePATH\u003c/code\u003e, because internally flink will call command \u003ccode\u003ehadoop classpath\u003c/code\u003e and load all the hadoop related jars in the flink interpreter process.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThere\u0026rsquo;re 6 sub interpreters in flink interpreter, each is used for different purpose. However they are in the the JVM and share the same ExecutionEnviroment/StremaExecutionEnvironment/BatchTableEnvironment/StreamTableEnvironment.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e%flink\u003c/code\u003e\t- Creates ExecutionEnvironment/StreamExecutionEnvironment/BatchTableEnvironment/StreamTableEnvironment and provides a Scala environment\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e%flink.pyflink\u003c/code\u003e\t- Provides a python environment\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e%flink.ipyflink\u003c/code\u003e\t- Provides an ipython environment\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e%flink.ssql\u003c/code\u003e\t - Provides a stream sql environment\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e%flink.bsql\u003c/code\u003e\t- Provides a batch sql environment\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003c/div\u003e" } ] }, @@ -38,15 +39,15 @@ "jobName": "paragraph_1580997898536_-1239502599", "id": "paragraph_1580997898536_-1239502599", "dateCreated": "2020-02-06 22:04:58.536", - "dateStarted": "2020-02-06 22:14:15.858", - "dateFinished": "2020-02-06 22:14:17.319", + "dateStarted": "2020-04-29 22:14:29.560", + "dateFinished": "2020-04-29 22:14:29.612", "status": "FINISHED" }, { "title": "Batch WordCount", "text": "%flink\n\nval data \u003d benv.fromElements(\"hello world\", \"hello flink\", \"hello hadoop\")\ndata.flatMap(line \u003d\u003e line.split(\"\\\\s\"))\n .map(w \u003d\u003e (w, 1))\n .groupBy(0)\n .sum(1)\n .print()\n", "user": "anonymous", - "dateUpdated": "2020-02-25 11:34:15.508", + "dateUpdated": "2020-04-29 10:57:40.471", "config": { "colWidth": 6.0, "fontSize": 9.0, @@ -70,7 +71,7 @@ "msg": [ { "type": "TEXT", - "data": "\u001b[1m\u001b[34mdata\u001b[0m: \u001b[1m\u001b[32morg.apache.flink.api.scala.DataSet[String]\u001b[0m \u003d org.apache.flink.api.scala.DataSet@5883980f\n(flink,1)\n(hadoop,1)\n(hello,3)\n(world,1)\n" + "data": "\u001b[1m\u001b[34mdata\u001b[0m: \u001b[1m\u001b[32morg.apache.flink.api.scala.DataSet[String]\u001b[0m \u003d org.apache.flink.api.scala.DataSet@177908f2\n(flink,1)\n(hadoop,1)\n(hello,3)\n(world,1)\n" } ] }, @@ -79,15 +80,15 @@ "jobName": "paragraph_1580998080340_1531975932", "id": "paragraph_1580998080340_1531975932", "dateCreated": "2020-02-06 22:08:00.340", - "dateStarted": "2020-02-25 11:34:15.520", - "dateFinished": "2020-02-25 11:34:41.976", + "dateStarted": "2020-04-29 10:57:40.495", + "dateFinished": "2020-04-29 10:57:56.468", "status": "FINISHED" }, { "title": "Streaming WordCount", "text": "%flink\n\nval data \u003d senv.fromElements(\"hello world\", \"hello flink\", \"hello hadoop\")\ndata.flatMap(line \u003d\u003e line.split(\"\\\\s\"))\n .map(w \u003d\u003e (w, 1))\n .keyBy(0)\n .sum(1)\n .print\n\nsenv.execute()", "user": "anonymous", - "dateUpdated": "2020-02-25 11:34:43.530", + "dateUpdated": "2020-04-29 10:58:47.117", "config": { "colWidth": 6.0, "fontSize": 9.0, @@ -111,7 +112,7 @@ "msg": [ { "type": "TEXT", - "data": "\u001b[1m\u001b[34mdata\u001b[0m: \u001b[1m\u001b[32morg.apache.flink.streaming.api.scala.DataStream[String]\u001b[0m \u003d org.apache.flink.streaming.api.scala.DataStream@3385fb69\n\u001b[1m\u001b[34mres2\u001b[0m: \u001b[1m\u001b[32morg.apache.flink.streaming.api.datastream.DataStreamSink[(String, Int)]\u001b[0m \u003d org.apache.flink.streaming.api.datastream.DataStreamSink@348a8146\n\u001b[1m\u001b[34mres3\u001b[0m: \u001b[1m\u001b[32morg.apache.flink.api.common.JobExecutionResult\u001b[0m \u003d\nProgram execution finished\nJob with JobID d85232db283565c933e2c0d64c9d5509 has finished.\nJob Runtime: 351 ms\n" + "data": "\u001b[1m\u001b[34mdata\u001b[0m: \u001b[1m\u001b[32morg.apache.flink.streaming.api.scala.DataStream[String]\u001b[0m \u003d org.apache.flink.streaming.api.scala.DataStream@614839e8\n\u001b[1m\u001b[34mres2\u001b[0m: \u001b[1m\u001b[32morg.apache.flink.streaming.api.datastream.DataStreamSink[(String, Int)]\u001b[0m \u003d org.apache.flink.streaming.api.datastream.DataStreamSink@1ead6506\n(hello,1)\n(world,1)\n(hello,2)\n(flink,1)\n(hello,3)\n(hadoop,1)\n\u001b[1m\u001b[34mres3\u001b[0m: \u001b[1m\u001b[32morg.apache.flink.api.common.JobExecutionResult\u001b[0m \u003d\nProgram execution finished\nJob with JobID e84edd21e622b11646b0ec1e7f73bb18 has finished.\nJob Runtime: 171 ms\n" } ] }, @@ -120,8 +121,8 @@ "jobName": "paragraph_1580998084555_-697674675", "id": "paragraph_1580998084555_-697674675", "dateCreated": "2020-02-06 22:08:04.555", - "dateStarted": "2020-02-25 11:34:43.540", - "dateFinished": "2020-02-25 11:34:45.863", + "dateStarted": "2020-04-29 10:58:47.129", + "dateFinished": "2020-04-29 10:58:49.108", "status": "FINISHED" }, { @@ -186,17 +187,15 @@ "status": "READY" } ], - "name": "Flink Basic", + "name": "1. Flink Basics", "id": "2F2YS7PCE", "defaultInterpreterGroup": "spark", "version": "0.9.0-SNAPSHOT", - "permissions": {}, "noteParams": {}, "noteForms": {}, "angularObjects": {}, "config": { "isZeppelinNotebookCronEnable": false }, - "info": {}, - "path": "/Flink Tutorial/Flink Basic" + "info": {} } \ No newline at end of file diff --git a/notebook/Flink Tutorial/2. 3 Essential Steps for Building Flink Job_2F7SKEHPA.zpln b/notebook/Flink Tutorial/2. 3 Essential Steps for Building Flink Job_2F7SKEHPA.zpln new file mode 100644 index 00000000000..03f8518f4d3 --- /dev/null +++ b/notebook/Flink Tutorial/2. 3 Essential Steps for Building Flink Job_2F7SKEHPA.zpln @@ -0,0 +1,658 @@ +{ + "paragraphs": [ + { + "title": "Introduction", + "text": "%md\n\n# Introduction\n\n\nTypically there\u0027re 3 essential steps for building one flink job. And each step has its favorite tools.\n\n* Define source/sink (SQL DDL)\n* Define data flow (Table Api / SQL)\n* Implement business logic (UDF)\n\nThis tutorial demonstrate how to use build one typical flink via these 3 steps and their favorite tools.\nIn this demo, we will do real time analysis of cdn access data. First we read cdn access log from kafka queue and do some processing and aggregation, then write the result to mysql database. We use this [docker](https://zeppelin-kafka-connect-datagen.readthedocs.io/en/latest/) to create kafka cluster and source data. You need to prepare mysql database by yourself. \n\n* Make sure you add the following ip host name mapping to your hosts file, otherwise you may not be able to connect to the kafka cluster in docker\n\n```\n127.0.0.1 broker\n```\n\nUse the following command to generate the sample data.\n\n```\ncurl -X POST http://localhost:8083/connectors \\\n-H \u0027Content-Type:application/json\u0027 \\\n-H \u0027Accept:application/json\u0027 \\\n-d @cdn.source.datagen.json\n```", + "user": "anonymous", + "dateUpdated": "2020-04-28 14:47:07.249", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "markdown", + "editOnDblClick": true, + "completionKey": "TAB", + "completionSupport": false + }, + "editorMode": "ace/mode/markdown", + "title": false, + "editorHide": true, + "tableHide": false + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "HTML", + "data": "\u003cdiv class\u003d\"markdown-body\"\u003e\n\u003ch1\u003eIntroduction\u003c/h1\u003e\n\u003cp\u003eTypically there\u0026rsquo;re 3 essential steps for building one flink job. And each step has its favorite tools.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDefine source/sink (SQL DDL)\u003c/li\u003e\n\u003cli\u003eDefine data flow (Table Api / SQL)\u003c/li\u003e\n\u003cli\u003eImplement business logic (UDF)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThis tutorial demonstrate how to use build one typical flink via these 3 steps and their favorite tools.\u003cbr /\u003e\nIn this demo, we will do real time analysis of cdn access data. First we read cdn access log from kafka queue and do some processing and aggregation, then write the result to mysql database. We use this \u003ca href\u003d\"https://zeppelin-kafka-connect-datagen.readthedocs.io/en/latest/\"\u003edocker\u003c/a\u003e to create kafka cluster and source data. You need to prepare mysql database by yourself.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMake sure you add the following ip host name mapping to your hosts file, otherwise you may not be able to connect to the kafka cluster in docker\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre\u003e\u003ccode\u003e127.0.0.1 broker\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eUse the following command to generate the sample data.\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003ecurl -X POST http://localhost:8083/connectors \\\n-H \u0027Content-Type:application/json\u0027 \\\n-H \u0027Accept:application/json\u0027 \\\n-d @cdn.source.datagen.json\n\u003c/code\u003e\u003c/pre\u003e\n\n\u003c/div\u003e" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1587965294481_785664297", + "id": "paragraph_1587965294481_785664297", + "dateCreated": "2020-04-27 13:28:14.481", + "dateStarted": "2020-04-28 14:47:07.249", + "dateFinished": "2020-04-28 14:47:07.271", + "status": "FINISHED" + }, + { + "title": "Configuration", + "text": "%flink.conf\n\n# This example use kafka as source and mysql as sink, so you need to specify flink kafka connector and flink jdbc connector first.\n\nflink.execution.packages\torg.apache.flink:flink-connector-kafka_2.11:1.10.0,org.apache.flink:flink-connector-kafka-base_2.11:1.10.0,org.apache.flink:flink-json:1.10.0,org.apache.flink:flink-jdbc_2.11:1.10.0,mysql:mysql-connector-java:5.1.38\n\n# Set taskmanager.memory.segment-size to be the smallest value just for this demo, otherwise you will see the result change after a long time due to the buffer in upstream vertex.\ntaskmanager.memory.segment-size 4k\n\n", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:07:01.902", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "text", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/text", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1585734329697_1695781588", + "id": "paragraph_1585734329697_1695781588", + "dateCreated": "2020-04-01 17:45:29.697", + "dateStarted": "2020-04-29 15:07:01.908", + "dateFinished": "2020-04-29 15:07:01.985", + "status": "FINISHED" + }, + { + "title": "Define source table", + "text": "%flink.ssql\n\nDROP table if exists cdn_access_log;\n\nCREATE TABLE cdn_access_log (\n uuid VARCHAR,\n client_ip VARCHAR,\n request_time BIGINT,\n response_size BIGINT,\n uri VARCHAR,\n event_ts BIGINT\n) WITH (\n \u0027connector.type\u0027 \u003d \u0027kafka\u0027,\n \u0027connector.version\u0027 \u003d \u0027universal\u0027,\n \u0027connector.topic\u0027 \u003d \u0027cdn_events\u0027,\n \u0027connector.properties.zookeeper.connect\u0027 \u003d \u0027localhost:2181\u0027,\n \u0027connector.properties.bootstrap.servers\u0027 \u003d \u0027localhost:9092\u0027,\n \u0027connector.properties.group.id\u0027 \u003d \u0027testGroup\u0027,\n \u0027format.type\u0027 \u003d \u0027json\u0027,\n \u0027connector.startup-mode\u0027 \u003d \u0027earliest-offset\u0027,\n \u0027update-mode\u0027 \u003d \u0027append\u0027\n)", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:07:03.989", + "config": { + "colWidth": 6.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "sql", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/sql", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TEXT", + "data": "Table has been dropped.\nTable has been created.\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1585733282496_767011327", + "id": "paragraph_1585733282496_767011327", + "dateCreated": "2020-04-01 17:28:02.496", + "dateStarted": "2020-04-29 15:07:03.999", + "dateFinished": "2020-04-29 15:07:16.317", + "status": "FINISHED" + }, + { + "title": "Define sink table", + "text": "%flink.ssql\n\nDROP table if exists cdn_access_statistic;\n\n-- Please create this mysql table first in your mysql instance. Flink won\u0027t create mysql table for you.\n\nCREATE TABLE cdn_access_statistic (\n province VARCHAR,\n access_count BIGINT,\n total_download BIGINT,\n download_speed DOUBLE\n) WITH (\n \u0027connector.type\u0027 \u003d \u0027jdbc\u0027,\n \u0027connector.url\u0027 \u003d \u0027jdbc:mysql://localhost:3306/flink_cdn\u0027,\n \u0027connector.table\u0027 \u003d \u0027cdn_access_statistic\u0027,\n \u0027connector.username\u0027 \u003d \u0027root\u0027,\n \u0027connector.password\u0027 \u003d \u0027123456\u0027,\n \u0027connector.write.flush.interval\u0027 \u003d \u00271s\u0027\n)", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:07:05.522", + "config": { + "colWidth": 6.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "sql", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/sql", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TEXT", + "data": "Table has been dropped.\nTable has been created.\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1585733896337_1928136072", + "id": "paragraph_1585733896337_1928136072", + "dateCreated": "2020-04-01 17:38:16.337", + "dateStarted": "2020-04-29 15:07:15.867", + "dateFinished": "2020-04-29 15:07:16.317", + "status": "FINISHED" + }, + { + "title": "PyFlink UDF", + "text": "%flink.ipyflink\n\nimport re\nimport json\nfrom pyflink.table import DataTypes\nfrom pyflink.table.udf import udf\nfrom urllib.parse import quote_plus\nfrom urllib.request import urlopen\n\n# This UDF is to convert ip address to country. Here we simply the logic just for demo purpose.\n\n@udf(input_types\u003d[DataTypes.STRING()], result_type\u003dDataTypes.STRING())\ndef ip_to_country(ip):\n\n countries \u003d [\u0027USA\u0027, \u0027China\u0027, \u0027Japan\u0027, \u0027South Korea\u0027, \u0027France\u0027, \u0027Germany\u0027, \u0027Italy\u0027, \u0027Russia\u0027, \u0027Canada\u0027]\n last_dot \u003d ip.rfind(\u0027.\u0027)\n country_index \u003d int(ip[(last_dot+1) :]) % len(countries)\n return countries[country_index]\n\n\nst_env.register_function(\"ip_to_country\", ip_to_country)", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:07:24.842", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "python", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/python", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1585733368214_-94290606", + "id": "paragraph_1585733368214_-94290606", + "dateCreated": "2020-04-01 17:29:28.214", + "dateStarted": "2020-04-29 15:07:24.848", + "dateFinished": "2020-04-29 15:07:29.435", + "status": "FINISHED" + }, + { + "title": "Test UDF", + "text": "%flink.bsql\n\nselect ip_to_country(\u00272.10.01.1\u0027)", + "user": "anonymous", + "dateUpdated": "2020-04-29 14:17:35.942", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "table", + "height": 300.0, + "optionOpen": false, + "setting": { + "table": { + "tableGridState": {}, + "tableColumnTypeState": { + "names": { + "EXPR$0": "string" + }, + "updated": false + }, + "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", + "tableOptionValue": { + "useFilter": false, + "showPagination": false, + "showAggregationFooter": false + }, + "updated": false, + "initialized": false + } + }, + "commonSetting": {} + } + } + }, + "editorSetting": { + "language": "sql", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/sql", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TABLE", + "data": "EXPR$0\nChina\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1586844130766_-1152098073", + "id": "paragraph_1586844130766_-1152098073", + "dateCreated": "2020-04-14 14:02:10.770", + "dateStarted": "2020-04-29 14:17:35.947", + "dateFinished": "2020-04-29 14:17:42.991", + "status": "FINISHED" + }, + { + "title": "PyFlink Table Api", + "text": "%flink.ipyflink\n\nt \u003d st_env.from_path(\"cdn_access_log\")\\\n .select(\"uuid, \"\n \"ip_to_country(client_ip) as country, \" \n \"response_size, request_time\")\\\n .group_by(\"country\")\\\n .select(\n \"country, count(uuid) as access_count, \" \n \"sum(response_size) as total_download, \" \n \"sum(response_size) * 1.0 / sum(request_time) as download_speed\")\n #.insert_into(\"cdn_access_statistic\")\n\n# z.show will display the result in zeppelin front end in table format, you can uncomment the above insert statement and the below st_env.execute in order to write the data to mysql table. \nz.show(t, stream_type\u003d\"update\")\n#st_env.execute(\"pyflink_cdn_access_job\")\n", + "user": "anonymous", + "dateUpdated": "2020-04-29 14:19:00.530", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "table", + "height": 300.0, + "optionOpen": false, + "setting": { + "table": { + "tableGridState": {}, + "tableColumnTypeState": { + "names": { + "country": "string", + "access_count": "string", + "total_download": "string", + "download_speed": "string" + }, + "updated": false + }, + "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", + "tableOptionValue": { + "useFilter": false, + "showPagination": false, + "showAggregationFooter": false + }, + "updated": false, + "initialized": false + }, + "multiBarChart": { + "xLabelStatus": "default", + "rotate": { + "degree": "-45" + }, + "stacked": true + } + }, + "commonSetting": {}, + "keys": [ + { + "name": "country", + "index": 0.0, + "aggr": "sum" + } + ], + "groups": [], + "values": [ + { + "name": "access_count", + "index": 1.0, + "aggr": "sum" + } + ] + }, + "helium": {} + } + }, + "editorSetting": { + "language": "python", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/python", + "savepointDir": "/tmp/flink_python", + "title": true, + "editorHide": false, + "tableHide": false + }, + "settings": { + "params": {}, + "forms": {} + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1586617588031_-638632283", + "id": "paragraph_1586617588031_-638632283", + "dateCreated": "2020-04-11 23:06:28.034", + "dateStarted": "2020-04-29 14:18:43.436", + "dateFinished": "2020-04-29 14:19:09.852", + "status": "ABORT" + }, + { + "title": "Scala Table Api", + "text": "%flink\n\nval t \u003d stenv.from(\"cdn_access_log\")\n .select(\"uuid, ip_to_country(client_ip) as country, response_size, request_time\")\n .groupBy(\"country\")\n .select( \"country, count(uuid) as access_count, sum(response_size) as total_download, sum(response_size) * 1.0 / sum(request_time) as download_speed\")\n //.insertInto(\"cdn_access_statistic\")\n\n// z.show will display the result in zeppelin front end in table format, you can uncomment the above insert statement and the below st_env.execute in order to write the data to mysql table.\nz.show(t, streamType\u003d\"update\")\n//stenv.execute(\"cdn_access_job\")\n", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:14:29.646", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "multiBarChart", + "height": 300.0, + "optionOpen": false, + "setting": { + "table": { + "tableGridState": {}, + "tableColumnTypeState": { + "names": { + "province": "string", + "access_count": "string", + "total_download": "string", + "download_speed": "string" + }, + "updated": false + }, + "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", + "tableOptionValue": { + "useFilter": false, + "showPagination": false, + "showAggregationFooter": false + }, + "updated": false, + "initialized": false + }, + "multiBarChart": { + "rotate": { + "degree": "-45" + }, + "xLabelStatus": "default" + } + }, + "commonSetting": {}, + "keys": [ + { + "name": "country", + "index": 0.0, + "aggr": "sum" + } + ], + "groups": [], + "values": [ + { + "name": "access_count", + "index": 1.0, + "aggr": "sum" + } + ] + }, + "helium": {} + } + }, + "editorSetting": { + "language": "scala", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/scala", + "title": true, + "savepointDir": "/tmp/flink_scala", + "parallelism": "4", + "maxParallelism": "10" + }, + "settings": { + "params": {}, + "forms": {} + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1585796091843_-1858464529", + "id": "paragraph_1585796091843_-1858464529", + "dateCreated": "2020-04-02 10:54:51.844", + "dateStarted": "2020-04-29 15:14:25.339", + "dateFinished": "2020-04-29 15:14:51.926", + "status": "ABORT" + }, + { + "title": "Flink Sql", + "text": "%flink.ssql\n\ninsert into cdn_access_statistic\nselect ip_to_country(client_ip) as country, \n count(uuid) as access_count, \n sum(response_size) as total_download ,\n sum(response_size) * 1.0 / sum(request_time) as download_speed\nfrom cdn_access_log\n group by ip_to_country(client_ip)\n", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:12:26.431", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "sql", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/sql", + "savepointDir": "/tmp/flink_1", + "title": true, + "type": "update" + }, + "settings": { + "params": {}, + "forms": {} + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1585757391555_145331506", + "id": "paragraph_1585757391555_145331506", + "dateCreated": "2020-04-02 00:09:51.558", + "dateStarted": "2020-04-29 15:07:30.418", + "dateFinished": "2020-04-29 15:12:22.104", + "status": "ABORT" + }, + { + "text": "%md\n\n# Query sink table via jdbc interpreter\n\nYou can also query the sink table (mysql) directly via jdbc interpreter. Here I will create a jdbc interpreter named `mysql` and use it to query the sink table. Regarding how to connect mysql in Zeppelin, refer this [link](http://zeppelin.apache.org/docs/0.9.0-preview1/interpreter/jdbc.html#mysql)", + "user": "anonymous", + "dateUpdated": "2020-04-29 12:02:12.920", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "markdown", + "editOnDblClick": true, + "completionKey": "TAB", + "completionSupport": false + }, + "editorMode": "ace/mode/markdown", + "editorHide": true, + "tableHide": false + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "HTML", + "data": "\u003cdiv class\u003d\"markdown-body\"\u003e\n\u003ch1\u003eQuery sink table via jdbc interpreter\u003c/h1\u003e\n\u003cp\u003eYou can also query the sink table (mysql) directly via jdbc interpreter. Here I will create a jdbc interpreter named \u003ccode\u003emysql\u003c/code\u003e and use it to query the sink table. Regarding how to connect mysql in Zeppelin, refer this \u003ca href\u003d\"http://zeppelin.apache.org/docs/0.9.0-preview1/interpreter/jdbc.html#mysql\"\u003elink\u003c/a\u003e\u003c/p\u003e\n\n\u003c/div\u003e" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1587976725546_2073084823", + "id": "paragraph_1587976725546_2073084823", + "dateCreated": "2020-04-27 16:38:45.548", + "dateStarted": "2020-04-29 12:02:12.923", + "dateFinished": "2020-04-29 12:02:12.939", + "status": "FINISHED" + }, + { + "title": "Query mysql", + "text": "%mysql\n\nselect * from flink_cdn.cdn_access_statistic", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:22:13.333", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "multiBarChart", + "height": 300.0, + "optionOpen": false, + "setting": { + "table": { + "tableGridState": {}, + "tableColumnTypeState": { + "names": { + "province": "string", + "access_count": "string", + "total_download": "string", + "download_speed": "string" + }, + "updated": false + }, + "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", + "tableOptionValue": { + "useFilter": false, + "showPagination": false, + "showAggregationFooter": false + }, + "updated": false, + "initialized": false + }, + "multiBarChart": { + "rotate": { + "degree": "-45" + }, + "xLabelStatus": "default" + }, + "stackedAreaChart": { + "rotate": { + "degree": "-45" + }, + "xLabelStatus": "default" + }, + "lineChart": { + "rotate": { + "degree": "-45" + }, + "xLabelStatus": "default" + } + }, + "commonSetting": {}, + "keys": [ + { + "name": "province", + "index": 0.0, + "aggr": "sum" + } + ], + "groups": [], + "values": [ + { + "name": "access_count", + "index": 1.0, + "aggr": "sum" + } + ] + }, + "helium": {} + } + }, + "editorSetting": { + "language": "sql", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/sql", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1586931452339_-1281904044", + "id": "paragraph_1586931452339_-1281904044", + "dateCreated": "2020-04-15 14:17:32.345", + "dateStarted": "2020-04-29 14:19:42.915", + "dateFinished": "2020-04-29 14:19:43.472", + "status": "FINISHED" + }, + { + "text": "%flink.ipyflink\n", + "user": "anonymous", + "dateUpdated": "2020-04-27 16:38:45.464", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "python", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/python" + }, + "settings": { + "params": {}, + "forms": {} + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1587115507009_250592635", + "id": "paragraph_1587115507009_250592635", + "dateCreated": "2020-04-17 17:25:07.009", + "status": "READY" + } + ], + "name": "2. 3 Essential Steps for Building Flink Job", + "id": "2F7SKEHPA", + "defaultInterpreterGroup": "flink", + "version": "0.9.0-SNAPSHOT", + "noteParams": {}, + "noteForms": {}, + "angularObjects": {}, + "config": { + "isZeppelinNotebookCronEnable": false + }, + "info": {} +} \ No newline at end of file diff --git a/notebook/Flink Tutorial/3. Flink Job Control Tutorial_2F5RKHCDV.zpln b/notebook/Flink Tutorial/3. Flink Job Control Tutorial_2F5RKHCDV.zpln new file mode 100644 index 00000000000..ae80c382882 --- /dev/null +++ b/notebook/Flink Tutorial/3. Flink Job Control Tutorial_2F5RKHCDV.zpln @@ -0,0 +1,435 @@ +{ + "paragraphs": [ + { + "title": "Introduction", + "text": "%md\n\n# Introduction\n\nThis tutorial is to demonstrate how to do job control in flink (job submission/cancel/resume).\n2 steps:\n1. Create custom data stream and register it as flink table. The custom data stream is a simulated web access logs. \n2. Query this flink table (pv for each page type), you can cancel it and then resume it again w/o savepoint.\n", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:23:45.078", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "markdown", + "editOnDblClick": true, + "completionKey": "TAB", + "completionSupport": false + }, + "editorMode": "ace/mode/markdown", + "title": false, + "editorHide": true, + "tableHide": false + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "HTML", + "data": "\u003cdiv class\u003d\"markdown-body\"\u003e\n\u003ch1\u003eIntroduction\u003c/h1\u003e\n\u003cp\u003eThis tutorial is to demonstrate how to do job control in flink (job submission/cancel/resume).\u003cbr /\u003e\n2 steps:\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eCreate custom data stream and register it as flink table. The custom data stream is a simulated web access logs.\u003c/li\u003e\n\u003cli\u003eQuery this flink table (pv for each page type), you can cancel it and then resume it again w/o savepoint.\u003c/li\u003e\n\u003c/ol\u003e\n\n\u003c/div\u003e" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1587964310955_443124874", + "id": "paragraph_1587964310955_443124874", + "dateCreated": "2020-04-27 13:11:50.955", + "dateStarted": "2020-04-29 15:23:45.080", + "dateFinished": "2020-04-29 15:23:45.094", + "status": "FINISHED" + }, + { + "title": "Register Data Source", + "text": "%flink \n\nimport org.apache.flink.streaming.api.functions.source.SourceFunction\nimport org.apache.flink.table.api.TableEnvironment\nimport org.apache.flink.streaming.api.TimeCharacteristic\nimport org.apache.flink.streaming.api.checkpoint.ListCheckpointed\nimport java.util.Collections\nimport scala.collection.JavaConversions._\n\nsenv.setStreamTimeCharacteristic(TimeCharacteristic.EventTime)\nsenv.enableCheckpointing(1000)\n\nval data \u003d senv.addSource(new SourceFunction[(Long, String)] with ListCheckpointed[java.lang.Long] {\n\n val pages \u003d Seq(\"home\", \"search\", \"search\", \"product\", \"product\", \"product\")\n var count: Long \u003d 0\n var running : Boolean \u003d true\n // startTime is 2020/1/1\n var startTime: Long \u003d new java.util.Date(2020 - 1900,0,1).getTime\n var sleepInterval \u003d 100\n\n override def run(ctx: SourceFunction.SourceContext[(Long, String)]): Unit \u003d {\n val lock \u003d ctx.getCheckpointLock\n\n while (count \u003c 3000 \u0026\u0026 running) {\n lock.synchronized({\n ctx.collect((startTime + count * sleepInterval, pages(count.toInt % pages.size)))\n count +\u003d 1\n Thread.sleep(sleepInterval)\n })\n }\n }\n\n override def cancel(): Unit \u003d {\n running \u003d false\n }\n\n override def snapshotState(checkpointId: Long, timestamp: Long): java.util.List[java.lang.Long] \u003d {\n Collections.singletonList(count)\n }\n\n override def restoreState(state: java.util.List[java.lang.Long]): Unit \u003d {\n state.foreach(s \u003d\u003e count \u003d s)\n }\n\n}).assignAscendingTimestamps(_._1)\n\nstenv.registerDataStream(\"log\", data, \u0027time, \u0027url, \u0027rowtime.rowtime)\n", + "user": "anonymous", + "dateUpdated": "2020-04-29 14:21:46.802", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "scala", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/scala", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TEXT", + "data": "import org.apache.flink.streaming.api.functions.source.SourceFunction\nimport org.apache.flink.table.api.TableEnvironment\nimport org.apache.flink.streaming.api.TimeCharacteristic\nimport org.apache.flink.streaming.api.checkpoint.ListCheckpointed\nimport java.util.Collections\nimport scala.collection.JavaConversions._\n\u001b[1m\u001b[34mres1\u001b[0m: \u001b[1m\u001b[32morg.apache.flink.streaming.api.scala.StreamExecutionEnvironment\u001b[0m \u003d org.apache.flink.streaming.api.scala.StreamExecutionEnvironment@696c8019\n\u001b[33mwarning: \u001b[0mthere was one deprecation warning; re-run with -deprecation for details\n\u001b[1m\u001b[34mdata\u001b[0m: \u001b[1m\u001b[32morg.apache.flink.streaming.api.scala.DataStream[(Long, String)]\u001b[0m \u003d org.apache.flink.streaming.api.scala.DataStream@6210ca04\n\u001b[33mwarning: \u001b[0mthere was one deprecation warning; re-run with -deprecation for details\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1586733774605_1418179269", + "id": "paragraph_1586733774605_1418179269", + "dateCreated": "2020-04-13 07:22:54.605", + "dateStarted": "2020-04-29 14:21:46.817", + "dateFinished": "2020-04-29 14:21:55.214", + "status": "FINISHED" + }, + { + "title": "Resume flink sql job without savepoint", + "text": "%flink.ssql(type\u003dupdate)\n\nselect url, count(1) as c from log group by url", + "user": "anonymous", + "dateUpdated": "2020-04-29 14:22:40.594", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "table", + "height": 300.0, + "optionOpen": false, + "setting": { + "table": { + "tableGridState": {}, + "tableColumnTypeState": { + "names": { + "url": "string", + "c": "string" + }, + "updated": false + }, + "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", + "tableOptionValue": { + "useFilter": false, + "showPagination": false, + "showAggregationFooter": false + }, + "updated": false, + "initialized": false + }, + "multiBarChart": { + "rotate": { + "degree": "-45" + }, + "xLabelStatus": "default" + } + }, + "commonSetting": {}, + "keys": [ + { + "name": "url", + "index": 0.0, + "aggr": "sum" + } + ], + "groups": [], + "values": [ + { + "name": "pv", + "index": 1.0, + "aggr": "sum" + } + ] + }, + "helium": {} + } + }, + "editorSetting": { + "language": "sql", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/sql", + "type": "update", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "ERROR", + "msg": [ + { + "type": "TABLE", + "data": "url\tc\nhome\t19\nproduct\t55\nsearch\t38\n" + }, + { + "type": "TEXT", + "data": "Fail to run sql command: select url, count(1) as c from log group by url\njava.io.IOException: Fail to run stream sql job\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:166)\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:101)\n\tat org.apache.zeppelin.flink.FlinkStreamSqlInterpreter.callInnerSelect(FlinkStreamSqlInterpreter.java:90)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callSelect(FlinkSqlInterrpeter.java:487)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callCommand(FlinkSqlInterrpeter.java:283)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.runSqlList(FlinkSqlInterrpeter.java:197)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.interpret(FlinkSqlInterrpeter.java:171)\n\tat org.apache.zeppelin.interpreter.LazyOpenInterpreter.interpret(LazyOpenInterpreter.java:110)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:684)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:577)\n\tat org.apache.zeppelin.scheduler.Job.run(Job.java:172)\n\tat org.apache.zeppelin.scheduler.AbstractScheduler.runJob(AbstractScheduler.java:130)\n\tat org.apache.zeppelin.scheduler.ParallelScheduler.lambda$runJobInScheduler$0(ParallelScheduler.java:39)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n\tat java.lang.Thread.run(Thread.java:748)\nCaused by: java.util.concurrent.ExecutionException: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: ed913c9bbb539de46ae51df2c496d639)\n\tat java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)\n\tat java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1640)\n\tat org.apache.flink.api.java.ScalaShellStreamEnvironment.execute(ScalaShellStreamEnvironment.java:80)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1620)\n\tat org.apache.flink.table.planner.delegation.StreamExecutor.execute(StreamExecutor.java:42)\n\tat org.apache.flink.table.api.internal.TableEnvironmentImpl.execute(TableEnvironmentImpl.java:643)\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:155)\n\t... 15 more\nCaused by: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: ed913c9bbb539de46ae51df2c496d639)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:112)\n\tat java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:602)\n\tat java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:577)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.client.program.rest.RestClusterClient.lambda$pollResourceAsync$21(RestClusterClient.java:565)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.runtime.concurrent.FutureUtils.lambda$retryOperationWithDelay$8(FutureUtils.java:291)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:561)\n\tat java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:929)\n\tat java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442)\n\t... 3 more\nCaused by: org.apache.flink.runtime.client.JobCancellationException: Job was cancelled.\n\tat org.apache.flink.runtime.jobmaster.JobResult.toJobExecutionResult(JobResult.java:149)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:110)\n\t... 19 more\n\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1586847370895_154139610", + "id": "paragraph_1586847370895_154139610", + "dateCreated": "2020-04-14 14:56:10.896", + "dateStarted": "2020-04-29 14:22:40.600", + "dateFinished": "2020-04-29 14:22:56.844", + "status": "ABORT" + }, + { + "title": "Resume flink sql job from savepoint", + "text": "%flink.ssql(type\u003dupdate,parallelism\u003d2,maxParallelism\u003d10,savepointDir\u003d/tmp/flink_a)\n\nselect url, count(1) as pv from log group by url", + "user": "anonymous", + "dateUpdated": "2020-04-29 14:24:26.768", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "table", + "height": 300.0, + "optionOpen": false, + "setting": { + "table": { + "tableGridState": {}, + "tableColumnTypeState": { + "names": { + "url": "string", + "pv": "string" + }, + "updated": false + }, + "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", + "tableOptionValue": { + "useFilter": false, + "showPagination": false, + "showAggregationFooter": false + }, + "updated": false, + "initialized": false + } + }, + "commonSetting": {} + } + } + }, + "editorSetting": { + "language": "sql", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/sql", + "parallelism": "2", + "maxParallelism": "10", + "type": "update", + "select url": "select url", + "count(1": "count(1", + "savepointDir": "/tmp/flink_a", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TABLE", + "data": "url\tpv\nhome\t500\nproduct\t1500\nsearch\t1000\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1586733780533_1100270999", + "id": "paragraph_1586733780533_1100270999", + "dateCreated": "2020-04-13 07:23:00.533", + "dateStarted": "2020-04-29 14:24:26.772", + "dateFinished": "2020-04-29 14:29:07.320", + "status": "FINISHED" + }, + { + "title": "Resume flink scala job from savepoint", + "text": "%flink(parallelism\u003d1,maxParallelism\u003d10,savepointDir\u003d/tmp/flink_b)\n\nval table \u003d stenv.sqlQuery(\"select url, count(1) as pv from log group by url\")\n\nz.show(table, streamType\u003d\"update\")\n", + "user": "anonymous", + "dateUpdated": "2020-04-15 16:11:54.114", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "table", + "height": 300.0, + "optionOpen": false, + "setting": { + "table": { + "tableGridState": {}, + "tableColumnTypeState": { + "names": { + "url": "string", + "pv": "string" + }, + "updated": false + }, + "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", + "tableOptionValue": { + "useFilter": false, + "showPagination": false, + "showAggregationFooter": false + }, + "updated": false, + "initialized": false + } + }, + "commonSetting": {} + } + } + }, + "editorSetting": { + "language": "scala", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/scala", + "par": "par", + "parallelism": "1", + "maxParallelism": "10", + "savepointDir": "/tmp/flink_b", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TABLE", + "data": "url\tpv\nhome\t34\nproduct\t100\nsearch\t68\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1586733868269_783581378", + "id": "paragraph_1586733868269_783581378", + "dateCreated": "2020-04-13 07:24:28.269", + "dateStarted": "2020-04-15 15:40:02.218", + "dateFinished": "2020-04-15 15:40:27.915", + "status": "ABORT" + }, + { + "title": "Resume flink python job from savepoint", + "text": "%flink.ipyflink(parallelism\u003d1,maxParallelism\u003d10,savepointDir\u003d/tmp/flink_c)\n\ntable \u003d st_env.sql_query(\"select url, count(1) as pv from log group by url\")\n\nz.show(table, stream_type\u003d\"update\")", + "user": "anonymous", + "dateUpdated": "2020-04-27 14:45:28.045", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "table", + "height": 300.0, + "optionOpen": false, + "setting": { + "table": { + "tableGridState": {}, + "tableColumnTypeState": { + "names": { + "url": "string", + "pv": "string" + }, + "updated": false + }, + "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", + "tableOptionValue": { + "useFilter": false, + "showPagination": false, + "showAggregationFooter": false + }, + "updated": false, + "initialized": false + } + }, + "commonSetting": {} + } + } + }, + "editorSetting": { + "language": "python", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/python", + "parallelism": "1", + "maxParallelism": "10", + "savepointDir": "/tmp/flink_c", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TABLE", + "data": "url\tpv\nhome\t17\nproduct\t49\nsearch\t34\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1586754954622_-1794803125", + "id": "paragraph_1586754954622_-1794803125", + "dateCreated": "2020-04-13 13:15:54.623", + "dateStarted": "2020-04-15 15:40:29.046", + "dateFinished": "2020-04-15 15:40:49.333", + "status": "ABORT" + }, + { + "text": "%flink.ssql\n", + "user": "anonymous", + "dateUpdated": "2020-04-18 19:04:17.969", + "config": {}, + "settings": { + "params": {}, + "forms": {} + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1587207857968_1997116221", + "id": "paragraph_1587207857968_1997116221", + "dateCreated": "2020-04-18 19:04:17.969", + "status": "READY" + } + ], + "name": "3. Flink Job Control Tutorial", + "id": "2F5RKHCDV", + "defaultInterpreterGroup": "flink", + "version": "0.9.0-SNAPSHOT", + "noteParams": {}, + "noteForms": {}, + "angularObjects": {}, + "config": { + "isZeppelinNotebookCronEnable": false + }, + "info": {} +} \ No newline at end of file diff --git a/notebook/Flink Tutorial/Streaming ETL_2EYD56B9B.zpln b/notebook/Flink Tutorial/4. Streaming ETL_2EYD56B9B.zpln similarity index 57% rename from notebook/Flink Tutorial/Streaming ETL_2EYD56B9B.zpln rename to notebook/Flink Tutorial/4. Streaming ETL_2EYD56B9B.zpln index d7d58f774eb..f18d0d11f30 100644 --- a/notebook/Flink Tutorial/Streaming ETL_2EYD56B9B.zpln +++ b/notebook/Flink Tutorial/4. Streaming ETL_2EYD56B9B.zpln @@ -2,9 +2,9 @@ "paragraphs": [ { "title": "Overview", - "text": "%md\n\nThis tutorial demonstrate how to use Flink do streaming processing via its streaming sql + udf. In this tutorial, we read data from kafka queue and do some simple processing (just filtering here) and then write it back to another kafka queue. We use this [docker](https://kafka-connect-datagen.readthedocs.io/en/latest/) to create kafka cluster and source data \n\n", + "text": "%md\n\nThis tutorial demonstrate how to use Flink do streaming processing via its streaming sql + udf. In this tutorial, we read data from kafka queue and do some simple processing (just filtering here) and then write it back to another kafka queue. We use this [docker](https://zeppelin-kafka-connect-datagen.readthedocs.io/en/latest/) to create kafka cluster and source data \n\n* Make sure you add the following ip host name mapping to your hosts file, otherwise you may not be able to connect to the kafka cluster in docker\n\n```\n127.0.0.1 broker\n```\n\nUse the following command to generate the sample data.\n\n```\ncurl -X POST http://localhost:8083/connectors \\\n-H \u0027Content-Type:application/json\u0027 \\\n-H \u0027Accept:application/json\u0027 \\\n-d @connect.source.datagen.json\n```", "user": "anonymous", - "dateUpdated": "2020-03-23 15:03:54.596", + "dateUpdated": "2020-04-27 13:44:26.806", "config": { "runOnSelectionChange": true, "title": true, @@ -14,13 +14,14 @@ "enabled": true, "results": {}, "editorSetting": { - "language": "text", - "editOnDblClick": false, + "language": "markdown", + "editOnDblClick": true, "completionKey": "TAB", - "completionSupport": true + "completionSupport": false }, - "editorMode": "ace/mode/text", - "editorHide": true + "editorMode": "ace/mode/markdown", + "editorHide": true, + "tableHide": false }, "settings": { "params": {}, @@ -31,7 +32,7 @@ "msg": [ { "type": "HTML", - "data": "\u003cdiv class\u003d\"markdown-body\"\u003e\n\u003cp\u003eThis tutorial demonstrate how to use Flink do streaming processing via its streaming sql + udf. In this tutorial, we read data from kafka queue and do some simple processing (just filtering here) and then write it back to another kafka queue. We use this \u003ca href\u003d\"https://kafka-connect-datagen.readthedocs.io/en/latest/\"\u003edocker\u003c/a\u003e to create kafka cluster and source data\u003c/p\u003e\n\n\u003c/div\u003e" + "data": "\u003cdiv class\u003d\"markdown-body\"\u003e\n\u003cp\u003eThis tutorial demonstrate how to use Flink do streaming processing via its streaming sql + udf. In this tutorial, we read data from kafka queue and do some simple processing (just filtering here) and then write it back to another kafka queue. We use this \u003ca href\u003d\"https://zeppelin-kafka-connect-datagen.readthedocs.io/en/latest/\"\u003edocker\u003c/a\u003e to create kafka cluster and source data\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMake sure you add the following ip host name mapping to your hosts file, otherwise you may not be able to connect to the kafka cluster in docker\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre\u003e\u003ccode\u003e127.0.0.1 broker\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eUse the following command to generate the sample data.\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003ecurl -X POST http://localhost:8083/connectors \\\n-H \u0027Content-Type:application/json\u0027 \\\n-H \u0027Accept:application/json\u0027 \\\n-d @connect.source.datagen.json\n\u003c/code\u003e\u003c/pre\u003e\n\n\u003c/div\u003e" } ] }, @@ -40,15 +41,51 @@ "jobName": "paragraph_1579054287919_-61477360", "id": "paragraph_1579054287919_-61477360", "dateCreated": "2020-01-15 10:11:27.919", - "dateStarted": "2020-01-19 15:36:08.710", - "dateFinished": "2020-01-19 15:36:18.597", + "dateStarted": "2020-04-27 11:49:46.116", + "dateFinished": "2020-04-27 11:49:46.128", + "status": "FINISHED" + }, + { + "title": "Configure flink kafka connector", + "text": "%flink.conf\n\n# You need to run this paragraph first before running any flink code.\n\nflink.execution.packages\torg.apache.flink:flink-connector-kafka_2.11:1.10.0,org.apache.flink:flink-connector-kafka-base_2.11:1.10.0,org.apache.flink:flink-json:1.10.0", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:45:27.361", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "text", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/text", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1587959422055_1513725291", + "id": "paragraph_1587959422055_1513725291", + "dateCreated": "2020-04-27 11:50:22.055", + "dateStarted": "2020-04-29 15:45:27.366", + "dateFinished": "2020-04-29 15:45:27.369", "status": "FINISHED" }, { "title": "Create kafka source table", "text": "%flink.ssql\n\nDROP TABLE IF EXISTS source_kafka;\n\nCREATE TABLE source_kafka (\n status STRING,\n direction STRING,\n event_ts BIGINT\n) WITH (\n \u0027connector.type\u0027 \u003d \u0027kafka\u0027, \n \u0027connector.version\u0027 \u003d \u0027universal\u0027,\n \u0027connector.topic\u0027 \u003d \u0027generated.events\u0027,\n \u0027connector.startup-mode\u0027 \u003d \u0027earliest-offset\u0027,\n \u0027connector.properties.zookeeper.connect\u0027 \u003d \u0027localhost:2181\u0027,\n \u0027connector.properties.bootstrap.servers\u0027 \u003d \u0027localhost:9092\u0027,\n \u0027connector.properties.group.id\u0027 \u003d \u0027testGroup\u0027,\n \u0027connector.startup-mode\u0027 \u003d \u0027earliest-offset\u0027,\n \u0027format.type\u0027\u003d\u0027json\u0027,\n \u0027update-mode\u0027 \u003d \u0027append\u0027\n);", "user": "anonymous", - "dateUpdated": "2020-02-25 09:49:50.067", + "dateUpdated": "2020-04-29 15:45:29.234", "config": { "colWidth": 6.0, "fontSize": 9.0, @@ -83,15 +120,15 @@ "jobName": "paragraph_1578044987529_1240899810", "id": "paragraph_1578044987529_1240899810", "dateCreated": "2020-01-03 17:49:47.529", - "dateStarted": "2020-02-25 09:49:50.077", - "dateFinished": "2020-02-25 09:50:02.240", + "dateStarted": "2020-04-29 15:45:29.238", + "dateFinished": "2020-04-29 15:45:42.005", "status": "FINISHED" }, { "title": "Create kafka sink table", "text": "%flink.ssql\n\nDROP TABLE IF EXISTS sink_kafka;\n\nCREATE TABLE sink_kafka (\n status STRING,\n direction STRING,\n event_ts TIMESTAMP(3),\n WATERMARK FOR event_ts AS event_ts - INTERVAL \u00275\u0027 SECOND\n) WITH (\n \u0027connector.type\u0027 \u003d \u0027kafka\u0027, \n \u0027connector.version\u0027 \u003d \u0027universal\u0027, \n \u0027connector.topic\u0027 \u003d \u0027generated.events2\u0027,\n \u0027connector.properties.zookeeper.connect\u0027 \u003d \u0027localhost:2181\u0027,\n \u0027connector.properties.bootstrap.servers\u0027 \u003d \u0027localhost:9092\u0027,\n \u0027connector.properties.group.id\u0027 \u003d \u0027testGroup\u0027,\n \u0027format.type\u0027\u003d\u0027json\u0027,\n \u0027update-mode\u0027 \u003d \u0027append\u0027\n)\n\n", "user": "anonymous", - "dateUpdated": "2020-02-25 09:50:08.130", + "dateUpdated": "2020-04-29 15:45:30.663", "config": { "runOnSelectionChange": true, "title": true, @@ -126,15 +163,15 @@ "jobName": "paragraph_1578905686087_1273839451", "id": "paragraph_1578905686087_1273839451", "dateCreated": "2020-01-13 16:54:46.087", - "dateStarted": "2020-02-25 09:50:08.136", - "dateFinished": "2020-02-25 09:50:08.357", + "dateStarted": "2020-04-29 15:45:41.561", + "dateFinished": "2020-04-29 15:45:42.005", "status": "FINISHED" }, { "title": "Transform the data in source table and write it to sink table", "text": "%flink.ssql\n\ninsert into sink_kafka select status, direction, cast(event_ts/1000000000 as timestamp(3)) from source_kafka where status \u003c\u003e \u0027foo\u0027\n", "user": "anonymous", - "dateUpdated": "2020-02-25 09:50:10.681", + "dateUpdated": "2020-04-29 15:45:43.388", "config": { "runOnSelectionChange": true, "title": true, @@ -156,20 +193,33 @@ "params": {}, "forms": {} }, + "results": { + "code": "ERROR", + "msg": [ + { + "type": "ANGULAR", + "data": "\u003ch1\u003eDuration: {{duration}} seconds\n" + }, + { + "type": "TEXT", + "data": "Fail to run sql command: insert into sink_kafka select status, direction, cast(event_ts/1000000000 as timestamp(3)) from source_kafka where status \u003c\u003e \u0027foo\u0027\njava.io.IOException: java.util.concurrent.ExecutionException: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: 9d350f962fffb020222af2bba3388912)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callInsertInto(FlinkSqlInterrpeter.java:526)\n\tat org.apache.zeppelin.flink.FlinkStreamSqlInterpreter.callInsertInto(FlinkStreamSqlInterpreter.java:98)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callCommand(FlinkSqlInterrpeter.java:290)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.runSqlList(FlinkSqlInterrpeter.java:197)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.interpret(FlinkSqlInterrpeter.java:171)\n\tat org.apache.zeppelin.interpreter.LazyOpenInterpreter.interpret(LazyOpenInterpreter.java:110)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:684)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:577)\n\tat org.apache.zeppelin.scheduler.Job.run(Job.java:172)\n\tat org.apache.zeppelin.scheduler.AbstractScheduler.runJob(AbstractScheduler.java:130)\n\tat org.apache.zeppelin.scheduler.ParallelScheduler.lambda$runJobInScheduler$0(ParallelScheduler.java:39)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n\tat java.lang.Thread.run(Thread.java:748)\nCaused by: java.util.concurrent.ExecutionException: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: 9d350f962fffb020222af2bba3388912)\n\tat java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)\n\tat java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1640)\n\tat org.apache.flink.api.java.ScalaShellStreamEnvironment.execute(ScalaShellStreamEnvironment.java:80)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1620)\n\tat org.apache.flink.table.planner.delegation.StreamExecutor.execute(StreamExecutor.java:42)\n\tat org.apache.flink.table.api.internal.TableEnvironmentImpl.execute(TableEnvironmentImpl.java:643)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callInsertInto(FlinkSqlInterrpeter.java:522)\n\t... 13 more\nCaused by: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: 9d350f962fffb020222af2bba3388912)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:112)\n\tat java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:602)\n\tat java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:577)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.client.program.rest.RestClusterClient.lambda$pollResourceAsync$21(RestClusterClient.java:565)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.runtime.concurrent.FutureUtils.lambda$retryOperationWithDelay$8(FutureUtils.java:291)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:561)\n\tat java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:929)\n\tat java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442)\n\t... 3 more\nCaused by: org.apache.flink.runtime.client.JobCancellationException: Job was cancelled.\n\tat org.apache.flink.runtime.jobmaster.JobResult.toJobExecutionResult(JobResult.java:149)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:110)\n\t... 19 more\n\n" + } + ] + }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1578905715189_33634195", "id": "paragraph_1578905715189_33634195", "dateCreated": "2020-01-13 16:55:15.189", - "dateStarted": "2020-02-25 09:50:10.751", - "dateFinished": "2020-02-25 09:40:04.300", + "dateStarted": "2020-04-29 15:45:43.391", + "dateFinished": "2020-04-29 16:06:27.181", "status": "ABORT" }, { "title": "Preview sink table result", "text": "%flink.ssql(type\u003dupdate)\n\nselect * from sink_kafka order by event_ts desc limit 10;", "user": "anonymous", - "dateUpdated": "2020-02-07 10:00:28.140", + "dateUpdated": "2020-04-29 15:28:01.122", "config": { "runOnSelectionChange": true, "title": true, @@ -269,32 +319,19 @@ "params": {}, "forms": {} }, - "results": { - "code": "ERROR", - "msg": [ - { - "type": "TABLE", - "data": "status\tdirection\tevent_ts\nbar\tright\t2020-02-07 02:05:27.0\nbar\tleft\t2020-02-07 02:05:27.0\nbar\tleft\t2020-02-07 02:05:27.0\nbaz\tup\t2020-02-07 02:05:27.0\nbaz\tup\t2020-02-07 02:05:27.0\nbaz\tdown\t2020-02-07 02:05:27.0\nbaz\tleft\t2020-02-07 02:05:32.0\nbaz\tup\t2020-02-07 02:05:32.0\nbaz\tup\t2020-02-07 02:05:32.0\nbaz\tleft\t2020-02-07 02:05:32.0\n" - }, - { - "type": "TEXT", - "data": "Fail to run sql command: select * from sink_kafka order by event_ts desc limit 10\njava.io.IOException: Fail to run stream sql job\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:164)\n\tat org.apache.zeppelin.flink.FlinkStreamSqlInterpreter.callSelect(FlinkStreamSqlInterpreter.java:108)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callCommand(FlinkSqlInterrpeter.java:203)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.runSqlList(FlinkSqlInterrpeter.java:151)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.interpret(FlinkSqlInterrpeter.java:104)\n\tat org.apache.zeppelin.interpreter.LazyOpenInterpreter.interpret(LazyOpenInterpreter.java:103)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:676)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:569)\n\tat org.apache.zeppelin.scheduler.Job.run(Job.java:172)\n\tat org.apache.zeppelin.scheduler.AbstractScheduler.runJob(AbstractScheduler.java:121)\n\tat org.apache.zeppelin.scheduler.ParallelScheduler.lambda$runJobInScheduler$0(ParallelScheduler.java:39)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n\tat java.lang.Thread.run(Thread.java:748)\nCaused by: java.util.concurrent.ExecutionException: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: ebcc8d8e16f2e95b3145e50ee5a73e13)\n\tat java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)\n\tat java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1640)\n\tat org.apache.flink.api.java.ScalaShellStreamEnvironment.execute(ScalaShellStreamEnvironment.java:80)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1620)\n\tat org.apache.flink.table.planner.delegation.StreamExecutor.execute(StreamExecutor.java:42)\n\tat org.apache.flink.table.api.internal.TableEnvironmentImpl.execute(TableEnvironmentImpl.java:643)\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:153)\n\t... 13 more\nCaused by: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: ebcc8d8e16f2e95b3145e50ee5a73e13)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:112)\n\tat java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:602)\n\tat java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:577)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.client.program.rest.RestClusterClient.lambda$pollResourceAsync$21(RestClusterClient.java:565)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.runtime.concurrent.FutureUtils.lambda$retryOperationWithDelay$8(FutureUtils.java:291)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:561)\n\tat java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:929)\n\tat java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442)\n\t... 3 more\nCaused by: org.apache.flink.runtime.client.JobCancellationException: Job was cancelled.\n\tat org.apache.flink.runtime.jobmaster.JobResult.toJobExecutionResult(JobResult.java:149)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:110)\n\t... 19 more\n" - } - ] - }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1579058345516_-1005807622", "id": "paragraph_1579058345516_-1005807622", "dateCreated": "2020-01-15 11:19:05.518", - "dateStarted": "2020-02-07 10:00:28.144", - "dateFinished": "2020-02-07 10:05:39.084", + "dateStarted": "2020-04-29 15:28:01.131", + "dateFinished": "2020-04-29 15:28:15.162", "status": "ABORT" }, { "text": "%flink.ssql\n", "user": "anonymous", - "dateUpdated": "2020-02-06 22:17:54.896", + "dateUpdated": "2020-04-29 15:27:31.430", "config": { "colWidth": 12.0, "fontSize": 9.0, @@ -320,9 +357,9 @@ "status": "READY" } ], - "name": "Streaming ETL", + "name": "4. Streaming ETL", "id": "2EYD56B9B", - "defaultInterpreterGroup": "spark", + "defaultInterpreterGroup": "flink", "version": "0.9.0-SNAPSHOT", "noteParams": {}, "noteForms": {}, diff --git a/notebook/Flink Tutorial/5. Streaming Data Analytics_2EYT7Q6R8.zpln b/notebook/Flink Tutorial/5. Streaming Data Analytics_2EYT7Q6R8.zpln new file mode 100644 index 00000000000..e14406c1db2 --- /dev/null +++ b/notebook/Flink Tutorial/5. Streaming Data Analytics_2EYT7Q6R8.zpln @@ -0,0 +1,303 @@ +{ + "paragraphs": [ + { + "title": "Overview", + "text": "%md\n\nThis tutorial demonstrate how to use Flink do streaming analytics via its streaming sql + udf. Zeppelin now support 3 kinds of streaming visualization.\n\n* Single - Single mode is for the case when the result of sql statement is always one row, such as the following example\n* Update - Update mode is suitable for the case when the output is more than one rows, and always will be updated continuously. \n* Append - Append mode is suitable for the scenario where output data is always appended\n\n", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:31:49.376", + "config": { + "runOnSelectionChange": true, + "title": true, + "checkEmpty": true, + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "markdown", + "editOnDblClick": true, + "completionKey": "TAB", + "completionSupport": false + }, + "editorMode": "ace/mode/markdown", + "editorHide": true, + "tableHide": false + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "HTML", + "data": "\u003cdiv class\u003d\"markdown-body\"\u003e\n\u003cp\u003eThis tutorial demonstrate how to use Flink do streaming analytics via its streaming sql + udf. Zeppelin now support 3 kinds of streaming visualization.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSingle - Single mode is for the case when the result of sql statement is always one row, such as the following example\u003c/li\u003e\n\u003cli\u003eUpdate - Update mode is suitable for the case when the output is more than one rows, and always will be updated continuously.\u003c/li\u003e\n\u003cli\u003eAppend - Append mode is suitable for the scenario where output data is always appended\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003c/div\u003e" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1579054784565_2122156822", + "id": "paragraph_1579054784565_2122156822", + "dateCreated": "2020-01-15 10:19:44.565", + "dateStarted": "2020-04-29 15:31:49.379", + "dateFinished": "2020-04-29 15:31:49.549", + "status": "FINISHED" + }, + { + "title": "Single row mode of Output", + "text": "%flink.ssql(type\u003dsingle, parallelism\u003d1, refreshInterval\u003d3000, template\u003d\u003ch1\u003e{1}\u003c/h1\u003e until \u003ch2\u003e{0}\u003c/h2\u003e)\n\nselect max(event_ts), count(1) from sink_kafka\n", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:45:47.116", + "config": { + "runOnSelectionChange": true, + "title": true, + "checkEmpty": true, + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "sql", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/sql", + "template": "\u003ch1\u003e{1}\u003c/h1\u003e until \u003ch2\u003e{0}\u003c/h2\u003e", + "refreshInterval": "3000", + "parallelism": "1", + "type": "single" + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "ERROR", + "msg": [ + { + "type": "ANGULAR", + "data": "\u003ch1\u003e{{value_1}}\u003c/h1\u003e until \u003ch2\u003e{{value_0}}\u003c/h2\u003e\n" + }, + { + "type": "TEXT", + "data": "Fail to run sql command: select max(event_ts), count(1) from sink_kafka\njava.io.IOException: Fail to run stream sql job\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:166)\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:101)\n\tat org.apache.zeppelin.flink.FlinkStreamSqlInterpreter.callInnerSelect(FlinkStreamSqlInterpreter.java:74)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callSelect(FlinkSqlInterrpeter.java:487)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callCommand(FlinkSqlInterrpeter.java:283)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.runSqlList(FlinkSqlInterrpeter.java:197)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.interpret(FlinkSqlInterrpeter.java:171)\n\tat org.apache.zeppelin.interpreter.LazyOpenInterpreter.interpret(LazyOpenInterpreter.java:110)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:684)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:577)\n\tat org.apache.zeppelin.scheduler.Job.run(Job.java:172)\n\tat org.apache.zeppelin.scheduler.AbstractScheduler.runJob(AbstractScheduler.java:130)\n\tat org.apache.zeppelin.scheduler.ParallelScheduler.lambda$runJobInScheduler$0(ParallelScheduler.java:39)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n\tat java.lang.Thread.run(Thread.java:748)\nCaused by: java.util.concurrent.ExecutionException: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: d6342253dbd094a22aba6bf4a3406c8e)\n\tat java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)\n\tat java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1640)\n\tat org.apache.flink.api.java.ScalaShellStreamEnvironment.execute(ScalaShellStreamEnvironment.java:80)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1620)\n\tat org.apache.flink.table.planner.delegation.StreamExecutor.execute(StreamExecutor.java:42)\n\tat org.apache.flink.table.api.internal.TableEnvironmentImpl.execute(TableEnvironmentImpl.java:643)\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:155)\n\t... 15 more\nCaused by: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: d6342253dbd094a22aba6bf4a3406c8e)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:112)\n\tat java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:602)\n\tat java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:577)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.client.program.rest.RestClusterClient.lambda$pollResourceAsync$21(RestClusterClient.java:565)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.runtime.concurrent.FutureUtils.lambda$retryOperationWithDelay$8(FutureUtils.java:291)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:561)\n\tat java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:929)\n\tat java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442)\n\t... 3 more\nCaused by: org.apache.flink.runtime.client.JobCancellationException: Job was cancelled.\n\tat org.apache.flink.runtime.jobmaster.JobResult.toJobExecutionResult(JobResult.java:149)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:110)\n\t... 19 more\n\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1578909960516_-1812187661", + "id": "paragraph_1578909960516_-1812187661", + "dateCreated": "2020-01-13 18:06:00.516", + "dateStarted": "2020-04-29 15:45:47.127", + "dateFinished": "2020-04-29 15:47:14.738", + "status": "ABORT" + }, + { + "title": "Update mode of Output", + "text": "%flink.ssql(type\u003dupdate, refreshInterval\u003d2000, parallelism\u003d1)\n\nselect status, count(1) as pv from sink_kafka group by status", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:46:09.485", + "config": { + "runOnSelectionChange": true, + "title": true, + "checkEmpty": true, + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "multiBarChart", + "height": 300.0, + "optionOpen": false, + "setting": { + "multiBarChart": { + "xLabelStatus": "default", + "rotate": { + "degree": "-45" + } + } + }, + "commonSetting": {}, + "keys": [ + { + "name": "status", + "index": 0.0, + "aggr": "sum" + } + ], + "groups": [], + "values": [ + { + "name": "pv", + "index": 1.0, + "aggr": "sum" + } + ] + }, + "helium": {} + } + }, + "editorSetting": { + "language": "sql", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/sql", + "refreshInterval": "2000", + "parallelism": "1", + "type": "update", + "savepointDir": "/tmp/flink_2", + "editorHide": false + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "ERROR", + "msg": [ + { + "type": "TABLE", + "data": "status\tpv\nbar\t48\nbaz\t28\n" + }, + { + "type": "TEXT", + "data": "Fail to run sql command: select status, count(1) as pv from sink_kafka group by status\njava.io.IOException: Fail to run stream sql job\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:166)\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:101)\n\tat org.apache.zeppelin.flink.FlinkStreamSqlInterpreter.callInnerSelect(FlinkStreamSqlInterpreter.java:90)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callSelect(FlinkSqlInterrpeter.java:487)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callCommand(FlinkSqlInterrpeter.java:283)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.runSqlList(FlinkSqlInterrpeter.java:197)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.interpret(FlinkSqlInterrpeter.java:171)\n\tat org.apache.zeppelin.interpreter.LazyOpenInterpreter.interpret(LazyOpenInterpreter.java:110)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:684)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:577)\n\tat org.apache.zeppelin.scheduler.Job.run(Job.java:172)\n\tat org.apache.zeppelin.scheduler.AbstractScheduler.runJob(AbstractScheduler.java:130)\n\tat org.apache.zeppelin.scheduler.ParallelScheduler.lambda$runJobInScheduler$0(ParallelScheduler.java:39)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n\tat java.lang.Thread.run(Thread.java:748)\nCaused by: java.util.concurrent.ExecutionException: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: be1ac97cd4aaf5a779f23870d337dc23)\n\tat java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)\n\tat java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1640)\n\tat org.apache.flink.api.java.ScalaShellStreamEnvironment.execute(ScalaShellStreamEnvironment.java:80)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1620)\n\tat org.apache.flink.table.planner.delegation.StreamExecutor.execute(StreamExecutor.java:42)\n\tat org.apache.flink.table.api.internal.TableEnvironmentImpl.execute(TableEnvironmentImpl.java:643)\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:155)\n\t... 15 more\nCaused by: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: be1ac97cd4aaf5a779f23870d337dc23)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:112)\n\tat java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:602)\n\tat java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:577)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.client.program.rest.RestClusterClient.lambda$pollResourceAsync$21(RestClusterClient.java:565)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.runtime.concurrent.FutureUtils.lambda$retryOperationWithDelay$8(FutureUtils.java:291)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:561)\n\tat java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:929)\n\tat java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442)\n\t... 3 more\nCaused by: org.apache.flink.runtime.client.JobCancellationException: Job was cancelled.\n\tat org.apache.flink.runtime.jobmaster.JobResult.toJobExecutionResult(JobResult.java:149)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:110)\n\t... 19 more\n\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1578910004762_-286113604", + "id": "paragraph_1578910004762_-286113604", + "dateCreated": "2020-01-13 18:06:44.762", + "dateStarted": "2020-04-29 15:46:09.492", + "dateFinished": "2020-04-29 15:47:13.312", + "status": "ABORT" + }, + { + "title": "Append mode of Output", + "text": "%flink.ssql(type\u003dappend, parallelism\u003d1, refreshInterval\u003d2000, threshold\u003d60000)\n\nselect TUMBLE_START(event_ts, INTERVAL \u00275\u0027 SECOND) as start_time, status, count(1) from sink_kafka\ngroup by TUMBLE(event_ts, INTERVAL \u00275\u0027 SECOND), status\n", + "user": "anonymous", + "dateUpdated": "2020-04-29 15:46:40.174", + "config": { + "runOnSelectionChange": true, + "title": true, + "checkEmpty": true, + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "lineChart", + "height": 300.0, + "optionOpen": false, + "setting": { + "lineChart": { + "xLabelStatus": "rotate", + "rotate": { + "degree": "-45" + } + } + }, + "commonSetting": {}, + "keys": [ + { + "name": "start_time", + "index": 0.0, + "aggr": "sum" + } + ], + "groups": [ + { + "name": "status", + "index": 1.0, + "aggr": "sum" + } + ], + "values": [ + { + "name": "EXPR$2", + "index": 2.0, + "aggr": "sum" + } + ] + }, + "helium": {} + } + }, + "editorSetting": { + "language": "sql", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/sql", + "refreshInterval": "2000", + "parallelism": "1", + "threshold": "60000", + "type": "append", + "savepointDir": "/tmp/flink_3" + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "ERROR", + "msg": [ + { + "type": "TABLE", + "data": "start_time\tstatus\tEXPR$2\n2020-04-29 07:46:20.0\tbaz\t3\n2020-04-29 07:46:20.0\tbar\t3\n2020-04-29 07:46:25.0\tbaz\t2\n2020-04-29 07:46:25.0\tbar\t4\n2020-04-29 07:46:30.0\tbar\t4\n2020-04-29 07:46:30.0\tbaz\t2\n2020-04-29 07:46:35.0\tbar\t4\n2020-04-29 07:46:40.0\tbar\t5\n2020-04-29 07:46:40.0\tbaz\t2\n2020-04-29 07:46:45.0\tbar\t4\n2020-04-29 07:46:45.0\tbaz\t4\n2020-04-29 07:46:50.0\tbar\t4\n2020-04-29 07:46:50.0\tbaz\t3\n2020-04-29 07:46:55.0\tbaz\t3\n2020-04-29 07:46:55.0\tbar\t2\n2020-04-29 07:47:00.0\tbaz\t1\n2020-04-29 07:47:00.0\tbar\t6\n2020-04-29 07:47:05.0\tbaz\t2\n2020-04-29 07:47:05.0\tbar\t4\n" + }, + { + "type": "TEXT", + "data": "Fail to run sql command: select TUMBLE_START(event_ts, INTERVAL \u00275\u0027 SECOND) as start_time, status, count(1) from sink_kafka\ngroup by TUMBLE(event_ts, INTERVAL \u00275\u0027 SECOND), status\njava.io.IOException: Fail to run stream sql job\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:166)\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:101)\n\tat org.apache.zeppelin.flink.FlinkStreamSqlInterpreter.callInnerSelect(FlinkStreamSqlInterpreter.java:82)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callSelect(FlinkSqlInterrpeter.java:487)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.callCommand(FlinkSqlInterrpeter.java:283)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.runSqlList(FlinkSqlInterrpeter.java:197)\n\tat org.apache.zeppelin.flink.FlinkSqlInterrpeter.interpret(FlinkSqlInterrpeter.java:171)\n\tat org.apache.zeppelin.interpreter.LazyOpenInterpreter.interpret(LazyOpenInterpreter.java:110)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:684)\n\tat org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer$InterpretJob.jobRun(RemoteInterpreterServer.java:577)\n\tat org.apache.zeppelin.scheduler.Job.run(Job.java:172)\n\tat org.apache.zeppelin.scheduler.AbstractScheduler.runJob(AbstractScheduler.java:130)\n\tat org.apache.zeppelin.scheduler.ParallelScheduler.lambda$runJobInScheduler$0(ParallelScheduler.java:39)\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n\tat java.lang.Thread.run(Thread.java:748)\nCaused by: java.util.concurrent.ExecutionException: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: 12995bca62e4fad2c41bb6756fc91e40)\n\tat java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)\n\tat java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1640)\n\tat org.apache.flink.api.java.ScalaShellStreamEnvironment.execute(ScalaShellStreamEnvironment.java:80)\n\tat org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.java:1620)\n\tat org.apache.flink.table.planner.delegation.StreamExecutor.execute(StreamExecutor.java:42)\n\tat org.apache.flink.table.api.internal.TableEnvironmentImpl.execute(TableEnvironmentImpl.java:643)\n\tat org.apache.zeppelin.flink.sql.AbstractStreamSqlJob.run(AbstractStreamSqlJob.java:155)\n\t... 15 more\nCaused by: org.apache.flink.client.program.ProgramInvocationException: Job failed (JobID: 12995bca62e4fad2c41bb6756fc91e40)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:112)\n\tat java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:602)\n\tat java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:577)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.client.program.rest.RestClusterClient.lambda$pollResourceAsync$21(RestClusterClient.java:565)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.complete(CompletableFuture.java:1962)\n\tat org.apache.flink.runtime.concurrent.FutureUtils.lambda$retryOperationWithDelay$8(FutureUtils.java:291)\n\tat java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760)\n\tat java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736)\n\tat java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)\n\tat java.util.concurrent.CompletableFuture.postFire(CompletableFuture.java:561)\n\tat java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:929)\n\tat java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442)\n\t... 3 more\nCaused by: org.apache.flink.runtime.client.JobCancellationException: Job was cancelled.\n\tat org.apache.flink.runtime.jobmaster.JobResult.toJobExecutionResult(JobResult.java:149)\n\tat org.apache.flink.client.deployment.ClusterClientJobClientAdapter.lambda$null$6(ClusterClientJobClientAdapter.java:110)\n\t... 19 more\n\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1578910016872_1942851900", + "id": "paragraph_1578910016872_1942851900", + "dateCreated": "2020-01-13 18:06:56.872", + "dateStarted": "2020-04-29 15:46:18.958", + "dateFinished": "2020-04-29 15:47:22.960", + "status": "ABORT" + }, + { + "text": "%flink.ssql\n", + "user": "anonymous", + "dateUpdated": "2020-01-13 21:17:35.739", + "config": {}, + "settings": { + "params": {}, + "forms": {} + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1578921455738_-1465781668", + "id": "paragraph_1578921455738_-1465781668", + "dateCreated": "2020-01-13 21:17:35.739", + "status": "READY" + } + ], + "name": "5. Streaming Data Analytics", + "id": "2EYT7Q6R8", + "defaultInterpreterGroup": "spark", + "version": "0.9.0-SNAPSHOT", + "noteParams": {}, + "noteForms": {}, + "angularObjects": {}, + "config": { + "isZeppelinNotebookCronEnable": false + }, + "info": {} +} \ No newline at end of file diff --git a/notebook/Flink Tutorial/Batch ETL_2EW19CSPA.zpln b/notebook/Flink Tutorial/6. Batch ETL_2EW19CSPA.zpln similarity index 78% rename from notebook/Flink Tutorial/Batch ETL_2EW19CSPA.zpln rename to notebook/Flink Tutorial/6. Batch ETL_2EW19CSPA.zpln index 27b4f3a9b4d..d558a76c5c9 100644 --- a/notebook/Flink Tutorial/Batch ETL_2EW19CSPA.zpln +++ b/notebook/Flink Tutorial/6. Batch ETL_2EW19CSPA.zpln @@ -4,7 +4,7 @@ "title": "Overview", "text": "%md\n\nThis tutorial demonstrates how to use Flink do batch ETL via its batch sql + udf (scala, python \u0026 hive). Here\u0027s what we do in this tutorial\n\n* Download [bank](https://archive.ics.uci.edu/ml/datasets/bank+marketing) data via shell interpreter to local\n* Process the raw data via flink batch sql \u0026 scala udf which parse and clean the raw data\n* Write the structured and cleaned data to another flink table via sql\n", "user": "anonymous", - "dateUpdated": "2020-02-03 11:22:34.799", + "dateUpdated": "2020-04-29 16:08:52.383", "config": { "runOnSelectionChange": true, "title": true, @@ -14,13 +14,14 @@ "enabled": true, "results": {}, "editorSetting": { - "language": "text", - "editOnDblClick": false, + "language": "markdown", + "editOnDblClick": true, "completionKey": "TAB", - "completionSupport": true + "completionSupport": false }, - "editorMode": "ace/mode/text", - "editorHide": true + "editorMode": "ace/mode/markdown", + "editorHide": true, + "tableHide": false }, "settings": { "params": {}, @@ -40,15 +41,15 @@ "jobName": "paragraph_1579052523153_721650872", "id": "paragraph_1579052523153_721650872", "dateCreated": "2020-01-15 09:42:03.156", - "dateStarted": "2020-02-03 11:22:34.823", - "dateFinished": "2020-02-03 11:22:34.841", + "dateStarted": "2020-04-27 11:41:03.630", + "dateFinished": "2020-04-27 11:41:04.735", "status": "FINISHED" }, { "title": "Download bank data", - "text": "%sh\n\ncd /tmp\nwget https://archive.ics.uci.edu/ml/machine-learning-databases/00222/bank.zip\ntar -xvf bank.zip\n# upload data to hdfs if you want to run it in yarn mode\n# hadoop fs -put /tmp/bank.csv /tmp/bank.csv\n", + "text": "%sh\n\ncd /tmp\nrm -rf bank*\nwget https://archive.ics.uci.edu/ml/machine-learning-databases/00222/bank.zip\nunzip bank.zip\n# upload data to hdfs if you want to run it in yarn mode\n# hadoop fs -put /tmp/bank.csv /tmp/bank.csv\n", "user": "anonymous", - "dateUpdated": "2020-02-25 11:13:01.938", + "dateUpdated": "2020-04-27 11:37:36.288", "config": { "runOnSelectionChange": true, "title": true, @@ -74,7 +75,7 @@ "msg": [ { "type": "TEXT", - "data": "--2020-02-25 11:13:02-- https://archive.ics.uci.edu/ml/machine-learning-databases/00222/bank.zip\nResolving archive.ics.uci.edu (archive.ics.uci.edu)... 128.195.10.252\nConnecting to archive.ics.uci.edu (archive.ics.uci.edu)|128.195.10.252|:443... connected.\nHTTP request sent, awaiting response... 200 OK\nLength: 579043 (565K) [application/x-httpd-php]\nSaving to: ‘bank.zip’\n\n 0K .......... .......... .......... .......... .......... 8% 78.4K 7s\n 50K .......... .......... .......... .......... .......... 17% 157K 4s\n 100K .......... .......... .......... .......... .......... 26% 63.1K 5s\n 150K .......... .......... .......... .......... .......... 35% 39.5K 6s\n 200K .......... .......... .......... .......... .......... 44% 14.8K 8s\n 250K .......... .......... .......... .......... .......... 53% 18.4K 8s\n 300K .......... .......... .......... .......... .......... 61% 24.6K 7s\n 350K .......... .......... .......... .......... .......... 70% 18.2K 6s\n 400K .......... .......... .......... .......... .......... 79% 22.5K 4s\n 450K .......... .......... .......... .......... .......... 88% 34.9K 2s\n 500K .......... .......... .......... .......... .......... 97% 25.6K 1s\n 550K .......... ..... 100% 17.5K\u003d20s\n\n2020-02-25 11:13:23 (27.7 KB/s) - ‘bank.zip’ saved [579043/579043]\n\nx bank-full.csv\nx bank-names.txt\nx bank.csv\n" + "data": "--2020-04-27 11:37:36-- https://archive.ics.uci.edu/ml/machine-learning-databases/00222/bank.zip\nResolving archive.ics.uci.edu (archive.ics.uci.edu)... 128.195.10.252\nConnecting to archive.ics.uci.edu (archive.ics.uci.edu)|128.195.10.252|:443... connected.\nHTTP request sent, awaiting response... 200 OK\nLength: 579043 (565K) [application/x-httpd-php]\nSaving to: ‘bank.zip’\n\n 0K .......... .......... .......... .......... .......... 8% 88.2K 6s\n 50K .......... .......... .......... .......... .......... 17% 157K 4s\n 100K .......... .......... .......... .......... .......... 26% 136K 3s\n 150K .......... .......... .......... .......... .......... 35% 404K 3s\n 200K .......... .......... .......... .......... .......... 44% 2.32M 2s\n 250K .......... .......... .......... .......... .......... 53% 166K 2s\n 300K .......... .......... .......... .......... .......... 61% 405K 1s\n 350K .......... .......... .......... .......... .......... 70% 130K 1s\n 400K .......... .......... .......... .......... .......... 79% 36.7M 1s\n 450K .......... .......... .......... .......... .......... 88% 59.0M 0s\n 500K .......... .......... .......... .......... .......... 97% 61.5M 0s\n 550K .......... ..... 100% 74.8M\u003d2.2s\n\n2020-04-27 11:37:40 (256 KB/s) - ‘bank.zip’ saved [579043/579043]\n\nArchive: bank.zip\n inflating: bank-full.csv \n inflating: bank-names.txt \n inflating: bank.csv \n" } ] }, @@ -83,15 +84,15 @@ "jobName": "paragraph_1578045094400_1030344935", "id": "paragraph_1578045094400_1030344935", "dateCreated": "2020-01-03 17:51:34.400", - "dateStarted": "2020-02-25 11:13:01.944", - "dateFinished": "2020-02-25 11:13:23.972", + "dateStarted": "2020-04-27 11:37:36.293", + "dateFinished": "2020-04-27 11:37:40.794", "status": "FINISHED" }, { "title": "Raw Data Preview", "text": "%sh\n\nhead -n 10 /tmp/bank.csv", "user": "anonymous", - "dateUpdated": "2020-02-25 11:13:27.044", + "dateUpdated": "2020-04-27 11:37:44.952", "config": { "runOnSelectionChange": true, "title": true, @@ -126,15 +127,15 @@ "jobName": "paragraph_1579053112778_2010129053", "id": "paragraph_1579053112778_2010129053", "dateCreated": "2020-01-15 09:51:52.779", - "dateStarted": "2020-02-25 11:13:27.049", - "dateFinished": "2020-02-25 11:13:27.078", + "dateStarted": "2020-04-27 11:37:44.956", + "dateFinished": "2020-04-27 11:37:44.987", "status": "FINISHED" }, { "title": "Define source table which represents the raw data", - "text": "%flink.bsql\n\nDROP TABLE IF EXISTS bank_raw;\nCREATE TABLE bank_raw (\n content STRING\n) WITH (\n\u0027format.field-delimiter\u0027\u003d\u0027\\n\u0027,\n\u0027connector.type\u0027\u003d\u0027filesystem\u0027,\n\u0027format.derive-schema\u0027\u003d\u0027true\u0027,\n\u0027connector.path\u0027\u003d\u0027hdfs:///tmp/bank.csv\u0027,\n\u0027format.type\u0027\u003d\u0027csv\u0027\n);", + "text": "%flink.bsql\n\nDROP TABLE IF EXISTS bank_raw;\nCREATE TABLE bank_raw (\n content STRING\n) WITH (\n\u0027format.field-delimiter\u0027\u003d\u0027\\n\u0027,\n\u0027connector.type\u0027\u003d\u0027filesystem\u0027,\n\u0027format.derive-schema\u0027\u003d\u0027true\u0027,\n\u0027connector.path\u0027\u003d\u0027/tmp/bank.csv\u0027,\n\u0027format.type\u0027\u003d\u0027csv\u0027\n);", "user": "anonymous", - "dateUpdated": "2020-02-25 11:51:09.302", + "dateUpdated": "2020-04-27 11:39:53.363", "config": { "colWidth": 6.0, "fontSize": 9.0, @@ -169,15 +170,15 @@ "jobName": "paragraph_1578044954921_-1188487356", "id": "paragraph_1578044954921_-1188487356", "dateCreated": "2020-01-03 17:49:14.921", - "dateStarted": "2020-02-25 11:51:09.310", - "dateFinished": "2020-02-25 11:51:32.241", + "dateStarted": "2020-04-27 11:38:36.094", + "dateFinished": "2020-04-27 11:38:36.393", "status": "FINISHED" }, { "title": "Define sink table which represents the cleaned data", - "text": "%flink.bsql\n\nDROP TABLE IF EXISTS bank;\nCREATE TABLE bank (\n age int, \n job string,\n marital string,\n education string,\n `default` string,\n balance string,\n housing string,\n loan string,\n contact string, \n `day` string,\n `month` string,\n duration int,\n campaign int,\n pdays int,\n previous int,\n poutcome string,\n y string\n) WITH (\n\u0027format.field-delimiter\u0027\u003d\u0027,\u0027,\n\u0027connector.type\u0027\u003d\u0027filesystem\u0027,\n\u0027format.derive-schema\u0027\u003d\u0027true\u0027,\n\u0027connector.path\u0027\u003d\u0027hdfs:///tmp/bank_cleaned\u0027,\n\u0027format.type\u0027\u003d\u0027csv\u0027\n);", + "text": "%flink.bsql\n\nDROP TABLE IF EXISTS bank;\nCREATE TABLE bank (\n age int, \n job string,\n marital string,\n education string,\n `default` string,\n balance string,\n housing string,\n loan string,\n contact string, \n `day` string,\n `month` string,\n duration int,\n campaign int,\n pdays int,\n previous int,\n poutcome string,\n y string\n) WITH (\n\u0027format.field-delimiter\u0027\u003d\u0027,\u0027,\n\u0027connector.type\u0027\u003d\u0027filesystem\u0027,\n\u0027format.derive-schema\u0027\u003d\u0027true\u0027,\n\u0027connector.path\u0027\u003d\u0027/tmp/bank_cleaned\u0027,\n\u0027format.type\u0027\u003d\u0027csv\u0027\n);", "user": "anonymous", - "dateUpdated": "2020-02-25 11:52:02.630", + "dateUpdated": "2020-04-27 11:39:50.826", "config": { "runOnSelectionChange": true, "title": true, @@ -212,15 +213,84 @@ "jobName": "paragraph_1578045204379_-1427374232", "id": "paragraph_1578045204379_-1427374232", "dateCreated": "2020-01-03 17:53:24.379", - "dateStarted": "2020-02-25 11:52:02.636", - "dateFinished": "2020-02-25 11:52:03.046", + "dateStarted": "2020-04-27 11:38:37.856", + "dateFinished": "2020-04-27 11:38:38.118", + "status": "FINISHED" + }, + { + "title": "Show tables", + "text": "%flink.bsql\n\nshow tables", + "user": "anonymous", + "dateUpdated": "2020-04-27 11:40:15.544", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "table", + "height": 300.0, + "optionOpen": false, + "setting": { + "table": { + "tableGridState": {}, + "tableColumnTypeState": { + "names": { + "table": "string" + }, + "updated": false + }, + "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", + "tableOptionValue": { + "useFilter": false, + "showPagination": false, + "showAggregationFooter": false + }, + "updated": false, + "initialized": false + } + }, + "commonSetting": {} + } + } + }, + "editorSetting": { + "language": "sql", + "editOnDblClick": false, + "completionKey": "TAB", + "completionSupport": true + }, + "editorMode": "ace/mode/sql", + "title": true + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TABLE", + "data": "table\nbank\nbank_raw\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1587958743728_1444404682", + "id": "paragraph_1587958743728_1444404682", + "dateCreated": "2020-04-27 11:39:03.728", + "dateStarted": "2020-04-27 11:39:06.222", + "dateFinished": "2020-04-27 11:39:06.500", "status": "FINISHED" }, { "title": "Define UDTF ParseFunction to parse the raw data", "text": "%flink\n\nimport org.apache.flink.api.java.typeutils.RowTypeInfo\nimport org.apache.flink.api.common.typeinfo.Types\nimport org.apache.flink.api.java.typeutils._\nimport org.apache.flink.api.scala.typeutils._\nimport org.apache.flink.api.scala._\n\nclass Person(val age:Int, val job: String, val marital: String, val education: String, val default: String, val balance: String, val housing: String, val loan: String, val contact: String, val day: String, val month: String, val duration: Int, val campaign: Int, val pdays: Int, val previous: Int, val poutcome: String, val y: String)\n\nclass ParseFunction extends TableFunction[Row] {\n def eval(line: String) {\n val tokens \u003d line.split(\";\")\n // parse the line\n if (!line.startsWith(\"\\\"age\\\"\")) {\n collect(Row.of(new Integer(tokens(0).toInt), normalize(tokens(1)), normalize(tokens(2)), normalize(tokens(3)), normalize(tokens(4)), normalize(tokens(5)), normalize(tokens(6)), normalize(tokens(7)), normalize(tokens(8)), normalize(tokens(9)), normalize(tokens(10)), new Integer(tokens(11).toInt), new Integer(tokens(12).toInt), \n new Integer(tokens(13).toInt), new Integer(tokens(14).toInt), normalize(tokens(15)), normalize(tokens(16))))\n }\n }\n \n override def getResultType() \u003d {\n val cls \u003d classOf[Person]\n Types.ROW(Types.INT, Types.STRING, Types.STRING, Types.STRING,Types.STRING,Types.STRING,Types.STRING,Types.STRING,Types.STRING,Types.STRING,Types.STRING,\n Types.INT, Types.INT, Types.INT, Types.INT, Types.STRING, Types.STRING)\n }\n\n // remove the quote\n private def normalize(token: String) \u003d {\n if (token.startsWith(\"\\\"\")) {\n token.substring(1, token.length - 1)\n } else {\n token\n }\n }\n}\n\nbtenv.registerFunction(\"parse\", new ParseFunction())", "user": "anonymous", - "dateUpdated": "2020-02-25 11:52:05.326", + "dateUpdated": "2020-04-27 11:38:03.810", "config": { "runOnSelectionChange": true, "title": true, @@ -255,15 +325,15 @@ "jobName": "paragraph_1578888628353_1621411444", "id": "paragraph_1578888628353_1621411444", "dateCreated": "2020-01-13 12:10:28.359", - "dateStarted": "2020-02-25 11:52:05.332", - "dateFinished": "2020-02-25 11:52:07.740", + "dateStarted": "2020-04-27 11:38:03.814", + "dateFinished": "2020-04-27 11:38:06.223", "status": "FINISHED" }, { "title": "Clean data", - "text": "%sh\n\nrm -rf /tmp/bank_cleaned\nhadoop fs -rmr /tmp/bank_cleaned", + "text": "%sh\n\nrm -rf /tmp/bank_cleaned\n#hadoop fs -rmr /tmp/bank_cleaned", "user": "anonymous", - "dateUpdated": "2020-02-25 11:53:29.451", + "dateUpdated": "2020-04-27 11:38:44.643", "config": { "runOnSelectionChange": true, "title": true, @@ -286,27 +356,22 @@ }, "results": { "code": "SUCCESS", - "msg": [ - { - "type": "TEXT", - "data": "rmr: DEPRECATED: Please use \u0027rm -r\u0027 instead.\n20/02/25 11:53:30 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable\n20/02/25 11:53:31 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval \u003d 0 minutes, Emptier interval \u003d 0 minutes.\nDeleted /tmp/bank_cleaned\n" - } - ] + "msg": [] }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1579061020460_-113987164", "id": "paragraph_1579061020460_-113987164", "dateCreated": "2020-01-15 12:03:40.468", - "dateStarted": "2020-02-25 11:53:29.458", - "dateFinished": "2020-02-25 11:53:31.332", + "dateStarted": "2020-04-27 11:38:44.647", + "dateFinished": "2020-04-27 11:38:44.672", "status": "FINISHED" }, { "title": "Parse the data and write it into sink table", "text": "%flink.bsql\n\ninsert into bank select T.* from bank_raw, LATERAL TABLE(parse(content)) as T(age, job, marital, education, `default`, balance, housing, loan, contact, `day`, `month`, duration, campaign, pdays, previous, poutcome, y) ", "user": "anonymous", - "dateUpdated": "2020-02-25 11:53:33.075", + "dateUpdated": "2020-04-27 11:38:47.002", "config": { "runOnSelectionChange": true, "title": true, @@ -341,15 +406,15 @@ "jobName": "paragraph_1578669828368_-1923137601", "id": "paragraph_1578669828368_-1923137601", "dateCreated": "2020-01-10 23:23:48.368", - "dateStarted": "2020-02-25 11:53:33.080", - "dateFinished": "2020-02-25 11:53:43.233", + "dateStarted": "2020-04-27 11:38:47.006", + "dateFinished": "2020-04-27 11:38:50.488", "status": "FINISHED" }, { "title": "Preview output data", "text": "%flink.bsql\n\nselect * from bank limit 10\n", "user": "anonymous", - "dateUpdated": "2020-02-25 11:53:47.207", + "dateUpdated": "2020-04-27 11:40:23.766", "config": { "colWidth": 12.0, "fontSize": 9.0, @@ -428,8 +493,8 @@ "jobName": "paragraph_1578068480238_-1678045273", "id": "paragraph_1578068480238_-1678045273", "dateCreated": "2020-01-04 00:21:20.267", - "dateStarted": "2020-02-25 11:53:47.212", - "dateFinished": "2020-02-25 11:53:48.904", + "dateStarted": "2020-04-27 11:40:23.770", + "dateFinished": "2020-04-27 11:40:24.710", "status": "FINISHED" }, { @@ -461,7 +526,7 @@ "status": "FINISHED" } ], - "name": "Batch ETL", + "name": "6. Batch ETL", "id": "2EW19CSPA", "defaultInterpreterGroup": "flink", "version": "0.9.0-SNAPSHOT", diff --git a/notebook/Flink Tutorial/Exploratory Data Analytics_2EZ9G3JJU.zpln b/notebook/Flink Tutorial/7. Batch Data Analytics_2EZ9G3JJU.zpln similarity index 68% rename from notebook/Flink Tutorial/Exploratory Data Analytics_2EZ9G3JJU.zpln rename to notebook/Flink Tutorial/7. Batch Data Analytics_2EZ9G3JJU.zpln index 8c6a041cdad..c75f4001f09 100644 --- a/notebook/Flink Tutorial/Exploratory Data Analytics_2EZ9G3JJU.zpln +++ b/notebook/Flink Tutorial/7. Batch Data Analytics_2EZ9G3JJU.zpln @@ -2,9 +2,9 @@ "paragraphs": [ { "title": "Overview", - "text": "%md\n\nThis tutorial demonstrates how to use Flink do data exploration analytics via its.\n\n* batch sql \n* udf (scala, python \u0026 hive) \n* Zeppelin\u0027s dynamic forms and builtin visualization\n\nWe the bank data registered in another tutorial note. You can also use any existed hive table. \n", + "text": "%md\n\nThis tutorial demonstrates how to use Flink do data exploration analytics via its.\n\n* batch sql \n* udf (scala, python \u0026 hive) \n* Zeppelin\u0027s dynamic forms and builtin visualization\n\nWe use the bank data registered in another tutorial note. You can also use any existed hive table. \n", "user": "anonymous", - "dateUpdated": "2020-02-06 22:20:28.615", + "dateUpdated": "2020-04-29 22:12:26.213", "config": { "runOnSelectionChange": true, "title": true, @@ -14,32 +14,42 @@ "enabled": true, "results": {}, "editorSetting": { - "language": "text", - "editOnDblClick": false, + "language": "markdown", + "editOnDblClick": true, "completionKey": "TAB", - "completionSupport": true + "completionSupport": false }, - "editorMode": "ace/mode/text", - "editorHide": true + "editorMode": "ace/mode/markdown", + "editorHide": true, + "tableHide": false }, "settings": { "params": {}, "forms": {} }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "HTML", + "data": "\u003cdiv class\u003d\"markdown-body\"\u003e\n\u003cp\u003eThis tutorial demonstrates how to use Flink do data exploration analytics via its.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ebatch sql\u003c/li\u003e\n\u003cli\u003eudf (scala, python \u0026amp; hive)\u003c/li\u003e\n\u003cli\u003eZeppelin\u0026rsquo;s dynamic forms and builtin visualization\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWe use the bank data registered in another tutorial note. You can also use any existed hive table.\u003c/p\u003e\n\n\u003c/div\u003e" + } + ] + }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1579053946947_-1754951794", "id": "paragraph_1579053946947_-1754951794", "dateCreated": "2020-01-15 10:05:46.947", - "dateStarted": "2020-02-03 11:26:55.753", - "dateFinished": "2020-02-03 11:26:55.770", + "dateStarted": "2020-04-29 22:12:26.216", + "dateFinished": "2020-04-29 22:12:26.371", "status": "FINISHED" }, { "title": "Common group by", "text": "%flink.bsql\n\nselect age, count(1) as aval\nfrom bank \nwhere age \u003c 30 \ngroup by age \norder by age\n", "user": "anonymous", - "dateUpdated": "2020-02-25 11:58:22.617", + "dateUpdated": "2020-04-27 11:41:22.697", "config": { "runOnSelectionChange": true, "title": true, @@ -111,20 +121,29 @@ "params": {}, "forms": {} }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TABLE", + "data": "age\taval\n19\t4\n20\t3\n21\t7\n22\t9\n23\t20\n24\t24\n25\t44\n26\t77\n27\t94\n28\t103\n29\t97\n" + } + ] + }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1578043926895_1558885985", "id": "paragraph_1578043926895_1558885985", "dateCreated": "2020-01-03 17:32:06.895", - "dateStarted": "2020-02-25 11:58:22.625", - "dateFinished": "2020-02-25 11:58:54.476", + "dateStarted": "2020-04-27 11:41:22.702", + "dateFinished": "2020-04-27 11:41:24.871", "status": "FINISHED" }, { "title": "Textbox dynamic form", "text": "%flink.bsql\n\nselect age, count(1) as val \nfrom bank \nwhere age \u003c ${maxAge\u003d30} \ngroup by age \norder by age", "user": "anonymous", - "dateUpdated": "2020-02-25 11:59:02.987", + "dateUpdated": "2020-04-27 11:41:24.988", "config": { "runOnSelectionChange": true, "title": true, @@ -205,20 +224,29 @@ } } }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TABLE", + "data": "age\tval\n19\t4\n20\t3\n21\t7\n22\t9\n23\t20\n24\t24\n25\t44\n26\t77\n27\t94\n28\t103\n29\t97\n30\t150\n31\t199\n32\t224\n33\t186\n34\t231\n35\t180\n36\t188\n37\t161\n38\t159\n39\t130\n40\t142\n41\t135\n42\t141\n43\t115\n44\t105\n45\t112\n46\t119\n47\t108\n48\t114\n49\t112\n" + } + ] + }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1578904010994_-1300955750", "id": "paragraph_1578904010994_-1300955750", "dateCreated": "2020-01-13 16:26:50.994", - "dateStarted": "2020-02-25 11:59:02.992", - "dateFinished": "2020-02-25 11:59:05.094", + "dateStarted": "2020-04-27 11:41:24.995", + "dateFinished": "2020-04-27 11:41:26.433", "status": "FINISHED" }, { "title": "Select dynamic form", "text": "%flink.bsql\n\nselect age, count(1) as val \nfrom bank \nwhere marital\u003d\u0027${marital\u003dsingle,single|divorced|married}\u0027 \ngroup by age \norder by age", "user": "anonymous", - "dateUpdated": "2020-02-25 11:59:05.987", + "dateUpdated": "2020-04-27 11:41:26.761", "config": { "runOnSelectionChange": true, "title": true, @@ -310,20 +338,29 @@ } } }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TABLE", + "data": "age\tval\n23\t3\n24\t11\n25\t11\n26\t18\n27\t26\n28\t23\n29\t37\n30\t56\n31\t104\n32\t105\n33\t103\n34\t142\n35\t109\n36\t117\n37\t100\n38\t99\n39\t88\n40\t105\n41\t97\n42\t91\n43\t79\n44\t68\n45\t76\n46\t82\n47\t78\n48\t91\n49\t87\n50\t74\n51\t63\n52\t66\n53\t75\n54\t56\n55\t68\n56\t50\n57\t78\n58\t67\n59\t56\n60\t36\n61\t15\n62\t5\n63\t7\n64\t6\n65\t4\n66\t7\n67\t5\n68\t1\n69\t5\n70\t5\n71\t5\n72\t4\n73\t6\n74\t2\n75\t3\n76\t1\n77\t5\n78\t2\n79\t3\n80\t6\n81\t1\n83\t2\n86\t1\n87\t1\n" + } + ] + }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1578904047823_-1212655985", "id": "paragraph_1578904047823_-1212655985", "dateCreated": "2020-01-13 16:27:27.823", - "dateStarted": "2020-02-25 11:59:05.992", - "dateFinished": "2020-02-25 11:59:07.733", + "dateStarted": "2020-04-27 11:41:26.765", + "dateFinished": "2020-04-27 11:41:27.951", "status": "FINISHED" }, { "title": "Scala UDF", "text": "%flink\n\n\nclass ScalaUpper extends ScalarFunction {\n def eval(str: String) \u003d str.toUpperCase\n}\n\nbtenv.registerFunction(\"scala_upper\", new ScalaUpper())\n", "user": "anonymous", - "dateUpdated": "2020-02-25 11:59:10.659", + "dateUpdated": "2020-04-27 11:41:30.878", "config": { "runOnSelectionChange": true, "title": true, @@ -344,20 +381,29 @@ "params": {}, "forms": {} }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TEXT", + "data": "defined class ScalaUpper\n" + } + ] + }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1578905208609_-1175158458", "id": "paragraph_1578905208609_-1175158458", "dateCreated": "2020-01-13 16:46:48.612", - "dateStarted": "2020-02-25 11:59:10.673", - "dateFinished": "2020-02-25 11:59:11.167", + "dateStarted": "2020-04-27 11:41:30.882", + "dateFinished": "2020-04-27 11:41:31.641", "status": "FINISHED" }, { "title": "Python UDF", "text": "%flink.pyflink\n\nclass PythonUpper(ScalarFunction):\n def eval(self, s):\n return s.upper()\n\nbt_env.register_function(\"python_upper\", udf(PythonUpper(), DataTypes.STRING(), DataTypes.STRING()))\n\n\n\n\n", "user": "anonymous", - "dateUpdated": "2020-02-25 13:25:28.625", + "dateUpdated": "2020-04-27 11:41:33.020", "config": { "runOnSelectionChange": true, "title": true, @@ -378,20 +424,24 @@ "params": {}, "forms": {} }, + "results": { + "code": "SUCCESS", + "msg": [] + }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1578905223714_1228156151", "id": "paragraph_1578905223714_1228156151", "dateCreated": "2020-01-13 16:47:03.714", - "dateStarted": "2020-02-25 13:25:28.632", - "dateFinished": "2020-02-25 13:25:55.243", + "dateStarted": "2020-04-27 11:41:33.024", + "dateFinished": "2020-04-27 11:41:39.562", "status": "FINISHED" }, { "title": "All available sql in %flink.bsql", "text": "%flink.bsql\n\nhelp", "user": "anonymous", - "dateUpdated": "2020-02-25 11:59:19.106", + "dateUpdated": "2020-04-27 11:41:37.384", "config": { "colWidth": 12.0, "fontSize": 9.0, @@ -418,20 +468,29 @@ "params": {}, "forms": {} }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TEXT", + "data": "The following commands are available:\n\nCREATE TABLE\t\tCreate table under current catalog and database.\nDROP TABLE\t\tDrop table with optional catalog and database. Syntax: \u0027DROP TABLE [IF EXISTS] \u003cname\u003e;\u0027\nCREATE VIEW\t\tCreates a virtual table from a SQL query. Syntax: \u0027CREATE VIEW \u003cname\u003e AS \u003cquery\u003e;\u0027\nDESCRIBE\t\tDescribes the schema of a table with the given name.\nDROP VIEW\t\tDeletes a previously created virtual table. Syntax: \u0027DROP VIEW \u003cname\u003e;\u0027\nEXPLAIN\t\tDescribes the execution plan of a query or table with the given name.\nHELP\t\tPrints the available commands.\nINSERT INTO\t\tInserts the results of a SQL SELECT query into a declared table sink.\nINSERT OVERWRITE\t\tInserts the results of a SQL SELECT query into a declared table sink and overwrite existing data.\nSELECT\t\tExecutes a SQL SELECT query on the Flink cluster.\nSET\t\tSets a session configuration property. Syntax: \u0027SET \u003ckey\u003e\u003d\u003cvalue\u003e;\u0027. Use \u0027SET;\u0027 for listing all properties.\nSHOW FUNCTIONS\t\tShows all user-defined and built-in functions.\nSHOW TABLES\t\tShows all registered tables.\nSOURCE\t\tReads a SQL SELECT query from a file and executes it on the Flink cluster.\nUSE CATALOG\t\tSets the current catalog. The current database is set to the catalog\u0027s default one. Experimental! Syntax: \u0027USE CATALOG \u003cname\u003e;\u0027\nUSE\t\tSets the current default database. Experimental! Syntax: \u0027USE \u003cname\u003e;\u0027\n\nHint: Make sure that a statement ends with \u0027;\u0027 for finalizing (multi-line) statements." + } + ] + }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1580872625746_1221957461", "id": "paragraph_1580872625746_1221957461", "dateCreated": "2020-02-05 11:17:05.753", - "dateStarted": "2020-02-25 11:59:19.111", - "dateFinished": "2020-02-25 11:59:19.275", + "dateStarted": "2020-04-27 11:41:37.388", + "dateFinished": "2020-04-27 11:41:37.859", "status": "FINISHED" }, { "title": "Use scala udf in sql", "text": "%flink.bsql\n\nselect scala_upper(education), count(1) from bank group by education\n", "user": "anonymous", - "dateUpdated": "2020-02-25 11:59:22.259", + "dateUpdated": "2020-04-27 11:41:42.397", "config": { "runOnSelectionChange": true, "title": true, @@ -503,20 +562,29 @@ "params": {}, "forms": {} }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TABLE", + "data": "EXPR$0\tEXPR$1\nPRIMARY\t678\nSECONDARY\t2306\nTERTIARY\t1350\nUNKNOWN\t187\n" + } + ] + }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1578905241045_-678553675", "id": "paragraph_1578905241045_-678553675", "dateCreated": "2020-01-13 16:47:21.045", - "dateStarted": "2020-02-25 11:59:22.265", - "dateFinished": "2020-02-25 11:59:24.020", + "dateStarted": "2020-04-27 11:41:42.402", + "dateFinished": "2020-04-27 11:41:43.547", "status": "FINISHED" }, { "title": "Use python udf in sql", "text": "%flink.bsql\n\nselect python_upper(education) as edu, count(1) as c from bank group by education\n\n", "user": "anonymous", - "dateUpdated": "2020-02-25 13:26:40.167", + "dateUpdated": "2020-04-27 11:41:44.032", "config": { "runOnSelectionChange": true, "title": true, @@ -601,224 +669,22 @@ "params": {}, "forms": {} }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TABLE", + "data": "edu\tc\nPRIMARY\t678\nSECONDARY\t2306\nTERTIARY\t1350\nUNKNOWN\t187\n" + } + ] + }, "apps": [], "progressUpdateIntervalMs": 500, "jobName": "paragraph_1578905276271_782994324", "id": "paragraph_1578905276271_782994324", "dateCreated": "2020-01-13 16:47:56.271", - "dateStarted": "2020-02-25 13:26:40.177", - "dateFinished": "2020-02-25 13:26:59.228", - "status": "FINISHED" - }, - { - "title": "Show all hive tables", - "text": "%hive\n\nshow tables\n", - "user": "anonymous", - "dateUpdated": "2020-02-25 13:27:52.508", - "config": { - "colWidth": 6.0, - "fontSize": 9.0, - "enabled": true, - "results": { - "0": { - "graph": { - "mode": "table", - "height": 300.0, - "optionOpen": false, - "setting": { - "table": { - "tableGridState": { - "columns": [ - { - "name": "tab_name0", - "visible": true, - "width": "*", - "sort": { - "priority": 0.0, - "direction": "asc" - }, - "filters": [ - {} - ], - "pinned": "" - } - ], - "scrollFocus": {}, - "selection": [], - "grouping": { - "grouping": [], - "aggregations": [], - "rowExpandedStates": {} - }, - "treeView": {}, - "pagination": { - "paginationCurrentPage": 1.0, - "paginationPageSize": 250.0 - } - }, - "tableColumnTypeState": { - "names": { - "tab_name": "string" - }, - "updated": false - }, - "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", - "tableOptionValue": { - "useFilter": false, - "showPagination": false, - "showAggregationFooter": false - }, - "updated": false, - "initialized": false - } - }, - "commonSetting": {} - } - } - }, - "editorSetting": { - "language": "text", - "editOnDblClick": false, - "completionKey": "TAB", - "completionSupport": true - }, - "editorMode": "ace/mode/text", - "title": true - }, - "settings": { - "params": {}, - "forms": {} - }, - "apps": [], - "progressUpdateIntervalMs": 500, - "jobName": "paragraph_1580889919226_-1710921935", - "id": "paragraph_1580889919226_-1710921935", - "dateCreated": "2020-02-05 16:05:19.226", - "dateStarted": "2020-02-25 13:27:52.513", - "dateFinished": "2020-02-25 13:27:55.846", - "status": "FINISHED" - }, - { - "title": "Describe Hive table via Flink Sql", - "text": "%flink.bsql\n\nshow tables", - "user": "anonymous", - "dateUpdated": "2020-02-25 13:28:14.314", - "config": { - "colWidth": 6.0, - "fontSize": 9.0, - "enabled": true, - "results": { - "0": { - "graph": { - "mode": "table", - "height": 300.0, - "optionOpen": false, - "setting": { - "table": { - "tableGridState": {}, - "tableColumnTypeState": { - "names": { - "table": "string" - }, - "updated": false - }, - "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", - "tableOptionValue": { - "useFilter": false, - "showPagination": false, - "showAggregationFooter": false - }, - "updated": false, - "initialized": false - } - }, - "commonSetting": {} - } - } - }, - "editorSetting": { - "language": "sql", - "editOnDblClick": false, - "completionKey": "TAB", - "completionSupport": true - }, - "editorMode": "ace/mode/sql", - "title": true - }, - "settings": { - "params": {}, - "forms": {} - }, - "apps": [], - "progressUpdateIntervalMs": 500, - "jobName": "paragraph_1580890881367_1309558694", - "id": "paragraph_1580890881367_1309558694", - "dateCreated": "2020-02-05 16:21:21.368", - "dateStarted": "2020-02-25 13:28:13.536", - "dateFinished": "2020-02-25 13:28:13.686", - "status": "FINISHED" - }, - { - "title": "Query Hive table via Flink Sql", - "text": "%flink.bsql\n\nselect * from employee\n", - "user": "anonymous", - "dateUpdated": "2020-02-25 13:36:20.020", - "config": { - "colWidth": 12.0, - "fontSize": 9.0, - "enabled": true, - "results": { - "0": { - "graph": { - "mode": "table", - "height": 300.0, - "optionOpen": false, - "setting": { - "table": { - "tableGridState": {}, - "tableColumnTypeState": { - "names": { - "eid": "string", - "name": "string", - "salary": "string", - "destination": "string" - }, - "updated": false - }, - "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", - "tableOptionValue": { - "useFilter": false, - "showPagination": false, - "showAggregationFooter": false - }, - "updated": false, - "initialized": false - } - }, - "commonSetting": {} - } - } - }, - "editorSetting": { - "language": "sql", - "editOnDblClick": false, - "completionKey": "TAB", - "completionSupport": true - }, - "editorMode": "ace/mode/sql", - "title": true - }, - "settings": { - "params": {}, - "forms": {} - }, - "apps": [], - "progressUpdateIntervalMs": 500, - "jobName": "paragraph_1578043607185_590649655", - "id": "paragraph_1578043607185_590649655", - "dateCreated": "2020-01-03 17:26:47.185", - "dateStarted": "2020-02-25 13:36:20.025", - "dateFinished": "2020-02-25 13:36:53.391", + "dateStarted": "2020-04-27 11:41:44.034", + "dateFinished": "2020-04-27 11:41:51.537", "status": "FINISHED" }, { @@ -838,7 +704,7 @@ "status": "READY" } ], - "name": "Exploratory Data Analytics", + "name": "7. Batch Exploratory Data Analytics", "id": "2EZ9G3JJU", "defaultInterpreterGroup": "flink", "version": "0.9.0-SNAPSHOT", diff --git a/notebook/Flink Tutorial/8. Logistic Regression (Alink)_2F4HJNWVN.zpln b/notebook/Flink Tutorial/8. Logistic Regression (Alink)_2F4HJNWVN.zpln new file mode 100644 index 00000000000..fe0540e44b4 --- /dev/null +++ b/notebook/Flink Tutorial/8. Logistic Regression (Alink)_2F4HJNWVN.zpln @@ -0,0 +1,369 @@ +{ + "paragraphs": [ + { + "text": "%md\n\n# Introduction\n\nThis note is to demonstrate how to do machine learning in flink. Here we use [Alink](https://github.com/alibaba/Alink/). \nWe use logics regression to do classification task. We use the same data as other tutorials [bank](https://archive.ics.uci.edu/ml/datasets/bank+marketing).\n", + "user": "anonymous", + "dateUpdated": "2020-04-29 16:09:44.080", + "config": { + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "markdown", + "editOnDblClick": true, + "completionKey": "TAB", + "completionSupport": false + }, + "editorMode": "ace/mode/markdown", + "editorHide": true, + "tableHide": false + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "HTML", + "data": "\u003cdiv class\u003d\"markdown-body\"\u003e\n\u003ch1\u003eIntroduction\u003c/h1\u003e\n\u003cp\u003eThis note is to demonstrate how to do machine learning in flink. Here we use \u003ca href\u003d\"https://github.com/alibaba/Alink/\"\u003eAlink\u003c/a\u003e.\u003cbr /\u003e\nWe use logics regression to do classification task. We use the same data as other tutorials \u003ca href\u003d\"https://archive.ics.uci.edu/ml/datasets/bank+marketing\"\u003ebank\u003c/a\u003e.\u003c/p\u003e\n\n\u003c/div\u003e" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1588147625869_1181490991", + "id": "paragraph_1588147625869_1181490991", + "dateCreated": "2020-04-29 16:07:05.869", + "dateStarted": "2020-04-29 16:09:44.080", + "dateFinished": "2020-04-29 16:09:44.102", + "status": "FINISHED" + }, + { + "text": "%flink.pyflink\n\nimport pyflink\nfrom pyflink.dataset import ExecutionEnvironment\nfrom pyflink.datastream import StreamExecutionEnvironment\nfrom pyalink.alink.env import useCustomEnv\nmlenv \u003d useCustomEnv(gateway,\n b_env,bt_env_2, s_env, st_env_2)\nfrom pyalink.alink import *\n\nt \u003d bt_env_2.from_elements([(1, 2), (2, 5), (3, 1)], [\u0027a\u0027, \u0027b\u0027])\nsource \u003d TableSourceBatchOp(t)\nsource.print()", + "user": "anonymous", + "dateUpdated": "2020-04-27 13:48:06.523", + "config": { + "editorMode": "ace/mode/python", + "editorHide": false, + "colWidth": 6.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "python", + "editOnDblClick": false, + "completionSupport": true, + "completionKey": "TAB" + } + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TEXT", + "data": "\nUse one of the following commands to start using PyAlink:\n - useLocalEnv(parallelism, flinkHome\u003dNone, config\u003dNone)\n - useRemoteEnv(host, port, parallelism, flinkHome\u003dNone, localIp\u003d\"localhost\", config\u003dNone)\nCall resetEnv() to reset environment and switch to another.\n\n a b\n0 1 2\n1 2 5\n2 3 1\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1583768872979_-705704388", + "id": "20200309-234752_541772059", + "dateCreated": "2020-03-09 23:47:52.979", + "dateStarted": "2020-04-27 13:48:06.528", + "dateFinished": "2020-04-27 13:48:29.623", + "status": "FINISHED" + }, + { + "text": "%flink.pyflink\n\n\ntest_data_path \u003d \"/tmp/bank.csv\"\nfull_data_path \u003d \"/tmp/bank-full.csv\"\nschema_str \u003d \"age int, job string, marital string, education string, default string, balance string, housing string, loan string, contact string, day string, month string, duration int, campaign int, pdays int, previous int, poutcome string, y string\"\n\ntest_data \u003d CsvSourceBatchOp() \\\n .setFilePath(test_data_path) \\\n .setSchemaStr(schema_str) \\\n .setIgnoreFirstLine(True) \\\n .setFieldDelimiter(\";\")\n \nfull_data \u003d CsvSourceBatchOp() \\\n .setFilePath(full_data_path) \\\n .setSchemaStr(schema_str) \\\n .setIgnoreFirstLine(True) \\\n .setFieldDelimiter(\";\")\n \ntrain_set \u003d UnionAllBatchOp().linkFrom(\n full_data.filter(\"y\u003d\u0027yes\u0027\"),\n full_data.filter(\"y\u003d\u0027no\u0027\").sample(0.25)\n \n)", + "user": "anonymous", + "dateUpdated": "2020-04-29 16:10:03.433", + "config": { + "editorMode": "ace/mode/python", + "editorHide": false, + "colWidth": 6.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "python", + "editOnDblClick": false, + "completionSupport": true, + "completionKey": "TAB" + } + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1583768872982_-1596320538", + "id": "20200309-234752_30368548", + "dateCreated": "2020-03-09 23:47:52.982", + "dateStarted": "2020-04-27 13:48:33.820", + "dateFinished": "2020-04-27 13:48:34.969", + "status": "FINISHED" + }, + { + "text": "%flink.pyflink\n\n\ncategoricalColNames \u003d [\"job\", \"marital\", \"education\", \"default\",\n \"balance\", \"housing\", \"loan\", \"contact\", \"poutcome\" ]\nnumerialColNames \u003d [\"age\", \"duration\", \"campaign\", \"pdays\",\n \"previous\"]\nlabelColName \u003d \"y\"\n\nonehot \u003d OneHotEncoder().setSelectedCols(categoricalColNames) \\\n .setOutputCols([\"output\"])\nassembler \u003d VectorAssembler().setSelectedCols([\"output\"] + numerialColNames) \\\n .setOutputCol(\"vec\")\npipeline \u003d Pipeline().add(onehot).add(assembler)", + "user": "anonymous", + "dateUpdated": "2020-04-27 13:48:37.221", + "config": { + "editorMode": "ace/mode/python", + "editorHide": false, + "colWidth": 6.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "python", + "editOnDblClick": false, + "completionSupport": true, + "completionKey": "TAB" + } + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1583768872983_-260771927", + "id": "20200309-234752_1624274051", + "dateCreated": "2020-03-09 23:47:52.983", + "dateStarted": "2020-04-27 13:48:37.242", + "dateFinished": "2020-04-27 13:48:37.911", + "status": "FINISHED" + }, + { + "text": "%flink.pyflink\n\n\nlogistic \u003d LogisticRegression().setVectorCol(\"vec\").setLabelCol(labelColName) \\\n .setPredictionCol(\"pred\").setPredictionDetailCol(\"detail\")\nmodel \u003d pipeline.add(logistic).fit(train_set)\n\npredict \u003d model.transform(test_data)\n\nmetrics \u003d EvalBinaryClassBatchOp().setLabelCol(labelColName) \\\n .setPredictionDetailCol(\"detail\").linkFrom(predict).collectMetrics()\n \n \n ", + "user": "anonymous", + "dateUpdated": "2020-04-27 13:48:39.232", + "config": { + "editorMode": "ace/mode/python", + "editorHide": false, + "colWidth": 6.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "python", + "editOnDblClick": false, + "completionSupport": true, + "completionKey": "TAB" + } + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1583768872983_-2044786839", + "id": "20200309-234752_452787710", + "dateCreated": "2020-03-09 23:47:52.983", + "dateStarted": "2020-04-27 13:48:39.249", + "dateFinished": "2020-04-27 13:48:50.221", + "status": "FINISHED" + }, + { + "text": "%flink.pyflink\n\nprint(\"AUC:\", metrics.getAuc())\nprint(\"KS:\", metrics.getKs())\nprint(\"PRC:\", metrics.getPrc())\nprint(\"Precision:\", metrics.getPrecision())\nprint(\"Recall:\", metrics.getRecall())\nprint(\"F1:\", metrics.getF1())\nprint(\"ConfusionMatrix:\", metrics.getConfusionMatrix())\nprint(\"LabelArray:\", metrics.getLabelArray())\nprint(\"LogLoss:\", metrics.getLogLoss())\nprint(\"TotalSamples:\", metrics.getTotalSamples())\nprint(\"ActualLabelProportion:\", metrics.getActualLabelProportion())\nprint(\"ActualLabelFrequency:\", metrics.getActualLabelFrequency())\nprint(\"Accuracy:\", metrics.getAccuracy())\nprint(\"Kappa:\", metrics.getKappa())", + "user": "anonymous", + "dateUpdated": "2020-04-27 13:48:51.441", + "config": { + "editorMode": "ace/mode/python", + "editorHide": false, + "colWidth": 6.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "python", + "editOnDblClick": false, + "completionSupport": true, + "completionKey": "TAB" + } + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TEXT", + "data": "AUC: 0.9076425143954201\nKS: 0.6844817658349329\nPRC: 0.5349186786420718\nPrecision: 0.4748803827751196\nRecall: 0.761996161228407\nF1: 0.5851142225497421\nConfusionMatrix: [[397, 439], [124, 3561]]\nLabelArray: [\u0027yes\u0027, \u0027no\u0027]\nLogLoss: 0.3427333415817235\nTotalSamples: 4521\nActualLabelProportion: [0.11523999115239991, 0.8847600088476001]\nActualLabelFrequency: [521, 4000]\nAccuracy: 0.8754700287547003\nKappa: 0.5164554316821129\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1583768872984_389357281", + "id": "20200309-234752_912989550", + "dateCreated": "2020-03-09 23:47:52.984", + "dateStarted": "2020-04-27 13:48:51.451", + "dateFinished": "2020-04-27 13:48:52.073", + "status": "FINISHED" + }, + { + "text": "%flink.pyflink\n\ndf \u003d predict.filter(\"y\u003c\u003epred\").firstN(300).collectToDataframe()\n\nz.show(df)", + "user": "anonymous", + "dateUpdated": "2020-04-27 13:48:54.873", + "config": { + "editorMode": "ace/mode/python", + "editorHide": false, + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": { + "0": { + "graph": { + "mode": "table", + "height": 300.0, + "optionOpen": false, + "setting": { + "table": { + "tableGridState": {}, + "tableColumnTypeState": { + "names": { + "age": "string", + "job": "string", + "marital": "string", + "education": "string", + "default": "string", + "balance": "string", + "housing": "string", + "loan": "string", + "contact": "string", + "day": "string", + "month": "string", + "duration": "string", + "campaign": "string", + "pdays": "string", + "previous": "string", + "poutcome": "string", + "y": "string", + "output": "string", + "vec": "string", + "pred": "string", + "detail": "string" + }, + "updated": false + }, + "tableOptionSpecHash": "[{\"name\":\"useFilter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable filter for columns\"},{\"name\":\"showPagination\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable pagination for better navigation\"},{\"name\":\"showAggregationFooter\",\"valueType\":\"boolean\",\"defaultValue\":false,\"widget\":\"checkbox\",\"description\":\"Enable a footer for displaying aggregated values\"}]", + "tableOptionValue": { + "useFilter": false, + "showPagination": false, + "showAggregationFooter": false + }, + "updated": false, + "initialized": false + } + }, + "commonSetting": {} + } + } + }, + "editorSetting": { + "language": "python", + "editOnDblClick": false, + "completionSupport": true, + "completionKey": "TAB" + } + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TABLE", + "data": "age\tjob\tmarital\teducation\tdefault\tbalance\thousing\tloan\tcontact\tday\tmonth\tduration\tcampaign\tpdays\tprevious\tpoutcome\ty\toutput\tvec\tpred\tdetail\n36\tself-employed\tmarried\ttertiary\tno\t307\tyes\tno\tcellular\t14\tmay\t341\t1\t330\t2\tother\tno\t$4563$6:1.0 13:1.0 17:1.0 19:1.0 2518:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$6:1.0 13:1.0 17:1.0 19:1.0 2518:1.0 4554:1.0 4556:1.0 4560:1.0 4563:36.0 4564:341.0 4565:1.0 4566:330.0 4567:2.0\tyes\t{\"no\":\"0.24364838869421468\",\"yes\":\"0.7563516113057853\"}\n31\tservices\tmarried\tsecondary\tno\t132\tno\tno\tcellular\t7\tjul\t148\t1\t152\t1\tother\tno\t$4563$7:1.0 13:1.0 16:1.0 19:1.0 1043:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$7:1.0 13:1.0 16:1.0 19:1.0 1043:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:31.0 4564:148.0 4565:1.0 4566:152.0 4567:1.0\tyes\t{\"no\":\"0.3501427245267339\",\"yes\":\"0.6498572754732661\"}\n78\tretired\tdivorced\tprimary\tno\t229\tno\tno\ttelephone\t22\toct\t97\t1\t-1\t0\tunknown\tyes\t$4563$5:1.0 12:1.0 15:1.0 19:1.0 1962:1.0 4552:1.0 4554:1.0 4557:1.0\t$4568$5:1.0 12:1.0 15:1.0 19:1.0 1962:1.0 4552:1.0 4554:1.0 4557:1.0 4563:78.0 4564:97.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6104429520406811\",\"yes\":\"0.3895570479593189\"}\n32\tblue-collar\tmarried\tsecondary\tno\t2089\tyes\tno\tcellular\t14\tnov\t132\t1\t-1\t0\tunknown\tyes\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 1790:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 1790:1.0 4554:1.0 4556:1.0 4563:32.0 4564:132.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.955472844471085\",\"yes\":\"0.04452715552891495\"}\n37\ttechnician\tsingle\tsecondary\tno\t228\tyes\tno\tcellular\t20\taug\t1740\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 19:1.0 1952:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 1952:1.0 4554:1.0 4556:1.0 4563:37.0 4564:1740.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.0015312625158320214\",\"yes\":\"0.998468737484168\"}\n33\tself-employed\tsingle\ttertiary\tno\t2155\tno\tno\tcellular\t17\tnov\t295\t1\t-1\t0\tunknown\tno\t$4563$6:1.0 17:1.0 19:1.0 1846:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$6:1.0 17:1.0 19:1.0 1846:1.0 4552:1.0 4554:1.0 4556:1.0 4563:33.0 4564:295.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.12667119287866468\",\"yes\":\"0.8733288071213353\"}\n41\tblue-collar\tmarried\tprimary\tno\t-516\tno\tyes\ttelephone\t8\tjul\t554\t3\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 15:1.0 19:1.0 4551:1.0 4552:1.0 4557:1.0\t$4568$1:1.0 13:1.0 15:1.0 19:1.0 4551:1.0 4552:1.0 4557:1.0 4563:41.0 4564:554.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.47900049763976393\",\"yes\":\"0.5209995023602361\"}\n41\tmanagement\tmarried\tsecondary\tno\t0\tno\tyes\tcellular\t7\tjul\t630\t3\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4556:1.0\t$4568$4:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4556:1.0 4563:41.0 4564:630.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.44932323385184647\",\"yes\":\"0.5506767661481535\"}\n32\ttechnician\tsingle\ttertiary\tno\t360\tno\tno\tcellular\t19\tnov\t164\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 17:1.0 19:1.0 2821:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 17:1.0 19:1.0 2821:1.0 4552:1.0 4554:1.0 4556:1.0 4563:32.0 4564:164.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.30085388242720246\",\"yes\":\"0.6991461175727975\"}\n50\tblue-collar\tdivorced\tprimary\tno\t388\tno\tno\tcellular\t5\tfeb\t701\t1\t-1\t0\tunknown\tno\t$4563$1:1.0 12:1.0 15:1.0 19:1.0 2961:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 12:1.0 15:1.0 19:1.0 2961:1.0 4552:1.0 4554:1.0 4556:1.0 4563:50.0 4564:701.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.43241435376779047\",\"yes\":\"0.5675856462322095\"}\n27\tservices\tsingle\tsecondary\tno\t-195\tyes\tno\tcellular\t18\tmay\t391\t1\t-1\t0\tunknown\tyes\t$4563$7:1.0 16:1.0 19:1.0 150:1.0 4554:1.0 4556:1.0\t$4568$7:1.0 16:1.0 19:1.0 150:1.0 4554:1.0 4556:1.0 4563:27.0 4564:391.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.5670406427705115\",\"yes\":\"0.43295935722948853\"}\n30\tadmin.\tsingle\ttertiary\tno\t261\tno\tno\tcellular\t19\toct\t233\t1\t137\t20\tfailure\tno\t$4563$0:1.0 17:1.0 19:1.0 2201:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$0:1.0 17:1.0 19:1.0 2201:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:30.0 4564:233.0 4565:1.0 4566:137.0 4567:20.0\tyes\t{\"no\":\"0.2033695162990653\",\"yes\":\"0.7966304837009347\"}\n36\tblue-collar\tdivorced\tsecondary\tno\t2843\tno\tno\tcellular\t12\tfeb\t473\t1\t182\t1\tsuccess\tno\t$4563$1:1.0 12:1.0 16:1.0 19:1.0 2373:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$1:1.0 12:1.0 16:1.0 19:1.0 2373:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:36.0 4564:473.0 4565:1.0 4566:182.0 4567:1.0\tyes\t{\"no\":\"0.009990001827027584\",\"yes\":\"0.9900099981729724\"}\n38\tmanagement\tsingle\ttertiary\tno\t493\tyes\tno\tcellular\t11\tmay\t553\t1\t367\t7\tfailure\tno\t$4563$4:1.0 17:1.0 19:1.0 3400:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 17:1.0 19:1.0 3400:1.0 4554:1.0 4556:1.0 4559:1.0 4563:38.0 4564:553.0 4565:1.0 4566:367.0 4567:7.0\tyes\t{\"no\":\"0.061803797749072964\",\"yes\":\"0.938196202250927\"}\n25\ttechnician\tsingle\tsecondary\tno\t505\tno\tyes\tcellular\t17\tnov\t386\t2\t-1\t0\tunknown\tyes\t$4563$9:1.0 16:1.0 19:1.0 3447:1.0 4552:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 3447:1.0 4552:1.0 4556:1.0 4563:25.0 4564:386.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6715765425918485\",\"yes\":\"0.3284234574081515\"}\n46\tmanagement\tdivorced\ttertiary\tno\t25\tno\tno\tunknown\t17\tjun\t564\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 12:1.0 17:1.0 19:1.0 2124:1.0 4552:1.0 4554:1.0\t$4568$4:1.0 12:1.0 17:1.0 19:1.0 2124:1.0 4552:1.0 4554:1.0 4563:46.0 4564:564.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.057851301653060405\",\"yes\":\"0.9421486983469396\"}\n31\tadmin.\tdivorced\tsecondary\tno\t1890\tyes\tno\tcellular\t21\tjul\t588\t1\t-1\t0\tunknown\tno\t$4563$0:1.0 12:1.0 16:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 12:1.0 16:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0 4563:31.0 4564:588.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.41174142408022874\",\"yes\":\"0.5882585759197713\"}\n36\tblue-collar\tmarried\tsecondary\tno\t-231\tno\tyes\tcellular\t15\tjul\t779\t2\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4556:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4556:1.0 4563:36.0 4564:779.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2065802413636505\",\"yes\":\"0.7934197586363495\"}\n35\tmanagement\tmarried\ttertiary\tno\t106\tno\tyes\tcellular\t11\taug\t588\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 685:1.0 4552:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 685:1.0 4552:1.0 4556:1.0 4563:35.0 4564:588.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3075232738388288\",\"yes\":\"0.6924767261611712\"}\n40\tadmin.\tsingle\tsecondary\tno\t462\tyes\tyes\tcellular\t6\tapr\t272\t1\t335\t4\tother\tno\t$4563$0:1.0 16:1.0 19:1.0 3281:1.0 4556:1.0 4560:1.0\t$4568$0:1.0 16:1.0 19:1.0 3281:1.0 4556:1.0 4560:1.0 4563:40.0 4564:272.0 4565:1.0 4566:335.0 4567:4.0\tyes\t{\"no\":\"0.49335601149801067\",\"yes\":\"0.5066439885019893\"}\n34\tadmin.\tmarried\ttertiary\tno\t899\tyes\tno\ttelephone\t19\tnov\t377\t3\t7\t4\tsuccess\tno\t$4563$0:1.0 13:1.0 17:1.0 19:1.0 4391:1.0 4554:1.0 4557:1.0 4561:1.0\t$4568$0:1.0 13:1.0 17:1.0 19:1.0 4391:1.0 4554:1.0 4557:1.0 4561:1.0 4563:34.0 4564:377.0 4565:3.0 4566:7.0 4567:4.0\tyes\t{\"no\":\"0.035056861341776324\",\"yes\":\"0.9649431386582237\"}\n56\tretired\tmarried\tsecondary\tno\t-1206\tyes\tno\tcellular\t15\tjun\t382\t2\t-1\t0\tunknown\tyes\t$4563$5:1.0 13:1.0 16:1.0 19:1.0 60:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 13:1.0 16:1.0 19:1.0 60:1.0 4554:1.0 4556:1.0 4563:56.0 4564:382.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.5750329168808137\",\"yes\":\"0.4249670831191863\"}\n23\tstudent\tsingle\tsecondary\tno\t9216\tno\tno\tcellular\t5\tjun\t471\t2\t-1\t0\tunknown\tno\t$4563$8:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$8:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4563:23.0 4564:471.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.10896691273290493\",\"yes\":\"0.8910330872670951\"}\n34\ttechnician\tsingle\ttertiary\tno\t992\tyes\tno\tcellular\t4\tmay\t301\t1\t88\t2\tsuccess\tno\t$4563$9:1.0 17:1.0 19:1.0 4543:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$9:1.0 17:1.0 19:1.0 4543:1.0 4554:1.0 4556:1.0 4561:1.0 4563:34.0 4564:301.0 4565:1.0 4566:88.0 4567:2.0\tyes\t{\"no\":\"0.03341890357561672\",\"yes\":\"0.9665810964243833\"}\n39\tmanagement\tdivorced\ttertiary\tno\t1315\tyes\tno\tcellular\t19\tnov\t1337\t4\t126\t1\tfailure\tno\t$4563$4:1.0 12:1.0 17:1.0 19:1.0 1034:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 12:1.0 17:1.0 19:1.0 1034:1.0 4554:1.0 4556:1.0 4559:1.0 4563:39.0 4564:1337.0 4565:4.0 4566:126.0 4567:1.0\tyes\t{\"no\":\"0.0014402622545870436\",\"yes\":\"0.998559737745413\"}\n49\tblue-collar\tmarried\tprimary\tno\t305\tyes\tyes\ttelephone\t10\tjul\t834\t10\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 15:1.0 19:1.0 2504:1.0 4557:1.0\t$4568$1:1.0 13:1.0 15:1.0 19:1.0 2504:1.0 4557:1.0 4563:49.0 4564:834.0 4565:10.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.44266891386087714\",\"yes\":\"0.5573310861391229\"}\n45\tblue-collar\tsingle\tsecondary\tno\t0\tyes\tno\tcellular\t26\tjul\t768\t2\t91\t5\tsuccess\tno\t$4563$1:1.0 16:1.0 19:1.0 591:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$1:1.0 16:1.0 19:1.0 591:1.0 4554:1.0 4556:1.0 4561:1.0 4563:45.0 4564:768.0 4565:2.0 4566:91.0 4567:5.0\tyes\t{\"no\":\"0.027529914381617115\",\"yes\":\"0.9724700856183829\"}\n30\tstudent\tsingle\tsecondary\tno\t3096\tno\tno\tcellular\t26\tjan\t123\t1\t-1\t0\tunknown\tno\t$4563$8:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$8:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4563:30.0 4564:123.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4495979910761039\",\"yes\":\"0.5504020089238961\"}\n50\tself-employed\tmarried\ttertiary\tno\t4012\tno\tno\tcellular\t19\tnov\t690\t3\t-1\t0\tunknown\tno\t$4563$6:1.0 13:1.0 17:1.0 19:1.0 3022:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$6:1.0 13:1.0 17:1.0 19:1.0 3022:1.0 4552:1.0 4554:1.0 4556:1.0 4563:50.0 4564:690.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.0812118773096272\",\"yes\":\"0.9187881226903728\"}\n50\tblue-collar\tmarried\tsecondary\tno\t606\tyes\tno\tunknown\t14\tmay\t673\t2\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 3753:1.0 4554:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 3753:1.0 4554:1.0 4563:50.0 4564:673.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.28189910665169227\",\"yes\":\"0.7181008933483077\"}\n24\tblue-collar\tsingle\tsecondary\tno\t174\tyes\tyes\tcellular\t18\tmay\t487\t1\t-1\t0\tunknown\tyes\t$4563$1:1.0 16:1.0 19:1.0 1487:1.0 4556:1.0\t$4568$1:1.0 16:1.0 19:1.0 1487:1.0 4556:1.0 4563:24.0 4564:487.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.8562915836574629\",\"yes\":\"0.14370841634253706\"}\n35\thousemaid\tmarried\ttertiary\tno\t11219\tno\tno\tcellular\t12\taug\t699\t2\t79\t1\tfailure\tno\t$4563$3:1.0 13:1.0 17:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$3:1.0 13:1.0 17:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:35.0 4564:699.0 4565:2.0 4566:79.0 4567:1.0\tyes\t{\"no\":\"0.18429314438247868\",\"yes\":\"0.8157068556175213\"}\n29\tmanagement\tmarried\ttertiary\tno\t451\tno\tno\tcellular\t28\tjan\t451\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 3242:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 3242:1.0 4552:1.0 4554:1.0 4556:1.0 4563:29.0 4564:451.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.28184697217861976\",\"yes\":\"0.7181530278213802\"}\n38\tentrepreneur\tmarried\tsecondary\tno\t593\tyes\tyes\tcellular\t24\tjul\t1484\t24\t-1\t0\tunknown\tyes\t$4563$2:1.0 13:1.0 16:1.0 19:1.0 3717:1.0 4556:1.0\t$4568$2:1.0 13:1.0 16:1.0 19:1.0 3717:1.0 4556:1.0 4563:38.0 4564:1484.0 4565:24.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.7213492179211143\",\"yes\":\"0.2786507820788857\"}\n32\tblue-collar\tmarried\tsecondary\tno\t759\tyes\tno\tcellular\t9\tapr\t317\t5\t-1\t0\tunknown\tyes\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 4119:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 4119:1.0 4554:1.0 4556:1.0 4563:32.0 4564:317.0 4565:5.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.9177419859089937\",\"yes\":\"0.0822580140910063\"}\n70\tretired\tdivorced\tprimary\tno\t4531\tno\tno\tcellular\t18\tmay\t445\t1\t-1\t0\tunknown\tno\t$4563$5:1.0 12:1.0 15:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 12:1.0 15:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4563:70.0 4564:445.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.24943983545476656\",\"yes\":\"0.7505601645452334\"}\n43\tblue-collar\tsingle\tprimary\tno\t2\tyes\tno\tcellular\t30\tjul\t783\t3\t-1\t0\tunknown\tno\t$4563$1:1.0 15:1.0 19:1.0 1710:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 15:1.0 19:1.0 1710:1.0 4554:1.0 4556:1.0 4563:43.0 4564:783.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.27609936323241\",\"yes\":\"0.72390063676759\"}\n43\tmanagement\tmarried\ttertiary\tno\t2\tno\tyes\tcellular\t20\taug\t472\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 1710:1.0 4552:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 1710:1.0 4552:1.0 4556:1.0 4563:43.0 4564:472.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4545412121873147\",\"yes\":\"0.5454587878126853\"}\n25\tadmin.\tsingle\ttertiary\tno\t760\tyes\tno\tcellular\t27\tmay\t223\t3\t89\t2\tfailure\tyes\t$4563$0:1.0 17:1.0 19:1.0 4122:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$0:1.0 17:1.0 19:1.0 4122:1.0 4554:1.0 4556:1.0 4559:1.0 4563:25.0 4564:223.0 4565:3.0 4566:89.0 4567:2.0\tno\t{\"no\":\"0.8327066418520535\",\"yes\":\"0.16729335814794655\"}\n35\tentrepreneur\tmarried\tsecondary\tno\t2971\tno\tno\tcellular\t4\tmay\t429\t4\t164\t2\tfailure\tyes\t$4563$2:1.0 13:1.0 16:1.0 19:1.0 2449:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$2:1.0 13:1.0 16:1.0 19:1.0 2449:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:35.0 4564:429.0 4565:4.0 4566:164.0 4567:2.0\tno\t{\"no\":\"0.5237976547528757\",\"yes\":\"0.47620234524712435\"}\n33\ttechnician\tmarried\tsecondary\tno\t6699\tno\tno\tcellular\t9\tnov\t425\t1\t462\t1\tfailure\tno\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 3909:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 3909:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:33.0 4564:425.0 4565:1.0 4566:462.0 4567:1.0\tyes\t{\"no\":\"0.42794838131674573\",\"yes\":\"0.5720516186832543\"}\n29\ttechnician\tsingle\ttertiary\tno\t828\tyes\tno\tcellular\t16\tapr\t215\t3\t321\t3\tother\tno\t$4563$9:1.0 17:1.0 19:1.0 4264:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$9:1.0 17:1.0 19:1.0 4264:1.0 4554:1.0 4556:1.0 4560:1.0 4563:29.0 4564:215.0 4565:3.0 4566:321.0 4567:3.0\tyes\t{\"no\":\"0.2874505502063134\",\"yes\":\"0.7125494497936866\"}\n30\tmanagement\tsingle\ttertiary\tno\t424\tno\tno\tcellular\t16\tapr\t298\t4\t-1\t0\tunknown\tyes\t$4563$4:1.0 17:1.0 19:1.0 3127:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 3127:1.0 4552:1.0 4554:1.0 4556:1.0 4563:30.0 4564:298.0 4565:4.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6527281702343373\",\"yes\":\"0.34727182976566273\"}\n63\tretired\tmarried\tprimary\tno\t1084\tno\tno\tcellular\t14\toct\t201\t1\t183\t1\tsuccess\tno\t$4563$5:1.0 13:1.0 15:1.0 19:1.0 720:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$5:1.0 13:1.0 15:1.0 19:1.0 720:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:63.0 4564:201.0 4565:1.0 4566:183.0 4567:1.0\tyes\t{\"no\":\"0.11404292070125122\",\"yes\":\"0.8859570792987488\"}\n37\tmanagement\tsingle\tunknown\tno\t504\tyes\tno\tcellular\t16\tapr\t555\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 19:1.0 3441:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 19:1.0 3441:1.0 4554:1.0 4556:1.0 4563:37.0 4564:555.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.48459620066340237\",\"yes\":\"0.5154037993365976\"}\n47\tself-employed\tmarried\ttertiary\tno\t2303\tyes\tno\tcellular\t6\tmay\t323\t2\t364\t1\tfailure\tno\t$4563$6:1.0 13:1.0 17:1.0 19:1.0 1971:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$6:1.0 13:1.0 17:1.0 19:1.0 1971:1.0 4554:1.0 4556:1.0 4559:1.0 4563:47.0 4564:323.0 4565:2.0 4566:364.0 4567:1.0\tyes\t{\"no\":\"0.46625324240952204\",\"yes\":\"0.533746757590478\"}\n29\tmanagement\tmarried\ttertiary\tno\t318\tyes\tno\tcellular\t18\tmay\t1434\t2\t356\t4\tfailure\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 2583:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 2583:1.0 4554:1.0 4556:1.0 4559:1.0 4563:29.0 4564:1434.0 4565:2.0 4566:356.0 4567:4.0\tyes\t{\"no\":\"9.78515962611004E-4\",\"yes\":\"0.999021484037389\"}\n26\tstudent\tsingle\tsecondary\tno\t2572\tyes\tno\tcellular\t5\tmay\t620\t1\t-1\t0\tunknown\tno\t$4563$8:1.0 16:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0\t$4568$8:1.0 16:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0 4563:26.0 4564:620.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.09764974703407625\",\"yes\":\"0.9023502529659237\"}\n23\tstudent\tsingle\tsecondary\tno\t780\tno\tno\tcellular\t16\tsep\t267\t1\t-1\t0\tunknown\tno\t$4563$8:1.0 16:1.0 19:1.0 4164:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$8:1.0 16:1.0 19:1.0 4164:1.0 4552:1.0 4554:1.0 4556:1.0 4563:23.0 4564:267.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.07986094904174856\",\"yes\":\"0.9201390509582514\"}\n30\tentrepreneur\tmarried\tsecondary\tno\t946\tyes\tno\tcellular\t19\tnov\t1065\t1\t183\t1\tother\tno\t$4563$2:1.0 13:1.0 16:1.0 19:1.0 4472:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$2:1.0 13:1.0 16:1.0 19:1.0 4472:1.0 4554:1.0 4556:1.0 4560:1.0 4563:30.0 4564:1065.0 4565:1.0 4566:183.0 4567:1.0\tyes\t{\"no\":\"0.04024347054955113\",\"yes\":\"0.9597565294504489\"}\n33\tmanagement\tsingle\ttertiary\tno\t1240\tyes\tno\tcellular\t4\tfeb\t505\t2\t260\t1\tother\tno\t$4563$4:1.0 17:1.0 19:1.0 940:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$4:1.0 17:1.0 19:1.0 940:1.0 4554:1.0 4556:1.0 4560:1.0 4563:33.0 4564:505.0 4565:2.0 4566:260.0 4567:1.0\tyes\t{\"no\":\"0.13934313404848764\",\"yes\":\"0.8606568659515124\"}\n37\ttechnician\tsingle\ttertiary\tno\t6101\tno\tno\tcellular\t4\tmay\t60\t5\t87\t1\tsuccess\tno\t$4563$9:1.0 17:1.0 19:1.0 3764:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$9:1.0 17:1.0 19:1.0 3764:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:37.0 4564:60.0 4565:5.0 4566:87.0 4567:1.0\tyes\t{\"no\":\"0.2260740965951229\",\"yes\":\"0.7739259034048771\"}\n54\tadmin.\tmarried\tsecondary\tno\t0\tno\tno\tcellular\t28\tjan\t161\t1\t98\t2\tfailure\tyes\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:54.0 4564:161.0 4565:1.0 4566:98.0 4567:2.0\tno\t{\"no\":\"0.6702954173731659\",\"yes\":\"0.3297045826268341\"}\n37\tmanagement\tmarried\ttertiary\tno\t502\tyes\tno\tcellular\t7\tmay\t551\t1\t351\t1\tfailure\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 3433:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 3433:1.0 4554:1.0 4556:1.0 4559:1.0 4563:37.0 4564:551.0 4565:1.0 4566:351.0 4567:1.0\tyes\t{\"no\":\"0.246104231926636\",\"yes\":\"0.753895768073364\"}\n40\tmanagement\tmarried\ttertiary\tno\t542\tyes\tno\tcellular\t20\tnov\t1816\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 3575:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 3575:1.0 4554:1.0 4556:1.0 4563:40.0 4564:1816.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"1.1029503586912348E-4\",\"yes\":\"0.9998897049641309\"}\n56\tmanagement\tmarried\ttertiary\tno\t217\tno\tyes\tcellular\t21\tjul\t121\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 1858:1.0 4552:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 1858:1.0 4552:1.0 4556:1.0 4563:56.0 4564:121.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.38749339555439655\",\"yes\":\"0.6125066044456035\"}\n30\tmanagement\tmarried\ttertiary\tno\t1221\tyes\tno\ttelephone\t25\tjul\t279\t4\t-1\t0\tunknown\tyes\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 913:1.0 4554:1.0 4557:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 913:1.0 4554:1.0 4557:1.0 4563:30.0 4564:279.0 4565:4.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.7115409782499342\",\"yes\":\"0.28845902175006577\"}\n59\thousemaid\tmarried\tsecondary\tno\t0\tno\tno\ttelephone\t3\tfeb\t722\t1\t99\t4\tfailure\tno\t$4563$3:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4557:1.0 4559:1.0\t$4568$3:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4557:1.0 4559:1.0 4563:59.0 4564:722.0 4565:1.0 4566:99.0 4567:4.0\tyes\t{\"no\":\"0.1308715926218108\",\"yes\":\"0.8691284073781892\"}\n34\tself-employed\tmarried\tsecondary\tno\t-370\tyes\tno\tunknown\t21\tmay\t748\t1\t-1\t0\tunknown\tno\t$4563$6:1.0 13:1.0 16:1.0 19:1.0 314:1.0 4554:1.0\t$4568$6:1.0 13:1.0 16:1.0 19:1.0 314:1.0 4554:1.0 4563:34.0 4564:748.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.33999760600399254\",\"yes\":\"0.6600023939960075\"}\n46\tadmin.\tmarried\tsecondary\tno\t22\tno\tno\tcellular\t26\taug\t388\t6\t-1\t0\tunknown\tyes\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 1883:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 1883:1.0 4552:1.0 4554:1.0 4556:1.0 4563:46.0 4564:388.0 4565:6.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6495031449766563\",\"yes\":\"0.3504968550233437\"}\n42\tmanagement\tsingle\ttertiary\tno\t515\tyes\tno\tcellular\t19\tnov\t501\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 17:1.0 19:1.0 3485:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 3485:1.0 4554:1.0 4556:1.0 4563:42.0 4564:501.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.20032959150050678\",\"yes\":\"0.7996704084994932\"}\n19\tstudent\tsingle\tprimary\tno\t103\tno\tno\tcellular\t10\tjul\t104\t2\t-1\t0\tunknown\tyes\t$4563$8:1.0 15:1.0 19:1.0 645:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$8:1.0 15:1.0 19:1.0 645:1.0 4552:1.0 4554:1.0 4556:1.0 4563:19.0 4564:104.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.8826012144352103\",\"yes\":\"0.11739878556478966\"}\n32\tmanagement\tmarried\ttertiary\tno\t820\tyes\tno\tcellular\t17\tjul\t738\t3\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 4249:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 4249:1.0 4554:1.0 4556:1.0 4563:32.0 4564:738.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.044215576421124614\",\"yes\":\"0.9557844235788754\"}\n52\ttechnician\tmarried\tsecondary\tno\t195\tyes\tno\tcellular\t18\tfeb\t220\t1\t63\t5\tfailure\tyes\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 1667:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 1667:1.0 4554:1.0 4556:1.0 4559:1.0 4563:52.0 4564:220.0 4565:1.0 4566:63.0 4567:5.0\tno\t{\"no\":\"0.8668052673882624\",\"yes\":\"0.13319473261173764\"}\n61\tretired\tmarried\tsecondary\tno\t5207\tno\tno\tcellular\t11\tsep\t336\t1\t81\t2\tother\tno\t$4563$5:1.0 13:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$5:1.0 13:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:61.0 4564:336.0 4565:1.0 4566:81.0 4567:2.0\tyes\t{\"no\":\"0.20455881879148996\",\"yes\":\"0.79544118120851\"}\n27\tadmin.\tmarried\tsecondary\tno\t1033\tyes\tno\tunknown\t9\tmay\t1713\t1\t-1\t0\tunknown\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 649:1.0 4554:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 649:1.0 4554:1.0 4563:27.0 4564:1713.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.0018266604444627799\",\"yes\":\"0.9981733395555372\"}\n40\tmanagement\tmarried\ttertiary\tno\t1584\tyes\tno\ttelephone\t21\tnov\t661\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 1333:1.0 4554:1.0 4557:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 1333:1.0 4554:1.0 4557:1.0 4563:40.0 4564:661.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.039032534694098175\",\"yes\":\"0.9609674653059018\"}\n45\tmanagement\tmarried\ttertiary\tno\t1529\tno\tno\tcellular\t30\tjun\t160\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 1269:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 1269:1.0 4552:1.0 4554:1.0 4556:1.0 4563:45.0 4564:160.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.30586996031586655\",\"yes\":\"0.6941300396841334\"}\n27\ttechnician\tsingle\tunknown\tno\t59\tno\tno\tcellular\t15\tjul\t792\t4\t-1\t0\tunknown\tno\t$4563$9:1.0 19:1.0 3708:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 19:1.0 3708:1.0 4552:1.0 4554:1.0 4556:1.0 4563:27.0 4564:792.0 4565:4.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.47712464285760436\",\"yes\":\"0.5228753571423956\"}\n37\tadmin.\tmarried\tsecondary\tno\t1314\tyes\tno\tcellular\t8\tmay\t682\t2\t85\t7\tsuccess\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 1033:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 1033:1.0 4554:1.0 4556:1.0 4561:1.0 4563:37.0 4564:682.0 4565:2.0 4566:85.0 4567:7.0\tyes\t{\"no\":\"0.009447593535137688\",\"yes\":\"0.9905524064648623\"}\n41\tblue-collar\tmarried\tsecondary\tyes\t720\tno\tyes\tcellular\t24\tjul\t651\t1\t-1\t0\tunknown\tyes\t$4563$1:1.0 13:1.0 16:1.0 4040:1.0 4552:1.0 4556:1.0\t$4568$1:1.0 13:1.0 16:1.0 4040:1.0 4552:1.0 4556:1.0 4563:41.0 4564:651.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.5536431851933804\",\"yes\":\"0.4463568148066196\"}\n59\tunemployed\tmarried\tprimary\tno\t0\tno\tno\tcellular\t30\tjan\t3025\t2\t-1\t0\tunknown\tno\t$4563$10:1.0 13:1.0 15:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$10:1.0 13:1.0 15:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4563:59.0 4564:3025.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"2.3308473928729256E-8\",\"yes\":\"0.9999999766915261\"}\n53\tmanagement\tmarried\ttertiary\tno\t1319\tyes\tno\tcellular\t16\tapr\t427\t1\t150\t1\tfailure\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 1042:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 1042:1.0 4554:1.0 4556:1.0 4559:1.0 4563:53.0 4564:427.0 4565:1.0 4566:150.0 4567:1.0\tyes\t{\"no\":\"0.4326658365449165\",\"yes\":\"0.5673341634550835\"}\n28\ttechnician\tsingle\tsecondary\tno\t227\tno\tno\tcellular\t30\tapr\t278\t1\t-1\t0\tunknown\tyes\t$4563$9:1.0 16:1.0 19:1.0 1944:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 1944:1.0 4552:1.0 4554:1.0 4556:1.0 4563:28.0 4564:278.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6598196166300312\",\"yes\":\"0.3401803833699688\"}\n33\tmanagement\tsingle\ttertiary\tno\t-53\tno\tno\tcellular\t29\tjan\t617\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 17:1.0 19:1.0 425:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 425:1.0 4552:1.0 4554:1.0 4556:1.0 4563:33.0 4564:617.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.18870157071919857\",\"yes\":\"0.8112984292808014\"}\n50\tblue-collar\tmarried\tprimary\tno\t12519\tyes\tno\tcellular\t17\tapr\t146\t2\t147\t4\tsuccess\tno\t$4563$1:1.0 13:1.0 15:1.0 19:1.0 953:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$1:1.0 13:1.0 15:1.0 19:1.0 953:1.0 4554:1.0 4556:1.0 4561:1.0 4563:50.0 4564:146.0 4565:2.0 4566:147.0 4567:4.0\tyes\t{\"no\":\"0.4840967753890837\",\"yes\":\"0.5159032246109163\"}\n51\tunemployed\tsingle\ttertiary\tno\t1594\tno\tno\ttelephone\t4\tfeb\t197\t1\t-1\t0\tunknown\tno\t$4563$10:1.0 17:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4557:1.0\t$4568$10:1.0 17:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4557:1.0 4563:51.0 4564:197.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.32836649185894473\",\"yes\":\"0.6716335081410553\"}\n26\tentrepreneur\tsingle\ttertiary\tno\t81\tno\tno\tcellular\t21\tjul\t262\t3\t-1\t0\tunknown\tno\t$4563$2:1.0 17:1.0 19:1.0 4230:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$2:1.0 17:1.0 19:1.0 4230:1.0 4552:1.0 4554:1.0 4556:1.0 4563:26.0 4564:262.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4054792717128407\",\"yes\":\"0.5945207282871593\"}\n28\tmanagement\tsingle\ttertiary\tno\t231\tyes\tyes\tcellular\t25\tjul\t568\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 17:1.0 19:1.0 1979:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 1979:1.0 4556:1.0 4563:28.0 4564:568.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3529273069322254\",\"yes\":\"0.6470726930677746\"}\n40\tmanagement\tsingle\ttertiary\tno\t1509\tno\tno\tcellular\t12\tmay\t333\t1\t58\t3\tfailure\tno\t$4563$4:1.0 17:1.0 19:1.0 1249:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 17:1.0 19:1.0 1249:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:40.0 4564:333.0 4565:1.0 4566:58.0 4567:3.0\tyes\t{\"no\":\"0.41574690395209646\",\"yes\":\"0.5842530960479035\"}\n33\tmanagement\tsingle\ttertiary\tno\t9449\tyes\tno\tcellular\t8\tmay\t428\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 17:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0 4563:33.0 4564:428.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.48285587003481634\",\"yes\":\"0.5171441299651837\"}\n39\tmanagement\tmarried\ttertiary\tno\t2763\tyes\tno\tunknown\t2\tjun\t526\t2\t-1\t0\tunknown\tyes\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 2313:1.0 4554:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 2313:1.0 4554:1.0 4563:39.0 4564:526.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.5021706636556028\",\"yes\":\"0.4978293363443972\"}\n56\ttechnician\tmarried\ttertiary\tno\t272\tno\tno\tcellular\t26\taug\t103\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 13:1.0 17:1.0 19:1.0 2288:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 13:1.0 17:1.0 19:1.0 2288:1.0 4552:1.0 4554:1.0 4556:1.0 4563:56.0 4564:103.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3761639073409555\",\"yes\":\"0.6238360926590445\"}\n27\tentrepreneur\tsingle\ttertiary\tno\t81\tno\tno\tcellular\t5\tfeb\t197\t1\t199\t3\tfailure\tno\t$4563$2:1.0 17:1.0 19:1.0 4230:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$2:1.0 17:1.0 19:1.0 4230:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:27.0 4564:197.0 4565:1.0 4566:199.0 4567:3.0\tyes\t{\"no\":\"0.28276591825020425\",\"yes\":\"0.7172340817497957\"}\n64\tretired\tmarried\tprimary\tno\t43\tno\tno\tcellular\t11\tmar\t117\t1\t91\t1\tsuccess\tno\t$4563$5:1.0 13:1.0 15:1.0 19:1.0 3146:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$5:1.0 13:1.0 15:1.0 19:1.0 3146:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:64.0 4564:117.0 4565:1.0 4566:91.0 4567:1.0\tyes\t{\"no\":\"0.41474178066418266\",\"yes\":\"0.5852582193358173\"}\n40\tmanagement\tmarried\ttertiary\tno\t-117\tyes\tno\tcellular\t17\tjul\t770\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 53:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 53:1.0 4554:1.0 4556:1.0 4563:40.0 4564:770.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3930741977978184\",\"yes\":\"0.6069258022021816\"}\n53\tentrepreneur\tmarried\tprimary\tno\t1034\tyes\tno\tcellular\t19\tnov\t854\t2\t170\t3\tother\tno\t$4563$2:1.0 13:1.0 15:1.0 19:1.0 652:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$2:1.0 13:1.0 15:1.0 19:1.0 652:1.0 4554:1.0 4556:1.0 4560:1.0 4563:53.0 4564:854.0 4565:2.0 4566:170.0 4567:3.0\tyes\t{\"no\":\"0.03150912051920163\",\"yes\":\"0.9684908794807984\"}\n54\ttechnician\tmarried\tsecondary\tno\t0\tno\tno\ttelephone\t16\tnov\t986\t1\t94\t8\tfailure\tno\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4557:1.0 4559:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4557:1.0 4559:1.0 4563:54.0 4564:986.0 4565:1.0 4566:94.0 4567:8.0\tyes\t{\"no\":\"0.007441344356556745\",\"yes\":\"0.9925586556434433\"}\n40\ttechnician\tsingle\ttertiary\tno\t445\tyes\tno\tcellular\t24\tjul\t631\t1\t-1\t0\tunknown\tno\t$4563$9:1.0 17:1.0 19:1.0 3214:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 17:1.0 19:1.0 3214:1.0 4554:1.0 4556:1.0 4563:40.0 4564:631.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.22963803367271818\",\"yes\":\"0.7703619663272818\"}\n33\ttechnician\tsingle\ttertiary\tno\t123\tno\tno\tcellular\t19\taug\t264\t1\t-1\t0\tunknown\tno\t$4563$9:1.0 17:1.0 19:1.0 925:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 17:1.0 19:1.0 925:1.0 4552:1.0 4554:1.0 4556:1.0 4563:33.0 4564:264.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3966674486221825\",\"yes\":\"0.6033325513778175\"}\n28\ttechnician\tsingle\ttertiary\tno\t102\tno\tno\tcellular\t28\tjan\t321\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 17:1.0 19:1.0 628:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 17:1.0 19:1.0 628:1.0 4552:1.0 4554:1.0 4556:1.0 4563:28.0 4564:321.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.16643196219846224\",\"yes\":\"0.8335680378015378\"}\n26\ttechnician\tsingle\tsecondary\tno\t455\tno\tno\tcellular\t29\tjan\t240\t1\t182\t8\tother\tno\t$4563$9:1.0 16:1.0 19:1.0 3256:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$9:1.0 16:1.0 19:1.0 3256:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:26.0 4564:240.0 4565:1.0 4566:182.0 4567:8.0\tyes\t{\"no\":\"0.41788992124551116\",\"yes\":\"0.5821100787544888\"}\n29\tstudent\tsingle\tunknown\tno\t2929\tno\tno\tcellular\t11\taug\t91\t1\t-1\t0\tunknown\tno\t$4563$8:1.0 19:1.0 2422:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$8:1.0 19:1.0 2422:1.0 4552:1.0 4554:1.0 4556:1.0 4563:29.0 4564:91.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2895150775886206\",\"yes\":\"0.7104849224113794\"}\n59\tadmin.\tmarried\tsecondary\tno\t817\tno\tno\tcellular\t9\tapr\t304\t1\t-1\t0\tunknown\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 4244:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 4244:1.0 4552:1.0 4554:1.0 4556:1.0 4563:59.0 4564:304.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.39705953088367285\",\"yes\":\"0.6029404691163271\"}\n37\tmanagement\tdivorced\tsecondary\tno\t414\tno\tno\tcellular\t29\tjan\t293\t2\t162\t4\tfailure\tno\t$4563$4:1.0 12:1.0 16:1.0 19:1.0 3082:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 12:1.0 16:1.0 19:1.0 3082:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:37.0 4564:293.0 4565:2.0 4566:162.0 4567:4.0\tyes\t{\"no\":\"0.25894296311096265\",\"yes\":\"0.7410570368890373\"}\n30\ttechnician\tsingle\tsecondary\tno\t102\tyes\tno\tunknown\t7\tmay\t614\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 19:1.0 628:1.0 4554:1.0\t$4568$9:1.0 16:1.0 19:1.0 628:1.0 4554:1.0 4563:30.0 4564:614.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.379504836465561\",\"yes\":\"0.620495163534439\"}\n26\tstudent\tsingle\tsecondary\tno\t279\tno\tno\tcellular\t7\tmay\t239\t3\t-1\t0\tunknown\tno\t$4563$8:1.0 16:1.0 19:1.0 2336:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$8:1.0 16:1.0 19:1.0 2336:1.0 4552:1.0 4554:1.0 4556:1.0 4563:26.0 4564:239.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.46062515836381035\",\"yes\":\"0.5393748416361897\"}\n34\tstudent\tsingle\tunknown\tno\t1281\tno\tno\tcellular\t25\taug\t279\t1\t117\t1\tfailure\tno\t$4563$8:1.0 19:1.0 991:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$8:1.0 19:1.0 991:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:34.0 4564:279.0 4565:1.0 4566:117.0 4567:1.0\tyes\t{\"no\":\"0.17793151826860787\",\"yes\":\"0.8220684817313921\"}\n50\tmanagement\tmarried\ttertiary\tno\t2881\tno\tno\tcellular\t5\taug\t510\t2\t2\t5\tother\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 2391:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 2391:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:50.0 4564:510.0 4565:2.0 4566:2.0 4567:5.0\tyes\t{\"no\":\"0.010197594480426786\",\"yes\":\"0.9898024055195732\"}\n57\thousemaid\tsingle\tsecondary\tno\t254\tno\tno\tcellular\t8\toct\t676\t1\t-1\t0\tunknown\tno\t$4563$3:1.0 16:1.0 19:1.0 2152:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$3:1.0 16:1.0 19:1.0 2152:1.0 4552:1.0 4554:1.0 4556:1.0 4563:57.0 4564:676.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2248635162260897\",\"yes\":\"0.7751364837739103\"}\n40\tmanagement\tmarried\ttertiary\tno\t-1212\tyes\tno\tcellular\t15\tmay\t1259\t2\t333\t18\tfailure\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 62:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 62:1.0 4554:1.0 4556:1.0 4559:1.0 4563:40.0 4564:1259.0 4565:2.0 4566:333.0 4567:18.0\tyes\t{\"no\":\"0.010891059336326725\",\"yes\":\"0.9891089406636733\"}\n40\tself-employed\tmarried\ttertiary\tno\t13669\tno\tno\tcellular\t15\toct\t138\t1\t136\t8\tother\tno\t$4563$6:1.0 13:1.0 17:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$6:1.0 13:1.0 17:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:40.0 4564:138.0 4565:1.0 4566:136.0 4567:8.0\tyes\t{\"no\":\"0.4347792729392741\",\"yes\":\"0.5652207270607259\"}\n59\tretired\tmarried\tsecondary\tno\t163\tno\tno\tcellular\t24\tjul\t464\t1\t-1\t0\tunknown\tno\t$4563$5:1.0 13:1.0 16:1.0 19:1.0 1379:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 13:1.0 16:1.0 19:1.0 1379:1.0 4552:1.0 4554:1.0 4556:1.0 4563:59.0 4564:464.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3095887739846074\",\"yes\":\"0.6904112260153926\"}\n43\ttechnician\tmarried\tsecondary\tno\t-932\tyes\tno\tcellular\t16\tapr\t567\t1\t-1\t0\tunknown\tno\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0 4563:43.0 4564:567.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4883247147060028\",\"yes\":\"0.5116752852939972\"}\n32\tblue-collar\tsingle\tsecondary\tno\t-255\tno\tyes\tunknown\t2\tjul\t957\t3\t-1\t0\tunknown\tno\t$4563$1:1.0 16:1.0 19:1.0 212:1.0 4552:1.0\t$4568$1:1.0 16:1.0 19:1.0 212:1.0 4552:1.0 4563:32.0 4564:957.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.21885532440086886\",\"yes\":\"0.7811446755991311\"}\n37\tadmin.\tmarried\tsecondary\tno\t11303\tno\tno\tcellular\t26\tmay\t500\t2\t-1\t0\tunknown\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 786:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 786:1.0 4552:1.0 4554:1.0 4556:1.0 4563:37.0 4564:500.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.23025653771683086\",\"yes\":\"0.7697434622831691\"}\n31\ttechnician\tsingle\tsecondary\tno\t102\tyes\tno\ttelephone\t17\tapr\t460\t2\t345\t2\tfailure\tno\t$4563$9:1.0 16:1.0 19:1.0 628:1.0 4554:1.0 4557:1.0 4559:1.0\t$4568$9:1.0 16:1.0 19:1.0 628:1.0 4554:1.0 4557:1.0 4559:1.0 4563:31.0 4564:460.0 4565:2.0 4566:345.0 4567:2.0\tyes\t{\"no\":\"0.1782199069121898\",\"yes\":\"0.8217800930878102\"}\n31\ttechnician\tsingle\tsecondary\tyes\t25\tno\tno\tcellular\t2\tfeb\t381\t1\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 2124:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 16:1.0 2124:1.0 4552:1.0 4554:1.0 4556:1.0 4563:31.0 4564:381.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3281514249226154\",\"yes\":\"0.6718485750773846\"}\n58\ttechnician\tsingle\tsecondary\tno\t409\tno\tyes\tcellular\t14\tjul\t643\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 19:1.0 3057:1.0 4552:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 3057:1.0 4552:1.0 4556:1.0 4563:58.0 4564:643.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.02510246495676638\",\"yes\":\"0.9748975350432336\"}\n45\tmanagement\tmarried\ttertiary\tno\t-459\tno\tno\tcellular\t21\taug\t508\t6\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 379:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 379:1.0 4552:1.0 4554:1.0 4556:1.0 4563:45.0 4564:508.0 4565:6.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4644931084335281\",\"yes\":\"0.5355068915664719\"}\n28\tservices\tsingle\tsecondary\tno\t198\tno\tno\tcellular\t5\tjul\t128\t2\t-1\t0\tunknown\tyes\t$4563$7:1.0 16:1.0 19:1.0 1693:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$7:1.0 16:1.0 19:1.0 1693:1.0 4552:1.0 4554:1.0 4556:1.0 4563:28.0 4564:128.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.9304510269912742\",\"yes\":\"0.06954897300872576\"}\n39\tmanagement\tmarried\tsecondary\tno\t1072\tyes\tno\tunknown\t27\tmay\t1168\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 16:1.0 19:1.0 703:1.0 4554:1.0\t$4568$4:1.0 13:1.0 16:1.0 19:1.0 703:1.0 4554:1.0 4563:39.0 4564:1168.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2599556227123083\",\"yes\":\"0.7400443772876917\"}\n34\tblue-collar\tdivorced\tunknown\tno\t172\tno\tno\tcellular\t15\tjun\t177\t1\t-1\t0\tunknown\tyes\t$4563$1:1.0 12:1.0 19:1.0 1468:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 12:1.0 19:1.0 1468:1.0 4552:1.0 4554:1.0 4556:1.0 4563:34.0 4564:177.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.7577603828385586\",\"yes\":\"0.24223961716144138\"}\n41\ttechnician\tmarried\tsecondary\tno\t1066\tno\tno\tcellular\t11\tfeb\t109\t3\t-1\t0\tunknown\tyes\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 695:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 695:1.0 4552:1.0 4554:1.0 4556:1.0 4563:41.0 4564:109.0 4565:3.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6239992708078453\",\"yes\":\"0.37600072919215466\"}\n37\ttechnician\tsingle\ttertiary\tno\t3315\tyes\tno\tcellular\t9\tapr\t820\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 17:1.0 19:1.0 2666:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 17:1.0 19:1.0 2666:1.0 4554:1.0 4556:1.0 4563:37.0 4564:820.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.21201113437540453\",\"yes\":\"0.7879888656245955\"}\n52\tadmin.\tmarried\tsecondary\tno\t2347\tno\tyes\tcellular\t12\taug\t603\t3\t-1\t0\tunknown\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4556:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4556:1.0 4563:52.0 4564:603.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.27180939365675827\",\"yes\":\"0.7281906063432417\"}\n58\tself-employed\tmarried\tprimary\tno\t1013\tyes\tno\tcellular\t11\taug\t206\t1\t461\t1\tfailure\tyes\t$4563$6:1.0 13:1.0 15:1.0 19:1.0 614:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$6:1.0 13:1.0 15:1.0 19:1.0 614:1.0 4554:1.0 4556:1.0 4559:1.0 4563:58.0 4564:206.0 4565:1.0 4566:461.0 4567:1.0\tno\t{\"no\":\"0.5677631296418146\",\"yes\":\"0.43223687035818537\"}\n34\tblue-collar\tsingle\tsecondary\tno\t215\tno\tno\tcellular\t3\tmar\t350\t3\t-1\t0\tunknown\tyes\t$4563$1:1.0 16:1.0 19:1.0 1841:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 16:1.0 19:1.0 1841:1.0 4552:1.0 4554:1.0 4556:1.0 4563:34.0 4564:350.0 4565:3.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.8888152106367235\",\"yes\":\"0.11118478936327647\"}\n34\tentrepreneur\tdivorced\ttertiary\tno\t262\tno\tno\tcellular\t20\tnov\t371\t1\t-1\t0\tunknown\tno\t$4563$2:1.0 12:1.0 17:1.0 19:1.0 2210:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$2:1.0 12:1.0 17:1.0 19:1.0 2210:1.0 4552:1.0 4554:1.0 4556:1.0 4563:34.0 4564:371.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.1669311647106413\",\"yes\":\"0.8330688352893587\"}\n37\tadmin.\tmarried\ttertiary\tno\t3913\tyes\tno\tcellular\t27\tapr\t124\t1\t-1\t0\tunknown\tyes\t$4563$0:1.0 13:1.0 17:1.0 19:1.0 2977:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 17:1.0 19:1.0 2977:1.0 4554:1.0 4556:1.0 4563:37.0 4564:124.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.7984106534621536\",\"yes\":\"0.20158934653784644\"}\n31\tadmin.\tmarried\tsecondary\tno\t314\tyes\tno\tcellular\t17\tapr\t279\t1\t-1\t0\tunknown\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 2559:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 2559:1.0 4554:1.0 4556:1.0 4563:31.0 4564:279.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.45277146848599803\",\"yes\":\"0.547228531514002\"}\n23\tstudent\tsingle\tsecondary\tno\t8494\tno\tno\tcellular\t25\taug\t158\t2\t-1\t0\tunknown\tno\t$4563$8:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$8:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4563:23.0 4564:158.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.49323093543712915\",\"yes\":\"0.5067690645628709\"}\n53\tretired\tmarried\tsecondary\tno\t665\tyes\tno\tcellular\t22\tapr\t371\t2\t-1\t0\tunknown\tyes\t$4563$5:1.0 13:1.0 16:1.0 19:1.0 3898:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 13:1.0 16:1.0 19:1.0 3898:1.0 4554:1.0 4556:1.0 4563:53.0 4564:371.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.8011375925607671\",\"yes\":\"0.1988624074392329\"}\n42\ttechnician\tmarried\tsecondary\tno\t994\tyes\tno\tcellular\t11\taug\t149\t1\t78\t5\tfailure\tyes\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 4545:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 4545:1.0 4554:1.0 4556:1.0 4559:1.0 4563:42.0 4564:149.0 4565:1.0 4566:78.0 4567:5.0\tno\t{\"no\":\"0.5962091311426668\",\"yes\":\"0.4037908688573332\"}\n45\tadmin.\tmarried\tsecondary\tno\t5346\tyes\tyes\tunknown\t21\toct\t187\t1\t-1\t0\tunknown\tyes\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 3550:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 3550:1.0 4563:45.0 4564:187.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.9222154928973245\",\"yes\":\"0.07778450710267548\"}\n55\tblue-collar\tdivorced\tsecondary\tno\t1613\tyes\tno\tcellular\t3\tapr\t296\t1\t270\t3\tfailure\tyes\t$4563$1:1.0 12:1.0 16:1.0 19:1.0 1363:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$1:1.0 12:1.0 16:1.0 19:1.0 1363:1.0 4554:1.0 4556:1.0 4559:1.0 4563:55.0 4564:296.0 4565:1.0 4566:270.0 4567:3.0\tno\t{\"no\":\"0.5297773431269363\",\"yes\":\"0.47022265687306375\"}\n27\tblue-collar\tmarried\tsecondary\tno\t872\tyes\tno\tcellular\t17\tapr\t1130\t3\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 4341:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 4341:1.0 4554:1.0 4556:1.0 4563:27.0 4564:1130.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3531652725166814\",\"yes\":\"0.6468347274833186\"}\n36\tmanagement\tsingle\ttertiary\tno\t3343\tno\tno\tcellular\t18\tnov\t307\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 17:1.0 19:1.0 2684:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 2684:1.0 4552:1.0 4554:1.0 4556:1.0 4563:36.0 4564:307.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.19344645735454113\",\"yes\":\"0.8065535426454589\"}\n50\ttechnician\tmarried\tsecondary\tno\t-568\tyes\tyes\tunknown\t28\tmay\t860\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 4551:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 4551:1.0 4563:50.0 4564:860.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.49091185082156286\",\"yes\":\"0.5090881491784371\"}\n30\tunemployed\tmarried\ttertiary\tno\t0\tyes\tno\tcellular\t18\tnov\t756\t1\t-1\t0\tunknown\tno\t$4563$10:1.0 13:1.0 17:1.0 19:1.0 591:1.0 4554:1.0 4556:1.0\t$4568$10:1.0 13:1.0 17:1.0 19:1.0 591:1.0 4554:1.0 4556:1.0 4563:30.0 4564:756.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.17022989610015893\",\"yes\":\"0.8297701038998411\"}\n36\tblue-collar\tmarried\tsecondary\tno\t1049\tyes\tno\tcellular\t14\tmay\t224\t4\t-1\t0\tunknown\tyes\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 668:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 668:1.0 4554:1.0 4556:1.0 4563:36.0 4564:224.0 4565:4.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.9535928071007328\",\"yes\":\"0.0464071928992672\"}\n38\tadmin.\tmarried\ttertiary\tno\t1988\tno\tno\tcellular\t27\tmar\t164\t2\t130\t2\tfailure\tyes\t$4563$0:1.0 13:1.0 17:1.0 19:1.0 1700:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$0:1.0 13:1.0 17:1.0 19:1.0 1700:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:38.0 4564:164.0 4565:2.0 4566:130.0 4567:2.0\tno\t{\"no\":\"0.6085809011231882\",\"yes\":\"0.3914190988768118\"}\n64\thousemaid\tmarried\tprimary\tno\t768\tno\tno\tcellular\t15\tjul\t250\t2\t182\t1\tsuccess\tno\t$4563$3:1.0 13:1.0 15:1.0 19:1.0 4138:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$3:1.0 13:1.0 15:1.0 19:1.0 4138:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:64.0 4564:250.0 4565:2.0 4566:182.0 4567:1.0\tyes\t{\"no\":\"0.4608198697026503\",\"yes\":\"0.5391801302973497\"}\n46\ttechnician\tmarried\ttertiary\tno\t217\tyes\tno\tcellular\t14\tmay\t141\t1\t346\t2\tother\tno\t$4563$9:1.0 13:1.0 17:1.0 19:1.0 1858:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$9:1.0 13:1.0 17:1.0 19:1.0 1858:1.0 4554:1.0 4556:1.0 4560:1.0 4563:46.0 4564:141.0 4565:1.0 4566:346.0 4567:2.0\tyes\t{\"no\":\"0.22754116044881356\",\"yes\":\"0.7724588395511864\"}\n43\tmanagement\tsingle\ttertiary\tno\t146\tno\tno\tcellular\t21\tnov\t50\t1\t113\t5\tother\tno\t$4563$4:1.0 17:1.0 19:1.0 1202:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$4:1.0 17:1.0 19:1.0 1202:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:43.0 4564:50.0 4565:1.0 4566:113.0 4567:5.0\tyes\t{\"no\":\"0.11264504775325279\",\"yes\":\"0.8873549522467472\"}\n59\ttechnician\tmarried\tsecondary\tno\t1\tno\tno\tcellular\t15\tapr\t159\t2\t378\t3\tfailure\tyes\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 592:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 592:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:59.0 4564:159.0 4565:2.0 4566:378.0 4567:3.0\tno\t{\"no\":\"0.5884972454391968\",\"yes\":\"0.4115027545608032\"}\n35\ttechnician\tmarried\ttertiary\tno\t188\tno\tno\tcellular\t26\taug\t286\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 13:1.0 17:1.0 19:1.0 1618:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 13:1.0 17:1.0 19:1.0 1618:1.0 4552:1.0 4554:1.0 4556:1.0 4563:35.0 4564:286.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.12629201759323716\",\"yes\":\"0.8737079824067628\"}\n77\tretired\tmarried\tsecondary\tno\t610\tno\tno\tcellular\t13\taug\t766\t3\t-1\t0\tunknown\tno\t$4563$5:1.0 13:1.0 16:1.0 19:1.0 3762:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 13:1.0 16:1.0 19:1.0 3762:1.0 4552:1.0 4554:1.0 4556:1.0 4563:77.0 4564:766.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.13810169440705067\",\"yes\":\"0.8618983055929493\"}\n43\ttechnician\tdivorced\tsecondary\tno\t167\tno\tno\tcellular\t4\taug\t211\t3\t-1\t0\tunknown\tno\t$4563$9:1.0 12:1.0 16:1.0 19:1.0 1415:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 12:1.0 16:1.0 19:1.0 1415:1.0 4552:1.0 4554:1.0 4556:1.0 4563:43.0 4564:211.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3620836776721006\",\"yes\":\"0.6379163223278994\"}\n57\tretired\tmarried\ttertiary\tno\t0\tyes\tyes\tunknown\t28\tmay\t648\t1\t-1\t0\tunknown\tyes\t$4563$5:1.0 13:1.0 17:1.0 19:1.0 591:1.0\t$4568$5:1.0 13:1.0 17:1.0 19:1.0 591:1.0 4563:57.0 4564:648.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6511134765756766\",\"yes\":\"0.34888652342432336\"}\n52\tentrepreneur\tdivorced\tprimary\tno\t278\tyes\tno\tunknown\t7\tmay\t688\t2\t-1\t0\tunknown\tno\t$4563$2:1.0 12:1.0 15:1.0 19:1.0 2326:1.0 4554:1.0\t$4568$2:1.0 12:1.0 15:1.0 19:1.0 2326:1.0 4554:1.0 4563:52.0 4564:688.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4623977130314134\",\"yes\":\"0.5376022869685866\"}\n44\tadmin.\tmarried\tsecondary\tno\t205\tno\tno\tcellular\t3\tnov\t289\t1\t-1\t0\tunknown\tyes\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 1756:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 1756:1.0 4552:1.0 4554:1.0 4556:1.0 4563:44.0 4564:289.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.5368613389563217\",\"yes\":\"0.4631386610436783\"}\n32\ttechnician\tsingle\ttertiary\tno\t259\tno\tno\tcellular\t22\tjul\t407\t4\t-1\t0\tunknown\tno\t$4563$9:1.0 17:1.0 19:1.0 2188:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 17:1.0 19:1.0 2188:1.0 4552:1.0 4554:1.0 4556:1.0 4563:32.0 4564:407.0 4565:4.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4524181554014267\",\"yes\":\"0.5475818445985733\"}\n31\tmanagement\tsingle\ttertiary\tno\t62\tyes\tno\tcellular\t18\tmay\t175\t1\t293\t5\tfailure\tno\t$4563$4:1.0 17:1.0 19:1.0 3789:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 17:1.0 19:1.0 3789:1.0 4554:1.0 4556:1.0 4559:1.0 4563:31.0 4564:175.0 4565:1.0 4566:293.0 4567:5.0\tyes\t{\"no\":\"0.32750479796980536\",\"yes\":\"0.6724952020301946\"}\n29\tunemployed\tsingle\ttertiary\tno\t991\tno\tno\tcellular\t5\tfeb\t563\t1\t-1\t0\tunknown\tno\t$4563$10:1.0 17:1.0 19:1.0 4541:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$10:1.0 17:1.0 19:1.0 4541:1.0 4552:1.0 4554:1.0 4556:1.0 4563:29.0 4564:563.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.18058471406648402\",\"yes\":\"0.819415285933516\"}\n37\tadmin.\tmarried\tsecondary\tno\t1193\tno\tno\tcellular\t12\tmay\t396\t2\t-1\t0\tunknown\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 872:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 872:1.0 4552:1.0 4554:1.0 4556:1.0 4563:37.0 4564:396.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3760918830115725\",\"yes\":\"0.6239081169884275\"}\n36\tadmin.\tsingle\tsecondary\tno\t0\tno\tno\tcellular\t20\tapr\t637\t1\t-1\t0\tunknown\tno\t$4563$0:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4563:36.0 4564:637.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.10716691851906213\",\"yes\":\"0.8928330814809379\"}\n34\ttechnician\tsingle\tsecondary\tno\t2729\tyes\tno\tcellular\t6\tapr\t945\t1\t139\t1\tsuccess\tno\t$4563$9:1.0 16:1.0 19:1.0 2292:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$9:1.0 16:1.0 19:1.0 2292:1.0 4554:1.0 4556:1.0 4561:1.0 4563:34.0 4564:945.0 4565:1.0 4566:139.0 4567:1.0\tyes\t{\"no\":\"0.005117946978256738\",\"yes\":\"0.9948820530217433\"}\n60\thousemaid\tmarried\tprimary\tno\t517\tno\tno\tunknown\t12\tjun\t1178\t3\t-1\t0\tunknown\tno\t$4563$3:1.0 13:1.0 15:1.0 19:1.0 3490:1.0 4552:1.0 4554:1.0\t$4568$3:1.0 13:1.0 15:1.0 19:1.0 3490:1.0 4552:1.0 4554:1.0 4563:60.0 4564:1178.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.03761336098041823\",\"yes\":\"0.9623866390195818\"}\n31\ttechnician\tmarried\ttertiary\tno\t636\tyes\tno\tcellular\t4\tmay\t352\t4\t-1\t0\tunknown\tyes\t$4563$9:1.0 13:1.0 17:1.0 19:1.0 3827:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 13:1.0 17:1.0 19:1.0 3827:1.0 4554:1.0 4556:1.0 4563:31.0 4564:352.0 4565:4.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.726746590532186\",\"yes\":\"0.27325340946781396\"}\n71\ttechnician\tmarried\ttertiary\tno\t383\tno\tno\tcellular\t27\toct\t327\t2\t183\t3\tsuccess\tno\t$4563$9:1.0 13:1.0 17:1.0 19:1.0 2937:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$9:1.0 13:1.0 17:1.0 19:1.0 2937:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:71.0 4564:327.0 4565:2.0 4566:183.0 4567:3.0\tyes\t{\"no\":\"0.15465900525353382\",\"yes\":\"0.8453409947464662\"}\n34\ttechnician\tsingle\tsecondary\tno\t201\tno\tno\tcellular\t22\tjul\t257\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 19:1.0 1721:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 1721:1.0 4552:1.0 4554:1.0 4556:1.0 4563:34.0 4564:257.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.18875751707455435\",\"yes\":\"0.8112424829254457\"}\n35\tentrepreneur\tsingle\tsecondary\tno\t475\tno\tyes\tcellular\t21\tjul\t936\t4\t-1\t0\tunknown\tno\t$4563$2:1.0 16:1.0 19:1.0 3333:1.0 4552:1.0 4556:1.0\t$4568$2:1.0 16:1.0 19:1.0 3333:1.0 4552:1.0 4556:1.0 4563:35.0 4564:936.0 4565:4.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.25486335370302005\",\"yes\":\"0.74513664629698\"}\n33\tblue-collar\tsingle\tsecondary\tno\t706\tyes\tno\tcellular\t7\tapr\t329\t1\t322\t1\tfailure\tno\t$4563$1:1.0 16:1.0 19:1.0 4000:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$1:1.0 16:1.0 19:1.0 4000:1.0 4554:1.0 4556:1.0 4559:1.0 4563:33.0 4564:329.0 4565:1.0 4566:322.0 4567:1.0\tyes\t{\"no\":\"0.36527761897532807\",\"yes\":\"0.6347223810246719\"}\n53\ttechnician\tdivorced\tsecondary\tno\t320\tno\tno\tcellular\t9\tjul\t175\t1\t-1\t0\tunknown\tno\t$4563$9:1.0 12:1.0 16:1.0 19:1.0 2597:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 12:1.0 16:1.0 19:1.0 2597:1.0 4552:1.0 4554:1.0 4556:1.0 4563:53.0 4564:175.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.412613839285064\",\"yes\":\"0.587386160714936\"}\n39\tblue-collar\tmarried\tunknown\tno\t0\tno\tno\tcellular\t2\tfeb\t731\t1\t193\t3\tfailure\tno\t$4563$1:1.0 13:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$1:1.0 13:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:39.0 4564:731.0 4565:1.0 4566:193.0 4567:3.0\tyes\t{\"no\":\"0.12091511186173176\",\"yes\":\"0.8790848881382682\"}\n36\tmanagement\tsingle\ttertiary\tno\t490\tno\tno\tcellular\t28\taug\t207\t8\t98\t1\tfailure\tyes\t$4563$4:1.0 17:1.0 19:1.0 3389:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 17:1.0 19:1.0 3389:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:36.0 4564:207.0 4565:8.0 4566:98.0 4567:1.0\tno\t{\"no\":\"0.858755986712394\",\"yes\":\"0.14124401328760605\"}\n29\tmanagement\tsingle\ttertiary\tno\t15459\tno\tno\tcellular\t26\tmay\t245\t3\t97\t7\tsuccess\tno\t$4563$4:1.0 17:1.0 19:1.0 1291:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$4:1.0 17:1.0 19:1.0 1291:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:29.0 4564:245.0 4565:3.0 4566:97.0 4567:7.0\tyes\t{\"no\":\"0.052948700511105784\",\"yes\":\"0.9470512994888942\"}\n47\tblue-collar\tmarried\tprimary\tno\t320\tno\tno\ttelephone\t30\tjul\t203\t2\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 15:1.0 19:1.0 2597:1.0 4552:1.0 4554:1.0 4557:1.0\t$4568$1:1.0 13:1.0 15:1.0 19:1.0 2597:1.0 4552:1.0 4554:1.0 4557:1.0 4563:47.0 4564:203.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.45457668081241676\",\"yes\":\"0.5454233191875832\"}\n33\tadmin.\tmarried\ttertiary\tno\t640\tno\tno\tcellular\t24\tjul\t318\t1\t-1\t0\tunknown\tno\t$4563$0:1.0 13:1.0 17:1.0 19:1.0 3836:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 17:1.0 19:1.0 3836:1.0 4552:1.0 4554:1.0 4556:1.0 4563:33.0 4564:318.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.19359443998940795\",\"yes\":\"0.806405560010592\"}\n75\tretired\tdivorced\tsecondary\tno\t1341\tno\tno\tcellular\t18\tdec\t415\t7\t-1\t0\tunknown\tyes\t$4563$5:1.0 12:1.0 16:1.0 19:1.0 1066:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 12:1.0 16:1.0 19:1.0 1066:1.0 4552:1.0 4554:1.0 4556:1.0 4563:75.0 4564:415.0 4565:7.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6776800272163738\",\"yes\":\"0.32231997278362623\"}\n22\tstudent\tsingle\tunknown\tno\t549\tno\tno\tcellular\t2\tsep\t154\t1\t-1\t0\tunknown\tno\t$4563$8:1.0 19:1.0 3598:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$8:1.0 19:1.0 3598:1.0 4552:1.0 4554:1.0 4556:1.0 4563:22.0 4564:154.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.37658551711284427\",\"yes\":\"0.6234144828871557\"}\n41\tmanagement\tdivorced\ttertiary\tno\t5037\tno\tno\tcellular\t23\tapr\t252\t9\t185\t5\tother\tyes\t$4563$4:1.0 12:1.0 17:1.0 19:1.0 3439:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$4:1.0 12:1.0 17:1.0 19:1.0 3439:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:41.0 4564:252.0 4565:9.0 4566:185.0 4567:5.0\tno\t{\"no\":\"0.5264381791288603\",\"yes\":\"0.47356182087113974\"}\n46\tadmin.\tdivorced\tsecondary\tno\t2232\tno\tno\tcellular\t13\tfeb\t121\t1\t-1\t0\tunknown\tyes\t$4563$0:1.0 12:1.0 16:1.0 19:1.0 1914:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 12:1.0 16:1.0 19:1.0 1914:1.0 4552:1.0 4554:1.0 4556:1.0 4563:46.0 4564:121.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.5362144046001756\",\"yes\":\"0.46378559539982445\"}\n54\tblue-collar\tmarried\tsecondary\tno\t-932\tyes\tno\tunknown\t7\tmay\t799\t1\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 4551:1.0 4554:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 4551:1.0 4554:1.0 4563:54.0 4564:799.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.43714928221116556\",\"yes\":\"0.5628507177888344\"}\n32\tmanagement\tmarried\ttertiary\tno\t913\tyes\tno\tcellular\t23\tjun\t883\t1\t674\t4\tfailure\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 4418:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 4418:1.0 4554:1.0 4556:1.0 4559:1.0 4563:32.0 4564:883.0 4565:1.0 4566:674.0 4567:4.0\tyes\t{\"no\":\"0.10448171504290593\",\"yes\":\"0.8955182849570941\"}\n31\tmanagement\tmarried\ttertiary\tno\t2603\tyes\tno\tcellular\t11\tfeb\t280\t4\t-1\t0\tunknown\tyes\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 2199:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 2199:1.0 4554:1.0 4556:1.0 4563:31.0 4564:280.0 4565:4.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.7463017111405843\",\"yes\":\"0.2536982888594157\"}\n58\tentrepreneur\tmarried\tsecondary\tno\t2\tno\tno\tunknown\t16\tjun\t684\t1\t-1\t0\tunknown\tno\t$4563$2:1.0 13:1.0 16:1.0 19:1.0 1710:1.0 4552:1.0 4554:1.0\t$4568$2:1.0 13:1.0 16:1.0 19:1.0 1710:1.0 4552:1.0 4554:1.0 4563:58.0 4564:684.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.40486319816459226\",\"yes\":\"0.5951368018354077\"}\n31\tmanagement\tmarried\tsecondary\tno\t625\tyes\tno\tcellular\t7\tapr\t424\t1\t138\t1\tfailure\tno\t$4563$4:1.0 13:1.0 16:1.0 19:1.0 3801:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 13:1.0 16:1.0 19:1.0 3801:1.0 4554:1.0 4556:1.0 4559:1.0 4563:31.0 4564:424.0 4565:1.0 4566:138.0 4567:1.0\tyes\t{\"no\":\"0.05706654323029359\",\"yes\":\"0.9429334567697064\"}\n49\tblue-collar\tmarried\ttertiary\tno\t1784\tno\tno\tunknown\t12\tjun\t753\t1\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 17:1.0 19:1.0 1529:1.0 4552:1.0 4554:1.0\t$4568$1:1.0 13:1.0 17:1.0 19:1.0 1529:1.0 4552:1.0 4554:1.0 4563:49.0 4564:753.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.19601984041348142\",\"yes\":\"0.8039801595865186\"}\n28\tmanagement\tsingle\ttertiary\tno\t1027\tyes\tno\tcellular\t14\tmay\t433\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 17:1.0 19:1.0 640:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 640:1.0 4554:1.0 4556:1.0 4563:28.0 4564:433.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2426426247300273\",\"yes\":\"0.7573573752699727\"}\n45\tadmin.\tmarried\tsecondary\tno\t204\tyes\tno\tcellular\t3\tjun\t224\t2\t-1\t0\tunknown\tyes\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 1747:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 1747:1.0 4554:1.0 4556:1.0 4563:45.0 4564:224.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.8063848647539155\",\"yes\":\"0.19361513524608454\"}\n31\ttechnician\tsingle\tsecondary\tno\t628\tyes\tno\tunknown\t12\tmay\t1083\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 19:1.0 3807:1.0 4554:1.0\t$4568$9:1.0 16:1.0 19:1.0 3807:1.0 4554:1.0 4563:31.0 4564:1083.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2754494277515158\",\"yes\":\"0.7245505722484842\"}\n40\ttechnician\tsingle\ttertiary\tno\t226\tno\tno\tcellular\t15\tjan\t176\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 17:1.0 19:1.0 1937:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 17:1.0 19:1.0 1937:1.0 4552:1.0 4554:1.0 4556:1.0 4563:40.0 4564:176.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2485310699538672\",\"yes\":\"0.7514689300461328\"}\n48\ttechnician\tmarried\tsecondary\tno\t127\tno\tyes\tcellular\t7\taug\t524\t5\t-1\t0\tunknown\tno\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 977:1.0 4552:1.0 4556:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 977:1.0 4552:1.0 4556:1.0 4563:48.0 4564:524.0 4565:5.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.153543054525754\",\"yes\":\"0.846456945474246\"}\n47\ttechnician\tmarried\tsecondary\tno\t1233\tyes\tno\tunknown\t11\tsep\t91\t1\t100\t2\tother\tyes\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 930:1.0 4554:1.0 4560:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 930:1.0 4554:1.0 4560:1.0 4563:47.0 4564:91.0 4565:1.0 4566:100.0 4567:2.0\tno\t{\"no\":\"0.8608799938606907\",\"yes\":\"0.1391200061393093\"}\n28\tmanagement\tsingle\tsecondary\tno\t171\tno\tno\tcellular\t10\tmar\t93\t1\t-1\t0\tunknown\tyes\t$4563$4:1.0 16:1.0 19:1.0 1459:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 16:1.0 19:1.0 1459:1.0 4552:1.0 4554:1.0 4556:1.0 4563:28.0 4564:93.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.9747374696264581\",\"yes\":\"0.02526253037354187\"}\n36\tmanagement\tmarried\ttertiary\tno\t61\tno\tyes\tcellular\t19\taug\t452\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 3761:1.0 4552:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 3761:1.0 4552:1.0 4556:1.0 4563:36.0 4564:452.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.19516888618466322\",\"yes\":\"0.8048311138153368\"}\n29\tadmin.\tsingle\tsecondary\tno\t1448\tno\tno\tcellular\t10\tmar\t217\t1\t184\t7\tother\tno\t$4563$0:1.0 16:1.0 19:1.0 1189:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$0:1.0 16:1.0 19:1.0 1189:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:29.0 4564:217.0 4565:1.0 4566:184.0 4567:7.0\tyes\t{\"no\":\"0.30896407191708897\",\"yes\":\"0.691035928082911\"}\n30\tmanagement\tsingle\ttertiary\tno\t604\tno\tyes\tcellular\t2\tfeb\t475\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 17:1.0 19:1.0 3749:1.0 4552:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 3749:1.0 4552:1.0 4556:1.0 4563:30.0 4564:475.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.22628377677001799\",\"yes\":\"0.773716223229982\"}\n27\tadmin.\tsingle\ttertiary\tno\t73\tno\tno\tcellular\t29\tjan\t242\t1\t-1\t0\tunknown\tno\t$4563$0:1.0 17:1.0 19:1.0 4057:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 17:1.0 19:1.0 4057:1.0 4552:1.0 4554:1.0 4556:1.0 4563:27.0 4564:242.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.174805363660532\",\"yes\":\"0.825194636339468\"}\n45\tself-employed\tmarried\tsecondary\tno\t706\tno\tno\tcellular\t30\tapr\t78\t2\t176\t1\tsuccess\tno\t$4563$6:1.0 13:1.0 16:1.0 19:1.0 4000:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$6:1.0 13:1.0 16:1.0 19:1.0 4000:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:45.0 4564:78.0 4565:2.0 4566:176.0 4567:1.0\tyes\t{\"no\":\"0.14795063933667874\",\"yes\":\"0.8520493606633213\"}\n46\tadmin.\tmarried\tsecondary\tno\t368\tno\tno\tcellular\t20\taug\t293\t1\t90\t4\tother\tyes\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 2862:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 2862:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:46.0 4564:293.0 4565:1.0 4566:90.0 4567:4.0\tno\t{\"no\":\"0.581489440583421\",\"yes\":\"0.418510559416579\"}\n59\tservices\tmarried\tsecondary\tno\t204\tno\tno\tcellular\t23\tjul\t286\t2\t-1\t0\tunknown\tno\t$4563$7:1.0 13:1.0 16:1.0 19:1.0 1747:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$7:1.0 13:1.0 16:1.0 19:1.0 1747:1.0 4552:1.0 4554:1.0 4556:1.0 4563:59.0 4564:286.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4221690960815483\",\"yes\":\"0.5778309039184517\"}\n34\tmanagement\tmarried\ttertiary\tno\t4170\tyes\tno\tunknown\t21\tmay\t935\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 3102:1.0 4554:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 3102:1.0 4554:1.0 4563:34.0 4564:935.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.14285353837538928\",\"yes\":\"0.8571464616246107\"}\n21\tservices\tsingle\tsecondary\tno\t361\tno\tno\ttelephone\t5\tjun\t329\t1\t95\t1\tother\tno\t$4563$7:1.0 16:1.0 19:1.0 2825:1.0 4552:1.0 4554:1.0 4557:1.0 4560:1.0\t$4568$7:1.0 16:1.0 19:1.0 2825:1.0 4552:1.0 4554:1.0 4557:1.0 4560:1.0 4563:21.0 4564:329.0 4565:1.0 4566:95.0 4567:1.0\tyes\t{\"no\":\"0.40906855052803137\",\"yes\":\"0.5909314494719686\"}\n35\ttechnician\tmarried\tsecondary\tno\t2\tno\tno\ttelephone\t28\tjan\t653\t3\t-1\t0\tunknown\tno\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 1710:1.0 4552:1.0 4554:1.0 4557:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 1710:1.0 4552:1.0 4554:1.0 4557:1.0 4563:35.0 4564:653.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.22703920942585598\",\"yes\":\"0.772960790574144\"}\n48\tmanagement\tdivorced\ttertiary\tno\t507\tyes\tno\tcellular\t9\tapr\t528\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 12:1.0 17:1.0 19:1.0 3455:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 12:1.0 17:1.0 19:1.0 3455:1.0 4554:1.0 4556:1.0 4563:48.0 4564:528.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.12168758751012798\",\"yes\":\"0.878312412489872\"}\n29\tblue-collar\tmarried\tsecondary\tno\t912\tyes\tno\tcellular\t13\tmay\t785\t1\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 4417:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 4417:1.0 4554:1.0 4556:1.0 4563:29.0 4564:785.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.49485675050745637\",\"yes\":\"0.5051432494925436\"}\n36\tunemployed\tsingle\ttertiary\tno\t9019\tyes\tno\tunknown\t11\tjun\t952\t3\t-1\t0\tunknown\tno\t$4563$10:1.0 17:1.0 19:1.0 4551:1.0 4554:1.0\t$4568$10:1.0 17:1.0 19:1.0 4551:1.0 4554:1.0 4563:36.0 4564:952.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.11156361284737026\",\"yes\":\"0.8884363871526297\"}\n57\tadmin.\tdivorced\tunknown\tno\t4012\tno\tno\tcellular\t20\tnov\t915\t1\t-1\t0\tunknown\tno\t$4563$0:1.0 12:1.0 19:1.0 3022:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 12:1.0 19:1.0 3022:1.0 4552:1.0 4554:1.0 4556:1.0 4563:57.0 4564:915.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.011883670322537454\",\"yes\":\"0.9881163296774625\"}\n32\tstudent\tsingle\ttertiary\tno\t0\tno\tno\tcellular\t6\taug\t101\t5\t3\t6\tother\tno\t$4563$8:1.0 17:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$8:1.0 17:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:32.0 4564:101.0 4565:5.0 4566:3.0 4567:6.0\tyes\t{\"no\":\"0.3123722382290698\",\"yes\":\"0.6876277617709302\"}\n34\tadmin.\tsingle\tsecondary\tno\t846\tyes\tno\tcellular\t17\tapr\t758\t2\t-1\t0\tunknown\tno\t$4563$0:1.0 16:1.0 19:1.0 4294:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 16:1.0 19:1.0 4294:1.0 4554:1.0 4556:1.0 4563:34.0 4564:758.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.08081553632886707\",\"yes\":\"0.9191844636711329\"}\n49\tunknown\tmarried\tunknown\tno\t301\tno\tno\tcellular\t14\taug\t789\t2\t-1\t0\tunknown\tno\t$4563$13:1.0 19:1.0 2479:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$13:1.0 19:1.0 2479:1.0 4552:1.0 4554:1.0 4556:1.0 4563:49.0 4564:789.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.22411645915656508\",\"yes\":\"0.7758835408434349\"}\n73\tretired\tmarried\tprimary\tno\t1388\tno\tno\tcellular\t20\tjul\t146\t3\t190\t3\tsuccess\tno\t$4563$5:1.0 13:1.0 15:1.0 19:1.0 1121:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$5:1.0 13:1.0 15:1.0 19:1.0 1121:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:73.0 4564:146.0 4565:3.0 4566:190.0 4567:3.0\tyes\t{\"no\":\"0.23377783120889195\",\"yes\":\"0.766222168791108\"}\n32\tself-employed\tmarried\tsecondary\tno\t413\tyes\tno\tcellular\t11\tjul\t712\t2\t-1\t0\tunknown\tno\t$4563$6:1.0 13:1.0 16:1.0 19:1.0 3077:1.0 4554:1.0 4556:1.0\t$4568$6:1.0 13:1.0 16:1.0 19:1.0 3077:1.0 4554:1.0 4556:1.0 4563:32.0 4564:712.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.331481973326459\",\"yes\":\"0.668518026673541\"}\n33\tmanagement\tmarried\ttertiary\tno\t3696\tno\tno\tcellular\t19\tnov\t305\t1\t182\t3\tfailure\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 2869:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 2869:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:33.0 4564:305.0 4565:1.0 4566:182.0 4567:3.0\tyes\t{\"no\":\"0.31281818949233087\",\"yes\":\"0.6871818105076691\"}\n31\ttechnician\tsingle\tsecondary\tno\t433\tno\tno\tcellular\t11\taug\t1504\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 19:1.0 3162:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 3162:1.0 4552:1.0 4554:1.0 4556:1.0 4563:31.0 4564:1504.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.0012210525224305435\",\"yes\":\"0.9987789474775695\"}\n31\tblue-collar\tmarried\tsecondary\tno\t1766\tno\tyes\tcellular\t5\tjun\t166\t2\t-1\t0\tunknown\tyes\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 1512:1.0 4552:1.0 4556:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 1512:1.0 4552:1.0 4556:1.0 4563:31.0 4564:166.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.8576551630045437\",\"yes\":\"0.1423448369954563\"}\n53\tservices\tdivorced\tsecondary\tno\t0\tno\tno\tcellular\t12\tmar\t80\t2\t-1\t0\tunknown\tyes\t$4563$7:1.0 12:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$7:1.0 12:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4563:53.0 4564:80.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.888804076178797\",\"yes\":\"0.11119592382120302\"}\n53\tblue-collar\tmarried\tsecondary\tno\t70\tyes\tno\tunknown\t5\tmay\t611\t2\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 3985:1.0 4554:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 3985:1.0 4554:1.0 4563:53.0 4564:611.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.25183759925846316\",\"yes\":\"0.7481624007415368\"}\n26\tadmin.\tsingle\tsecondary\tno\t443\tno\tno\tcellular\t30\tjul\t84\t3\t-1\t0\tunknown\tno\t$4563$0:1.0 16:1.0 19:1.0 3206:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 16:1.0 19:1.0 3206:1.0 4552:1.0 4554:1.0 4556:1.0 4563:26.0 4564:84.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.44042579518109837\",\"yes\":\"0.5595742048189016\"}\n55\tretired\tmarried\ttertiary\tno\t197\tno\tyes\tcellular\t8\tjul\t256\t1\t-1\t0\tunknown\tno\t$4563$5:1.0 13:1.0 17:1.0 19:1.0 1684:1.0 4552:1.0 4556:1.0\t$4568$5:1.0 13:1.0 17:1.0 19:1.0 1684:1.0 4552:1.0 4556:1.0 4563:55.0 4564:256.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.15360353875657617\",\"yes\":\"0.8463964612434238\"}\n46\ttechnician\tmarried\tsecondary\tno\t57\tno\tno\tunknown\t28\tmay\t796\t1\t-1\t0\tunknown\tyes\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 3654:1.0 4552:1.0 4554:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 3654:1.0 4552:1.0 4554:1.0 4563:46.0 4564:796.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.659416626998853\",\"yes\":\"0.34058337300114705\"}\n40\tmanagement\tmarried\ttertiary\tno\t-7\tno\tyes\ttelephone\t25\tjul\t697\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 504:1.0 4552:1.0 4557:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 504:1.0 4552:1.0 4557:1.0 4563:40.0 4564:697.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.23124474699359931\",\"yes\":\"0.7687552530064007\"}\n33\tmanagement\tsingle\ttertiary\tno\t1998\tno\tno\tcellular\t19\tnov\t570\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 17:1.0 19:1.0 1709:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 1709:1.0 4552:1.0 4554:1.0 4556:1.0 4563:33.0 4564:570.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.04244169319558522\",\"yes\":\"0.9575583068044148\"}\n54\tservices\tmarried\tunknown\tno\t386\tno\tyes\tcellular\t19\tnov\t74\t1\t152\t1\tsuccess\tno\t$4563$7:1.0 13:1.0 19:1.0 2953:1.0 4552:1.0 4556:1.0 4561:1.0\t$4568$7:1.0 13:1.0 19:1.0 2953:1.0 4552:1.0 4556:1.0 4561:1.0 4563:54.0 4564:74.0 4565:1.0 4566:152.0 4567:1.0\tyes\t{\"no\":\"0.19246837951076912\",\"yes\":\"0.8075316204892309\"}\n42\tmanagement\tdivorced\tunknown\tno\t7702\tno\tno\tcellular\t16\tfeb\t138\t2\t-1\t0\tunknown\tyes\t$4563$4:1.0 12:1.0 19:1.0 4143:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 12:1.0 19:1.0 4143:1.0 4552:1.0 4554:1.0 4556:1.0 4563:42.0 4564:138.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6898551090191858\",\"yes\":\"0.3101448909808142\"}\n48\tmanagement\tmarried\tsecondary\tno\t117\tyes\tno\tcellular\t16\tapr\t635\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 16:1.0 19:1.0 839:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 16:1.0 19:1.0 839:1.0 4554:1.0 4556:1.0 4563:48.0 4564:635.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.32609108817275767\",\"yes\":\"0.6739089118272423\"}\n37\tmanagement\tmarried\ttertiary\tno\t539\tno\tno\tcellular\t18\tjan\t540\t2\t115\t3\tfailure\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 3564:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 3564:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:37.0 4564:540.0 4565:2.0 4566:115.0 4567:3.0\tyes\t{\"no\":\"0.19935610389487002\",\"yes\":\"0.80064389610513\"}\n70\tretired\tmarried\tsecondary\tno\t2815\tno\tno\tcellular\t26\tapr\t125\t2\t182\t1\tfailure\tno\t$4563$5:1.0 13:1.0 16:1.0 19:1.0 2353:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$5:1.0 13:1.0 16:1.0 19:1.0 2353:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:70.0 4564:125.0 4565:2.0 4566:182.0 4567:1.0\tyes\t{\"no\":\"0.46187553460242026\",\"yes\":\"0.5381244653975797\"}\n29\tself-employed\tsingle\tsecondary\tno\t3672\tyes\tyes\tunknown\t28\tmay\t1210\t1\t-1\t0\tunknown\tno\t$4563$6:1.0 16:1.0 19:1.0 4551:1.0\t$4568$6:1.0 16:1.0 19:1.0 4551:1.0 4563:29.0 4564:1210.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.07428580995715472\",\"yes\":\"0.9257141900428453\"}\n32\ttechnician\tmarried\tunknown\tno\t14533\tno\tno\tcellular\t31\tdec\t646\t3\t198\t2\tsuccess\tno\t$4563$9:1.0 13:1.0 19:1.0 1197:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$9:1.0 13:1.0 19:1.0 1197:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:32.0 4564:646.0 4565:3.0 4566:198.0 4567:2.0\tyes\t{\"no\":\"0.013321069052180778\",\"yes\":\"0.9866789309478192\"}\n49\tmanagement\tsingle\ttertiary\tno\t151\tyes\tno\tcellular\t8\tjul\t97\t3\t-1\t0\tunknown\tyes\t$4563$4:1.0 17:1.0 19:1.0 1250:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 1250:1.0 4554:1.0 4556:1.0 4563:49.0 4564:97.0 4565:3.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.8222397218693579\",\"yes\":\"0.1777602781306421\"}\n33\tmanagement\tsingle\tsecondary\tno\t8004\tno\tno\tcellular\t19\tnov\t414\t3\t-1\t0\tunknown\tno\t$4563$4:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 16:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4563:33.0 4564:414.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.49735190665224305\",\"yes\":\"0.502648093347757\"}\n58\ttechnician\tmarried\tsecondary\tno\t116\tno\tno\tunknown\t16\tjun\t580\t3\t-1\t0\tunknown\tno\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 824:1.0 4552:1.0 4554:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 824:1.0 4552:1.0 4554:1.0 4563:58.0 4564:580.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3666558894027723\",\"yes\":\"0.6333441105972277\"}\n27\tblue-collar\tsingle\tsecondary\tno\t23\tno\tno\tcellular\t26\tfeb\t590\t2\t-1\t0\tunknown\tno\t$4563$1:1.0 16:1.0 19:1.0 1968:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 16:1.0 19:1.0 1968:1.0 4552:1.0 4554:1.0 4556:1.0 4563:27.0 4564:590.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3333149330269155\",\"yes\":\"0.6666850669730845\"}\n32\ttechnician\tsingle\tsecondary\tno\t493\tno\tno\tcellular\t13\taug\t289\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 19:1.0 3400:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 3400:1.0 4552:1.0 4554:1.0 4556:1.0 4563:32.0 4564:289.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3662166755027656\",\"yes\":\"0.6337833244972344\"}\n66\tmanagement\tmarried\ttertiary\tno\t1048\tyes\tno\tcellular\t23\tjun\t971\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0 4563:66.0 4564:971.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.025502211031419253\",\"yes\":\"0.9744977889685807\"}\n32\ttechnician\tsingle\ttertiary\tno\t569\tno\tyes\tcellular\t29\tjan\t348\t1\t-1\t0\tunknown\tno\t$4563$9:1.0 17:1.0 19:1.0 3650:1.0 4552:1.0 4556:1.0\t$4568$9:1.0 17:1.0 19:1.0 3650:1.0 4552:1.0 4556:1.0 4563:32.0 4564:348.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2885500909118266\",\"yes\":\"0.7114499090881734\"}\n37\ttechnician\tsingle\tsecondary\tno\t2442\tno\tno\tcellular\t16\tfeb\t91\t3\t-1\t0\tunknown\tyes\t$4563$9:1.0 16:1.0 19:1.0 2081:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 2081:1.0 4552:1.0 4554:1.0 4556:1.0 4563:37.0 4564:91.0 4565:3.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.8990948351719102\",\"yes\":\"0.10090516482808976\"}\n35\tadmin.\tsingle\ttertiary\tno\t62\tno\tyes\tcellular\t30\tapr\t67\t1\t-1\t0\tunknown\tno\t$4563$0:1.0 17:1.0 19:1.0 3789:1.0 4552:1.0 4556:1.0\t$4568$0:1.0 17:1.0 19:1.0 3789:1.0 4552:1.0 4556:1.0 4563:35.0 4564:67.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.35990994630827666\",\"yes\":\"0.6400900536917233\"}\n60\tretired\tmarried\tsecondary\tno\t262\tno\tno\tcellular\t18\taug\t393\t4\t-1\t0\tunknown\tno\t$4563$5:1.0 13:1.0 16:1.0 19:1.0 2210:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 13:1.0 16:1.0 19:1.0 2210:1.0 4552:1.0 4554:1.0 4556:1.0 4563:60.0 4564:393.0 4565:4.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2061370779797993\",\"yes\":\"0.7938629220202007\"}\n56\tmanagement\tmarried\tsecondary\tno\t238\tyes\tno\tcellular\t19\tnov\t808\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 16:1.0 19:1.0 2031:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 16:1.0 19:1.0 2031:1.0 4554:1.0 4556:1.0 4563:56.0 4564:808.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.1860710558422417\",\"yes\":\"0.8139289441577583\"}\n20\tstudent\tsingle\tsecondary\tno\t1191\tno\tno\tcellular\t12\tfeb\t274\t1\t-1\t0\tunknown\tno\t$4563$8:1.0 16:1.0 19:1.0 870:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$8:1.0 16:1.0 19:1.0 870:1.0 4552:1.0 4554:1.0 4556:1.0 4563:20.0 4564:274.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2678198558933744\",\"yes\":\"0.7321801441066256\"}\n44\tmanagement\tdivorced\ttertiary\tno\t2058\tno\tyes\tcellular\t21\tnov\t661\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 12:1.0 17:1.0 19:1.0 1761:1.0 4552:1.0 4556:1.0\t$4568$4:1.0 12:1.0 17:1.0 19:1.0 1761:1.0 4552:1.0 4556:1.0 4563:44.0 4564:661.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2948195288944926\",\"yes\":\"0.7051804711055074\"}\n47\tservices\tmarried\ttertiary\tno\t871\tno\tno\tcellular\t22\taug\t602\t9\t-1\t0\tunknown\tno\t$4563$7:1.0 13:1.0 17:1.0 19:1.0 4340:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$7:1.0 13:1.0 17:1.0 19:1.0 4340:1.0 4552:1.0 4554:1.0 4556:1.0 4563:47.0 4564:602.0 4565:9.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4264124859592022\",\"yes\":\"0.5735875140407978\"}\n35\tself-employed\tsingle\ttertiary\tno\t44\tno\tno\tcellular\t7\tsep\t310\t2\t96\t2\tother\tno\t$4563$6:1.0 17:1.0 19:1.0 3191:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$6:1.0 17:1.0 19:1.0 3191:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:35.0 4564:310.0 4565:2.0 4566:96.0 4567:2.0\tyes\t{\"no\":\"0.09046209967214736\",\"yes\":\"0.9095379003278526\"}\n56\tmanagement\tmarried\ttertiary\tno\t15520\tno\tno\tcellular\t18\tnov\t420\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 1301:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 1301:1.0 4552:1.0 4554:1.0 4556:1.0 4563:56.0 4564:420.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4111964890737656\",\"yes\":\"0.5888035109262344\"}\n32\ttechnician\tsingle\ttertiary\tno\t13711\tyes\tno\tcellular\t14\tmay\t638\t1\t175\t3\tsuccess\tno\t$4563$9:1.0 17:1.0 19:1.0 1104:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$9:1.0 17:1.0 19:1.0 1104:1.0 4554:1.0 4556:1.0 4561:1.0 4563:32.0 4564:638.0 4565:1.0 4566:175.0 4567:3.0\tyes\t{\"no\":\"0.018944741808414545\",\"yes\":\"0.9810552581915855\"}\n57\tadmin.\tmarried\tsecondary\tno\t808\tno\tno\tcellular\t14\tjul\t417\t3\t-1\t0\tunknown\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 4226:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 4226:1.0 4552:1.0 4554:1.0 4556:1.0 4563:57.0 4564:417.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4696063311500027\",\"yes\":\"0.5303936688499973\"}\n34\tmanagement\tmarried\ttertiary\tno\t180\tno\tno\tcellular\t16\tjun\t298\t3\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 1547:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 1547:1.0 4552:1.0 4554:1.0 4556:1.0 4563:34.0 4564:298.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2359927776290366\",\"yes\":\"0.7640072223709634\"}\n40\ttechnician\tmarried\tsecondary\tno\t1819\tno\tno\tcellular\t5\tjun\t398\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 1567:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 1567:1.0 4552:1.0 4554:1.0 4556:1.0 4563:40.0 4564:398.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4698773824438066\",\"yes\":\"0.5301226175561934\"}\n39\ttechnician\tdivorced\ttertiary\tyes\t3\tno\tno\tcellular\t6\tmay\t488\t1\t-1\t0\tunknown\tyes\t$4563$9:1.0 12:1.0 17:1.0 2470:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 12:1.0 17:1.0 2470:1.0 4552:1.0 4554:1.0 4556:1.0 4563:39.0 4564:488.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6722484515439986\",\"yes\":\"0.3277515484560014\"}\n54\tmanagement\tmarried\ttertiary\tno\t8295\tno\tno\tcellular\t5\tjun\t207\t1\t-1\t0\tunknown\tyes\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 4266:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 4266:1.0 4552:1.0 4554:1.0 4556:1.0 4563:54.0 4564:207.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.512676411564536\",\"yes\":\"0.487323588435464\"}\n38\tblue-collar\tmarried\tprimary\tno\t2240\tyes\tno\tcellular\t19\tnov\t551\t1\t183\t1\tfailure\tno\t$4563$1:1.0 13:1.0 15:1.0 19:1.0 1920:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$1:1.0 13:1.0 15:1.0 19:1.0 1920:1.0 4554:1.0 4556:1.0 4559:1.0 4563:38.0 4564:551.0 4565:1.0 4566:183.0 4567:1.0\tyes\t{\"no\":\"0.13960615360174056\",\"yes\":\"0.8603938463982594\"}\n41\ttechnician\tsingle\tsecondary\tno\t618\tno\tno\tcellular\t5\tfeb\t1056\t1\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 19:1.0 3785:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 3785:1.0 4552:1.0 4554:1.0 4556:1.0 4563:41.0 4564:1056.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.002817180867403679\",\"yes\":\"0.9971828191325963\"}\n32\tadmin.\tsingle\tsecondary\tno\t45\tyes\tyes\tcellular\t14\tmay\t908\t3\t344\t7\tother\tno\t$4563$0:1.0 16:1.0 19:1.0 3237:1.0 4556:1.0 4560:1.0\t$4568$0:1.0 16:1.0 19:1.0 3237:1.0 4556:1.0 4560:1.0 4563:32.0 4564:908.0 4565:3.0 4566:344.0 4567:7.0\tyes\t{\"no\":\"0.06685238336374744\",\"yes\":\"0.9331476166362526\"}\n32\tadmin.\tmarried\tsecondary\tno\t923\tyes\tno\tcellular\t17\tapr\t819\t4\t-1\t0\tunknown\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 4434:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 4434:1.0 4554:1.0 4556:1.0 4563:32.0 4564:819.0 4565:4.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2730747037732346\",\"yes\":\"0.7269252962267654\"}\n86\tretired\tmarried\tsecondary\tno\t1503\tno\tno\ttelephone\t18\tmar\t165\t3\t101\t1\tother\tno\t$4563$5:1.0 13:1.0 16:1.0 19:1.0 1243:1.0 4552:1.0 4554:1.0 4557:1.0 4560:1.0\t$4568$5:1.0 13:1.0 16:1.0 19:1.0 1243:1.0 4552:1.0 4554:1.0 4557:1.0 4560:1.0 4563:86.0 4564:165.0 4565:3.0 4566:101.0 4567:1.0\tyes\t{\"no\":\"0.4867129104426625\",\"yes\":\"0.5132870895573375\"}\n44\tmanagement\tmarried\ttertiary\tno\t773\tno\tyes\tcellular\t9\tjul\t618\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 4151:1.0 4552:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 4151:1.0 4552:1.0 4556:1.0 4563:44.0 4564:618.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.42792109872291717\",\"yes\":\"0.5720789012770828\"}\n25\tstudent\tsingle\tunknown\tno\t10788\tno\tno\tcellular\t23\tdec\t102\t2\t210\t2\tother\tno\t$4563$8:1.0 19:1.0 713:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$8:1.0 19:1.0 713:1.0 4552:1.0 4554:1.0 4556:1.0 4560:1.0 4563:25.0 4564:102.0 4565:2.0 4566:210.0 4567:2.0\tyes\t{\"no\":\"0.49439485508329994\",\"yes\":\"0.5056051449167001\"}\n30\tblue-collar\tsingle\tsecondary\tno\t180\tno\tno\tcellular\t14\tjul\t203\t1\t183\t2\tfailure\tno\t$4563$1:1.0 16:1.0 19:1.0 1547:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$1:1.0 16:1.0 19:1.0 1547:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:30.0 4564:203.0 4565:1.0 4566:183.0 4567:2.0\tyes\t{\"no\":\"0.28180000139966843\",\"yes\":\"0.7181999986003316\"}\n35\tmanagement\tsingle\ttertiary\tno\t0\tno\tno\tcellular\t29\taug\t669\t6\t-1\t0\tunknown\tno\t$4563$4:1.0 17:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4563:35.0 4564:669.0 4565:6.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2120262849589687\",\"yes\":\"0.7879737150410313\"}\n60\tretired\tmarried\tsecondary\tno\t197\tno\tno\tcellular\t7\toct\t1386\t1\t-1\t0\tunknown\tno\t$4563$5:1.0 13:1.0 16:1.0 19:1.0 1684:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 13:1.0 16:1.0 19:1.0 1684:1.0 4552:1.0 4554:1.0 4556:1.0 4563:60.0 4564:1386.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"9.692932481419891E-5\",\"yes\":\"0.9999030706751858\"}\n54\tblue-collar\tmarried\tsecondary\tno\t0\tno\tno\ttelephone\t16\tapr\t1366\t1\t150\t1\tfailure\tno\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4557:1.0 4559:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4557:1.0 4559:1.0 4563:54.0 4564:1366.0 4565:1.0 4566:150.0 4567:1.0\tyes\t{\"no\":\"0.001018254771523397\",\"yes\":\"0.9989817452284766\"}\n53\tunemployed\tmarried\tprimary\tno\t980\tyes\tno\tcellular\t3\tdec\t352\t1\t-1\t0\tunknown\tyes\t$4563$10:1.0 13:1.0 15:1.0 19:1.0 4523:1.0 4554:1.0 4556:1.0\t$4568$10:1.0 13:1.0 15:1.0 19:1.0 4523:1.0 4554:1.0 4556:1.0 4563:53.0 4564:352.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.8197300437929417\",\"yes\":\"0.18026995620705832\"}\n71\tretired\tmarried\tprimary\tno\t4657\tno\tno\tcellular\t16\tfeb\t93\t5\t-1\t0\tunknown\tyes\t$4563$5:1.0 13:1.0 15:1.0 19:1.0 3294:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 13:1.0 15:1.0 19:1.0 3294:1.0 4552:1.0 4554:1.0 4556:1.0 4563:71.0 4564:93.0 4565:5.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.720338348442288\",\"yes\":\"0.27966165155771205\"}\n46\tunemployed\tsingle\ttertiary\tno\t705\tno\tno\tcellular\t4\tfeb\t398\t1\t-1\t0\tunknown\tno\t$4563$10:1.0 17:1.0 19:1.0 3997:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$10:1.0 17:1.0 19:1.0 3997:1.0 4552:1.0 4554:1.0 4556:1.0 4563:46.0 4564:398.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.08389735766157036\",\"yes\":\"0.9161026423384296\"}\n27\ttechnician\tsingle\tsecondary\tno\t489\tyes\tno\tcellular\t30\tjul\t356\t4\t-1\t0\tunknown\tyes\t$4563$9:1.0 16:1.0 19:1.0 3386:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 3386:1.0 4554:1.0 4556:1.0 4563:27.0 4564:356.0 4565:4.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6483288041408077\",\"yes\":\"0.35167119585919226\"}\n37\tmanagement\tsingle\ttertiary\tno\t695\tno\tno\tcellular\t28\tjan\t233\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 17:1.0 19:1.0 3972:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 17:1.0 19:1.0 3972:1.0 4552:1.0 4554:1.0 4556:1.0 4563:37.0 4564:233.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3240840851708692\",\"yes\":\"0.6759159148291308\"}\n33\tblue-collar\tsingle\tsecondary\tno\t4404\tyes\tno\tcellular\t20\tnov\t766\t3\t-1\t0\tunknown\tno\t$4563$1:1.0 16:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 16:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0 4563:33.0 4564:766.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2995084925380137\",\"yes\":\"0.7004915074619863\"}\n78\tretired\tmarried\ttertiary\tno\t226\tno\tno\ttelephone\t6\tnov\t136\t1\t-1\t0\tunknown\tno\t$4563$5:1.0 13:1.0 17:1.0 19:1.0 1937:1.0 4552:1.0 4554:1.0 4557:1.0\t$4568$5:1.0 13:1.0 17:1.0 19:1.0 1937:1.0 4552:1.0 4554:1.0 4557:1.0 4563:78.0 4564:136.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.1423159627163899\",\"yes\":\"0.8576840372836101\"}\n77\tretired\tmarried\tprimary\tno\t680\tno\tno\ttelephone\t24\tfeb\t513\t2\t89\t7\tfailure\tno\t$4563$5:1.0 13:1.0 15:1.0 19:1.0 3937:1.0 4552:1.0 4554:1.0 4557:1.0 4559:1.0\t$4568$5:1.0 13:1.0 15:1.0 19:1.0 3937:1.0 4552:1.0 4554:1.0 4557:1.0 4559:1.0 4563:77.0 4564:513.0 4565:2.0 4566:89.0 4567:7.0\tyes\t{\"no\":\"0.34523134258466726\",\"yes\":\"0.6547686574153327\"}\n44\tblue-collar\tmarried\tsecondary\tno\t2523\tyes\tno\tunknown\t29\tmay\t1236\t2\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 16:1.0 19:1.0 2140:1.0 4554:1.0\t$4568$1:1.0 13:1.0 16:1.0 19:1.0 2140:1.0 4554:1.0 4563:44.0 4564:1236.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.21942206648667906\",\"yes\":\"0.7805779335133209\"}\n56\tadmin.\tmarried\tunknown\tno\t2038\tno\tno\tcellular\t8\tfeb\t405\t1\t305\t1\tsuccess\tno\t$4563$0:1.0 13:1.0 19:1.0 1745:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$0:1.0 13:1.0 19:1.0 1745:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:56.0 4564:405.0 4565:1.0 4566:305.0 4567:1.0\tyes\t{\"no\":\"0.021038158670635854\",\"yes\":\"0.9789618413293641\"}\n43\tadmin.\tmarried\tsecondary\tno\t0\tyes\tno\tcellular\t17\tjul\t674\t3\t-1\t0\tunknown\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4554:1.0 4556:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4554:1.0 4556:1.0 4563:43.0 4564:674.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.41899368107224366\",\"yes\":\"0.5810063189277563\"}\n31\tblue-collar\tsingle\tsecondary\tno\t609\tyes\tno\tcellular\t14\tapr\t1126\t1\t335\t1\tfailure\tno\t$4563$1:1.0 16:1.0 19:1.0 3760:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$1:1.0 16:1.0 19:1.0 3760:1.0 4554:1.0 4556:1.0 4559:1.0 4563:31.0 4564:1126.0 4565:1.0 4566:335.0 4567:1.0\tyes\t{\"no\":\"0.05263279768305307\",\"yes\":\"0.9473672023169469\"}\n40\tmanagement\tsingle\ttertiary\tno\t0\tyes\tno\tcellular\t23\tfeb\t228\t2\t182\t6\tfailure\tyes\t$4563$4:1.0 17:1.0 19:1.0 591:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 17:1.0 19:1.0 591:1.0 4554:1.0 4556:1.0 4559:1.0 4563:40.0 4564:228.0 4565:2.0 4566:182.0 4567:6.0\tno\t{\"no\":\"0.7555202168942312\",\"yes\":\"0.2444797831057688\"}\n30\tmanagement\tmarried\ttertiary\tno\t1942\tyes\tyes\tcellular\t21\tnov\t436\t2\t178\t3\tother\tyes\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 1660:1.0 4556:1.0 4560:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 1660:1.0 4556:1.0 4560:1.0 4563:30.0 4564:436.0 4565:2.0 4566:178.0 4567:3.0\tno\t{\"no\":\"0.5395094454048031\",\"yes\":\"0.46049055459519694\"}\n31\tadmin.\tsingle\tsecondary\tno\t747\tyes\tno\tunknown\t26\tmay\t543\t2\t-1\t0\tunknown\tyes\t$4563$0:1.0 16:1.0 19:1.0 4093:1.0 4554:1.0\t$4568$0:1.0 16:1.0 19:1.0 4093:1.0 4554:1.0 4563:31.0 4564:543.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.7650524206601576\",\"yes\":\"0.23494757933984245\"}\n50\tmanagement\tdivorced\ttertiary\tno\t201\tyes\tno\tcellular\t24\tjul\t248\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 12:1.0 17:1.0 19:1.0 1721:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 12:1.0 17:1.0 19:1.0 1721:1.0 4554:1.0 4556:1.0 4563:50.0 4564:248.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2669989417888867\",\"yes\":\"0.7330010582111133\"}\n56\tmanagement\tdivorced\ttertiary\tno\t2959\tyes\tno\ttelephone\t18\tmay\t325\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 12:1.0 17:1.0 19:1.0 2442:1.0 4554:1.0 4557:1.0\t$4568$4:1.0 12:1.0 17:1.0 19:1.0 2442:1.0 4554:1.0 4557:1.0 4563:56.0 4564:325.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4435741505596811\",\"yes\":\"0.5564258494403189\"}\n80\tretired\tmarried\tsecondary\tno\t8304\tno\tno\ttelephone\t6\tapr\t681\t1\t118\t11\tsuccess\tno\t$4563$5:1.0 13:1.0 16:1.0 19:1.0 4270:1.0 4552:1.0 4554:1.0 4557:1.0 4561:1.0\t$4568$5:1.0 13:1.0 16:1.0 19:1.0 4270:1.0 4552:1.0 4554:1.0 4557:1.0 4561:1.0 4563:80.0 4564:681.0 4565:1.0 4566:118.0 4567:11.0\tyes\t{\"no\":\"7.423003873754386E-4\",\"yes\":\"0.9992576996126246\"}\n69\tretired\tmarried\ttertiary\tno\t473\tno\tno\tcellular\t7\tjul\t112\t1\t78\t1\tfailure\tno\t$4563$5:1.0 13:1.0 17:1.0 19:1.0 3324:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$5:1.0 13:1.0 17:1.0 19:1.0 3324:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:69.0 4564:112.0 4565:1.0 4566:78.0 4567:1.0\tyes\t{\"no\":\"0.19081726515241892\",\"yes\":\"0.8091827348475811\"}\n31\tself-employed\tsingle\tsecondary\tno\t1086\tno\tno\tcellular\t20\tnov\t410\t1\t-1\t0\tunknown\tno\t$4563$6:1.0 16:1.0 19:1.0 722:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$6:1.0 16:1.0 19:1.0 722:1.0 4552:1.0 4554:1.0 4556:1.0 4563:31.0 4564:410.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4386037356359803\",\"yes\":\"0.5613962643640197\"}\n38\tmanagement\tdivorced\ttertiary\tno\t4335\tyes\tno\tcellular\t20\tnov\t640\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 12:1.0 17:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 12:1.0 17:1.0 19:1.0 4551:1.0 4554:1.0 4556:1.0 4563:38.0 4564:640.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.24693387261842537\",\"yes\":\"0.7530661273815746\"}\n52\tmanagement\tmarried\ttertiary\tno\t6922\tno\tno\tcellular\t20\tnov\t371\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4563:52.0 4564:371.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3125481445330247\",\"yes\":\"0.6874518554669753\"}\n38\tself-employed\tdivorced\ttertiary\tno\t1513\tno\tno\tcellular\t7\tmay\t330\t1\t342\t1\tfailure\tno\t$4563$6:1.0 12:1.0 17:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$6:1.0 12:1.0 17:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:38.0 4564:330.0 4565:1.0 4566:342.0 4567:1.0\tyes\t{\"no\":\"0.3802505246511034\",\"yes\":\"0.6197494753488966\"}\n47\tentrepreneur\tmarried\tprimary\tno\t668\tno\tno\tcellular\t12\tmay\t908\t1\t-1\t0\tunknown\tno\t$4563$2:1.0 13:1.0 15:1.0 19:1.0 3905:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$2:1.0 13:1.0 15:1.0 19:1.0 3905:1.0 4552:1.0 4554:1.0 4556:1.0 4563:47.0 4564:908.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.009912615979759232\",\"yes\":\"0.9900873840202408\"}\n33\tmanagement\tmarried\ttertiary\tno\t1412\tyes\tno\tunknown\t19\taug\t480\t1\t-1\t0\tunknown\tyes\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 1152:1.0 4554:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 1152:1.0 4554:1.0 4563:33.0 4564:480.0 4565:1.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.8086564633729298\",\"yes\":\"0.19134353662707015\"}\n62\tretired\tdivorced\ttertiary\tno\t0\tno\tno\tcellular\t13\tnov\t227\t2\t-1\t0\tunknown\tyes\t$4563$5:1.0 12:1.0 17:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 12:1.0 17:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4563:62.0 4564:227.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.6160802571506779\",\"yes\":\"0.38391974284932207\"}\n35\thousemaid\tmarried\ttertiary\tno\t1265\tyes\tno\tcellular\t15\tmay\t326\t5\t179\t4\tfailure\tyes\t$4563$3:1.0 13:1.0 17:1.0 19:1.0 971:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$3:1.0 13:1.0 17:1.0 19:1.0 971:1.0 4554:1.0 4556:1.0 4559:1.0 4563:35.0 4564:326.0 4565:5.0 4566:179.0 4567:4.0\tno\t{\"no\":\"0.5010992652004181\",\"yes\":\"0.49890073479958186\"}\n26\tadmin.\tmarried\tsecondary\tno\t0\tno\tno\tunknown\t27\tmay\t755\t1\t-1\t0\tunknown\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4563:26.0 4564:755.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2905902470113845\",\"yes\":\"0.7094097529886155\"}\n27\ttechnician\tsingle\tsecondary\tno\t282\tno\tyes\tcellular\t9\tjul\t676\t5\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 19:1.0 2358:1.0 4552:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 2358:1.0 4552:1.0 4556:1.0 4563:27.0 4564:676.0 4565:5.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3196987760258575\",\"yes\":\"0.6803012239741425\"}\n31\ttechnician\tsingle\tsecondary\tno\t1970\tno\tno\ttelephone\t17\tapr\t284\t3\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 19:1.0 1685:1.0 4552:1.0 4554:1.0 4557:1.0\t$4568$9:1.0 16:1.0 19:1.0 1685:1.0 4552:1.0 4554:1.0 4557:1.0 4563:31.0 4564:284.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.3298073357303548\",\"yes\":\"0.6701926642696452\"}\n60\tmanagement\tmarried\ttertiary\tno\t3387\tno\tno\tcellular\t14\taug\t636\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 2705:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 2705:1.0 4552:1.0 4554:1.0 4556:1.0 4563:60.0 4564:636.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.18481073780946067\",\"yes\":\"0.8151892621905393\"}\n55\tservices\tmarried\tunknown\tno\t1210\tyes\tno\tunknown\t30\tmay\t868\t1\t-1\t0\tunknown\tno\t$4563$7:1.0 13:1.0 19:1.0 897:1.0 4554:1.0\t$4568$7:1.0 13:1.0 19:1.0 897:1.0 4554:1.0 4563:55.0 4564:868.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.35877694201456967\",\"yes\":\"0.6412230579854303\"}\n27\tstudent\tsingle\tsecondary\tno\t671\tyes\tno\tunknown\t7\tmay\t332\t2\t-1\t0\tunknown\tno\t$4563$8:1.0 16:1.0 19:1.0 3913:1.0 4554:1.0\t$4568$8:1.0 16:1.0 19:1.0 3913:1.0 4554:1.0 4563:27.0 4564:332.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.42405861385570276\",\"yes\":\"0.5759413861442972\"}\n46\tadmin.\tsingle\tsecondary\tno\t1693\tyes\tno\tcellular\t25\tjan\t137\t1\t97\t1\tsuccess\tno\t$4563$0:1.0 16:1.0 19:1.0 1440:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$0:1.0 16:1.0 19:1.0 1440:1.0 4554:1.0 4556:1.0 4561:1.0 4563:46.0 4564:137.0 4565:1.0 4566:97.0 4567:1.0\tyes\t{\"no\":\"0.1751430365476354\",\"yes\":\"0.8248569634523646\"}\n23\tentrepreneur\tsingle\tprimary\tno\t4\tyes\tno\tunknown\t13\tmay\t395\t2\t-1\t0\tunknown\tyes\t$4563$2:1.0 15:1.0 19:1.0 3017:1.0 4554:1.0\t$4568$2:1.0 15:1.0 19:1.0 3017:1.0 4554:1.0 4563:23.0 4564:395.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.9959543861046667\",\"yes\":\"0.004045613895333311\"}\n35\ttechnician\tsingle\ttertiary\tno\t3552\tno\tno\tcellular\t21\tnov\t267\t1\t-1\t0\tunknown\tno\t$4563$9:1.0 17:1.0 19:1.0 2799:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 17:1.0 19:1.0 2799:1.0 4552:1.0 4554:1.0 4556:1.0 4563:35.0 4564:267.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.26181584486803644\",\"yes\":\"0.7381841551319636\"}\n55\tmanagement\tdivorced\ttertiary\tno\t1598\tno\tno\tcellular\t22\taug\t607\t4\t-1\t0\tunknown\tno\t$4563$4:1.0 12:1.0 17:1.0 19:1.0 1345:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 12:1.0 17:1.0 19:1.0 1345:1.0 4552:1.0 4554:1.0 4556:1.0 4563:55.0 4564:607.0 4565:4.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.1649746358968116\",\"yes\":\"0.8350253641031884\"}\n51\tself-employed\tmarried\ttertiary\tno\t2007\tno\tno\tunknown\t16\tjun\t1021\t1\t-1\t0\tunknown\tno\t$4563$6:1.0 13:1.0 17:1.0 19:1.0 1718:1.0 4552:1.0 4554:1.0\t$4568$6:1.0 13:1.0 17:1.0 19:1.0 1718:1.0 4552:1.0 4554:1.0 4563:51.0 4564:1021.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.0063754065018454265\",\"yes\":\"0.9936245934981546\"}\n31\tself-employed\tsingle\ttertiary\tno\t96\tno\tno\tcellular\t5\tfeb\t577\t1\t-1\t0\tunknown\tno\t$4563$6:1.0 17:1.0 19:1.0 4490:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$6:1.0 17:1.0 19:1.0 4490:1.0 4552:1.0 4554:1.0 4556:1.0 4563:31.0 4564:577.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.25243641473807865\",\"yes\":\"0.7475635852619213\"}\n47\ttechnician\tmarried\tsecondary\tno\t3973\tno\tno\tcellular\t6\taug\t732\t2\t-1\t0\tunknown\tno\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 3007:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 3007:1.0 4552:1.0 4554:1.0 4556:1.0 4563:47.0 4564:732.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.2690112359085356\",\"yes\":\"0.7309887640914644\"}\n46\tmanagement\tsingle\ttertiary\tno\t46\tno\tyes\tcellular\t17\tnov\t80\t1\t152\t1\tfailure\tno\t$4563$4:1.0 17:1.0 19:1.0 3275:1.0 4552:1.0 4556:1.0 4559:1.0\t$4568$4:1.0 17:1.0 19:1.0 3275:1.0 4552:1.0 4556:1.0 4559:1.0 4563:46.0 4564:80.0 4565:1.0 4566:152.0 4567:1.0\tyes\t{\"no\":\"0.3792240485046767\",\"yes\":\"0.6207759514953233\"}\n49\tunemployed\tdivorced\ttertiary\tno\t780\tno\tno\tcellular\t8\tnov\t148\t1\t871\t2\tfailure\tno\t$4563$10:1.0 12:1.0 17:1.0 19:1.0 4164:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0\t$4568$10:1.0 12:1.0 17:1.0 19:1.0 4164:1.0 4552:1.0 4554:1.0 4556:1.0 4559:1.0 4563:49.0 4564:148.0 4565:1.0 4566:871.0 4567:2.0\tyes\t{\"no\":\"0.2083405707400745\",\"yes\":\"0.7916594292599255\"}\n70\tretired\tmarried\tprimary\tno\t3782\tno\tno\tcellular\t16\tmar\t618\t1\t-1\t0\tunknown\tno\t$4563$5:1.0 13:1.0 15:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 13:1.0 15:1.0 19:1.0 4551:1.0 4552:1.0 4554:1.0 4556:1.0 4563:70.0 4564:618.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.09900191430631278\",\"yes\":\"0.9009980856936872\"}\n55\tadmin.\tmarried\tsecondary\tno\t0\tno\tno\tcellular\t23\tsep\t180\t2\t238\t3\tsuccess\tno\t$4563$0:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0\t$4568$0:1.0 13:1.0 16:1.0 19:1.0 591:1.0 4552:1.0 4554:1.0 4556:1.0 4561:1.0 4563:55.0 4564:180.0 4565:2.0 4566:238.0 4567:3.0\tyes\t{\"no\":\"0.23347807828909195\",\"yes\":\"0.766521921710908\"}\n33\tmanagement\tsingle\tsecondary\tno\t-424\tyes\tno\tunknown\t26\tmay\t863\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 16:1.0 19:1.0 358:1.0 4554:1.0\t$4568$4:1.0 16:1.0 19:1.0 358:1.0 4554:1.0 4563:33.0 4564:863.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4610608738174222\",\"yes\":\"0.5389391261825778\"}\n58\tretired\tmarried\tsecondary\tno\t983\tno\tno\tcellular\t5\taug\t139\t1\t-1\t0\tunknown\tno\t$4563$5:1.0 13:1.0 16:1.0 19:1.0 4527:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$5:1.0 13:1.0 16:1.0 19:1.0 4527:1.0 4552:1.0 4554:1.0 4556:1.0 4563:58.0 4564:139.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.16875596312683128\",\"yes\":\"0.8312440368731687\"}\n30\ttechnician\tsingle\tsecondary\tno\t790\tno\tno\tcellular\t20\taug\t696\t3\t-1\t0\tunknown\tno\t$4563$9:1.0 16:1.0 19:1.0 4185:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$9:1.0 16:1.0 19:1.0 4185:1.0 4552:1.0 4554:1.0 4556:1.0 4563:30.0 4564:696.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.19169321766479608\",\"yes\":\"0.8083067823352039\"}\n48\ttechnician\tmarried\tsecondary\tno\t197\tno\tyes\tcellular\t3\tfeb\t47\t2\t222\t3\tother\tno\t$4563$9:1.0 13:1.0 16:1.0 19:1.0 1684:1.0 4552:1.0 4556:1.0 4560:1.0\t$4568$9:1.0 13:1.0 16:1.0 19:1.0 1684:1.0 4552:1.0 4556:1.0 4560:1.0 4563:48.0 4564:47.0 4565:2.0 4566:222.0 4567:3.0\tyes\t{\"no\":\"0.37543103760075547\",\"yes\":\"0.6245689623992445\"}\n57\tmanagement\tmarried\tsecondary\tno\t139\tno\tno\tcellular\t17\taug\t80\t1\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 16:1.0 19:1.0 1124:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 16:1.0 19:1.0 1124:1.0 4552:1.0 4554:1.0 4556:1.0 4563:57.0 4564:80.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.36302488662961285\",\"yes\":\"0.6369751133703871\"}\n57\tmanagement\tmarried\ttertiary\tno\t320\tno\tno\tcellular\t7\taug\t76\t2\t-1\t0\tunknown\tno\t$4563$4:1.0 13:1.0 17:1.0 19:1.0 2597:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$4:1.0 13:1.0 17:1.0 19:1.0 2597:1.0 4552:1.0 4554:1.0 4556:1.0 4563:57.0 4564:76.0 4565:2.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4620007122568557\",\"yes\":\"0.5379992877431443\"}\n27\tservices\tsingle\tsecondary\tno\t54\tyes\tno\tunknown\t28\tmay\t543\t2\t-1\t0\tunknown\tyes\t$4563$7:1.0 16:1.0 19:1.0 3569:1.0 4554:1.0\t$4568$7:1.0 16:1.0 19:1.0 3569:1.0 4554:1.0 4563:27.0 4564:543.0 4565:2.0 4566:-1.0 4567:0.0\tno\t{\"no\":\"0.8414993978177303\",\"yes\":\"0.1585006021822697\"}\n35\tblue-collar\tmarried\tprimary\tno\t46\tno\tno\tcellular\t8\tjul\t338\t3\t-1\t0\tunknown\tno\t$4563$1:1.0 13:1.0 15:1.0 19:1.0 3275:1.0 4552:1.0 4554:1.0 4556:1.0\t$4568$1:1.0 13:1.0 15:1.0 19:1.0 3275:1.0 4552:1.0 4554:1.0 4556:1.0 4563:35.0 4564:338.0 4565:3.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.4518996236299029\",\"yes\":\"0.5481003763700971\"}\n33\tadmin.\tdivorced\tsecondary\tno\t661\tyes\tno\tcellular\t18\tnov\t411\t1\t173\t2\tother\tno\t$4563$0:1.0 12:1.0 16:1.0 19:1.0 3888:1.0 4554:1.0 4556:1.0 4560:1.0\t$4568$0:1.0 12:1.0 16:1.0 19:1.0 3888:1.0 4554:1.0 4556:1.0 4560:1.0 4563:33.0 4564:411.0 4565:1.0 4566:173.0 4567:2.0\tyes\t{\"no\":\"0.16056568210230915\",\"yes\":\"0.8394343178976909\"}\n30\tstudent\tsingle\tsecondary\tno\t0\tyes\tno\tcellular\t19\tnov\t661\t1\t-1\t0\tunknown\tno\t$4563$8:1.0 16:1.0 19:1.0 591:1.0 4554:1.0 4556:1.0\t$4568$8:1.0 16:1.0 19:1.0 591:1.0 4554:1.0 4556:1.0 4563:30.0 4564:661.0 4565:1.0 4566:-1.0 4567:0.0\tyes\t{\"no\":\"0.09462962597556057\",\"yes\":\"0.9053703740244394\"}\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1583768872984_-1459808170", + "id": "20200309-234752_1664292334", + "dateCreated": "2020-03-09 23:47:52.984", + "dateStarted": "2020-04-27 13:48:54.934", + "dateFinished": "2020-04-27 13:49:01.921", + "status": "FINISHED" + }, + { + "text": "%flink.pyflink\n", + "user": "anonymous", + "dateUpdated": "2020-03-10 11:04:48.771", + "config": { + "editorMode": "ace/mode/python", + "editorHide": false, + "colWidth": 12.0, + "fontSize": 9.0, + "enabled": true, + "results": {}, + "editorSetting": { + "language": "python", + "editOnDblClick": false, + "completionSupport": true, + "completionKey": "TAB" + } + }, + "settings": { + "params": {}, + "forms": {} + }, + "results": { + "code": "SUCCESS", + "msg": [ + { + "type": "TEXT", + "data": "UsageError: Line magic function `%flink.pyflink` not found.\n" + } + ] + }, + "apps": [], + "progressUpdateIntervalMs": 500, + "jobName": "paragraph_1583768872984_-575920971", + "id": "20200309-234752_517801851", + "dateCreated": "2020-03-09 23:47:52.984", + "dateStarted": "2020-03-10 00:25:39.912", + "dateFinished": "2020-03-10 00:25:39.981", + "status": "FINISHED" + } + ], + "name": "8. Logistic Regression (Alink)", + "id": "2F4HJNWVN", + "defaultInterpreterGroup": "flink", + "version": "0.9.0-SNAPSHOT", + "noteParams": {}, + "noteForms": {}, + "angularObjects": {}, + "config": { + "isZeppelinNotebookCronEnable": false + }, + "info": {} +} \ No newline at end of file diff --git a/notebook/Flink Tutorial/Streaming Data Analytics_2EYT7Q6R8.zpln b/notebook/Flink Tutorial/Streaming Data Analytics_2EYT7Q6R8.zpln deleted file mode 100644 index 80d1dbd7752..00000000000 --- a/notebook/Flink Tutorial/Streaming Data Analytics_2EYT7Q6R8.zpln +++ /dev/null @@ -1,270 +0,0 @@ -{ - "paragraphs": [ - { - "title": "Overview", - "text": "%md\n\nThis tutorial demonstrate how to use Flink do streaming analytics via its streaming sql + udf. Here\u0027s what we do in this tutorial\n\n* Download [bank](https://archive.ics.uci.edu/ml/datasets/bank+marketing) data via shell interpreter to local\n* Process the raw data via flink batch sql \u0026 scala udf which parse and clean the raw data\n* Write the structured and cleaned data to another flink table via sql\n", - "user": "anonymous", - "dateUpdated": "2020-02-06 22:18:11.711", - "config": { - "runOnSelectionChange": true, - "title": true, - "checkEmpty": true, - "colWidth": 12.0, - "fontSize": 9.0, - "enabled": true, - "results": {}, - "editorSetting": { - "language": "text", - "editOnDblClick": false, - "completionKey": "TAB", - "completionSupport": true - }, - "editorMode": "ace/mode/text", - "editorHide": true - }, - "settings": { - "params": {}, - "forms": {} - }, - "results": { - "code": "SUCCESS", - "msg": [ - { - "type": "HTML", - "data": "\u003cdiv class\u003d\"markdown-body\"\u003e\n\u003cp\u003eThis tutorial demonstrate how to use Flink do streaming analytics via its batch sql + udf. Here\u0026rsquo;s what we do in this tutorial\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDownload \u003ca href\u003d\"https://archive.ics.uci.edu/ml/datasets/bank+marketing\"\u003ebank\u003c/a\u003e data via shell interpreter to local\u003c/li\u003e\n\u003cli\u003eProcess the raw data via flink batch sql \u0026amp; scala udf which parse and clean the raw data\u003c/li\u003e\n\u003cli\u003eWrite the structured and cleaned data to another flink table via sql\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003c/div\u003e" - } - ] - }, - "apps": [], - "progressUpdateIntervalMs": 500, - "jobName": "paragraph_1579054784565_2122156822", - "id": "paragraph_1579054784565_2122156822", - "dateCreated": "2020-01-15 10:19:44.565", - "dateStarted": "2020-02-02 22:09:12.675", - "dateFinished": "2020-02-02 22:09:13.893", - "status": "FINISHED" - }, - { - "title": "Single row mode of Output", - "text": "%flink.ssql(type\u003dsingle, parallelism\u003d1, refreshInterval\u003d3000, template\u003d\u003ch1\u003e{1}\u003c/h1\u003e until \u003ch2\u003e{0}\u003c/h2\u003e)\n\nselect max(event_ts), count(1) from sink_kafka\n", - "user": "anonymous", - "dateUpdated": "2020-02-07 10:05:50.448", - "config": { - "runOnSelectionChange": true, - "title": true, - "checkEmpty": true, - "colWidth": 6.0, - "fontSize": 9.0, - "enabled": true, - "results": {}, - "editorSetting": { - "language": "sql", - "editOnDblClick": false, - "completionKey": "TAB", - "completionSupport": true - }, - "editorMode": "ace/mode/sql", - "template": "\u003ch1\u003e{1}\u003c/h1\u003e until \u003ch2\u003e{0}\u003c/h2\u003e", - "refreshInterval": "3000", - "parallelism": "1", - "type": "single" - }, - "settings": { - "params": {}, - "forms": {} - }, - "apps": [], - "progressUpdateIntervalMs": 500, - "jobName": "paragraph_1578909960516_-1812187661", - "id": "paragraph_1578909960516_-1812187661", - "dateCreated": "2020-01-13 18:06:00.516", - "dateStarted": "2020-02-07 10:05:50.455", - "dateFinished": "2020-02-06 01:04:50.120", - "status": "ABORT" - }, - { - "title": "Update mode of Output", - "text": "%flink.ssql(type\u003dupdate, refreshInterval\u003d2000, parallelism\u003d1)\n\nselect status, count(1) as pv from sink_kafka group by status", - "user": "anonymous", - "dateUpdated": "2020-02-07 10:05:56.561", - "config": { - "runOnSelectionChange": true, - "title": true, - "checkEmpty": true, - "colWidth": 6.0, - "fontSize": 9.0, - "enabled": true, - "results": { - "0": { - "graph": { - "mode": "multiBarChart", - "height": 300.0, - "optionOpen": false, - "setting": { - "multiBarChart": { - "xLabelStatus": "default", - "rotate": { - "degree": "-45" - } - } - }, - "commonSetting": {}, - "keys": [ - { - "name": "status", - "index": 0.0, - "aggr": "sum" - } - ], - "groups": [], - "values": [ - { - "name": "pv", - "index": 1.0, - "aggr": "sum" - } - ] - }, - "helium": {} - } - }, - "editorSetting": { - "language": "sql", - "editOnDblClick": false, - "completionKey": "TAB", - "completionSupport": true - }, - "editorMode": "ace/mode/sql", - "refreshInterval": "2000", - "parallelism": "1", - "type": "update", - "savepointDir": "/tmp/flink_2", - "editorHide": false - }, - "settings": { - "params": {}, - "forms": {} - }, - "apps": [], - "progressUpdateIntervalMs": 500, - "jobName": "paragraph_1578910004762_-286113604", - "id": "paragraph_1578910004762_-286113604", - "dateCreated": "2020-01-13 18:06:44.762", - "dateStarted": "2020-02-07 10:05:56.566", - "dateFinished": "2020-02-05 23:30:01.468", - "status": "ABORT" - }, - { - "title": "Append mode of Output", - "text": "%flink.ssql(type\u003dappend, parallelism\u003d1, refreshInterval\u003d2000, threshold\u003d60000)\n\nselect TUMBLE_START(event_ts, INTERVAL \u00275\u0027 SECOND) as start_time, status, count(1) from sink_kafka\ngroup by TUMBLE(event_ts, INTERVAL \u00275\u0027 SECOND), status\n", - "user": "anonymous", - "dateUpdated": "2020-02-07 10:09:19.993", - "config": { - "runOnSelectionChange": true, - "title": true, - "checkEmpty": true, - "colWidth": 12.0, - "fontSize": 9.0, - "enabled": true, - "results": { - "0": { - "graph": { - "mode": "lineChart", - "height": 300.0, - "optionOpen": false, - "setting": { - "lineChart": { - "xLabelStatus": "rotate", - "rotate": { - "degree": "-45" - } - } - }, - "commonSetting": {}, - "keys": [ - { - "name": "start_time", - "index": 0.0, - "aggr": "sum" - } - ], - "groups": [ - { - "name": "status", - "index": 1.0, - "aggr": "sum" - } - ], - "values": [ - { - "name": "EXPR$2", - "index": 2.0, - "aggr": "sum" - } - ] - }, - "helium": {} - } - }, - "editorSetting": { - "language": "sql", - "editOnDblClick": false, - "completionKey": "TAB", - "completionSupport": true - }, - "editorMode": "ace/mode/sql", - "refreshInterval": "2000", - "parallelism": "1", - "threshold": "60000", - "type": "append", - "savepointDir": "/tmp/flink_3" - }, - "settings": { - "params": {}, - "forms": {} - }, - "apps": [], - "progressUpdateIntervalMs": 500, - "jobName": "paragraph_1578910016872_1942851900", - "id": "paragraph_1578910016872_1942851900", - "dateCreated": "2020-01-13 18:06:56.872", - "dateStarted": "2020-02-07 10:06:09.409", - "dateFinished": "2020-02-06 22:19:01.427", - "status": "ABORT" - }, - { - "text": "%flink.ssql\n", - "user": "anonymous", - "dateUpdated": "2020-01-13 21:17:35.739", - "config": {}, - "settings": { - "params": {}, - "forms": {} - }, - "apps": [], - "progressUpdateIntervalMs": 500, - "jobName": "paragraph_1578921455738_-1465781668", - "id": "paragraph_1578921455738_-1465781668", - "dateCreated": "2020-01-13 21:17:35.739", - "status": "READY" - } - ], - "name": "Streaming Data Analytics", - "id": "2EYT7Q6R8", - "defaultInterpreterGroup": "spark", - "version": "0.9.0-SNAPSHOT", - "permissions": { - "owners": [], - "runners": [], - "readers": [], - "writers": [] - }, - "noteParams": {}, - "noteForms": {}, - "angularObjects": {}, - "config": { - "isZeppelinNotebookCronEnable": true - }, - "info": {}, - "path": "/Flink Tutorial/Streaming Data Analytics" -} \ No newline at end of file