νŠΈλžœμž­μ…˜ 격리 μˆ˜μ€€(isolation level)μ΄λž€?

νŠΈλžœμž­μ…˜μ˜ 격리 μˆ˜μ€€(isolation level)에 λŒ€ν•΄μ„œ μ •ν™•ν•˜κ²Œ μ΄ν•΄ν•˜λŠ” 것은 μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λ‘œμ§μ„ μ •ν™•ν•˜κ²Œ μ œμ–΄ν•˜λŠ” 것에 μžˆμ–΄μ„œ μ€‘μš”ν•©λ‹ˆλ‹€. ν•˜μ§€λ§Œ 격리 μˆ˜μ€€μ΄ ꡬ체적으둜 μ–΄λ–»κ²Œ λ™μž‘ν•˜λŠ”μ§€ μ •ν™•ν•˜κ²Œ λͺ¨λ₯΄κ³  μžˆμ—ˆλ˜ 사싀을 λ°œκ²¬ν•΄μ„œ μž¬ν•™μŠ΅μ„ μœ„ν•΄ λ‚΄μš©μ„ μ •λ¦¬ν•©λ‹ˆλ‹€. 이 글은 MySQL κΈ°μ€€μœΌλ‘œ μž‘μ„±ν•©λ‹ˆλ‹€. νŠΈλžœμž­μ…˜ 격리 μˆ˜μ€€ 격리 μˆ˜μ€€μ€ 크게 λ‹€μŒκ³Ό 같이 4κ°€μ§€λ‘œ λ‹€μŒκ³Ό 같이 λ‚˜λ‰˜κ²Œ λ©λ‹ˆλ‹€. READ UNCOMMITTED READ COMMITTED REPEATABLE READ SERIALIZABLE 1λ²ˆμ—μ„œ 4번으둜 갈수둝 νŠΈλžœμž­μ…˜ κ°„μ˜ 데이터 격리 μˆ˜μ€€μ΄ 높아지며, λ™μ‹œ 처리 μ„±λŠ₯이 λ–¨μ–΄μ§€λŠ” 것이 μΌλ°˜μ μž…λ‹ˆλ‹€. 그리고 보톡 SERIALIZABLE 정도가 μ•„λ‹ˆλ©΄ 크게 μ„±λŠ₯의 κ°œμ„ μ΄λ‚˜ μ €ν•˜λŠ” λ°œμƒν•˜μ§€ ..

BackEnd 2024. 3. 3. 20:13
Java Optional이 response ν•„λ“œ nullable ν‘œν˜„μ— μ ν•©ν• κΉŒ?

Javaμ—μ„œλŠ” null을 μ•ˆμ „ν•˜κ²Œ 닀루고 ν‘œν˜„λ ₯을 λ†’μ΄λŠ” λ°©λ²•μœΌλ‘œ Optional이 잘 μ•Œλ €μ ΈμžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ μ‹€μ œλ‘œ μ‚¬μš©ν•˜λ‹€λ³΄λ‹ˆ wrapper νƒ€μž…μ΄λΌλŠ” 점으둜 인해 κ³ λ―Όλ˜λŠ” μš”μΈλ“€μ΄ κ½€ λ§Žμ•˜λŠ”λ°μš”. μ •ν™•νžˆλŠ” Optional을 nullable ν‘œν˜„μ˜ μš©λ„λ‘œ API response ν•„λ“œ 값에 μ‚¬μš©ν•˜κ³  μ‹Άμ—ˆλŠ”λ° κ·Έ κ³Όμ •μ—μ„œ κ³ λ―Όλ˜λŠ” 점이 μžˆμ—ˆμ–΄μš”. μ˜€λŠ˜μ€ κ·Έ λ‚΄μš©μ— λŒ€ν•΄ 개인적인 생각을 적어보렀고 ν•©λ‹ˆλ‹€. Optional을 response ν•„λ“œμ— μ‚¬μš©ν•  λ•Œ 문제점 1. 직렬화 "Optional은 μ§λ ¬ν™”ν•˜λŠ”λ° μ˜λ„μΉ˜ μ•ŠλŠ” ν•„λ“œκ°€ μ§λ ¬ν™”λ˜λŠ” λ¬Έμ œκ°€ λ°œμƒν•  수 μžˆμŠ΅λ‹ˆλ‹€." 직렬화 라이브러리의 κ΅¬ν˜„λ§ˆλ‹€ λ‹€λ₯΄κ² μ§€λ§Œ λͺ¨λ‘ Optional을 ν˜Έν™˜ν•˜λŠ”μ§€λŠ” 보μž₯λ˜μ§€ μ•ŠμœΌλ―€λ‘œ μš°λ¦¬κ°€ μ œμ–΄ν•  수 μžˆλŠ” μ˜μ—­μ΄ 쀄어듀고..

JAVA 2024. 2. 18. 23:51
빅데이터λ₯Ό μ§€νƒ±ν•˜λŠ” 기술 CH4 - λΉ…λ°μ΄ν„°μ˜ 좕적

λ‹€μŒκ³Ό 같은 지식을 ν•™μŠ΅ν•˜κ³  μ •λ¦¬ν•©λ‹ˆλ‹€ λ²Œν¬ν˜•, 슀트리밍 ν˜• 데이터 전솑 μŠ€νŠΈλ¦¬λ°ν˜•μ˜ 데이터 전솑인 λ©”μ‹œμ§€ 배솑 ꡬ쑰와 νŠΈλ ˆμ΄λ“œμ˜€ν”„ μ„±λŠ₯을 μ–»κ³  신뒰성이 ν¬μƒλ˜λŠ” 경우 λ“± λ©”μ‹œμ§€ 배솑에 μžˆμ–΄μ„œ ν”„λ‘œμ„ΈμŠ€ μ‹œκ°„κ³Ό 이벀트 μ‹œκ°„μ˜ ꡬ별 이벀트 μ‹œκ°„μ„ κ³ λ €ν•œ μ΅œμ ν™” 데이터 색인을 ν†΅ν•œ μ΅œμ ν™” NoSQL λ°μ΄ν„°λ² μ΄μŠ€μ˜ λͺ‡ 가지 νŠΉμ„±κ³Ό ꡬ뢄 데이터 μΆ•μ μ˜ μ „λ°˜μ μΈ ν”Œλ‘œμš° 4-1 벌크 ν˜• 슀트리밍 ν˜•μ˜ 데이터 μˆ˜μ§‘ 데이터 μ „μ†‘μ—λŠ” 벌크 ν˜•κ³Ό 슀트리밍 ν˜•μ˜ 두 μ’…λ₯˜κ°€ 있음 각각의 λ°©λ²•μœΌλ‘œ λΆ„μ‚° μŠ€ν† λ¦¬μ§€μ— 데이터가 μ €μž₯될 λ•ŒκΉŒμ§€μ˜ 흐름을 μ‚΄νŽ΄λ³΄μž. 객체 μŠ€ν† λ¦¬μ§€μ™€ 데이터 μˆ˜μ§‘ λΉ…λ°μ΄ν„°λŠ” λŒ€λΆ€λΆ„μ˜ 경우 ν™•μž₯성이 높은 λΆ„μ‚° μŠ€ν† λ¦¬μ§€μ— μ €μž₯됨 λΆ„μ‚° ν˜•μ˜ λ°μ΄ν„°λ² μ΄μŠ€κ°€ μ΄μš©λ˜λŠ” κ²½μš°λ„ μžˆμ§€λ§Œ λŒ€λŸ‰μœΌλ‘œ νŒŒμΌμ„ μ €μž₯ν•˜κΈ° μœ„ν•œ 객체 ..

data engineering 2024. 1. 21. 16:07
2023 회고

2023년은 정말 λ‹€μ΄λ‚˜λ―Ήν–ˆλ˜ 것 κ°™μ•„μš”. 1λ…„μ΄λΌλŠ” μ‹œκ°„λ™μ•ˆ 정말 λ§Žμ€ 일듀이 μžˆμ—ˆκ³  κ°€μΉ˜κ΄€μ—λ„ 큰 λ³€ν™”κ°€ μƒκ²Όλ˜ 것 κ°™μŠ΅λ‹ˆλ‹€. 그리고 μ΄μ œλŠ” 1λ…„μ΄λΌλŠ” μ‹œκ°„μ— μ΄λ ‡κ²Œ λ§Žμ€ 것듀을 ν•  수 μžˆλ‹€λŠ” κ±Έ μ΄ν•΄ν–ˆκ³  λ‹€λ₯Έ 이듀이 κ²ͺ은 μ‹œκ°„κ³Ό 각자의 μ‹œκ°„μ„ μ‘΄μ€‘ν•˜κ²Œ 된 것 κ°™μ•„μš”. μ˜¬ν•΄ 3λ…„μ°¨κ°€ λ˜μ—ˆκ³  내년이면 μœ€μ„μ—΄ λ‚˜μ΄ μ•„λ‹ˆκ³  μ›λž˜ λ‚˜μ΄λ‘œ 25μ‚΄(00년생)이 λ˜λŠ”λ° μ‹œκ°„μ΄ 지날 수둝 점점 μ—¬μœ κ°€ μƒκΈ°λ©΄μ„œλ„ μƒˆλ‘œ κ²ͺλŠ” κ²½ν—˜λ“€μ΄ λ§Žμ•„μ„œ 즐거운 것 κ°™μŠ΅λ‹ˆλ‹€. 2023에 μžˆμ—ˆλ˜ 일듀 쀑에 κΈ°μ–΅λ‚˜λŠ” 것듀은 ν•˜λ‚˜μ”© μ‚΄νŽ΄λ³Όκ²Œμš”. AUSGμ—μ„œ λ§Œλ‚œ μ†Œμ€‘ν•œ μŠ€ν„°λ”” AUSGλΌλŠ” AWS κ΄€λ ¨ ν΄λΌμš°λ“œ λ™μ•„λ¦¬μ—μ„œ 기술 μ±… μŠ€ν„°λ””λ₯Ό ν•œ 9κ°œμ›” 정도 λ˜λŠ” μ‹œκ°„ λ™μ•ˆ κ½€ 였래 μ§„ν–‰ν–ˆμ–΄μš”. μŠ€ν„°λ”” ꡬ성원뢄 쀑에 μ–΄λ–€ 뢄이 "μš°λ¦¬λŠ” λ‹¨μˆœνžˆ..

κΏˆν‹€κΏˆν‹€ 2023. 12. 31. 20:48
AWS re:Invent 2023 ν›„κΈ°

AWS re:Invent 2023에 μ°Έμ—¬ν•  수 μžˆλ„λ‘ νšŒμ‚¬μ—μ„œ 도움을 μ£Όμ…”μ„œ κΈ°λΆ„ μ’‹κ²Œ λ‹€λ…€μ™”μŠ΅λ‹ˆλ‹€! AWS λ¦¬μΈλ²€νŠΈλŠ” 맀년 μ—΄λ¦¬λŠ” AWS 컨퍼런슀이고 μ „ μ„Έκ³„μ˜ μ‚¬λžŒλ“€μ΄ λͺ¨μ΄λŠ” 졜고의 ν…Œν¬ 컨퍼런슀 쀑 ν•˜λ‚˜μž…λ‹ˆλ‹€. 이번 ν–‰μ‚¬λŠ” 2023λ…„ 11μ›” 27일뢀터 2023λ…„ 12μ›” 1μΌκΉŒμ§€ λΌμŠ€λ² κ°€μŠ€μ—μ„œ μ§„ν–‰λ˜μ—ˆκ³  길고도 짧은 μ‹œκ°„μ„ λ³΄λ‚΄λ©΄μ„œ λ§Žμ€ μΆ”μ–΅λ“€κ³Ό 지식을 μ–»μ—ˆλ˜ 것 κ°™μŠ΅λ‹ˆλ‹€ γ…Žγ…Ž 이번 κΈ€μ—μ„œλŠ” μ•„λž˜ λ‚΄μš©λ“€μ„ ν•œ 번 μ΄μ•ΌκΈ°ν•΄λ³Όκ²Œμš”! ν•„μš”ν•˜μ‹  λ‚΄μš©μ„ μ°Ύμ•„κ°€μ„œ λ³΄μ‹œλŠ” κ±Έ μΆ”μ²œν•©λ‹ˆλ‹€. 리인벀트 이야기와 DB κ΄€λ ¨ν•΄μ„œ μƒˆλ‘œ 곡개된 AWS μ œν’ˆ 그리고 μΆ”μ²œ 아티클 λ‹€μŒμ— λ¦¬μΈλ²€νŠΈμ— κ°€μ‹œλŠ” 뢄듀을 μœ„ν•œ μ•½κ°„μ˜ κΏ€νŒ(μΆ”μ²œ μ„Έμ…˜ μ’…λ₯˜, μœ„μΉ˜ μ„ μ • λ“±) μ–΄λ–»κ²Œ 잘 λ†€μ•˜λŠ”μ§€ 쑰금 μžλž‘ 리인벀트 이야기 λ¦¬μΈλ²€νŠΈμ— 처음 κ°€λ©΄..

κΏˆν‹€κΏˆν‹€ 2023. 12. 10. 16:26
μ‚Άμ˜ 지도 - μ§€κΈˆμ˜ λ‚΄κ°€ λ˜κΈ°κΉŒμ§€

"ν•œμˆ˜λ‹˜μ€ μ‹œκ°„ κ΄€λ¦¬ν•˜λŠ” 게 ν—€λ₯΄λ―Έμ˜¨λŠ κ°™μ•„μ„œ λŒ€λ‹¨ν•΄μš”", "쉴 ν‹ˆ 없이 μ„±μž₯을 μœ„ν•΄ 본인을 λ²Όλž‘ 끝으둜 λ―ΈλŠ” 뢄인 것 κ°™μ•„μš”" μ£Όλ³€μ—μ„œ 이런 말을 듀은지 ν•œ 1λ…„ 정도 된 것 κ°™λ‹€. 보톡 λ‚΄κ°€ 삢에 μΆ©μ‹€ν•˜κ³  μ—΄μ‹¬νžˆ 무언가λ₯Ό ν•˜λŠ” λͺ¨μŠ΅μ—μ„œ 이런 λ°˜μ‘μ„ λ³΄μ΄μ‹œλŠ” 것 κ°™κ³  κ·Έ λΆ„λ“€μ—κ²Œ 또 λ‹€λ₯Έ 자극이 λ˜λŠ” 것 κ°™λ‹€. ν•˜λ£¨ν•˜λ£¨ λ°”μ˜κ²Œ μ‚΄λ‹€λ³΄λ‹ˆ 과거에 μ–΄λ €μ› λ˜ 것듀이 μ΄μ œλŠ” λ„ˆλ¬΄ λ‹Ήμ—°ν•˜κ³  두렀움도 많이 없어진 것 κ°™λ‹€. κ·Έλž˜μ„œ ν•œ νŽΈμœΌλ‘œλŠ” μ†Œμ€‘ν•¨μ„ μžŠμ–΄κ°€λŠ” 건 μ•„λ‹Œκ°€ ν•˜λŠ” 생각도 λ“ λ‹€. 가끔 원동λ ₯이 뭐냐고 λ¬Όμ–΄λ³΄μ‹œλŠ” 뢄도 μžˆλŠ”λ° "κ·Έλƒ₯ μž¬λ°Œμ–΄μš”! λƒ…λ‹€ ν•΄λ²„λ¦¬λŠ” 게 λ°©λ²•μž…λ‹ˆλ‹€ γ…Žγ…Ž" 라고 생각 κ·ΈλŒ€λ‘œ λ‹΅λ³€ν•œλ‹€. λ„λŒ€μ²΄ μ§€κΈˆμ˜ λ‚˜λŠ” μ–΄μ©Œλ‹€κ°€ μ΄λ ‡κ²Œ λμ„κΉŒ? κ½€ λ¨Ό κ³Όκ±° 이야기뢀터 해보면 쒋을 것 κ°™λ‹€. [μ§€κΈˆμ˜ ..

κΏˆν‹€κΏˆν‹€ 2023. 11. 14. 03:38
AWS Elastic Beanstalk 단일 μΈμŠ€ν„΄μŠ€ 무쀑단 λ°°ν¬ν•˜κΈ°

μ΅œκ·Όμ— staging ν™˜κ²½μ—μ„œ 단일 μΈμŠ€ν„΄μŠ€λ₯Ό λ‘λ©΄μ„œλ„ 무쀑단 배포λ₯Ό ν•˜κ³  μ‹Άμ—ˆλŠ”λ°, AWS Elastic Beanstalk을 ν™œμš©ν•΄μ„œ 이λ₯Ό μ†μ‰½κ²Œ ν•΄κ²°ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. κ·Έλž˜μ„œ 저와 같은 고민을 ν•˜κ³  계신 뢄듀을 μœ„ν•΄ 기둝차 이 글을 μž‘μ„±ν•©λ‹ˆλ‹€. AWS Elastic Beanstalk은 vercelκ³Ό μœ μ‚¬ν•˜κ²Œ μ½”λ“œλ§Œ 올리면 인프라 κ΄€λ ¨ μ„ΈνŒ…μ„ 맀우 손쉽고 λΉ λ₯΄κ²Œ 배포할 수 μžˆλ„λ‘ λ„μ™€μ£ΌλŠ” PaaS(Platform as a Service)μž…λ‹ˆλ‹€. Elastic Beanstalk을 μ‚¬μš©ν•˜λ©΄ 인프라 관리λ₯Ό 신경쓰지 μ•Šμ„ 수 있고 λΉ„μš©λ„ Elastic Beanstalk κΈ°λŠ₯ μžμ²΄λŠ” 무료이며 S3, EC2 λ“± μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ €μž₯ν•˜κ³  μ‹€ν–‰ν•˜κΈ° μœ„ν•΄ μƒμ„±ν•œ λ¦¬μ†ŒμŠ€μ— λŒ€ν•΄μ„œλ§Œ μ§€λΆˆν•˜λ©΄ λ©λ‹ˆλ‹€. κ·Έλž˜μ„œ λ¦¬μ†ŒμŠ€λ₯Ό 졜..

BackEnd 2023. 10. 8. 17:27