[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:tr:database\u002Fmongodb-indexes-queries":4,"config":214},null,{"field_key":5,"field_name":6,"seniority":7,"topic_key":8,"topic_name":9,"spec_key":7,"spec_name":7,"locale":10,"cell_total":11,"field_total":12,"seniorities":13,"topics":17,"specs":115,"samples":129},"database","Veritabanı","","mongodb-indexes-queries","Mongodb Indexes Queries","tr",75,2475,[14,15,16],"junior","mid","senior",[18,21,24,27,30,31,34,37,40,43,46,49,52,55,58,61,64,67,70,73,76,79,82,85,88,91,94,97,100,103,106,109,112],{"key":19,"name":20,"count":11},"backup-recovery","Backup Recovery",{"key":22,"name":23,"count":11},"data-modeling","Data Modeling",{"key":25,"name":26,"count":11},"indexing","Indexing",{"key":28,"name":29,"count":11},"mongodb-aggregation","Mongodb Aggregation",{"key":8,"name":9,"count":11},{"key":32,"name":33,"count":11},"mongodb-operations","Mongodb Operations",{"key":35,"name":36,"count":11},"mongodb-replication-sharding","Mongodb Replication Sharding",{"key":38,"name":39,"count":11},"mongodb-schema-modeling","Mongodb Schema Modeling",{"key":41,"name":42,"count":11},"mongodb-transactions-consistency","Mongodb Transactions Consistency",{"key":44,"name":45,"count":11},"mysql-indexes","Mysql Indexes",{"key":47,"name":48,"count":11},"mysql-innodb-transactions","Mysql Innodb Transactions",{"key":50,"name":51,"count":11},"mysql-operations","Mysql Operations",{"key":53,"name":54,"count":11},"mysql-query-optimization","Mysql Query Optimization",{"key":56,"name":57,"count":11},"mysql-replication-scaling","Mysql Replication Scaling",{"key":59,"name":60,"count":11},"mysql-types-constraints","Mysql Types Constraints",{"key":62,"name":63,"count":11},"nosql-models","Nosql Models",{"key":65,"name":66,"count":11},"performance-tuning","Performance Tuning",{"key":68,"name":69,"count":11},"pg-indexes","Pg Indexes",{"key":71,"name":72,"count":11},"pg-mvcc-vacuum","Pg Mvcc Vacuum",{"key":74,"name":75,"count":11},"pg-operations","Pg Operations",{"key":77,"name":78,"count":11},"pg-query-planning","Pg Query Planning",{"key":80,"name":81,"count":11},"pg-transactions-locking","Pg Transactions Locking",{"key":83,"name":84,"count":11},"pg-types-constraints","Pg Types Constraints",{"key":86,"name":87,"count":11},"query-optimization","Query Optimization",{"key":89,"name":90,"count":11},"redis-cluster-sharding","Redis Cluster Sharding",{"key":92,"name":93,"count":11},"redis-data-structures","Redis Data Structures",{"key":95,"name":96,"count":11},"redis-expiration-eviction","Redis Expiration Eviction",{"key":98,"name":99,"count":11},"redis-persistence","Redis Persistence",{"key":101,"name":102,"count":11},"redis-replication-sentinel","Redis Replication Sentinel",{"key":104,"name":105,"count":11},"redis-transactions-scripting","Redis Transactions Scripting",{"key":107,"name":108,"count":11},"replication-scaling","Replication Scaling",{"key":110,"name":111,"count":11},"security-access","Security Access",{"key":113,"name":114,"count":11},"transactions-isolation","Transactions Isolation",[116,120,123,126],{"key":117,"name":118,"count":119},"mongodb","MongoDB",450,{"key":121,"name":122,"count":119},"mysql","MySQL",{"key":124,"name":125,"count":119},"postgresql","PostgreSQL",{"key":127,"name":128,"count":119},"redis","Redis",[130,148,161,175,188,201],{"id":131,"topic":9,"difficulty":132,"body":133,"options":134,"correct_key":139,"explanation":147},"019f87c2-bced-717c-a540-5108e8fcd692",1,"MongoDB'de yeni bir normal collection oluşturulduğunda, hiçbir `createIndex()` çağrısı yapılmadan otomatik olarak hangi index vardır?",[135,138,141,144],{"key":136,"text":137},"a","İlk eklenen document'taki her alanı kapsayan bir compound index",{"key":139,"text":140},"b","`_id` alanı üzerinde bir unique index",{"key":142,"text":143},"c","Tüm string tipindeki alanlar üzerinde bir text index",{"key":145,"text":146},"d","Biri açıkça oluşturulana kadar hiçbir index yoktur","MongoDB, normal bir collection oluşturulduğunda `_id` üzerinde unique bir index oluşturur; bu, her document'ın benzersiz bir kimliğe ve bu kimlikle hızlı erişime sahip olmasını garanti eder. Özel collection türleri farklı olabilir; örneğin time series collection'lar unique index desteklemez. Otomatik bir compound ya da text index yoktur (a, c), varsayılan olarak hiçbir şeyin olmadığı da doğru değildir (d).",{"id":149,"topic":9,"difficulty":132,"body":150,"options":151,"correct_key":136,"explanation":160},"019f87c2-bced-7a65-a2bf-93c9cb4b18f5","```javascript\ndb.products.createIndex({ price: 1 });\n```\nBu tek alanlı index tanımında `1` değeri ne anlama gelir?",[152,154,156,158],{"key":136,"text":153},"Index, key'leri artan (ascending) sırada saklar",{"key":139,"text":155},"Index yalnızca pozitif `price` değerlerini kabul eder",{"key":142,"text":157},"Alan, update'lerden sonra bile yalnızca bir kez indekslenir",{"key":145,"text":159},"Index yalnızca ilk eklenen document'a uygulanır","Bir index tanımında `1` o key için artan (ascending) sırayı, `-1` ise azalan (descending) sırayı belirtir. Bu, izin verilen değerlerle (b), yeniden indeksleme davranışıyla (c) ya da tek bir document'la sınırlı kapsamla (d) ilgili değildir — tek alanlı bir index her document'ın o alandaki değerini kapsar.",{"id":162,"topic":9,"difficulty":163,"body":164,"options":165,"correct_key":142,"explanation":174},"019f87c2-bcee-72dd-b8c8-2e1e4ee746f9",2,"```javascript\ndb.orders.createIndex({ customerId: 1, orderDate: -1 });\n```\nBu ifade ne tür bir index oluşturur?",[166,168,170,172],{"key":136,"text":167},"Biri `customerId`, diğeri `orderDate` üzerinde olmak üzere iki ayrı tek-alan index",{"key":139,"text":169},"Her iki alanı da aranabilir string olarak ele alan bir text index",{"key":142,"text":171},"`customerId` artan, ardından `orderDate` azalan sırayla anahtarlanan bir compound index",{"key":145,"text":173},"Tanımda iki alan listelendiği için bir multikey index","Tek bir `createIndex()` çağrısında birden fazla alan listelemek, key'leri alan sırası ve yönüne göre sıralanan tek bir compound index kurar — burada önce artan `customerId`, sonra azalan `orderDate` — iki ayrı index değil (a). Bir text index değildir (b) ve multikey indeksleme, listelenen alan sayısıyla değil array-değerli alanlarla ilgilidir (d).",{"id":176,"topic":9,"difficulty":163,"body":177,"options":178,"correct_key":145,"explanation":187},"019f87c2-bcee-7a1a-b14e-4d43abe0854a","```javascript\ndb.products.insertOne({ _id: 1, tags: [\"sale\", \"new\", \"clearance\"] });\ndb.products.createIndex({ tags: 1 });\n```\n`tags` bir array tuttuğuna göre, MongoDB burada ne tür bir index kurar?",[179,181,183,185],{"key":136,"text":180},"`createIndex()` çağrısı başarısız olur; çünkü array alanlar doğrudan indekslenemez",{"key":139,"text":182},"Yalnızca array'in ilk elemanını key olarak saklayan tek-alan bir index",{"key":142,"text":184},"String array'ler her zaman aranabilir metin olarak indekslendiği için bir text index",{"key":145,"text":186},"Otomatik olarak oluşturulan, array'in her elemanı için ayrı bir index girdisi bulunan bir multikey index","MongoDB, `tags`'ın bir array tuttuğunu algılar ve otomatik olarak bir multikey index kurar; array'in her elemanı için ayrı bir index girdisi saklayarak bir document'ın etiketlerinden herhangi biriyle bulunabilmesini sağlar. Array alanları reddetmez (a), yalnızca ilk elemanı indekslemez (b) ve array indeksleme otomatik olarak text index olmaz — bunun için açık bir `\"text\"` tipi gerekir (c).",{"id":189,"topic":9,"difficulty":132,"body":190,"options":191,"correct_key":136,"explanation":200},"019f87c2-bcef-7524-84a4-8663e69eb14c","MongoDB'de bir text index'in (ör. `db.articles.createIndex({ content: \"text\" })`) ana amacı nedir?",[192,194,196,198],{"key":136,"text":193},"`$text` operatörüyle kullanılan, alanın kelime içeriği üzerinde full-text search yapılmasını sağlar",{"key":139,"text":195},"O alana yazılan her değeri saklanmadan önce küçük harfe zorlar",{"key":142,"text":197},"O collection'da `_id` index'ine olan ihtiyacın yerini alır",{"key":145,"text":199},"Tam string eşitlik aramalarını normal bir index ile aynı şekilde hızlandırır","Bir text index, alanın içeriğini kelimelere ayırır (stemming ve stop-word işlemesiyle); böylece `$text` sorguları tam string yerine terim arayabilir — full-text search tam olarak onun amacıdır. Saklanan değerleri küçük harfe çevirmez (b), `_id`'nin yerini almaz (c) ve düz tam-eşleşme aramaları için doğru araç text index değil, normal artan\u002Fazalan bir index'tir (d).",{"id":202,"topic":9,"difficulty":163,"body":203,"options":204,"correct_key":139,"explanation":213},"019f87c2-bcef-7c3f-9951-75f202a91014","```javascript\ndb.places.createIndex({ location: \"2dsphere\" });\ndb.places.find({\n  location: { $near: { $geometry: { type: \"Point\", coordinates: [13.4, 52.5] } } }\n});\n```\n`2dsphere` index neyi desteklemek için tasarlanmıştır?",[205,207,209,211],{"key":136,"text":206},"Sayısal alanları iki ondalık basamak hassasiyetle sıralamak",{"key":139,"text":208},"GeoJSON verisi üzerinde verimli geospatial sorguları, koordinatları küre (Dünya) üzerinde ele alarak desteklemek",{"key":142,"text":210},"Yedeklilik için document'ın iki ayrı kopyasını saklamak",{"key":145,"text":212},"Collection'ı konuma göre otomatik olarak iki shard'a bölmek","Bir `2dsphere` index, GeoJSON nokta\u002Fşekilleri küresel geometri kullanarak indeksler; bu da `$near`, `$geoWithin`, `$geoIntersects` gibi sorguların yakındaki ya da içinde kalan konumları verimli bulmasını sağlar. Ondalık hassasiyetle (a), document yedekliliğiyle (c) ya da otomatik sharding ile (d) ilgisi yoktur — sharding kendi ayrı yapılandırmasını gerektirir.",{"fields":215,"seniorities":391,"interview_shapes":392,"locales":397,"oauth":399,"question_count":402,"coach_enabled":403,"jd_match_enabled":403},[216,241,261,278,302,315,324,343,365,372,378,385],{"key":217,"name_tr":218,"name_en":218,"sort":132,"specializations":219},"backend","Backend",[220,223,226,229,232,235,238],{"key":221,"name":222,"field":217},"general","Genel",{"key":224,"name":225,"field":217},"go","Go",{"key":227,"name":228,"field":217},"python","Python",{"key":230,"name":231,"field":217},"java","Java",{"key":233,"name":234,"field":217},"csharp","C#\u002F.NET",{"key":236,"name":237,"field":217},"nodejs","Node.js",{"key":239,"name":240,"field":217},"php","PHP",{"key":242,"name_tr":243,"name_en":243,"sort":163,"specializations":244},"frontend","Frontend",[245,246,249,252,255,258],{"key":221,"name":222,"field":242},{"key":247,"name":248,"field":242},"javascript","JavaScript",{"key":250,"name":251,"field":242},"typescript","TypeScript",{"key":253,"name":254,"field":242},"react","React",{"key":256,"name":257,"field":242},"vue","Vue",{"key":259,"name":260,"field":242},"angular","Angular",{"key":262,"name_tr":263,"name_en":263,"sort":264,"specializations":265},"fullstack","Fullstack",3,[266,267,268,269,270,271,272,273,274,275,276,277],{"key":221,"name":222,"field":262},{"key":224,"name":225,"field":217},{"key":227,"name":228,"field":217},{"key":230,"name":231,"field":217},{"key":233,"name":234,"field":217},{"key":236,"name":237,"field":217},{"key":239,"name":240,"field":217},{"key":247,"name":248,"field":242},{"key":250,"name":251,"field":242},{"key":253,"name":254,"field":242},{"key":256,"name":257,"field":242},{"key":259,"name":260,"field":242},{"key":279,"name_tr":280,"name_en":280,"sort":281,"specializations":282},"devops-cloud","DevOps \u002F Cloud",4,[283,284,287,290,293,296,299],{"key":221,"name":222,"field":279},{"key":285,"name":286,"field":279},"aws","AWS",{"key":288,"name":289,"field":279},"gcp","GCP",{"key":291,"name":292,"field":279},"azure","Azure",{"key":294,"name":295,"field":279},"kubernetes","Kubernetes",{"key":297,"name":298,"field":279},"terraform","Terraform",{"key":300,"name":301,"field":279},"linux","Linux",{"key":303,"name_tr":304,"name_en":304,"sort":305,"specializations":306},"ai-engineer","AI Engineer",5,[307,308,309,312],{"key":221,"name":222,"field":303},{"key":227,"name":228,"field":303},{"key":310,"name":311,"field":303},"llm-rag","LLM\u002FRAG",{"key":313,"name":314,"field":303},"mlops","MLOps",{"key":5,"name_tr":6,"name_en":316,"sort":317,"specializations":318},"Database",6,[319,320,321,322,323],{"key":221,"name":222,"field":5},{"key":124,"name":125,"field":5},{"key":121,"name":122,"field":5},{"key":117,"name":118,"field":5},{"key":127,"name":128,"field":5},{"key":325,"name_tr":326,"name_en":327,"sort":328,"specializations":329},"mobile","Mobil","Mobile",7,[330,331,334,337,340],{"key":221,"name":222,"field":325},{"key":332,"name":333,"field":325},"ios-swift","iOS (Swift)",{"key":335,"name":336,"field":325},"android-kotlin","Android (Kotlin)",{"key":338,"name":339,"field":325},"flutter","Flutter",{"key":341,"name":342,"field":325},"react-native","React Native",{"key":344,"name_tr":345,"name_en":346,"sort":347,"specializations":348},"security","Güvenlik","Security",8,[349,350,353,356,359,362],{"key":221,"name":222,"field":344},{"key":351,"name":352,"field":344},"appsec","AppSec",{"key":354,"name":355,"field":344},"offensive-pentest","Offensive \u002F Pentest",{"key":357,"name":358,"field":344},"cloud-security","Cloud Security",{"key":360,"name":361,"field":344},"devsecops","DevSecOps",{"key":363,"name":364,"field":344},"blue-team-incident","Blue Team \u002F Incident",{"key":366,"name_tr":367,"name_en":368,"sort":369,"specializations":370},"qa-test-automation","QA \u002F Test Otomasyonu","QA \u002F Test Automation",9,[371],{"key":221,"name":222,"field":366},{"key":373,"name_tr":374,"name_en":374,"sort":375,"specializations":376},"data-engineer","Data Engineer",10,[377],{"key":221,"name":222,"field":373},{"key":379,"name_tr":380,"name_en":381,"sort":382,"specializations":383},"game-dev","Oyun Geliştirme","Game Development",11,[384],{"key":221,"name":222,"field":379},{"key":386,"name_tr":387,"name_en":387,"sort":388,"specializations":389},"ml-engineer","ML Engineer",12,[390],{"key":221,"name":222,"field":386},[14,15,16],{"junior":393,"mid":395,"senior":396},{"questions":394,"median_sec":3},20,{"questions":394,"median_sec":3},{"questions":394,"median_sec":3},[10,398],"en",[400,401],"google","github",21750,true]