[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"me":3,"catalog:tr:data-engineer\u002Fwh-materialized-views-caching":4,"config":191},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":94,"samples":105},"data-engineer","Data Engineer","","wh-materialized-views-caching","Wh Materialized Views Caching","tr",75,1950,[14,15,16],"junior","mid","senior",[18,21,24,27,30,33,36,39,42,45,48,51,54,57,60,63,66,69,72,75,78,81,84,85,88,91],{"key":19,"name":20,"count":11},"data-governance-lineage","Data Governance Lineage",{"key":22,"name":23,"count":11},"data-modeling-warehousing","Data Modeling Warehousing",{"key":25,"name":26,"count":11},"data-partitioning-scaling","Data Partitioning Scaling",{"key":28,"name":29,"count":11},"data-pipeline-design","Data Pipeline Design",{"key":31,"name":32,"count":11},"data-pipeline-orchestration","Data Pipeline Orchestration",{"key":34,"name":35,"count":11},"data-pipeline-reliability","Data Pipeline Reliability",{"key":37,"name":38,"count":11},"data-quality-validation","Data Quality Validation",{"key":40,"name":41,"count":11},"pe-airflow-scheduling-dependencies","Pe Airflow Scheduling Dependencies",{"key":43,"name":44,"count":11},"pe-dbt-models-materializations-tests","Pe Dbt Models Materializations Tests",{"key":46,"name":47,"count":11},"pe-file-formats-table-formats","Pe File Formats Table Formats",{"key":49,"name":50,"count":11},"pe-incremental-cdc-merge-mechanics","Pe Incremental Cdc Merge Mechanics",{"key":52,"name":53,"count":11},"pe-spark-api-semantics-udfs","Pe Spark Api Semantics Udfs",{"key":55,"name":56,"count":11},"pe-spark-execution-shuffle-partitions","Pe Spark Execution Shuffle Partitions",{"key":58,"name":59,"count":11},"st-flink-runtime-checkpointing-state","St Flink Runtime Checkpointing State",{"key":61,"name":62,"count":11},"st-flink-time-watermarks-windows","St Flink Time Watermarks Windows",{"key":64,"name":65,"count":11},"st-kafka-broker-storage-replication","St Kafka Broker Storage Replication",{"key":67,"name":68,"count":11},"st-kafka-connect-schema-registry","St Kafka Connect Schema Registry",{"key":70,"name":71,"count":11},"st-kafka-producer-consumer-semantics","St Kafka Producer Consumer Semantics",{"key":73,"name":74,"count":11},"streaming-fundamentals","Streaming Fundamentals",{"key":76,"name":77,"count":11},"st-streaming-joins-tables","St Streaming Joins Tables",{"key":79,"name":80,"count":11},"wh-bigquery-execution-slots-cost","Wh Bigquery Execution Slots Cost",{"key":82,"name":83,"count":11},"wh-bigquery-storage-partitioning-clustering","Wh Bigquery Storage Partitioning Clustering",{"key":8,"name":9,"count":11},{"key":86,"name":87,"count":11},"wh-redshift-distribution-sort-vacuum","Wh Redshift Distribution Sort Vacuum",{"key":89,"name":90,"count":11},"wh-snowflake-compute-warehouses","Wh Snowflake Compute Warehouses",{"key":92,"name":93,"count":11},"wh-snowflake-storage-micropartitions","Wh Snowflake Storage Micropartitions",[95,99,102],{"key":96,"name":97,"count":98},"pipelines-etl","Pipelines \u002F ETL",450,{"key":100,"name":101,"count":98},"streaming","Streaming",{"key":103,"name":104,"count":98},"warehousing","Warehousing",[106,124,137,151,164,177],{"id":107,"topic":9,"difficulty":108,"body":109,"options":110,"correct_key":112,"explanation":123},"01a00fd5-7cf3-7238-a8d1-9e5a45d21aeb",1,"Snowflake'te normal (materialize edilmemiş) bir view ile materialized view arasındaki temel fark nedir?",[111,114,117,120],{"key":112,"text":113},"a","Materialized view sonucunu fiziksel olarak saklar",{"key":115,"text":116},"b","Materialized view yalnızca warehouse belleğinde var olur",{"key":118,"text":119},"c","İkisi de her zaman aynı execution plan'a derlenir",{"key":121,"text":122},"d","Aradaki fark sadece bir adlandırma kuralıdır","Snowflake materialized view'ı sonuç kümesini diskte saklar ve kendi depolamasına, ayrıca bir yenileme mekanizmasına ihtiyaç duyar; normal view'ın saklanan verisi yoktur, her referansta sorguyu yeniden çalıştırır.",{"id":125,"topic":9,"difficulty":108,"body":126,"options":127,"correct_key":118,"explanation":136},"01a00fd5-7cf5-7116-b636-3cd887c77be7","Snowflake'te materialized view kullanımı hangi edition şartına bağlıdır?",[128,130,132,134],{"key":112,"text":129},"Standard dahil her edition'da kullanılabilir",{"key":115,"text":131},"Edition'dan bağımsız, ayrı satılan bir eklenti",{"key":118,"text":133},"Enterprise Edition veya üzerini gerektirir",{"key":121,"text":135},"Yalnızca hesabın bölgesine bağlıdır","Snowflake'te materialized view'lar Enterprise Edition (veya üzeri) özelliğidir; Standard Edition hesaplar materialized view oluşturamaz.",{"id":138,"topic":9,"difficulty":139,"body":140,"options":141,"correct_key":115,"explanation":150},"01a00fd5-7cf5-7dba-a31a-58988a2bac9e",2,"Bir Snowflake mühendisi, iki temel tabloyu birbirine JOIN eden bir sorguyla materialized view tanımlamaya çalışıyor. Ne olur?",[142,144,146,148],{"key":112,"text":143},"Normal şekilde oluşturulur; JOIN'ler desteklenir",{"key":115,"text":145},"Oluşturma başarısız olur; JOIN'ler materialized view sorgusunda desteklenmez",{"key":118,"text":147},"JOIN yok sayılır; yalnızca ilk tablo materialize edilir",{"key":121,"text":149},"Oluşturulur ama otomatik olarak normal view'a dönüşür","Snowflake materialized view'lar, self-join dahil JOIN içeren bir sorgu üzerinde tanımlanamaz; tanımlayıcı sorgu tek bir tabloya dayanmalıdır.",{"id":152,"topic":9,"difficulty":139,"body":153,"options":154,"correct_key":121,"explanation":163},"01a00fd5-7cf6-7e26-8d29-ace30fa3ae55","Snowflake'te bir materialized view, temel tablo değiştikçe kullanıcı açısından nasıl güncel kalır?",[155,157,159,161],{"key":112,"text":156},"Kullanıcı her değişiklikten sonra REFRESH çalıştırmalıdır",{"key":115,"text":158},"Hiç güncellenmez; drop edilip yeniden oluşturulmalıdır",{"key":118,"text":160},"Kullanıcı verisini elle yeniden yazan bir task zamanlamalıdır",{"key":121,"text":162},"Otomatik bir arka plan servisi onun bakımını yapar","Snowflake materialized view bakımı tamamen otomatiktir: arka plan servisi, temel tablo değiştikçe view'ı günceller; bazı diğer ambarların aksine kullanıcının çalıştıracağı bir REFRESH komutu yoktur.",{"id":165,"topic":9,"difficulty":139,"body":166,"options":167,"correct_key":115,"explanation":176},"01a00fd5-7cf8-7809-8fb8-ccc42a825eda","```sql\nCREATE MATERIALIZED VIEW mv_scored AS\nSELECT id, my_custom_udf(amount) AS scored_amount\nFROM orders;\n```\nSnowflake'te `my_custom_udf` bir user-defined function iken bu ifade çalıştırıldığında ne olur?",[168,170,172,174],{"key":112,"text":169},"Başarılı olur; her türlü UDF tam desteklenir",{"key":115,"text":171},"Başarısız olur; hiçbir türde UDF'e izin verilmez",{"key":118,"text":173},"Yalnızca SQL dilinde yazılmış UDF'lerde başarılı olur",{"key":121,"text":175},"Başarılı olur ama UDF yalnızca oluşturmada bir kez çalışır","Snowflake, external function dahil UDF'lerin materialized view'ın tanımlayıcı sorgusunda kullanılmasına açıkça izin vermez, bu yüzden bu CREATE ifadesi UDF'in yazıldığı dilden bağımsız başarısız olur.",{"id":178,"topic":9,"difficulty":179,"body":180,"options":181,"correct_key":112,"explanation":190},"01a00fd5-7cfa-7ee3-a2ed-7312c4e01823",3,"Bir ekip, büyük bir Snowflake materialized view'ında belirli bir kolona filtre uygulayan sorguların hâlâ view'ın saklanan verisinin büyük bir kısmını taradığını fark ediyor. Bu filtre için pruning'i iyileştirmek üzere materialized view'ın kendisinde ne yapılandırabilirler?",[182,184,186,188],{"key":112,"text":183},"Materialized view üzerinde bir clustering key",{"key":115,"text":185},"Materialized view üzerinde bir foreign key kısıtı",{"key":118,"text":187},"Hiçbir şey; bu ayar yalnızca temel tablolarda olur",{"key":121,"text":189},"CREATE INDEX ile ikincil bir index","Snowflake, materialized view üzerinde doğrudan bir clustering key tanımlanmasına izin verir; bu, saklanan micro-partition'ları o key'e göre yeniden organize ederek filtre pruning'ini iyileştirir — ancak kendi bakım maliyetini de ekler.",{"fields":192,"seniorities":408,"interview_shapes":409,"locales":414,"oauth":416,"question_count":419,"coach_enabled":420,"jd_match_enabled":420},[193,218,238,254,278,291,310,329,351,370,377,399],{"key":194,"name_tr":195,"name_en":195,"sort":108,"specializations":196},"backend","Backend",[197,200,203,206,209,212,215],{"key":198,"name":199,"field":194},"general","Genel",{"key":201,"name":202,"field":194},"go","Go",{"key":204,"name":205,"field":194},"python","Python",{"key":207,"name":208,"field":194},"java","Java",{"key":210,"name":211,"field":194},"csharp","C#\u002F.NET",{"key":213,"name":214,"field":194},"nodejs","Node.js",{"key":216,"name":217,"field":194},"php","PHP",{"key":219,"name_tr":220,"name_en":220,"sort":139,"specializations":221},"frontend","Frontend",[222,223,226,229,232,235],{"key":198,"name":199,"field":219},{"key":224,"name":225,"field":219},"javascript","JavaScript",{"key":227,"name":228,"field":219},"typescript","TypeScript",{"key":230,"name":231,"field":219},"react","React",{"key":233,"name":234,"field":219},"vue","Vue",{"key":236,"name":237,"field":219},"angular","Angular",{"key":239,"name_tr":240,"name_en":240,"sort":179,"specializations":241},"fullstack","Fullstack",[242,243,244,245,246,247,248,249,250,251,252,253],{"key":198,"name":199,"field":239},{"key":201,"name":202,"field":194},{"key":204,"name":205,"field":194},{"key":207,"name":208,"field":194},{"key":210,"name":211,"field":194},{"key":213,"name":214,"field":194},{"key":216,"name":217,"field":194},{"key":224,"name":225,"field":219},{"key":227,"name":228,"field":219},{"key":230,"name":231,"field":219},{"key":233,"name":234,"field":219},{"key":236,"name":237,"field":219},{"key":255,"name_tr":256,"name_en":256,"sort":257,"specializations":258},"devops-cloud","DevOps \u002F Cloud",4,[259,260,263,266,269,272,275],{"key":198,"name":199,"field":255},{"key":261,"name":262,"field":255},"aws","AWS",{"key":264,"name":265,"field":255},"gcp","GCP",{"key":267,"name":268,"field":255},"azure","Azure",{"key":270,"name":271,"field":255},"kubernetes","Kubernetes",{"key":273,"name":274,"field":255},"terraform","Terraform",{"key":276,"name":277,"field":255},"linux","Linux",{"key":279,"name_tr":280,"name_en":280,"sort":281,"specializations":282},"ai-engineer","AI Engineer",5,[283,284,285,288],{"key":198,"name":199,"field":279},{"key":204,"name":205,"field":279},{"key":286,"name":287,"field":279},"llm-rag","LLM\u002FRAG",{"key":289,"name":290,"field":279},"mlops","MLOps",{"key":292,"name_tr":293,"name_en":294,"sort":295,"specializations":296},"database","Veritabanı","Database",6,[297,298,301,304,307],{"key":198,"name":199,"field":292},{"key":299,"name":300,"field":292},"postgresql","PostgreSQL",{"key":302,"name":303,"field":292},"mysql","MySQL",{"key":305,"name":306,"field":292},"mongodb","MongoDB",{"key":308,"name":309,"field":292},"redis","Redis",{"key":311,"name_tr":312,"name_en":313,"sort":314,"specializations":315},"mobile","Mobil","Mobile",7,[316,317,320,323,326],{"key":198,"name":199,"field":311},{"key":318,"name":319,"field":311},"ios-swift","iOS (Swift)",{"key":321,"name":322,"field":311},"android-kotlin","Android (Kotlin)",{"key":324,"name":325,"field":311},"flutter","Flutter",{"key":327,"name":328,"field":311},"react-native","React Native",{"key":330,"name_tr":331,"name_en":332,"sort":333,"specializations":334},"security","Güvenlik","Security",8,[335,336,339,342,345,348],{"key":198,"name":199,"field":330},{"key":337,"name":338,"field":330},"appsec","AppSec",{"key":340,"name":341,"field":330},"offensive-pentest","Offensive \u002F Pentest",{"key":343,"name":344,"field":330},"cloud-security","Cloud Security",{"key":346,"name":347,"field":330},"devsecops","DevSecOps",{"key":349,"name":350,"field":330},"blue-team-incident","Blue Team \u002F Incident",{"key":352,"name_tr":353,"name_en":354,"sort":355,"specializations":356},"qa-test-automation","QA \u002F Test Otomasyonu","QA \u002F Test Automation",9,[357,358,361,364,367],{"key":198,"name":199,"field":352},{"key":359,"name":360,"field":352},"test-automation","Test Automation",{"key":362,"name":363,"field":352},"sdet","SDET",{"key":365,"name":366,"field":352},"performance-testing","Performance Testing",{"key":368,"name":369,"field":352},"mobile-qa","Mobile QA",{"key":5,"name_tr":6,"name_en":6,"sort":371,"specializations":372},10,[373,374,375,376],{"key":198,"name":199,"field":5},{"key":96,"name":97,"field":5},{"key":100,"name":101,"field":5},{"key":103,"name":104,"field":5},{"key":378,"name_tr":379,"name_en":380,"sort":381,"specializations":382},"game-dev","Oyun Geliştirme","Game Development",11,[383,384,387,390,393,396],{"key":198,"name":199,"field":378},{"key":385,"name":386,"field":378},"unity-csharp","Unity (C#)",{"key":388,"name":389,"field":378},"unreal-cpp","Unreal (C++)",{"key":391,"name":392,"field":378},"gameplay","Gameplay",{"key":394,"name":395,"field":378},"graphics-rendering","Graphics \u002F Rendering",{"key":397,"name":398,"field":378},"multiplayer-netcode","Multiplayer \u002F Netcode",{"key":400,"name_tr":401,"name_en":401,"sort":402,"specializations":403},"ml-engineer","ML Engineer",12,[404,405],{"key":198,"name":199,"field":400},{"key":406,"name":407,"field":400},"classical-ml","Classical ML",[14,15,16],{"junior":410,"mid":412,"senior":413},{"questions":411,"median_sec":3},20,{"questions":411,"median_sec":3},{"questions":411,"median_sec":3},[10,415],"en",[417,418],"google","github",27600,true]