Skip to content

Latest commit

 

History

History
executable file
·
370 lines (263 loc) · 14.5 KB

nosql-quiz.md

File metadata and controls

executable file
·
370 lines (263 loc) · 14.5 KB

NoSQL

Q1. Which types of indexes are available in CosmosDB?

  • range and spatial
  • secondary and primary key
  • secondary and spatial
  • range and primary key

Q2. You want to connect a DynamoDB stream to AWS Lambda function. Which one of these object do you create?

  • DynamoDB table
  • DynamoDB trigger
  • DynamoDB item
  • DynamoDB index

Q3. To index a field that holds an array value in MongoDB, which index type do you create?

  • partial
  • sparse
  • compound
  • multikey

Q4. You want to test HBASE on your laptop using the fewest number of steps. What do you do?

  • Set up Hadoop in pseudo-distributed mode.
  • Set up HBASE in local mode.
  • Set up HBASE in pseudo-distributed mode.
  • Set up Hadoop in local mode.

Q5. You need to create a document database that supports database triggers. Which NoSQL database should you use?

  • DynamoDB
  • BigTable
  • Redis
  • MongoDB

Q6. What is recommended size for Redis keys?

  • medium
  • short
  • single bit
  • long

Q7. What does Redis use to sort the elements of a sorted set?

  • Scores
  • Ids
  • Values
  • Keys

Q8. You need to change the shard key of an existing MongoDB collection. What do you do?

  • Dump the collection data, drop the collection, create a new collection and shard key, import the data.
  • Add second shard key and drop the first shard key.
  • Dump the collection data, drop the collection, presplit the data, create a new collection and shard key, import the data.
  • Drop and recreate the shard key.

Q9. Polyglot storage means using multiple types of what in the same application?

  • Security systems
  • Database systems
  • Storage systems
  • Query systems

Q10. You need to implement the simplest possible scalable, in-memory cache for your AWS application. Which service do you select?

  • Elasticache using Memcached.
  • DynamoDB.
  • DynamoDB Accelerator (DAX).
  • Elasticache using Redis.

Q11. You are doing data modelling for Google BigTable. Which statement expresses if and when you should split entities across multiple rows?

  • Keep all information for an entity in a single row. Store related entities in adjacent rows.
  • Keep all information for an entity in a single row.
  • Split entities across multiple rows if the entity data is over thousands of MBs, or if it does not need atomic updates and reads.
  • Split entities across multiple rows if the entity data is over hundreds of MBs, or if it does not need atomic updates and reads.

Q12. Which two characteristics define Amazon Quantum Ledger Database?

  • Key-value data model; transactionally consistent with ACID semantics.
  • Document data model; transactionally consistent with ACID semantics.
  • Key-value data model; transactions with tunable consistency.
  • Document data model; transactions with tunable consistency.

Q13. You need to design the primary key for DynamoDB based on three attributes. What do you do?

  • Designate all three fields as the primary key.
  • Concatenate all three fields into one new field, then designate that new field as the primary key.
  • Designate two fields of the three fields as the primary key.
  • Concatenate two fields into one new field, then designate that new field and the remaining field as the primary key.

Q14. Which of these data types should you avoid in designing a Google Bigtable row key?

  • multi-valued identifiers
  • string identifiers
  • timestamps
  • frequently updated identifiers

Q15. Your startup is building a prototype that has an evolving schema. Your data will be eventually consistent. Your application is hosted in AWS. Which database do you choose?

  • Neptune
  • DocumentDB
  • DynamoDB
  • Amazon Aurora

Q16. You need to create a scalable database that allows you to share documents across authorized mobile clients in real time. What Google NoSQL database should you use?

  • Memorystore
  • Datastore
  • Firebase
  • Bigtable

Q17. You need to design security for DynamoDB to allow users read-only access to certain items and attributes in a table. What do you do?

  • Use IAM roles.
  • Use IAM policy conditions.
  • Use a VPC endpoint.
  • Use IAM policies.

Q18. Which statement is preferred Cypher code for Neo4j?

  • MATCH (:Person)-->(:Card)-->(:Company) RETURN count(vehicle)
  • Match (:Person)-->(:Car):(vehicle:Car)-->(:Company) RETURN count(vehicle)
  • MATCH (:Person)-->(vehicle:Car)-->(:Company) RETURN count(vehicle)
  • MATCH (:Person)-->(:Card), (vehicle:Car)-->(:Company) RETURN count(vehicle)

Q19. You need multi-item ACID transactions with snapshot isolation within a partition for your cloud-based application. Which NoSQL databse do you choose?

  • Bigtable
  • GraphDB
  • DynamoDB
  • Cosmos DB

Q20. You need to control your application's batch updates destination for your Bigtable multinode cluster. Which action do you take?

  • Create a custom app profile to route batch updates.
  • Create a custom app profile to route the batch update from that client.
  • Update the default app profile to route the natch update from that client.
  • Use the default app profile to route batch updates.

Q21. Your query to verify that your Redis key is configured to support expiring user information on a defined interval returns -2, What does this value indicate?

  • The queried key value expired in the last two seconds.
  • The queried key value exists, but has no associated expire value.
  • The queried key value does not exist.
  • There are two expired keys with this value.

Q22. You are designing a MongoDB schema to support queries that will include lookups. What should you do?

  • Create an index on the key value used as the primary key.
  • Create an index on the key value used as the foreign key.
  • Create a multicolumn index on the key value used as the foreign key and the most unique column in the document.
  • Create a multicolumn index on the key value used as the primary and also the foreign key.

Q23. What is the aggregation operator for a join concept in MongoDB?

  • $group
  • $match
  • $lookup
  • $project

Q24. For your mobile application, you need to select a Google cloud database that can support compound, filtered document queries. Which do you choose?

  • Cloud SQL
  • Cloud Spanner
  • Cloud Firestore
  • Cloud Firebase

Q25. To bulk load data into Amazon Neptune, what do you do?

  • Upload data to S3 VPC endpoint, Use the Neptune loader to load from s3 into your Neptune instance
  • Ad data to a Kinesis stream, and use the Neptune loader to load from S# into your Neptune instance.
  • Add data to a Kinesis stream, and create a Kinesis stream VPC endpoint. Use the Neptune loader to load from S3 into your Neptune instance.
  • Upload data to S Use the Neptune loader to load from S3 into your Neptune instance.

Q26. You need to create a pub/sub server. Which database do you use?

  • Neo4j
  • Cassandra
  • Redis
  • MyS#### QL

Q27. SQL databases and NoSQL are which types of scalable?

  • horizontally, infinitely
  • vertically, horizontally
  • vertically, infinitely
  • horizontally, vertically

Q28. You need to create a scalable database that allows you to query data nodes and edges efficiently. What do you use?

  • a relational database
  • a columnstore database
  • a document database
  • a graph database

Q29. You are developing a model for a graph database. Your data will be moved from a relational database into Neo4j. Which of these transformations apply?

  • Rows become labels: bales become nodes.
  • Tables become labels: rows become nodes.
  • Tables become collections: rows become items.
  • Rows become collections: tables become items.

Q30. You need to execute a command for MongoDB that does NOT load values from the .mongorc.js file. What do you do ?

  • Delete the .monorc.js file and restart mongo shell.
  • Use the mongo shell to create a command with --norc option
  • Rem all lines in the .mongorc.js file ad restart mongo shell.
  • Use the mongo shell to create a command with --nodedefault option.

Q31. You need to store an unordered collection of name-value pairs with differing data types in DynamoDB. Which data type should you choose?

  • map
  • set
  • list
  • stack

Q32. Which statement retrieves an item from the MusicCollection table in DynamoDB?

  • aws dynamodb query --table-name MusicCollection --key file://key.json
  • aws dynamodb get-item --table-name MusicCollection --key file://key.json
  • aws dynamodb select --table-name MusicCollection --key file://key.json
  • aws dynamodb put-item --table-name MusicCollection --key file://key.json

Q33. Database availability is measured by which metric?

  • the amount of service calls
  • the number of minutes
  • the amount of service costs
  • the number of nines

Q34. You need to encrypt data at rest in DynamoDB. Which action do you take?

  • You assign a default AWS encryption key to your table to encrypt data.
  • You create an AWS encryption key and assign it to your table to encrypt data.
  • None. Data is encrypted by default.
  • You create an AWS encryption key and assign it to your database to encrypt data.

Q35. You need to generate a unique, sequential identifier for each value stored in a Redis cluster. What do you do?

  • Implement a SortedSet object to generate a value.
  • Use the GUID keyword to generate a value.
  • Implement a List object to generate a value.
  • Use the INCR keyword to generate a value

Q36. You want to return a list of all elements in two Redis sets. Which keyword do you use?

  • smembers
  • returnall
  • sunion
  • sismember

Q37. Which method shows you whether MongoDB uses any indexes when running a query, and how the indexes are used?

  • detailQueryExecution()
  • showPlan()
  • explain()
  • describe()

Q38. Which statement accurately describes global secondary indexes in DynamoDB?

  • The global secondary indexes in DynamoDB are consistent, and are not guaranteed to return correct results.
  • The global secondary indexes in DynamoDB are transactionally consistent, and are guaranteed to return correct results.
  • The global secondary indexes in DynamoDB are partially consistent, and are not guaranteed to return correct results.
  • The global secondary indexes in DynamoDB are eventually consistent, and are not guaranteed to return correct results.

reference link:

Q39. Which command do you use to add a value to a Redis stream named mystream?

  • ADD mystream * sensor-id 1234 temperature 19.8 1518951480106-1
  • UPDATE mystream * sensor-id 1234 temperature 19.8 1518951480106-3
  • XADD mystream * sensor-id 1234 temperature 9.8 1518951480106-0
  • INSERT mystream * sensor-d 1234 temperature 19.8 15181480106-2

Q40. Which code example completes this statement and creates an index for a MongoDB object named restaurants, sorted ascending by the field name?

var indexCollection = function(db) {return co(function*() {...});};
  • const results = yield db.table('restaurants').createIndex({"name": 1}, null); return results;
  • const results = yield db.collection('restaurants').createIndex({"name": 0}, null); return results;
  • const results = yield db.collection('restaurants').createIndex({"name": 1}, null); return results;
  • const results = yield db.table('restaurants').createIndex({"name": 0}, null); return results;

Q41. Which Cypher code executes the multiquery block?

  • A
MATCH (c:Company {name: 'Neo4j'}) RETURN c, MATCH (p:Person) WHERE p.name = 'Jennifer' RETURN p,
MATCH (t:Technology)-[:LIKES]-(a:Person {name: 'Jennifer'}) RETURN t.type;
  • B
MATCH (c:Company {name: 'Neo4j'}) RETURN c, MATCH (p:Person) WHERE p.name = 'Jennifer' RETURN p,
MATCH (t:Technology)-[:LIKES]-(a:Person {name: 'Jennifer'}) RETURN t.type
  • C
MATCH (c:Company {name: 'Neo4j'}) RETURN c AND MATCH (p:Person) WHERE p.name = 'Jennifer' RETURN p,
AND MATCH (t:Technology)-[:LIKES]-(a:Person {name: 'Jennifer'}) RETURN t.type;
  • D
MATCH (c:Company {name: 'Neo4j'}) RETURN c;MATCH (p:Person) WHERE p.name = 'Jennifer' RETURN p;
MATCH (t:Technology)-[:LIKES]-(a:Person {name: 'Jennifer'}) RETURN t.type;

[Explaination:]The correct Cypher code to execute a multiquery block would use commas to separate each query in a single statement. In this case, option B has all the queries separated by commas, making it the correct choice. Option A has the correct queries, but they are separated by "RETURN" which is not correct syntax for multiquery. Option C has an additional "AND" before the second query which is also not correct syntax. Option D has each query separated by semicolons, which would execute them as separate queries, not as a multiquery block.

Q42. You need to create a scalable database that supports immutable writes. What do you use?

  • A ledger database
  • A graph database
  • A key-value database
  • A columnstore database

Q43. You need to create a data store for the catalog for your new ecommerce application. Your company is a startup, so the catalog schema may evolve. Which do you choose?

  • Neo4j
  • Redis
  • MySQL
  • MongoDB

Q44. You need to select a NoSQL database for heavy aggregate query workloads. Which type do you choose?

  • graph
  • key-value
  • document
  • columnstore

Q45. You need to select a columnstore database that enforce built-in data types. You want to add indexes to improve performance for known workloads. Which do you choose?

  • Cassandra
  • Bigtable
  • Redis
  • HBase

Q46. In DynamoDB, the partition key and sort key are also known as which type of attributes?

  • range, hash
  • primary, range
  • hash, range
  • range, secondary

Q47. What is a popular, open-source key-value store database?

  • MongoDB
  • Redis
  • MySQL
  • Cassandra

Q48. You need to create a scalable database to store and query JSON data. What do you use?

  • a relational database
  • a document database
  • a graph database
  • a ledger database

store and query JSON