├── Cassandra Keyspace.cql
├── Cassandra Python
├── .idea
│ ├── .gitignore
│ ├── CassandraPython.iml
│ ├── inspectionProfiles
│ │ ├── Project_Default.xml
│ │ └── profiles_settings.xml
│ ├── misc.xml
│ └── modules.xml
├── app.py
├── resources
│ ├── __pycache__
│ │ └── query_execute.cpython-37.pyc
│ └── query_execute.py
└── templates
│ ├── customer.html
│ └── statement.html
├── Creditcard Producer
├── creditcard-tr-producer.iml
├── pom.xml
├── src
│ └── main
│ │ ├── resources
│ │ ├── application-cluster.conf
│ │ ├── application-local.conf
│ │ ├── application.conf
│ │ ├── avro
│ │ │ └── creditTransaction.avsc
│ │ └── transactions.csv
│ │ └── scala
│ │ └── com
│ │ └── datamantra
│ │ └── producer
│ │ ├── TransactionKafkaEnum.scala
│ │ └── TransactionProducer.scala
└── target
│ ├── classes
│ ├── application-cluster.conf
│ ├── application-local.conf
│ ├── application.conf
│ ├── avro
│ │ └── creditTransaction.avsc
│ ├── com
│ │ └── datamantra
│ │ │ └── producer
│ │ │ ├── TransactionKafkaEnum$.class
│ │ │ ├── TransactionKafkaEnum.class
│ │ │ ├── TransactionProducer$.class
│ │ │ ├── TransactionProducer$MyProducerCallback.class
│ │ │ └── TransactionProducer.class
│ └── transactions.csv
│ ├── generated-sources
│ └── avro
│ │ └── creditcard
│ │ └── transaction
│ │ └── avro
│ │ └── Transaction.java
│ └── maven-status
│ └── maven-compiler-plugin
│ └── compile
│ └── default-compile
│ ├── createdFiles.lst
│ └── inputFiles.lst
├── Fraud Alert Dashboard
├── fraud-alert-dashboard.iml
├── mvnw
├── mvnw.cmd
├── pom.xml
├── src
│ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── datamantra
│ │ │ └── fraudalertdashboard
│ │ │ ├── FraudAlertDashboardApplication.java
│ │ │ ├── dao
│ │ │ ├── CassandraConfig.java
│ │ │ ├── FraudAlertDataRepository.java
│ │ │ ├── NonFraudDataRepository.java
│ │ │ └── entity
│ │ │ │ ├── FraudAlertData.java
│ │ │ │ └── NonFraudData.java
│ │ │ ├── dashboard
│ │ │ ├── FraudAlertDashboard.java
│ │ │ ├── FraudAlertService.java
│ │ │ ├── NonFraudService.java
│ │ │ └── WebSocketConfig.java
│ │ │ └── vo
│ │ │ ├── Response.java
│ │ │ └── ResponseNF.java
│ │ └── resources
│ │ ├── fraudalert.properties
│ │ ├── log4j.properties
│ │ └── static
│ │ ├── css
│ │ ├── bootstrap.min.css
│ │ └── style.css
│ │ ├── index.html
│ │ └── js
│ │ ├── Chart.min.js
│ │ ├── bootstrap.min.js
│ │ ├── jquery-1.12.4.min.js
│ │ ├── sockjs-1.1.1.min.js
│ │ └── stomp.min.js
└── target
│ └── classes
│ ├── com
│ └── datamantra
│ │ └── fraudalertdashboard
│ │ ├── dao
│ │ ├── CassandraConfig.class
│ │ ├── FraudAlertDataRepository.class
│ │ ├── NonFraudDataRepository.class
│ │ └── entity
│ │ │ ├── FraudAlertData.class
│ │ │ └── NonFraudData.class
│ │ ├── dashboard
│ │ ├── FraudAlertDashboard.class
│ │ ├── FraudAlertService$CustomComparator.class
│ │ ├── FraudAlertService.class
│ │ ├── NonFraudService$CustomComparator.class
│ │ ├── NonFraudService.class
│ │ └── WebSocketConfig.class
│ │ └── vo
│ │ ├── Response.class
│ │ └── ResponseNF.class
│ ├── fraudalert.properties
│ ├── log4j.properties
│ └── static
│ ├── css
│ ├── bootstrap.min.css
│ └── style.css
│ ├── index.html
│ └── js
│ ├── Chart.min.js
│ ├── bootstrap.min.js
│ ├── jquery-1.12.4.min.js
│ ├── sockjs-1.1.1.min.js
│ └── stomp.min.js
├── Fraud Detection
├── FraudDetection.iml
├── build-files
│ ├── data
│ │ ├── customer.csv
│ │ └── transactions.csv
│ ├── log4j.properties
│ ├── pythonOperatonFunction.py
│ └── spark
│ │ ├── application-cluster.conf
│ │ ├── application-local.conf
│ │ ├── application.conf
│ │ ├── fruaddetection-spark.jar
│ │ └── training
│ │ ├── PreprocessingModel
│ │ ├── metadata
│ │ │ ├── .part-00000.crc
│ │ │ ├── _SUCCESS
│ │ │ └── part-00000
│ │ └── stages
│ │ │ ├── 0_strIdx_4c6b94364554
│ │ │ ├── data
│ │ │ │ ├── .part-00000-84a46f3e-8d39-4210-b65a-8df3357f4df2-c000.snappy.parquet.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000-84a46f3e-8d39-4210-b65a-8df3357f4df2-c000.snappy.parquet
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ ├── 1_oneHot_87aac8463b13
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ ├── 2_strIdx_588956c3337a
│ │ │ ├── data
│ │ │ │ ├── .part-00000-d37d08cf-8b62-45c1-af28-39e8c3ee0fc4-c000.snappy.parquet.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000-d37d08cf-8b62-45c1-af28-39e8c3ee0fc4-c000.snappy.parquet
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ ├── 3_oneHot_ddc2e32ff762
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ ├── 4_strIdx_5e90ad3afe11
│ │ │ ├── data
│ │ │ │ ├── .part-00000-c4fdf8eb-9ac8-499b-806e-e87da36bfa8c-c000.snappy.parquet.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000-c4fdf8eb-9ac8-499b-806e-e87da36bfa8c-c000.snappy.parquet
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ ├── 5_oneHot_73252c912ec5
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ └── 6_vecAssembler_762e3d1a17fd
│ │ │ └── metadata
│ │ │ ├── .part-00000.crc
│ │ │ ├── _SUCCESS
│ │ │ └── part-00000
│ │ └── RandomForestModel
│ │ ├── data
│ │ ├── .part-00000-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00001-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00002-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00003-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00004-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00005-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00006-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00007-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00008-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00009-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00010-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00011-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00012-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00013-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00014-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00015-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── _SUCCESS
│ │ ├── part-00000-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00001-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00002-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00003-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00004-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00005-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00006-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00007-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00008-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00009-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00010-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00011-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00012-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00013-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00014-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ └── part-00015-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── metadata
│ │ ├── .part-00000.crc
│ │ ├── _SUCCESS
│ │ └── part-00000
│ │ └── treesMetadata
│ │ ├── .part-00000-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00001-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00002-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00003-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00004-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00005-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00006-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00007-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00008-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00009-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00010-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00011-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00012-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00013-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00014-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00015-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── _SUCCESS
│ │ ├── part-00000-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00001-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00002-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00003-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00004-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00005-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00006-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00007-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00008-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00009-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00010-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00011-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00012-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00013-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00014-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ └── part-00015-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
├── manual
│ ├── sparkFraudDetectionTraining.sh
│ ├── sparkImportToCassandraJob.sh
│ ├── sparkRealtimeFraudDectionDstream.sh
│ └── sparkRealtimeFraudDectionStructuredSteaming.sh
├── pom.xml
├── src
│ └── main
│ │ ├── .gitignore
│ │ ├── resources
│ │ ├── data
│ │ │ ├── customer.csv
│ │ │ └── transactions.csv
│ │ ├── log4j.properties
│ │ ├── pythonOperatonFunction.py
│ │ └── spark
│ │ │ ├── application-cluster.conf
│ │ │ ├── application-local.conf
│ │ │ ├── application.conf
│ │ │ └── training
│ │ │ ├── PreprocessingModel
│ │ │ ├── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ └── stages
│ │ │ │ ├── 0_strIdx_4c6b94364554
│ │ │ │ ├── data
│ │ │ │ │ ├── .part-00000-84a46f3e-8d39-4210-b65a-8df3357f4df2-c000.snappy.parquet.crc
│ │ │ │ │ ├── _SUCCESS
│ │ │ │ │ └── part-00000-84a46f3e-8d39-4210-b65a-8df3357f4df2-c000.snappy.parquet
│ │ │ │ └── metadata
│ │ │ │ │ ├── .part-00000.crc
│ │ │ │ │ ├── _SUCCESS
│ │ │ │ │ └── part-00000
│ │ │ │ ├── 1_oneHot_87aac8463b13
│ │ │ │ └── metadata
│ │ │ │ │ ├── .part-00000.crc
│ │ │ │ │ ├── _SUCCESS
│ │ │ │ │ └── part-00000
│ │ │ │ ├── 2_strIdx_588956c3337a
│ │ │ │ ├── data
│ │ │ │ │ ├── .part-00000-d37d08cf-8b62-45c1-af28-39e8c3ee0fc4-c000.snappy.parquet.crc
│ │ │ │ │ ├── _SUCCESS
│ │ │ │ │ └── part-00000-d37d08cf-8b62-45c1-af28-39e8c3ee0fc4-c000.snappy.parquet
│ │ │ │ └── metadata
│ │ │ │ │ ├── .part-00000.crc
│ │ │ │ │ ├── _SUCCESS
│ │ │ │ │ └── part-00000
│ │ │ │ ├── 3_oneHot_ddc2e32ff762
│ │ │ │ └── metadata
│ │ │ │ │ ├── .part-00000.crc
│ │ │ │ │ ├── _SUCCESS
│ │ │ │ │ └── part-00000
│ │ │ │ ├── 4_strIdx_5e90ad3afe11
│ │ │ │ ├── data
│ │ │ │ │ ├── .part-00000-c4fdf8eb-9ac8-499b-806e-e87da36bfa8c-c000.snappy.parquet.crc
│ │ │ │ │ ├── _SUCCESS
│ │ │ │ │ └── part-00000-c4fdf8eb-9ac8-499b-806e-e87da36bfa8c-c000.snappy.parquet
│ │ │ │ └── metadata
│ │ │ │ │ ├── .part-00000.crc
│ │ │ │ │ ├── _SUCCESS
│ │ │ │ │ └── part-00000
│ │ │ │ ├── 5_oneHot_73252c912ec5
│ │ │ │ └── metadata
│ │ │ │ │ ├── .part-00000.crc
│ │ │ │ │ ├── _SUCCESS
│ │ │ │ │ └── part-00000
│ │ │ │ └── 6_vecAssembler_762e3d1a17fd
│ │ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ └── RandomForestModel
│ │ │ ├── data
│ │ │ ├── .part-00000-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00001-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00002-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00003-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00004-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00005-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00006-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00007-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00008-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00009-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00010-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00011-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00012-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00013-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00014-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── .part-00015-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ │ ├── _SUCCESS
│ │ │ ├── part-00000-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00001-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00002-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00003-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00004-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00005-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00006-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00007-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00008-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00009-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00010-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00011-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00012-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00013-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── part-00014-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ └── part-00015-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ │ ├── metadata
│ │ │ ├── .part-00000.crc
│ │ │ ├── _SUCCESS
│ │ │ └── part-00000
│ │ │ └── treesMetadata
│ │ │ ├── .part-00000-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00001-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00002-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00003-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00004-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00005-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00006-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00007-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00008-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00009-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00010-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00011-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00012-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00013-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00014-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── .part-00015-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ │ ├── _SUCCESS
│ │ │ ├── part-00000-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00001-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00002-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00003-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00004-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00005-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00006-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00007-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00008-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00009-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00010-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00011-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00012-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00013-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ ├── part-00014-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ │ └── part-00015-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ └── scala
│ │ └── com
│ │ └── datamantra
│ │ ├── cassandra
│ │ ├── CassandraConfig.scala
│ │ ├── CassandraDriver.scala
│ │ ├── dao
│ │ │ ├── CreditcardTransactionRepository.scala
│ │ │ └── KafkaOffsetRepository.scala
│ │ └── foreachSink
│ │ │ └── CassandraSinkForeach.scala
│ │ ├── config
│ │ └── Config.scala
│ │ ├── creditcard
│ │ ├── CreditcardEnum.scala
│ │ ├── Schema.scala
│ │ └── Transaction.scala
│ │ ├── kafka
│ │ ├── KafkaConfig.scala
│ │ └── KafkaSource.scala
│ │ ├── spark
│ │ ├── DataBalancing.scala
│ │ ├── DataReader.scala
│ │ ├── GracefulShutdown.scala
│ │ ├── SparkConfig.scala
│ │ ├── algorithms
│ │ │ └── Algorithms.scala
│ │ ├── jobs
│ │ │ ├── FraudDetectionTraining.scala
│ │ │ ├── IntialImportToCassandra.scala
│ │ │ ├── RealTimeFraudDetection
│ │ │ │ ├── DstreamFraudDetection.scala
│ │ │ │ └── StructuredStreamingFraudDetection.scala
│ │ │ └── SparkJob.scala
│ │ └── pipeline
│ │ │ ├── BuildPipeline.scala
│ │ │ └── FeatureExtraction.scala
│ │ ├── testing
│ │ ├── SamplePipeline.scala
│ │ └── Streaming.scala
│ │ └── utils
│ │ └── Utils.scala
└── target
│ ├── classes.timestamp
│ ├── classes
│ ├── cassandra
│ │ └── creditcard.cql
│ ├── com
│ │ └── datamantra
│ │ │ ├── cassandra
│ │ │ ├── CassandraConfig$.class
│ │ │ ├── CassandraConfig.class
│ │ │ ├── CassandraDriver$$anonfun$1.class
│ │ │ ├── CassandraDriver$$anonfun$2.class
│ │ │ ├── CassandraDriver$.class
│ │ │ ├── CassandraDriver.class
│ │ │ ├── dao
│ │ │ │ ├── CreditcardTransactionRepository$.class
│ │ │ │ ├── CreditcardTransactionRepository.class
│ │ │ │ ├── KafkaOffsetRepository$.class
│ │ │ │ └── KafkaOffsetRepository.class
│ │ │ └── foreachSink
│ │ │ │ ├── CassandraSinkForeach$$anonfun$process$1.class
│ │ │ │ ├── CassandraSinkForeach$$anonfun$process$2.class
│ │ │ │ └── CassandraSinkForeach.class
│ │ │ ├── config
│ │ │ ├── Config$.class
│ │ │ └── Config.class
│ │ │ ├── creditcard
│ │ │ ├── DstreamTransaction$.class
│ │ │ ├── DstreamTransaction.class
│ │ │ ├── Enums$.class
│ │ │ ├── Enums$Customer$.class
│ │ │ ├── Enums$TransactionKafka$.class
│ │ │ ├── Enums.class
│ │ │ ├── Schema$.class
│ │ │ ├── Schema.class
│ │ │ ├── Transaction$.class
│ │ │ ├── Transaction.class
│ │ │ ├── TransactionKafka$.class
│ │ │ └── TransactionKafka.class
│ │ │ ├── kafka
│ │ │ ├── KafkaConfig$.class
│ │ │ ├── KafkaConfig.class
│ │ │ ├── KafkaSource$$typecreator2$1.class
│ │ │ ├── KafkaSource$.class
│ │ │ └── KafkaSource.class
│ │ │ ├── spark
│ │ │ ├── DataBalancing$$anonfun$createBalancedDataframe$1.class
│ │ │ ├── DataBalancing$$typecreator3$1.class
│ │ │ ├── DataBalancing$.class
│ │ │ ├── DataBalancing.class
│ │ │ ├── DataReader$$anonfun$getOffset$1.class
│ │ │ ├── DataReader$$typecreator3$1.class
│ │ │ ├── DataReader$.class
│ │ │ ├── DataReader.class
│ │ │ ├── GracefulShutdown$$anonfun$handleGracefulShutdown$1.class
│ │ │ ├── GracefulShutdown$.class
│ │ │ ├── GracefulShutdown.class
│ │ │ ├── SparkConfig$.class
│ │ │ ├── SparkConfig.class
│ │ │ ├── algorithms
│ │ │ │ ├── Algorithms$.class
│ │ │ │ └── Algorithms.class
│ │ │ ├── jobs
│ │ │ │ ├── FraudDetectionTraining$.class
│ │ │ │ ├── FraudDetectionTraining.class
│ │ │ │ ├── IntialImportToCassandra$$anonfun$1.class
│ │ │ │ ├── IntialImportToCassandra$.class
│ │ │ │ ├── IntialImportToCassandra.class
│ │ │ │ ├── RealTimeFraudDetection
│ │ │ │ │ ├── DstreamFraudDetection$$anonfun$1.class
│ │ │ │ │ ├── DstreamFraudDetection$$anonfun$main$1$$anonfun$2.class
│ │ │ │ │ ├── DstreamFraudDetection$$anonfun$main$1$$anonfun$apply$1$$anonfun$apply$2$$anonfun$apply$3.class
│ │ │ │ │ ├── DstreamFraudDetection$$anonfun$main$1$$anonfun$apply$1$$anonfun$apply$2$$anonfun$apply$4.class
│ │ │ │ │ ├── DstreamFraudDetection$$anonfun$main$1$$anonfun$apply$1$$anonfun$apply$2.class
│ │ │ │ │ ├── DstreamFraudDetection$$anonfun$main$1$$anonfun$apply$1.class
│ │ │ │ │ ├── DstreamFraudDetection$$anonfun$main$1$$typecreator3$1.class
│ │ │ │ │ ├── DstreamFraudDetection$$anonfun$main$1.class
│ │ │ │ │ ├── DstreamFraudDetection$.class
│ │ │ │ │ ├── DstreamFraudDetection.class
│ │ │ │ │ ├── StructuredStreamingFraudDetection$$anonfun$1.class
│ │ │ │ │ ├── StructuredStreamingFraudDetection$.class
│ │ │ │ │ └── StructuredStreamingFraudDetection.class
│ │ │ │ └── SparkJob.class
│ │ │ └── pipeline
│ │ │ │ ├── BuildPipeline$$anonfun$1.class
│ │ │ │ ├── BuildPipeline$$anonfun$2.class
│ │ │ │ ├── BuildPipeline$$anonfun$3.class
│ │ │ │ ├── BuildPipeline$$anonfun$4.class
│ │ │ │ ├── BuildPipeline$$anonfun$createOneHotEncoder$1.class
│ │ │ │ ├── BuildPipeline$$anonfun$createStringIndexer$1.class
│ │ │ │ ├── BuildPipeline$.class
│ │ │ │ ├── BuildPipeline.class
│ │ │ │ ├── FeatureExtraction$$anonfun$1.class
│ │ │ │ ├── FeatureExtraction$$anonfun$2.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$10.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$11.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$12.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$3.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$4.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$5.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$6.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$7.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$8.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$9.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$apply$1$$anonfun$13.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$apply$1$$anonfun$apply$2.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$apply$1.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1$$anonfun$apply$3.class
│ │ │ │ ├── FeatureExtraction$$anonfun$getFeatures$1.class
│ │ │ │ ├── FeatureExtraction$.class
│ │ │ │ └── FeatureExtraction.class
│ │ │ ├── testing
│ │ │ ├── SamplePipeline$$anonfun$1.class
│ │ │ ├── SamplePipeline$$anonfun$2.class
│ │ │ ├── SamplePipeline$.class
│ │ │ ├── SamplePipeline.class
│ │ │ ├── Streaming$$anonfun$1.class
│ │ │ ├── Streaming$.class
│ │ │ └── Streaming.class
│ │ │ └── utils
│ │ │ ├── Utils$.class
│ │ │ └── Utils.class
│ ├── data
│ │ ├── customer.csv
│ │ └── transactions.csv
│ ├── log4j.properties
│ ├── pythonOperatonFunction.py
│ └── spark
│ │ ├── application-cluster.conf
│ │ ├── application-local.conf
│ │ ├── application.conf
│ │ └── training
│ │ ├── PreprocessingModel
│ │ ├── metadata
│ │ │ ├── .part-00000.crc
│ │ │ ├── _SUCCESS
│ │ │ └── part-00000
│ │ └── stages
│ │ │ ├── 0_strIdx_4c6b94364554
│ │ │ ├── data
│ │ │ │ ├── .part-00000-84a46f3e-8d39-4210-b65a-8df3357f4df2-c000.snappy.parquet.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000-84a46f3e-8d39-4210-b65a-8df3357f4df2-c000.snappy.parquet
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ ├── 1_oneHot_87aac8463b13
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ ├── 2_strIdx_588956c3337a
│ │ │ ├── data
│ │ │ │ ├── .part-00000-d37d08cf-8b62-45c1-af28-39e8c3ee0fc4-c000.snappy.parquet.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000-d37d08cf-8b62-45c1-af28-39e8c3ee0fc4-c000.snappy.parquet
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ ├── 3_oneHot_ddc2e32ff762
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ ├── 4_strIdx_5e90ad3afe11
│ │ │ ├── data
│ │ │ │ ├── .part-00000-c4fdf8eb-9ac8-499b-806e-e87da36bfa8c-c000.snappy.parquet.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000-c4fdf8eb-9ac8-499b-806e-e87da36bfa8c-c000.snappy.parquet
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ ├── 5_oneHot_73252c912ec5
│ │ │ └── metadata
│ │ │ │ ├── .part-00000.crc
│ │ │ │ ├── _SUCCESS
│ │ │ │ └── part-00000
│ │ │ └── 6_vecAssembler_762e3d1a17fd
│ │ │ └── metadata
│ │ │ ├── .part-00000.crc
│ │ │ ├── _SUCCESS
│ │ │ └── part-00000
│ │ └── RandomForestModel
│ │ ├── data
│ │ ├── .part-00000-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00001-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00002-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00003-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00004-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00005-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00006-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00007-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00008-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00009-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00010-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00011-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00012-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00013-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00014-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── .part-00015-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet.crc
│ │ ├── _SUCCESS
│ │ ├── part-00000-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00001-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00002-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00003-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00004-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00005-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00006-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00007-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00008-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00009-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00010-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00011-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00012-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00013-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── part-00014-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ └── part-00015-3990278e-ca52-4e9e-ab7b-c0b6ffc8e644-c000.snappy.parquet
│ │ ├── metadata
│ │ ├── .part-00000.crc
│ │ ├── _SUCCESS
│ │ └── part-00000
│ │ └── treesMetadata
│ │ ├── .part-00000-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00001-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00002-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00003-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00004-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00005-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00006-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00007-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00008-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00009-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00010-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00011-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00012-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00013-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00014-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── .part-00015-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet.crc
│ │ ├── _SUCCESS
│ │ ├── part-00000-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00001-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00002-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00003-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00004-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00005-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00006-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00007-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00008-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00009-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00010-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00011-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00012-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00013-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ ├── part-00014-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ │ └── part-00015-45fdca23-180d-481d-b4de-c93f0f3d5485-c000.snappy.parquet
│ ├── dependency-reduced-pom.xml
│ ├── maven-archiver
│ └── pom.properties
│ ├── maven-status
│ └── maven-compiler-plugin
│ │ └── compile
│ │ └── default-compile
│ │ └── inputFiles.lst
│ ├── original-fruaddetection-spark.jar
│ └── surefire-reports
│ ├── TEST-org.scalatest.tools.DiscoverySuite-17d1e25e-e834-4898-b852-6b6c43cd3242.xml
│ └── TestSuite.txt
├── README.md
└── src
├── api_customer.png
├── api_statement.png
├── architecture.png
├── customer.txt
├── dashboard.png
└── spark_ml.png
/Cassandra Keyspace.cql:
--------------------------------------------------------------------------------
1 | CREATE KEYSPACE IF NOT EXISTS creditcard
2 | WITH replication = {
3 | 'class': 'SimpleStrategy', 'replication_factor': 1
4 | };
5 |
6 | USE creditcard;
7 |
8 | CREATE TABLE IF NOT EXISTS fraud_transaction (
9 | cc_num text,
10 | trans_time timestamp,
11 | trans_num text,
12 | category text,
13 | merchant text,
14 | amt double,
15 | merch_lat double,
16 | merch_long double,
17 | distance double,
18 | age int,
19 | is_fraud double,
20 | PRIMARY KEY(cc_num, trans_time)
21 | )WITH CLUSTERING ORDER BY (trans_time DESC);
22 |
23 |
24 | CREATE TABLE IF NOT EXISTS non_fraud_transaction (
25 | cc_num text,
26 | trans_time timestamp,
27 | trans_num text,
28 | category text,
29 | merchant text,
30 | amt double,
31 | merch_lat double,
32 | merch_long double,
33 | distance double,
34 | age int,
35 | is_fraud double,
36 | PRIMARY KEY(cc_num, trans_time)
37 | )WITH CLUSTERING ORDER BY (trans_time DESC);
38 |
39 |
40 |
41 | CREATE TABLE IF NOT EXISTS kafka_offset (
42 | partition int,
43 | offset bigint,
44 | PRIMARY KEY(partition)
45 | );
46 |
47 |
48 | CREATE TABLE IF NOT EXISTS customer (
49 | cc_num text,
50 | first text,
51 | last text,
52 | gender text,
53 | street text,
54 | city text,
55 | state text,
56 | zip text,
57 | lat double,
58 | long double,
59 | job text,
60 | dob timestamp,
61 | PRIMARY KEY(cc_num)
62 | );
63 |
--------------------------------------------------------------------------------
/Cassandra Python/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/Cassandra Python/.idea/CassandraPython.iml:
--------------------------------------------------------------------------------
1 |
2 |