Indekslar joriy etilgandan so'ng ma'lumotlar bazasiga ma'lumot qo'shish operatsiyalarining samaradorligini oshirish uchun qanday yondashuvlar qo'llanilishi kerak?
Java
Kodni o'qing, dastur bajarilishi oxirida nima chiqarilishini aniqlang
Xarajat kalit cheklovi nima uchun kerak? Boshqacha qilish mumkin emasmi?
JPA/Hibernate bazaga yuborayotgan SQL so'rovlarini qanday ko'rish mumkin?
Kodni o'qing va xatolarni ta'kidlang @Component public class AuthorSearchService { @Autowired private AuthorsRepository authorsRepository; @Autowired private StatisticsRepository statisticsRepository; private AlertRestClient arc = new AlertRestClient(); // So'rovda to'liq ism yoki faqat ism qismi bo'lishi mumkin, masalan "Vladimir Panov" yoki "panov" @Transactional public List<Author> search(String query) { List<Author> authors = authorsRepository.findByNameContainingIgnoreCase(query); Statistics s = statisticsRepository.findById(query).orElse(null); if (s == null) s = new Statistics(query); s.setNumbers(s.getNumbers() + 1); statisticsRepository.save(s); if (s.getNumbers() > 1000 && authors.size() > 1000) { System.out.println("juda mashhur qidiruv juda ko'p ma'lumot bilan, ogohlantirish yuborilmoqda..."); arc.send(query, s.getNumbers(), authors.size()); } return authors; } } @Entity @Data public class Author { @Id @GeneratedValue private Long id; private String name; @OneToMany(mappedBy = "author") private List<Book> books; public Author(String name) { this.name = name; } }
Siz ishlab chiqarishdagi xizmatlarni qo'llab-quvvatlash, navbatlar bilan ishtirok etishga tayyormisiz?
Xizmat har bir necha soatda OutOfMemoryError bilan yiqilmoqda. Muammoni qanday boshlaysiz?
Qancha urinish bilan siz bir xil rangdagi juftni olishingizni kafolatlash uchun, agar sizda uch rangli (qizil, oq, qora) paypoqdan iborat to'plam bo'lsa va ularni birma-bir chiqarayotgan bo'lsangiz?
Yangi joyda nima qilishni xohlaysiz? Arxitektura qarorlarida ishtirok etish siz uchun nima anglatadi?
O'zingiz va tajribangiz haqida gapiring
O'zingiz mustaqil ravishda bajargan katta biznes vazifasi yoki integratsiya misolini keltiring.
Hamyonlar o'rtasida o'tkazmalar bilan dastur to'xtab qoladimi? Nima uchun?
Kafka xabarlarini va sinxron RPC chaqiruvlarini qanday optimallashtirganingiz haqida batafsilroq aytib bering.
BeanPostProcessor yozish bo'yicha tajribangiz bormi? Qaysi vazifa uchun?
Indekslar bo'yicha cheklovlar bormi? Qaysi indeks turlari mavjud (hash, B-tree) va ularni qachon qo'llash kerak?
Relatsiyaviy ma'lumotlar bazasida tashqi kalit qanday kafolatlar beradi? Agar unga tashqi kalitlar bo'lsa, ota yozuvini o'chirish mumkinmi?
Nima qilarding, agar biror narsa joylashtirgan bo'lsang va hamma yiqilib tushgan bo'lsa — alarmlar, nima bo'layotganini tushunmayapsan?
Cache muddasi tugagan va so'rovlar bazaga masshtabda o'ta boshlaganda, bazaga yukni qanday kamaytirish mumkin?
Kodni o'qing va xatolar sonini hisoblang ```java @Component public class AuthorSearchService { @Autowired private AuthorRepository authorRepository; @Autowired private StatisticsRepository statisticsRepository; private AlertRestClient arc = new AlertRestClient(); // So'rovda to'liq qiymat yoki faqat ismning bir qismi bo'lishi mumkin, masalan "Vadim Pavlo" yoki "pavlo" @Transactional public List<Author> search(String query) { List<Author> authors = authorRepository.findByNameContainingIgnoreCase(query); Statistics s = statisticsRepository.findById(query).orElse(null); if (s == null) s = new Statistics(query); s.setNumbers(s.getNumbers() + 1); statisticsRepository.save(s); if (s.getNumbers() > 1000 && authors.size() > 1000) { System.out.println("juda mashhur qidiruv, juda ko'p ma'lumot, ogohlantirish yuborilmoqda..."); arc.send(query, s.getNumbers(), authors.size()); } return authors; } } @Entity @Data public class Author { @Id @GeneratedValue private Long id; private String name; @OneToMany(mappedBy = "author") private List<Book> books; public Author(String name) { this.name = name; } } ```
100 million yozuvdan iborat jadval mavjud. value > 100 bo'lgan barcha yozuvlarni tanlash kerak. So'rovning bajarilish vaqtini minimallashtirish uchun qanday tavsiyalar bor?