0
votes

I have more .avro files that I want to perform analysis on the data contained. How can I group them and analyze the values of the various fields? This is the schema:

{
  "type" : "record",
  "name" : "DNSEvoDataFlatAvro",
  "namespace" : "nl.utwente.dacs.DNSEvo.avro",
  "fields" : [ {
    "name" : "query_type",
    "type" : "string"
  }, {
    "name" : "query_name",
    "type" : "string"
  }, {
    "name" : "response_type",
    "type" : [ "null", "string" ]
  }, {
    "name" : "response_name",
    "type" : [ "null", "string" ]
  }, {
    "name" : "response_ttl",
    "type" : [ "null", "int" ]
  }, {
    "name" : "timestamp",
    "type" : "long"
  }, {
    "name" : "rtt",
    "type" : "double"
  }, {
    "name" : "worker_id",
    "type" : "int"
  }, {
    "name" : "status_code",
    "type" : "int"
  }, {
    "name" : "ad_flag",
    "type" : "int"
  }, {
    "name" : "ip4_address",
    "type" : [ "null", "string" ]
  }, {
    "name" : "ip6_address",
    "type" : [ "null", "string" ]
  }, {
    "name" : "country",
    "type" : [ "null", "string" ]
  }, {
    "name" : "as",
    "type" : [ "null", "string" ]
  }, {
    "name" : "as_full",
    "type" : [ "null", "string" ]
  }, {
    "name" : "ip_prefix",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cname_name",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dname_name",
    "type" : [ "null", "string" ]
  }, {
    "name" : "mx_address",
    "type" : [ "null", "string" ]
  }, {
    "name" : "mx_preference",
    "type" : [ "null", "int" ]
  }, {
    "name" : "mxset_hash_algorithm",
    "type" : [ "null", "string" ]
  }, {
    "name" : "mxset_hash",
    "type" : [ "null", "string" ]
  }, {
    "name" : "ns_address",
    "type" : [ "null", "string" ]
  }, {
    "name" : "nsset_hash_algorithm",
    "type" : [ "null", "string" ]
  }, {
    "name" : "nsset_hash",
    "type" : [ "null", "string" ]
  }, {
    "name" : "txt_text",
    "type" : [ "null", "string" ]
  }, {
    "name" : "txt_hash_algorithm",
    "type" : [ "null", "string" ]
  }, {
    "name" : "txt_hash",
    "type" : [ "null", "string" ]
  }, {
    "name" : "ds_key_tag",
    "type" : [ "null", "int" ]
  }, {
    "name" : "ds_algorithm",
    "type" : [ "null", "int" ]
  }, {
    "name" : "ds_digest_type",
    "type" : [ "null", "int" ]
  }, {
    "name" : "ds_digest",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dnskey_flags",
    "type" : [ "null", "int" ]
  }, {
    "name" : "dnskey_protocol",
    "type" : [ "null", "int" ]
  }, {
    "name" : "dnskey_algorithm",
    "type" : [ "null", "int" ]
  }, {
    "name" : "dnskey_pk_rsa_n",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dnskey_pk_rsa_e",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dnskey_pk_rsa_bitsize",
    "type" : [ "null", "int" ]
  }, {
    "name" : "dnskey_pk_eccgost_x",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dnskey_pk_eccgost_y",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dnskey_pk_dsa_t",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dnskey_pk_dsa_q",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dnskey_pk_dsa_p",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dnskey_pk_dsa_g",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dnskey_pk_dsa_y",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dnskey_pk_eddsa_a",
    "type" : [ "null", "string" ]
  }, {
    "name" : "dnskey_pk_wire",
    "type" : [ "null", "string" ]
  }, {
    "name" : "nsec_next_domain_name",
    "type" : [ "null", "string" ]
  }, {
    "name" : "nsec_owner_rrset_types",
    "type" : [ "null", "string" ]
  }, {
    "name" : "nsec3_hash_algorithm",
    "type" : [ "null", "int" ]
  }, {
    "name" : "nsec3_flags",
    "type" : [ "null", "int" ]
  }, {
    "name" : "nsec3_iterations",
    "type" : [ "null", "int" ]
  }, {
    "name" : "nsec3_salt",
    "type" : [ "null", "string" ]
  }, {
    "name" : "nsec3_next_domain_name_hash",
    "type" : [ "null", "string" ]
  }, {
    "name" : "nsec3_owner_rrset_types",
    "type" : [ "null", "string" ]
  }, {
    "name" : "nsec3param_hash_algorithm",
    "type" : [ "null", "int" ]
  }, {
    "name" : "nsec3param_flags",
    "type" : [ "null", "int" ]
  }, {
    "name" : "nsec3param_iterations",
    "type" : [ "null", "int" ]
  }, {
    "name" : "nsec3param_salt",
    "type" : [ "null", "string" ]
  }, {
    "name" : "spf_text",
    "type" : [ "null", "string" ]
  }, {
    "name" : "spf_hash_algorithm",
    "type" : [ "null", "string" ]
  }, {
    "name" : "spf_hash",
    "type" : [ "null", "string" ]
  }, {
    "name" : "soa_mname",
    "type" : [ "null", "string" ]
  }, {
    "name" : "soa_rname",
    "type" : [ "null", "string" ]
  }, {
    "name" : "soa_serial",
    "type" : [ "null", "long" ]
  }, {
    "name" : "soa_refresh",
    "type" : [ "null", "long" ]
  }, {
    "name" : "soa_retry",
    "type" : [ "null", "long" ]
  }, {
    "name" : "soa_expire",
    "type" : [ "null", "long" ]
  }, {
    "name" : "soa_minimum",
    "type" : [ "null", "long" ]
  }, {
    "name" : "rrsig_type_covered",
    "type" : [ "null", "string" ]
  }, {
    "name" : "rrsig_algorithm",
    "type" : [ "null", "int" ]
  }, {
    "name" : "rrsig_labels",
    "type" : [ "null", "int" ]
  }, {
    "name" : "rrsig_original_ttl",
    "type" : [ "null", "long" ]
  }, {
    "name" : "rrsig_signature_inception",
    "type" : [ "null", "long" ]
  }, {
    "name" : "rrsig_signature_expiration",
    "type" : [ "null", "long" ]
  }, {
    "name" : "rrsig_key_tag",
    "type" : [ "null", "int" ]
  }, {
    "name" : "rrsig_signer_name",
    "type" : [ "null", "string" ]
  }, {
    "name" : "rrsig_signature",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cds_key_tag",
    "type" : [ "null", "int" ]
  }, {
    "name" : "cds_algorithm",
    "type" : [ "null", "int" ]
  }, {
    "name" : "cds_digest_type",
    "type" : [ "null", "int" ]
  }, {
    "name" : "cds_digest",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cdnskey_flags",
    "type" : [ "null", "int" ]
  }, {
    "name" : "cdnskey_protocol",
    "type" : [ "null", "int" ]
  }, {
    "name" : "cdnskey_algorithm",
    "type" : [ "null", "int" ]
  }, {
    "name" : "cdnskey_pk_rsa_n",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cdnskey_pk_rsa_e",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cdnskey_pk_rsa_bitsize",
    "type" : [ "null", "int" ]
  }, {
    "name" : "cdnskey_pk_eccgost_x",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cdnskey_pk_eccgost_y",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cdnskey_pk_dsa_t",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cdnskey_pk_dsa_q",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cdnskey_pk_dsa_p",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cdnskey_pk_dsa_g",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cdnskey_pk_dsa_y",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cdnskey_pk_eddsa_a",
    "type" : [ "null", "string" ]
  }, {
    "name" : "cdnskey_pk_wire",
    "type" : [ "null", "string" ]
  }, {
    "name" : "caa_flags",
    "type" : [ "null", "int" ]
  }, {
    "name" : "caa_tag",
    "type" : [ "null", "string" ]
  }, {
    "name" : "caa_value",
    "type" : [ "null", "string" ]
  }, {
    "name" : "tlsa_usage",
    "type" : [ "null", "int" ]
  }, {
    "name" : "tlsa_selector",
    "type" : [ "null", "int" ]
  }, {
    "name" : "tlsa_matchtype",
    "type" : [ "null", "int" ]
  }, {
    "name" : "tlsa_certdata",
    "type" : [ "null", "string" ]
  }, {
    "name" : "ptr_name",
    "type" : [ "null", "string" ]
  } ]
}

For example I want analyze the time series of timestamp field of multiple files .avro .

1

1 Answers

0
votes

since we are working on the same dataset, use fastavro with Python. You can load the data in a list and use several Python packages for this. I hope that the above help you, even if they didn't come in time.